»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:05 ruben1194navarro joined 00:08 cdarroch left 00:14 ruben1194navarro left 00:16 ymasory left 00:23 xinming_ left, xinming joined 00:24 s1n joined 00:36 cookys left 00:38 colomon left 00:42 MindosCheng left 00:46 colomon joined 01:12 stkowski left 01:14 whiteknight left 01:52 cxreg joined 02:03 ymasory joined 02:09 revdiablo joined, revdiablo left, revdiablo joined 02:21 jedai left, jedai joined 02:35 alester joined 02:40 leprevost joined 02:49 ymasory left 03:19 _jaldhar joined 03:37 alester left 03:43 gantrixx left 03:51 sunnavy left, sunnavy joined 03:52 sunnavy left, sunnavy joined 03:55 orafu left 03:56 orafu joined 04:01 jrockway left, jrockway joined, envi joined 04:08 am0c joined 04:13 sunnavy left 04:14 sunnavy joined 04:18 sunnavy left, sunnavy joined 04:22 [particle]1 joined 04:24 [particle] left 04:25 nymacro joined 04:26 bluescreen10 left 04:42 MayDaniel joined 04:52 f00li5h joined 04:57 colomon left 05:00 spinclad left 05:07 Khisanth left, colomon joined 05:12 Khisanth joined 05:22 MayDaniel left, dayangkun joined 05:34 justatheory left, am0c left 05:35 dayangkun_ joined 05:38 dayangkun left 05:46 cookys joined 06:12 s1n left 06:13 s1n joined 06:24 birdwindupbird joined 06:27 molaf joined, devnull_ joined 06:33 devnull_ left
miso2217_ morning all 06:39
Is there a Data::Dumper stype .perl (with indentation for huge data structures) for perl6? 06:40
TimToady there is a .pretty method specced, but I don't think it's implemented yet 06:47
06:56 dayangkun_ left 06:57 dayangkun_ joined 06:58 araujo left
sorear we're not quite sure how it should best work 06:59
miso2217_ sorear: why? What are the possible issues? 07:11
07:11 dayangkun__ joined 07:14 birdwindupbird left, dayangkun_ left
sorear miso2217_: there are just a lot of decisions to make, and Perl 6 hackers are by their nature perfectionists 07:21
07:42 dayangkun_ joined 07:43 daxim joined 07:44 dayangkun__ left
miso2217_ sorear: I would personally be quite happy to use .perl whith a few tabs and newlines. Is the discussion on the .pretty issues available somewhere? (irc logs?). Perfectionism is good, a less than perfect .pretty is better than none at all I think. 07:49
07:50 dayangkun__ joined 07:51 dayangkun_ left 07:54 Mowah joined 08:05 birdwindupbird joined
mberends miso2217_: irclog.perlgeek.de/search.pl?channe...;q=.pretty # you can also search for other keywords ;-) 08:08
afair .perl whether pretty or not is unable to deconstruct all possible data back to the perl6 code that could reconstruct it. There are so many difficult corner cases. 08:12
08:15 birdwindupbird left
mberends rakudo: my $u = -> $s { $s.uc.say }; $u("hi"); $u.perl.say # <-- miso2217_ 08:19
p6eval rakudo 5ac05e: OUTPUT«HI␤{ ... }␤»
08:21 starcoder is now known as spameggs, spameggs is now known as starcoder
mberends some perfectionists believe that the ... above should rather be the source code of the pointy sub, but implementing that is either hard or impossible. 08:22
tadzik sounds possible to me. Isn't that quite similar to .WHY?
So we include the original source code with every object in the code 08:23
like .orig in Match
not that I like the idea
08:24 birdwindupbird joined, masak joined
masak salutations, #perl6. 08:24
tadzik hello masak
masak first day in quite a while with some time available for Perl 6. :) 08:25
masak pulls and builds 08:26
tadzik tbh, I'd like to see a sub with a signature, but the source code? Meh
mberends \o/
miso2217_ mberends: And what says the spec on that?
masak tadzik: I'm quite neutral on "seeing the source code", but I'd definitely like to access it, if need be. 08:27
mberends miso2217_: dunno, you read it and tell me please
masak tadzik: the Ruby people seem to get quite a bit of mileage out of analyzing source code as ASTs. 08:28
mberends shopping(nom) & 08:29
miso2217_ mberends: ok I'll look at this
tadzik masak: well, I don't quite like the idea to be honest
08:30 birdwindupbird left
miso2217_ the spec says .pretty is just a .perl with formatting, the .pretty method doesn't seem to have any aditionnal features compared to .perl 08:36
tadzik `makes sense 08:37
08:38 dayangkun joined
miso2217_ to me as well 08:38
how difficult would it be to try some rakudo hacking on the implementation of the .pretty method? 08:39
08:40 dayangkun__ left
tadzik not :) 08:41
we just need some manpower I suppose
tuned .perl for arrays and hashes alone would be quite .pretty I think 08:42
miso2217_ There was a doc on implementing new methods for rakudo in perl6, I just cann't remember where, any ideas? 08:43
tadzik moritz blog I suppose
miso2217_ tadzik: exactly what I think, I'm using .perl to dump moderatly complex data structures and it quickly becomes useless because of the lack of readability 08:44
tadzik it's basically use MONKEY_TYPING and augment class someclass {}
miso2217_: I know that feeling
rakudo: use MONKEY_TYPING; augment class Array { method perl { "foobar" } }; [1,2,3].perl.say 08:45
p6eval rakudo 5ac05e: OUTPUT«===SORRY!===␤A method named 'perl' already exists in class 'Array'. It may have been supplied by a role.␤»
tadzik shite
rakudo: my @a = 1, 2, 3 but role { method perl { "foobar" } }; @a.perl.say 08:46
p6eval rakudo 5ac05e: OUTPUT«[1, 2, foobar]␤»
tadzik precedence
rakudo: my @a = 1, 2, 3; @a = @a but role { method perl { "foobar" } }; @a.perl.say 08:47
p6eval rakudo 5ac05e: OUTPUT«[1, 2, 3]␤»
miso2217_ shouldn't the role by applied on the Array type instead of the instance?
tadzik wonders why the augment example actually doesn't work 08:48
miso2217_ s/by/be/
tadzik miso2217_: yeah, should
hmmm 08:49
miso2217_ strange 08:50
I'll play with it later, o/
tadzik rakudo: use MONKEY_TYPING; augment class Array { method pretty { self.perl.subst(/ /, "\n } }; [1,2,3].perl.say
p6eval rakudo 5ac05e: OUTPUT«===SORRY!===␤Null regex not allowed at line 22, near ", \"\\n } };"␤»
tadzik prr
08:50 dayangkun_ joined
tadzik rakudo: use MONKEY_TYPING; augment class Array { method pretty { self.perl.subst(/ /, "\n", :g) } }; [1,2,3].pretty.say 08:50
p6eval rakudo 5ac05e: OUTPUT«===SORRY!===␤Null regex not allowed at line 22, near ", \"\\n\", :g"␤»
tadzik rakudo: use MONKEY_TYPING; augment class Array { method pretty { self.perl.subst(" ", "\n", :g) } }; [1,2,3].pretty.say
p6eval rakudo 5ac05e: OUTPUT«[1,␤2,␤3]␤» 08:51
tadzik hi-ha
alright, I got motivated 08:52
08:52 am0c joined 08:53 broquaint joined, Mowah left, dayangkun left
tadzik oh funny, my Rakudo doesn't work :) 08:54
09:11 dayangkun__ joined 09:12 envi left 09:14 dayangkun_ left, yegor left 09:19 yegor joined 09:31 daxim left 10:00 woosley joined
masak $ touch Foo.pm 10:01
$ perl6
> use Foo
_block110
> use Foo
P
> ^C 10:02
I'd consider the above a bug if I understood it better.
so let's start at the top. what piece of code is '_block110' here?
should it really be returned? what's the use case?
and what in the world does "P" mean? 10:03
tadzik masak: consider ^D instead of ^C :)
masak thanks :P
I usually do ^D, but I just wanted to get out of the REPL this time... :)
anyway, unless there are acausal things involved, that shouldn't matter for the above questions. 10:04
tadzik sure
for me it could just return Bool::True 10:05
moritz good mroning 10:10
masak morning, moritz.
tadzik good mroritz 10:11
10:11 dayangkun_ joined
masak rakudo: use Test 10:12
p6eval rakudo 5ac05e: ( no output )
masak rakudo: my $c = (use Test)
p6eval rakudo 5ac05e: OUTPUT«error:imcc:syntax error, unexpected ')' (')')␤ in file 'EVAL_11' line 25077063␤===SORRY!===␤syntax error ... somewhere␤»
masak wonderful error message.
but I just submitted a rakudobug with that one.
tadzik when /imcc/ { poke whiteknight } :)
10:12 pernatiy left 10:14 s1n left, spinclad joined 10:15 dayangkun__ left 10:18 s1n joined
masak some of you may remember my little experiment Index::Multidim: gist.github.com/892178 10:19
I plan to rewrite it to reach a bit further.
in short, I'm too eager for S09 features to actually sit around and wait for them ;)
the reason I'm bringing it up here is that I'd like to bounce around a few design decisions. 10:20
frettled Ah, the good old bouncy-bouncy.
masak notable, the whole API thing.
I'd like a natural syntax for calling into Index::Multidim. that's really the most important part.
you'll note that I currently use an infix:<@@> operator and pass in a string. 10:21
in retrospect, I think both of these decisions might've been wrong :)
frettled If not outright ugly. :) 10:22
masak even that.
the nice thing with passing in a string is that the string will look exactly like the S09 syntax. 10:23
frettled yup
That's what made it an acceptable hack in my book.
masak the trouble with passing in a string is that it gets increasingly tricky to parse that string as we pile on features.
variable interpolation. ranges. combinations of these features.
frettled and if someone throws in a string in there… 10:24
masak right. it starts degrading pretty quickly.
now, as to alternatives to that:
I found out that I could declare an infix:<;> operator, and then use that within an actual [] array constructor. 10:25
I think that has real potential. because then I could pass in actual ranges, actual variables, actual whatevers, and so on.
but!
frettled Hmm.
masak I think in today's Rakudo, I'm fairly limited in setting the precedence of infix:<;>. 10:26
is that correct?
frettled *crickets*
masak rakudo: class Semi { has $.lhs; has $.rhs }; our sub infix:<;>($lhs, $rhs) { Semi.new(:$lhs, :$rhs) }; say [1,2;3,4,5;6].perl 10:27
p6eval rakudo 5ac05e: OUTPUT«[1, Semi.new(lhs => 2, rhs => 3), 4, Semi.new(lhs => 5, rhs => 6)]␤»
masak that's not what I want. 10:28
infix:<;> gets a tighter precedence than infix:<,>.
frettled Oh bugger...
masak now, I don't think that's a showstopper.
if nothing else, I think I can post-process that Array to get out what it should've been! :) 10:29
frettled Yep, that's pretty much it for your neat solution.
masak please shudder in unison.
frettled shudders in unison.
masak ;)
I'll have lunch, and then write such a post-processor.
in the meantime, if anyone knows of a better way, feel free to speak up. 10:30
frettled I'll go for a bike ride, and will probably be idle for a looong time again. :D
frettled thinks masak is on a right-ish track, at least.
masak frettled: it was nice bouncing with you.
frettled masak: nice bouncing with you too! :D
masak :D
tadzik frettled: please watch your wrists :) 10:40
10:40 dayangkun_ left
tadzik I hope it's not too late :) 10:40
10:41 daxim joined
masak hugs poor tadzik 10:41
tadzik hugs back 10:43
this gypsum makes typing quite entertaining
masak phenny: "gypsum"?
phenny masak: Language guessing failed, so try suggesting one!
moritz phenny: "gips"? 10:44
phenny moritz: "gypsum" (ro to en, translate.google.com)
masak :P
moritz phenny: de "gips"?
phenny moritz: "gypsum" (de to en, translate.google.com)
moritz :-)
masak phenny: se "gips"?
phenny masak: "gypsum" (se to en, translate.google.com)
10:44 whiteknight joined
masak phenny: "vit riddare"? 10:44
phenny masak: "white knight" (sv to en, translate.google.com)
tadzik hrm 10:45
this heavy white thing they put on your hand when it's broken
moritz not "rider"?
tadzik phenny: "gips"?
phenny tadzik: "gypsum" (ro to en, translate.google.com)
flussence cast? 10:46
masak moritz: no, that's "ryttare".
moritz: a bit inconsistent, I know.
phenny: se "ryttare"?
phenny masak: "rider" (se to en, translate.google.com)
tadzik maybe a cast
masak yes, a cast.
10:46 daxim left
moritz phenny: "ritter"? 10:47
phenny moritz: "Knight" (de to en, translate.google.com)
moritz phenny: "reiter"?
phenny moritz: "Reiter" (de to en, translate.google.com)
moritz didn't know that Reiter was an English word too
masak it isn't :) 10:48
tadzik phenny: "halt"?
phenny tadzik: "containing" (de to en, translate.google.com)
tadzik phenny: oh, really?
phenny: "hammerzeit"?
phenny tadzik: Language guessing failed, so try suggesting one!
masak rakudo: class Multiproxy { has $.target; method postcircumfix:<[ ]>($x) { say "Doing multidim on $.target.WHICH() with $x.perl()!" } }; role Multidim { method multi { return Multiproxy.new(:target(self)) } }; my @a; @a does Multidim; @a.multi[1,2]
p6eval rakudo 5ac05e: OUTPUT«Doing multidim on 36356296 with (1, 2)!␤»
masak I believe we have something here.
how'd you like that syntax? :) 10:49
tadzik du du dum :)
10:49 envi joined
tadzik is that the S09 syntax? 10:49
masak no, there's an extra '.multi' there.
and this is without the semicolons, so far.
but it shows that it's possible to wire up.
rakudo: class Multiproxy { has $.target; method postcircumfix:<[ ]>($x) { say "Doing multidim on $.target.WHICH() with $x.perl()!" } }; role Multidim { method multi { return Multiproxy.new(:target(self)) } }; my @a does Multidim; @a.multi[1,2] 10:50
p6eval rakudo 5ac05e: OUTPUT«Doing multidim on 55283216 with (1, 2)!␤»
masak I like that a lot.
moritz without semicolon you'll just have troubles mixing slices and multi dim
masak yes, but see above. I think I can simulate the real behaviour of the semicolon.
define infix:<;> as building a Semi object, and then post-translate from Semi to LolSlice. 10:51
tadzik lolisliced!
masak man, I love the power of ASTs.
that's really a blog post all on its own.
the post-translation will take [1, Semi.new(:lhs(2), :rhs(3)), 4, :lhs(5), :rhs(6))] and turn it into [LolSlice.new([1, 2]), LolSlice.new([3, 4, 5]), LolSlice.new([6])] 10:56
jnthn teh weekend \o/
masak \o/
10:57 am0c left 10:58 pernatiy joined 11:00 uniejo left
tadzik yay, let's go biking... ohwait :( 11:01
11:01 leprevost left
masak tadzik: you're facing a time of less strenuous activity. take advantage of it. read books. re-read the apocalypses/synopses. learn Haskell. see the opportunities. :) 11:02
tadzik :) 11:05
11:09 coldhead left 11:12 dju joined 11:13 daxim joined 11:32 daxim_ joined 11:34 daxim left 11:37 daxim_ left 11:38 daxim_ joined 11:45 daxim_ left, JimmyZ joined 11:46 daxim_ joined 11:54 Patterner left 11:56 Psyche^ joined 11:57 Psyche^ is now known as Patterner 12:04 icwiener joined 12:13 f00li5h left 12:14 JimmyZ left, _twitch joined, am0c joined
masak it is *so good* to be writing Perl 6 again. 12:15
12:22 am0c left
colomon masak++ 12:22
12:23 _twitch left 12:25 meswami joined
masak awww. 12:32
who would have guessed, declaring a sub infix:<;> causes problems...
rakudo: our sub infix:<;>($lhs, $rhs) {}; { say "A"; say "B" }
p6eval rakudo 5ac05e: ( no output )
masak :(
rakudo: our sub infix:<;>($lhs, $rhs) { say $lhs, $rhs }; 1; 2; 3 12:33
p6eval rakudo 5ac05e: OUTPUT«infix:<;>1␤Bool::True2␤Bool::True3␤»
masak I believe this is backwards. the stopper ';' should take precedence over any declared infixes, unless we're inside a parenthetical thingy. 12:34
masak submits rakudobug
oh well. will have to use double ';;' for Index::Multidim. not really a problem, but would've been nicer with single ones. 12:35
12:37 envi left 12:38 envi joined
jnthn What does STD think? 12:42
std: sub infix:<;>($lhs, $rhs) {}; { say "A"; say "B" }
p6eval std 4608239: OUTPUT«Potential difficulties:␤ $rhs is declared but not used at /tmp/UjV4z1oj7u line 1:␤------> sub infix:<;>($lhs, ⏏$rhs) {}; { say "A"; say "B" }␤ $lhs is declared but not used at /tmp/UjV4z1oj7u line 1:␤------> sub infix:<;>(⏏$lhs, $rhs) {}; {
..say "…
jnthn std: sub infix:<;>($, $) {}; { say "A"; say "B" }
p6eval std 4608239: OUTPUT«ok 00:01 122m␤»
colomon how can std tell the difference?
errr, that's not what I wanted to say
jnthn std does know about user defined operators
I'm thinking that example doesn't force it to reveal what it's parsing that ; as though 12:43
colomon that's what I meant
jnthn And wondering how to construct one that does :)
colomon without executing the code, I can't see how to do it.
12:44 f00li5h joined
jnthn Well, we could look at the AST that STD produces, but that needs somebody with a local STD :) 12:44
12:45 mj41 joined
colomon yeah 12:45
masak yes, that's the ticket. looking at viv output. 12:47
I also don't have that set up. I definitely should.
jnthn oh, maybe you can do it with statement modifiers
std: sub infix:<;>($, $) {}; { say "A" if 1; say "B" if 1; }
p6eval std 4608239: OUTPUT«ok 00:01 122m␤»
jnthn I expect that'd fail if the ; wasn't being parsed as a statement sep there. 12:48
masak jnthn++
masak submits rakudobug
jnthn You already did submit the Rakudo bug! :P 12:49
colomon std: (say "A" if 1;) + 10
p6eval std 4608239: OUTPUT«ok 00:01 121m␤»
masak apparently I'm getting senile.
colomon std: (say "A" if 1) + 10
p6eval std 4608239: OUTPUT«ok 00:01 121m␤»
masak ok, I'll just amend that ticket, then.
colomon jnthn: are you sure?
masak colomon: yes, it's the 'if' twice that makes it work. 12:50
jnthn std: say "A" if 1 + say "B" if 1 12:51
p6eval std 4608239: OUTPUT«===SORRY!===␤Confused at /tmp/0oSvOuPJP1 line 1:␤------> say "A" if 1 + say "B" ⏏if 1␤ expecting statement_mod_loop␤Parse failed␤FAILED 00:01 120m␤»
12:53 Mowah joined 12:55 noganex joined 12:56 daxim_ left 12:57 daxim_ joined 12:58 noganex_ left 13:01 daxim__ joined 13:02 daxim_ left 13:05 noganex left
masak rakudo: class Semi { has $.lhs; has $.rhs }; our sub infix:<;;>($lhs, $rhs) { Semi.new(:$lhs, :$rhs) }; say [1;;2;;3].perl 13:07
p6eval rakudo 5ac05e: OUTPUT«[Semi.new(lhs => Semi.new(lhs => 1, rhs => 2), rhs => 3)]␤»
masak hmmm.
I don't think I've encountered the kind of transformation that I need to do here before. 13:08
it's a kind of flattening-and-separation.
13:09 Chillance joined
jnthn It looks more like you just want it parsed at list precedence? 13:10
13:10 noganex joined
jnthn er 13:10
list associativity
masak is there a way to do that in Rakudo? 13:12
jnthn Not easily. 13:14
masak thought so.
which is why I'm post-processing it to look like it had list associativity all along.
in a twisted way, that's kinda fun, too.
13:16 hanekomu joined
jnthn goes to read for a bit 13:16
13:16 hudnix joined 13:21 AdamGallagher_ joined
AdamGallagher_ If you're a programmer, want to create a 2D real-time MMORPG with me? I can provide the art, here's a sample: i55.tinypic.com/2yxrdkl.png. If interested, my MSN and email is [email@hidden.address] 13:23
tadzik I was expecting Rick Astley on the picture 13:26
masak AdamGallagher_: do you plan to use Perl 6? 13:27
AdamGallagher_ Yes.
masak hm. challenging. 13:28
what graphics library? or is that as yet undecided?
13:30 Adam93 joined, AdamGallagher_ left
tadzik darn 13:31
masak something tells me that wasn't a stay-on anyway...
I'd love to see something like that get done in Perl 6. but I also don't think it's a particularly easy First Project at this point.
to say the least. 13:32
13:32 meswami left
tadzik aye 13:32
but it reminded me of making an ncurses module :)
masak there's ncurses in Parrot, so that should be fairly straightforward.
tadzik oh
that's a pir I've never seen before 13:34
13:36 uniejo joined
masak rakudo: sub foo { my @a = 1, 2, 3; push @a, 4, 5, 6 }; say foo.perl 13:37
p6eval rakudo 5ac05e: OUTPUT«[1, 2, 3, 4, 5, 6]␤»
13:40 Adam93 left, AdamGallagher_ joined
masak AdamGallagher_: welcome back. :) 13:40
AdamGallagher_ Thank you. 13:42
tadzik seen supernovus
aloha supernovus was last seen in #perl6 88 days 16 hours ago saying "Well, that set of optimizations seems to have helped, went from 1m16.339s with the old page generation method to 0m41.936s with the new one.".
masak AdamGallagher_: I think the MMORPG idea is cool. I'm wondering if Perl 6 is ready for it yet, though. 13:43
AdamGallagher_: two things: first, the graphics part. I haven't seen a connection to any graphics library that would help you build such a game. second, the real-time part. I think you might find Rakudo's performance... wanting. 13:44
I say this not to discourage you, but to let you know what the limitations are right now.
AdamGallagher_ Yeah, I suppose so. The engine has not been chosen yet, and I've just been nailing out the basic tiles/sprites for the project, so the language is flexible. 13:46
masak maybe Niecza would be a viable target.
sorear might know more about which graphics libs are accesible from Niecza on Mono or the CLR. 13:47
AdamGallagher_: I know pygame is generally well-liked as a game library: www.pygame.org/news.html 13:49
tadzik pygame is just SDL bindings, isn't it?
masak seems that way. 13:50
here's one game written with pygame: taw.chaosforge.org/jrpg/
seems to be RPG-ish, but it's for learning kanji.
13:52 pernatiy left 13:54 AdamGallagher_ left
masak huh. I'm so used to vim that I find it hard to use nano or pico nowadays. the keyboard shortcuts are so... arbitrary! :) 13:55
^O for saving? really??
14:03 ymasory joined 14:04 risou joined 14:07 colomon left 14:10 colomon joined
tadzik surveytime! ~/.perl6/doc/Foo::Bar/some_example or ~/.perl6/doc/Foo/Bar/some_example? 14:18
the latter then, thanks
jnthn ^O feels like "open" :) 14:20
geekosaur ^Kd :) 14:23
masak tadzik: I'd go with the latter as well. 14:26
tadzik especially having the namespaces stuff in mind, as in with HTTP::Server, HTTP::Server::Simple, HTTP::Server::Simple::PSY etc 14:28
o/ 14:29
ww 14:30
masak ooh, this Index::Multidim thing is really coming together. 14:32
I'm currently at 77 lines, and I already handle most of the important plumbing.
I don't know if you're aware, but Perl 6 is a terrific language for these things ;) 14:33
14:33 lateau joined
tadzik :) 14:34
I'm starting to find TDD terrific
14:34 mj41 left
tadzik instead of thinking "how do I make this work" I think "I'll write a test for it, let's see what will happen" 14:34
masak same here. 14:36
jnthn masak: Is Index::Multidim related to S09?
masak yes.
moritz finds the lingual proximity of "terrible" and "terrific" curious 14:37
jnthn yay :)
masak it gives us some of the goodness from S09 using an external library.
moritz: both used to mean "frightening".
jnthn masak: Anything that could eventually make it into core Rakudo?
geekosaur moritz: IIRC they are related in much the way "awe" and "awful" are 14:38
masak jnthn: I'm not aiming for that, but I wouldn't rule it out either.
jnthn moritz: You can use "terribly good" to mean "really really good" :)
moritz geekosaur: that was the second connection I thought of :-)
masak it's just a process by which negative words enter slang and become positive words.
jnthn Aye. The "terribly good" thing appears in Slovak too. I was a little surprised to see the idiom pop up in a literally translatable way. :) 14:39
masak in the book "Rainbows end", which takes place ~30 years into our future, the word "tragic" has become slang and means "cool, awesome". :)
tadzik :) 14:40
jnthn A school teacher friend in the UK says that some of her pupils are now starting to use the word "sick" to mean "awesome".
For my generation it decidedly means disgusting. :)
geekosaur that's several years old in the US
moritz that probably takes some time to get used to :-)
jnthn geekosaur: Gah, why'd it have to cross the atlantic... :P 14:41
geekosaur it's some corollary of bad news traveling faster than good, I think 14:42
:)
tadzik that's because humans are interested in sad things, at least some of them 14:43
news are full of death, sadness and hate. I think there is a Day of Good News in Poland, in which TV stations at least try to broadcast happy things
masak I think positive words become worn out, and negative words take their place because they evoke some emotion. and people who are hip don't mind that they mean the opposite of what they want to express. 14:45
"wow, that is so disturbed! kudos!"
geekosaur that's some of it. there's also some amount of the younger generation wanting to shock or at least confuse the older 14:46
tadzik words of the wise, indeed
true too
masak all tests pass. oh, what joy. 14:50
jnthn Time to write more tests.
tadzik shh! 14:52
jnthn So, where had I got to with nqp/ctmo...
tadzik "all tests pass for me too!"
oh so it's hackathon time? 14:53
(say yes, I have a beer which needs a use-case)
jnthn tadzik: Yes, the first tuit-less half of my month is over, and now I should have far more Perl 6 time :) 14:54
masak yes, I'm already writing more tests. :)
tadzik yay :)
14:54 Axius joined
masak oh dear. it's not just comma. 14:57
guess how .[0..1;;2] is parsed... :/
well, down the rabbit-hole we go.
colomon 0 .. (1;;2), eh?
masak yup.
luckily, there's only a finite number of these cases. 14:59
tadzik hmm. Is there a blocker for the META.info-based ecosystem to become The Ecosystem other than making modules.perl6.org use it? 15:03
moritz just read perl6-users. OH NOEZ 15:05
colomon moritz: what's up?
moritz anticipates another totally useless thread
15:05 icwiener_ joined
moritz "Does there currently exist a set of criteria by which Perl6, or an implementation thereof, can be defined as "production-ready"? 15:05
"
tadzik when is that?
moritz I'm inclined to answer "no", or put that thread on my ignore list before I read any more mails 15:06
tadzik oh, it's "now()"
moritz like, 4 minutes ago
tadzik moritz: please don't
moritz which one?
tadzik if they keep asking, then we probably need to announce it wide and open
more wide and more open, if needed. And reply to the email with the link 15:07
then put it in some FAQ, and then we can dance macarena and laugh everytime someone asks that
so far, I can understand their worries
15:07 icwiener left
tadzik so, who wants to blog about this? :) 15:08
masak moritz: it's natural of people becoming more involved asking questions like these. think of it as an initiation rite.
moritz: and the answers we give are usually so warped by our echo chamber that they don't really make it across. so people keep asking. 15:09
tadzik like with "when will perl6 be complete, and how soon is that" 15:10
moritz ok, I've written a reply, against better judgement 15:11
tadzik given the api change, as in repo-url => source-url in META.info, how should things like this be announced? Make a module installer complain about this? It's stupid, not every user is a module developer 15:13
15:13 pernatiy joined
tadzik moritz: good too (the reply) 15:14
that quite sums it up
masak also sent a reply 15:15
tadzik: I'd suggest doing what you did last time: bugging developers until everyone's switched over.
tadzik: if you phrase it in the form of a badge to be gained, it's not so bad :)
15:16 gdey joined
masak "get the source-url badge for your Perl 6 module!" 15:16
s/get/earn/
"here's what you need to do:" -- and then very concrete instructions, step by step.
that, combined with nagging. 15:17
15:18 leprevost joined
tadzik so 1) panda commit, 2) perl6-users mail, 3) hacking on modules.perl6.org to make it ecosystem-friendly, 4) adding an Up-to-date badge for the modules 15:18
s/ecosystem/new ecosystem/
and hopefully 5) merging the new-ecosystem 15:19
frettled tadzik: wrists? :)
tadzik frettled: oh, how did the biking go? :)
masak tadzik: with (2), maybe a blog post as well. easier to link to when people ask for instructions.
and easier to update after the fact.
frettled tadzik: just fine, but I'm exhausted, I underestimated the needed energy intake before the trip, so I ended up doing ≈ 40-45 minutes on reserve energy. :) 15:20
tadzik frettled: I was skateboarding on thursday and broke my wrist, hence my warning: watch out :)
frettled tadzik: aha!
15:20 gdey left
tadzik oh, shiny! 15:20
.u ≈
phenny U+2248 ALMOST EQUAL TO (≈)
tadzik I need this in my keyboard layout
frettled tadzik: But broken wrists suck :( You have my sympathy! (For us bicylists, it's the collarbone that we worry about. ;) 15:21
TimToady .u ≋
phenny U+224B TRIPLE TILDE (≋)
masak ouch, collarbone. :/ 15:22
TimToady masak: btw, STD used to try to parse semi as an operator, but it's much simpler to parse ; as statement sep 15:24
then instead of subscripts supplying context at compile time, you merely transform a statement list into a lol at reduction time
15:24 gdey joined
tadzik ≈≈≈ 15:24
yay :)
TimToady and at the same time, we got list comprehension improvements by defaulting bracketed things to statementlist 15:26
frettled tadzik++
or perhaps that should be:
tadzik±±
15:27 rjbond3rd joined
TimToady tadzik∓∓ 15:27
frettled: I always thought it was the cranium that bicyclists worry about the most... 15:28
15:28 orphu joined
tadzik I should github that keyboard layout, for if I lose it, I won't be able to type again 15:28
masak TimToady: oh! 15:29
frettled TimToady: nah, that's protected by the Helmet of Invincibility.
TimToady and if you break your cranium, your worries are over, I guess
masak TimToady: well, I'm not sure I can do that from a module, since it needs to be done at compile time.
15:29 gdey left
masak so I'll just keep heading down the path I've set out. 15:29
but it's good to know that it's really the same semicolon even within lols. thanks. 15:30
std: 1..2..3
p6eval std 4608239: OUTPUT«===SORRY!===␤".." and ".." are non-associative and require parens at /tmp/4tIHW8ezru line 1:␤------> 1..2..⏏3␤Check failed␤FAILED 00:01 120m␤»
masak oh, good. 15:31
rakudo: say (1..2..3).perl
p6eval rakudo 5ac05e: OUTPUT«2..3␤»
masak submits rakudobug
rakudo: say (7..8..9).perl
tadzik rakudo: my %a; given %a<foo> { when '' { say 'a' }; when Any { say 'b' };default { say 'c' } }
p6eval rakudo 5ac05e: OUTPUT«2..9␤»
rakudo 5ac05e: OUTPUT«b␤»
15:31 rjbond3rd left
tadzik rakudo: my %a; %a<b> = 5; say %a<a> // %a<b> 15:32
p6eval rakudo 5ac05e: OUTPUT«5␤»
masak ==> STORE 15:33
TimToady masak is FETCHing
jnthn gets out his circularity chain saw and tries to get NQP (and thus later Rakudo) to have a view of packages that somewhat matches the synopses 15:35
TimToady the synopses define packages more by what they don't do (anymore) than by what they do do... 15:36
jnthn aye 15:37
Things are...very lexical :)
tadzik ISTR a discussion about what do we actually need packages for
TimToady except when they're MOPy
tadzik when a package can't just be a module?
jnthn TimToady: I'm still pondering that a particular compilation unit's view of GLOBAL (maybe to be merged into the loading unit's one) lives in UNIT::GLOBAL
TimToady you can still register packages as failovers via CANDO
you can still use packages to make variables globally visible 15:38
jnthn TimToady: I don't see the spec saying it can be, but I don't see anything saying I can't do it that way either. :)
And it makes loading quite sane
I mean, it needs the UNIT of the module being loaded anyway, to find EXPORT
TimToady well, the peculiar view has to have some name or other; I think STD used GLOBALish, but it's certainly negotiable 15:39
jnthn Really the unit's view of GLOBAL wants to be accessible the same way, imo.
15:39 gdey joined
TimToady the question is whether our GLOBAL unification ends up looking more like mixin/shadowing or composing/unification 15:39
jnthn Hmm, I guess calling it GLOBAL is confusing 'cus it's not really what GLOBAL::Foo::Bar would map to
As that has to map to the final merged view, otherwise it's not very, well, global. :) 15:40
TimToady what I think
that's why I called it GLOBALish
15:41 risou_ joined
jnthn Aye, I start to appreciate that now. :) 15:41
TimToady .o(what is something before it's global?)
jnthn Ambitious? :) 15:42
TimToady GLOBALescent
15:43 risou left
TimToady HEMISPHERICAL 15:43
REGIONAL
moritz CONTINENTAL
TimToady OCEANIC
TITANIC
oh, wait... 15:44
MULTINATIONAL
TECTONIC 15:45
TimToady pictures all these UNIT plates grinding against each other
GLOBALIZATION
FREE TRADE ASSOCIATION 15:46
15:46 justatheory joined
TimToady wait, that ttiar, unless it's ttiar... 15:46
15:49 pmurias joined
TimToady is now thinking about Miss X | Miss Y | Miss Z ==> Miss Universe 15:49
TimToady now wonders whether we 15:50
will end up with a UNIVERSE outside of PROCESS outside of GLOBAL
.oO(Before breakfast is the easiest time to believe six impossible things.)
15:51
15:56 JimmyZ joined 16:04 am0c joined
ncow hi. I'm attempting to compile rakudo star 2011.01 (is that really the version number?), I started it at around 22:00 before going to bed, it's now 09:05 and 'make' is still running. 16:05
How long does it take to build this, good grief
TimToady how much memory do you have? 16:06
you're probably thrashing
ncow Perl 5 takes under 10 min on this machine, Perl 6 really needs to take 10+ hours (11 so far) ?
this machine has about 256, and 2 GB in swap 16:07
TimToady the threshold for thrashing is a well known discontinuity in computer performance
and rakudo has a big file to compile
ncow yeah it is thrashing, but the system is still responsive
TimToady responsiveness will usually depend on whether you're trying to do something disk-bound 16:08
CPU is idle mostly
ncow TimToady: granted, but perhaps maybe the devs will realize this may not be the best way to build a programming language compiler
TimToady there are tradeoffs... 16:09
ncow I mean this takes more than twice as long as building a modern gcc
moritz ncow: we're working on reducing the memory footprint during compilation and runtime. But it's not an easy task.
jnthn The devs understand the issue fairly well, and care about it, but have to care about dozens of other things too. :)
moritz well, C is a simple language in comparison to Perl 6
ncow (I think last time I build gcc on this box it took maybe 2 hours, or less
jnthn Anyway, memory usage improvements for AST nodes and match objects are in the works already. 16:10
ncow jnthn: I get that, it just seems like a bad move over all to have designed it in this way at all. OH well
jnthn And those are the big cost for the compilation.
ncow: Designed what in what way, specifically?
moritz ncow: we didn't design rakudo with the goal of consuming large amounts of memory during compilation :-) 16:11
we just decided to focus on features first, and resource usage second
which seems to have worked out pretty well, considering the community we built around it
TimToady and as a temporary workaround, adding memory works pretty well :) 16:12
jnthn The answer isn't really to try and find weird ways to break a single lexical scope over a bunch of files and then try and pretend it's one scope. It's to make compiling something of the size of core.pm not consume crazy resources.
tadzik ncow: it takes about 5-10 minutes on my 2 GB machine, so it's not exactly how you think 16:13
ncow I guess what I mean is, I don't really understand why it isn't a straight up C source package like Perl 5 is (for example)
TimToady it depends on how you want your interpreter loop to look too; my impression is that core.pm compiles all together so that it can "goto" from one instruction to another "efficiently", for some definition of both of those 16:14
moritz there are several reasons
ncow tadzik: I'd by lying if I said this box had the newest hardware, but I'm just comparing this to the realive ease it has in building Perl 5 and other source packages
TimToady Perl 5 is not trying to do nearly as much as Perl 6 is
moritz 1) there's an impedance mismatch between rakudo and parrot, for which we pay with increased resource usage
jnthn Trying to build a Perl 6 compiler entirely in C is FAR harder than a Perl 5 one, in my view. 16:15
moritz 2) Perl 6 needs a much more elaborate runtime environment than p5 or C
16:15 leprevost left
moritz 3) even the Perl 5 developers acknowledge that perl5 is not the easiest project to hack on. The efficiency comes at a great price: decreased hackability 16:16
we chose not to pay that price up-front
TimToady 4) Perl 6 is not written in fiddly C like P5 is, but in a higher level language (Perl 6 itself, eventually)
or maybe that's the same as 3
moritz there's certainly a connection 16:17
tadzik ncow: I understand 16:18
ncow: don't get me wrong, I'm not happy with it either
ncow TimToady: ok but that sounds like a chick-and-egg scenario: "It's written in Perl 6, but if you don't already have Perl 6, how are you going to build Perl 6, but if you already have Perl 6, then why do you need to build Perl 6?!"
moritz ncow: GCC is also written in C
ncow: you could ask the exact same question about C 16:19
ncow no I know it's not exactly that, but it does seem clearing with C sources. I'm not sure how it actually is with Perl 6 (I think it's using Perl 5 for the initial build, as it runs Configure.PL)
tadzik and about coffee
to know why do you need coffee, you need coffee
ncow moritz: thats' becuase you usually build gcc with another intance of gcc or other C compiler
moritz is not coffee-bootstrapped
TimToady ncow: but the nice thing about bootstrapping in Perl 6 is that whenever Perl 6 gets faster, our compiler gets faster too 16:20
moritz ncow: but why do you do it, if you already have a C compiler?
ncow I've build full tool-chains, and you always start with a host system that has one already
TimToady (rakudo is not really bootstrapped yet, though niecza is)
ncow s/build/built/
TimToady (for the most part)
ncow TimToady: true
niecza? Sounds central/eastern european (polosh, czec, russian?) 16:21
TimToady eventually we'd like Perl 6 to replace a lot of programming that currently has to be done in C or C++
16:22 jedai_ joined
ncow you want to replace all C packages out there? 16:22
16:22 jedai left
moritz not all 16:23
don't think in absolutes
ncow or are you talking about Perl related, like XS stuff?
tadzik ncow: yep, it's Polish-inspired
ncow oh, tak :)
bardzo dobze
TimToady
.oO(Pragmatic idealists think in absolutes but act in relatives.)
16:30
16:33 JimmyZ left
TimToady The truth is somewhere in the middle; we never get to absolutes, but it's not true that everything is equally relative; reality is mostly defined not by straight lines but by asymptotes. 16:33
That's the Real Meaning of Postmodernism, or an approximation to it. :) 16:34
masak ncow: hi. nice meeting you. 16:36
ncow: don't think we're blind to the fact that Rakudo is slow and memory-hungry. quite the opposite.
ncow: and we want it to improve as well. but in practice, the skills to actually do that sit with a small number of people whose time is very limited. 16:37
TimToady we could do it a little faster if someone would give us a billion dollars, but then people would fight more...
masak I think we might as well adopt the "skunkworks project" moniker and run with it... 16:38
not that I'd object to someone donating a billion dollars to the Perl 6 effort. 16:39
TimToady when people invest more they usually expect more ROI
but more investment of time and money will come naturally as we asymptotically approach world domination 16:40
16:41 bacek left
masak aye. 16:41
TimToady and we should remember that you can kill an engine as easily by flooding it as by starving it
16:41 risou joined
masak when I look at the Rakudo project in one-year jumps, it's easy to see the progress. 16:42
TimToady or is this analogy dying now that we're done with carbeurators...
masak ;)
maybe someone should slip us a billion dollars distributed over 10 years.
TimToady I think of it more in surfer terms; you have to catch the wave as it builds up, neither too soon nor too late. 16:43
they have to pretend it's less money to begin with, I think
masak Pugs caused a wave. I know because I felt it abate in 2007.
TimToady that was a wipout :) 16:44
*wipe
16:44 risou_ left
masak Rakudo caused another wave, but it was much longer and flatter. 16:44
TimToady niecza is currently looking more like a tsunami...
masak Niecza might well cause a wave almost as spiked as Pugs, but it's partly shadowed by Rakudo's wave.
but it's looking more attractive with every release. 16:45
dalek p/ctmo: a0bc338 | jonathan++ | src/stage0/ (7 files):
Update bootstrap so that int/num/str are stored lexically in the setting.
16:46
p/ctmo: 2dd24da | jonathan++ | src/HLL/SerializationContextBuilder.pm:
Just re-use the perfectly good existing mechanism for getting hold of UNIT of a module being loaded; no need to invent a new one.
p/ctmo: bc6e222 | jonathan++ | src/Regex (2 files):
Give the PIR Regex module a block that can be considered its otuer scope. Twiddle the way we find 'int' to remove the hack for this and just do it by normal lexical lookup in the setting.
TimToady and it's not all written in Haskell :)
masak ;) 16:48
I got Greg Young (the teacher at the CQRS course) to have a look at Perl 6. this was one of his reactions: twitter.com/gregyoung/status/58540276943306752
not sure what (or whether) to say to that.
s/say/reply/ 16:49
moritz well, don't
jnthn ...of all the things to pick out...
daxim__ I read it as implied "that shan't be possible because I think it's not a good idea"
TimToady ugly things should look ugly, and that does 16:50
moritz you *can* obfuscate in nearly all languages. I'm sure Mr. Young knows that
masak jnthn: the other thing he picked out was "I don't like file-scoped class decls." odd indeed.
16:50 Axius left
masak I like TimToady's and moritz' replies. those are the one's I'd have replied with, had I replied. 16:51
TimToady seems to be falling into the anything not prohibited is mandatory falacy
*fallacy
masak I replied that it's not an either-or thing. you could do it with a block or with a file-scoped declaration. 16:52
16:53 hanekomu left
TimToady might just be the typical allergic reaction to TMTOWTDI too 16:53
16:53 daxim__ left 16:54 Rotwang joined
TimToady but ::($name) is ugly in the same way that en.wikipedia.org/wiki/Escape_tower is ugly 17:00
17:00 colomon left 17:01 Vlavv left 17:02 Vlavv joined 17:04 colomon joined
masak TimToady: how is it ugly "in the same way"? 17:07
17:08 mj41 joined
tadzik one man's ugly is another man's prettu 17:09
...that turned out deeper than I wanted it to be 17:10
masak maybe the analogy is that neither ::($name) nor the escape tower was built to be pretty. 17:14
they were meant to accomplish something with little fanfare or eye towards esthetics. 17:15
17:21 araujo joined 17:23 hanekomu joined
masak but yes, beauty is also in the eye of the one doing the beholding. 17:24
TimToady they're both escape mechanisms, like BEGIN or eval
masak oh, I see.
a friend of mine is very proud of Ruby's '5.times do ...' feature. when I see that one, all I can think is "what's that method doing on a Fixint? 17:25
tadzik I have something like this coded for Perl6 I think :) 17:26
TimToady except we prohibit ttiar, so something has to bypass that 17:27
5.times: {...} would be pretty easy
tadzik yep, that's what I mean
17:28 whiteknight left
masak my point is not that it could be done in Perl 6, but that what's syntactically pretty to my friend is semantically ugly to me. 17:29
17:30 hanekomu left
TimToady which is why that isn't built-in, which is kinda our point :) 17:30
tadzik moritz: how is build_projects_list.pl treating you recently? It doesn't work for me
Use of uninitialized value $contents in split at build-project-list.pl line 123.
TimToady 買い物をします。& 17:31
dalek p/ctmo: 7054621 | jonathan++ | src/ (5 files):
Enable a way to get hold of 6model's core meta-object 'KnowHOW' without installing it in the root of the global Parrot namespace (so that this pollution can be cleaned up).
17:33
p/ctmo: 1ed385e | jonathan++ | / (25 files):
While cleaning up anyway, start the long-promised removal of the name Rakudo from the 6model core and NQP.
p/ctmo: 7462ede | jonathan++ | / (7 files):
Another round of changes; seems we're consistently referring to 6model objects now.
masak ctmo ftw! jnthn++ 17:35
jnthn is happy to be slowly getting things moving again :) 17:37
17:39 s1n left 17:41 s1n joined 17:42 risou_ joined 17:43 dju_ joined 17:44 lateau left 17:45 risou left 17:46 dju left, twinshadow left
tadzik gosh, it's ssled github doing tricks again 17:47
17:54 alester joined, nymacro left 17:56 Sarten-X left
tadzik masak: processing github.com/masak/perl6-literate/ra.../META.info 17:57
malformed UTF-8 character in JSON string, at character offset 109 (before "\x{82c}a Haskell) in...") at build-project-list.pl line 127.
masak: *poke*
is UTF-8 JSON-illegal? 17:58
or I need to decode_utf8 that first? I never know
moritz \x{82c} is already decoded, and probably shouldn't be 17:59
masak clearly, something's odd there. 18:00
tadzik encohprocessing github.com/masak/perl6-literate/ra.../META.info 18:01
bleh, this darn cast
encode_utf8 did it
one day I'll learn it instead of shotgun coding every time I need it
moritz tadzik: read perlgeek.de/en/article/encodings-and-unicode if you want to learn it :-) 18:02
tadzik yeah, I remember that post :)
I remember reading it, but I don't remember the content good enough to put it into practice. Plus I very rarely need it
okay, build_projects_list is a bit slower than it was, but it seems to work for META.infos 18:03
it needs to be ran with PERL_LWP_SSL_VERIFY_HOSTNAME=0 though
*mumble grumble github mumble stupid mumble grumble* 18:04
18:05 Sarten-X joined, JimmyZ joined
tadzik www.cpan.org/ got a lot prettier recently, if you didn't know 18:06
masak improvements++ 18:07
18:08 Mowah left
masak tadzik: the basic rule is that outside of your program, things are sequences of bytes. inside your program, things should be strings (=sequences of characters). the two are not the same, so you need to convert at the I/O boundaries. 18:09
tadzik yep, I'm aware of that 18:10
so how does moritz know whether "before \x{82c}a Haskell" is encoded or decoded? :)
moritz because encoded strings contain bytes 18:11
and 0x82c > 0xFF
tadzik mhm 18:12
sorear good * #perl6
masak sorear! \o/ 18:13
tadzik yay, win! 18:14
sorear niecza: sub infix:<;>($lhs, $rhs) {}; { say "A"; say "B" } 18:15
p6eval niecza v4-65-g79da9b6: OUTPUT«Potential difficulties:␤ $lhs is declared but not used at /tmp/4zHVBt8dS0 line 1:␤------> sub infix:<;>(⏏$lhs, $rhs) {}; { say "A"; say "B" }␤ $rhs is declared but not used at /tmp/4zHVBt8dS0 line 1:␤------> sub infix:<;>($lhs,
..⏏$rhs) {}; { say "…
tadzik moritz, look: i.imgur.com/j1TEO.png 18:16
note the new names ;)
masak doesn't know what to look for 18:17
tadzik masak: note how it's Acme::Meow. Now look at modules.perl6.org, and glue the changes with the new ecosystem
masak tadzik: ah. 18:18
tadzik basically: modules.perl6.org is now META.info compatibile
masak \o/
tadzik: let me just say that I admire the work that you're doing with the ecosystem. tadzik++ 18:19
moritz tadzik: nice
tadzik thank you masak :)
moritz: is build_projects_list.pl ran with this fancy env variable currently?
moritz: and, any againsts about me pushing this, merging my ecosystem fork with perl6/ecosystem and fulfill the destiny? :) 18:20
* fulfilling
moritz perl build-project-list.pl /var/www/modules.perl6.org/ 2>&1 >>~/update-mp6.log
is the call
tadzik: go right ahead
tadzik I'm quite sure you need PERL_LWP_SSL_VERIFY_HOSTNAME=0 perl build-project-list.pl 18:21
or maybe not, look in the logs
it didn't work for me at least
moritz BEGIN { $ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0 } should do
tadzik w/o BEGIN it worked only for the 1st get() in here 18:22
sorear niecza: sub infix:<;>($lhs, $rhs) { say $lhs, $rhs }; { say "A"; say "B" } #OK
tadzik let's see
p6eval niecza v4-65-g79da9b6: OUTPUT«A␤B␤»
sorear aww
ncow: hi!
dalek osystem: 080f198 | tadzik++ | spec.pod:
Add a bare-bones META.info spec
18:24
osystem: acee9be | moritz++ | spec.pod:
s/repo/source/, make source-type optional
osystem: 202e965 | tadzik++ | spec.pod:
Add a note about doc/ directory
tadzik hide!
osystem: 1b45a6f | tadzik++ | spec.pod:
POD fix
osystem: 2f232c8 | tadzik++ | spec.pod:
Clarify where are the doc/ contents installed
osystem: 0aa3d75 | tadzik++ | projects.list:
Merge git://github.com/perl6/ecosystem
tadzik oh, that wasn't that bad
masak dalek survived :) 18:25
tadzik yeah, I'm suprised
where did those dozens of META.list and SHELTER commits go?
dalek must have remorted the last 5 commits
dalek++
18:26 mayuresh joined 18:27 envi left
dalek href="https://modules.perl6.org:">modules.perl6.org: c5f7f34 | tadzik++ | web/build-project-list.pl:
Make build_projects_list.pl aware of the new ecosystem
18:27
tadzik so, an up-to-date badge. Definitely a Panda picture 18:28
18:29 ymasory left 18:30 mayuresh left
tadzik en.wikipedia.org/wiki/File:Panda_Cu..._China.JPG -- perfect 18:31
masak awwww
18:32 justatheory left, justatheory joined
tadzik I _so_ regret this will have to be small on the modules page 18:34
moritz masak: about the Class/Teacher/Student example yesterday... I'm still not convinced if the separation you suggested is beneficial 18:35
masak: because in the end, you still needs reports of who attends or teaches which class
so there needs to be some amount of coupling anyway - when you try to reduce it, you introduce other complexity (waterbed theory et al) 18:36
18:36 justatheory left
masak moritz: I must confess that the rationales behind aggregates still confuse me. 18:37
I expect to have to go through a cycle of trying them out and failing a bit before really grokking them. 18:38
moritz masak: one more thing... in the shopping cart example, you mentioned that the cart ID is the only reference in a shopping cart item 18:39
masak: but what about a reference to product description/price etc.?
masak moritz: short answer: if that's important in the shopping cart (and it likely is in this case), copy it over. 18:40
moritz: that's what we did with Student-Schedule-Enrollment in the third image.
and it's just a more extreme form of denormalization. 18:41
moritz well, of course it's important, otherwise we wouldn't know what to ship and bill :-)
masak there's a principle behind all this madness: "Tell, don't ask" 18:42
we're making the Cart more independent of Products.
and things like Enrollment are called "transaction objects" or "time interval objects". 18:43
18:43 glass joined, risou joined 18:44 ymasory joined 18:45 risou_ left
PerlJam masak: When you "try and fail" in the process of learning, if you could keep snapshots of each attempt along with some notes, that would be excellent material for a tutorial I think. 18:46
masak hm, interesting idea. 18:48
jnthn and I just set Friday as a full-day hackathon for trying out CQRS and Event Sourcing.
we could easily inhabit #cqrs-perl6 while doing that, and share our insights along the way. 18:49
we're building a next-generation real-time connection game server. :)
tadzik wow :)
jnthn \o/ 18:50
masak: How many gallons of beer will this need? ;)
masak (Druid is a connection game. Hex, Y, and Gonnect are a few others. they're my favourite kind of games.)
jnthn: I'll let you be the domain expert of that :P
jnthn aggressively denormalizes systembolaget 18:51
arnsholt jnthn: Forgot about the insane opening hours again? =) 18:52
jnthn :P 18:53
18:53 ymasory left 18:54 Mowah joined
sorear masak: hmm. Think I should rejoin #perl6-cqrs? 18:55
18:57 mkramer1 joined
masak sorear: it's #cqrs-perl6, and I can't answer that for you :) 18:59
been fairly quiet there today.
PerlJam I don't really "get" cqrs, but it seems that one of the big ideas is to have a user-centric API rather than a programmer-centric one. 19:01
s/rather than/in addition to/ perhaps
masak yes, it usually starts in the task-based interface. 19:03
Greg Young likes to point out that you can't really do DDD on the traditional server/client model, where only DTOs are sent back and forth. 19:04
because DDD cares more about the domain model than the CRUD mould allows.
arnsholt jnthn: Same thing happens to me (every damn time, just about) and I'm a native! >.< 19:07
PerlJam masak: and another big idea is .... laziness :)
masak yes. under the name of "eventual consistency". 19:08
19:08 drbean left
masak but the term "consistency" shouldn't be discussed with clients. it's better to frame things in terms of time, and say that the data is "stale" or "old". 19:09
19:13 am0c left 19:15 drbean joined 19:18 noganex_ joined 19:19 noganex left 19:25 glass left
tadzik moritz: did you write build_projects_list.pl? 19:35
moritz tadzik: partially
tadzik hmm
I set a $projects->{$name}->{some_badge} in get_projects(), then as I see the $projects hash travels around the source code, and in the meantime the badge is lost 19:36
19:50 alester left 19:57 woosley left
dalek href="https://modules.perl6.org:">modules.perl6.org: 1353611 | tadzik++ | web/ (3 files):
Award a Panda badge to projects which conform to the newest specs
19:57
tadzik I hope I managed to make it before 22 :)
aloha: clock?
masak aloha: time?
aloha: chrono-something? 19:58
tadzik it responds to clock? on #parrot
frettled aloha: aloha!
dukeleto aloha msg aloha say hello
tadzik aloha: wake up! 19:59
we're losing her! /o\
tadzik runs in circles
dukeleto walks in the opposite direction in precessing ellipses 20:00
frettled how cryptic of you
tadzik phenny: "parabola"? 20:01
phenny tadzik: "parabola" (it to en, translate.google.com)
tadzik pff
phenny: pl "parabola"?
phenny tadzik: "parabola" (pl to en, translate.google.com)
masak phenny: sv "ett parallelogram är blott en galen kvadrat"? 20:05
phenny masak: "a parallelogram is but a crazy square" (sv to en, translate.google.com)
tadzik phenny: pl "równoległobok to kopnięty kwadrat"? 20:06
phenny tadzik: "This kicked square parallelogram" (pl to en, translate.google.com)
20:07 y3llow_ joined 20:08 pothos left, pothos_ joined, justatheory joined 20:09 justatheory left, y3llow left, y3llow_ left 20:10 pothos_ is now known as pothos, y3llow joined 20:11 starcoder left, starcoder joined, dual joined
sorear ncow: ping 20:14
20:15 molaf left
frettled people.su.se/~jj/junk/dragon-vomit.png 20:15
tadzik: ^ for an, ahem, better translation thingy. 20:16
20:16 y3llow left, y3llow joined
jnthn frettled: bwahaaha 20:18
frettled: Is that for real?!
:)
frettled Yes, fortunately. :)
jnthn omg
:)
frettled jnthn: groups.google.com/group/shibboleth-...a3a7?pli=1 20:19
tadzik ;)
Install 2,3 repeat, spank, vomit blows
jnthn dragon with intercourse to goat-time? 20:20
20:21 justatheory joined
masak to how many times like the wind, a pole, and the dragon? 20:22
that's what I always end up asking myself. 20:23
jnthn Please apologize for your stupidity. :P
frettled jnthn: almost like reading Usenet, eh?
jnthn frettled: Yeah, apart from this makes more sense.
;)
frettled \o/
masak jnthn: this insult to father's stones? 20:24
anyway. there are many thank you.
frettled The answer in Japanese is rather friendly, though, if we can believe Google translate: «Matsumoto, hello. This is Nate. Google Translator is a incompetent, is vulgar. (Laughs) Be sure to email me directly. Not. You can write in Japanese. I will help you.»
masak awww :) 20:25
jnthn :)
masak frettled: I find it somewhat amusing that the list is called "shibboleth-users" :P
frettled masak: yes, wonderfully ironic :D
jnthn had noticed that too :)
masak it's like ra-i-ain on your wedding da-y-y-y. 20:26
SORRY!!!!!
jnthn Yes, alanis... :P 20:27
masak a little too ironic. don't you think?
frettled Ironic, ironic, I want your &s all over my <BODY>. 20:28
masak anyway, I think the take-home message here is "the wind, pole, and dragon".
frettled masak: not to forget that if you lack skill with the goat-time, you should get help.
masak frettled: I initially read that as "I want your ampersands all over my body"... :) 20:29
jnthn I read it as a reference to the sub s...
moritz geek erotic? :-)
masak frettled: true. lacking skill with the goat-time would be an insult to father's stones.
frettled And we don't want that, do we? 20:31
jnthn Oh no, that could lead to parsing configuration for JSP error handler. 20:34
oh, wait...
tadzik modules.perl6.org/ -- Pandas! 20:35
jnthn Unbearably cute \o/
frettled w00t! 20:36
tadzik the Big Image was not only too big, but too cute to be shown on the website :)
the perl6-users email explains it all 20:37
dukeleto likes pandas
tadzik: i see you have been doing good work up here in Perl 6 land 20:38
tadzik: how (if at all) does Pies relate to Plumage?
tadzik dukeleto: just finishing what I started few months ago :) 20:39
20:39 gdey left
tadzik dukeleto: no Plumage connection, yet I plan to look into "how plumage handles stuff" and analyze for the possible ideas exchange 20:39
dukeleto tadzik: yes, lots of thought went into plumage, and it would be nice if plumage and pies knew enough about each other to not stomp on each other and hopefully, work well together 20:41
tadzik dukeleto: I have a feeling that Plumage should be possible to be implemented as a Pies implementation. If not, then Pies is probably not good enough
dukeleto tadzik: sounds like -Ofun to me
tadzik Plumage in nqp, right?
dukeleto tadzik: yep 20:42
tadzik: the newer flavor of nqp :)
tadzik :)
which newer? :)
dukeleto tadzik: the older newer
tadzik: the artisticly licensed code formerly known as nqp-rx (sorry, prince) 20:43
tadzik I see
20:51 justatheory left 20:53 kensanata joined 21:00 orphu left 21:01 bacek joined 21:25 dorlamm joined 21:28 Mowah left 21:29 donri left
tadzik ...how silent 21:57
masak well, I stopped coding and helped jnthn design a polar bear with a viking helmet. 21:58
and now it's sleep o'clock. 21:59
jnthn I wrote lots about how awesome Malmö is and why everybody should come in June to do Perl stuff. :)
masak++ # makes awesome polar bears
tadzik that explains the silence. I wouldn't want the bear to wake up eithe 22:00
masak jnthn: thanks :)
tadzik share!
masak soon enough :) 22:01
jnthn Will be on the workshop website very soon (tomorrow, maybe... :)).
Or in next few days, anyway :)
22:06 dorlamm left 22:10 bacek left
tadzik workshop website? 22:11
masak tadzik: we're doing Nordic Perl Workshop this year.
tadzik oh cool 22:13
lue hello worlds! o/ 22:15
masak czesc lue!
'night, #perl6. 22:16
tadzik o/
22:16 masak left, bacek joined 22:27 bacek left 22:34 Rotwang left 22:41 bacek joined 22:42 coldhead joined 22:44 icwiener_ left 22:45 ymasory joined, Transformer joined 22:48 Transformer left
jnthn sleep & 22:55
22:59 kst left 23:01 justatheory joined 23:05 ponbiki left 23:06 pmurias left 23:11 kst joined 23:45 twinshadow joined 23:47 mj41 left