Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2011-04-14

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:02 daxim_ joined #perl6
00:02 daxim left #perl6
00:03 Rotwang left #perl6
00:09 sftp left #perl6
00:12 sftp joined #perl6
00:18 sftp_ joined #perl6
00:18 sftp left #perl6
00:21 wallberg left #perl6
00:21 silent_h_ left #perl6
00:25 mikemol left #perl6
00:29 cdarroch left #perl6
00:29 tylercurtis left #perl6
00:32 leprevost joined #perl6
00:33 impious left #perl6
00:37 baest_ joined #perl6
00:39 baest left #perl6
00:40 risou joined #perl6
00:45 risou left #perl6
00:46 am0c left #perl6
00:57 mtk left #perl6
01:00 noganex_ joined #perl6
01:01 woosley joined #perl6
01:03 flatwhatson joined #perl6
01:03 noganex left #perl6
01:05 mtk joined #perl6
01:08 tylercurtis joined #perl6
01:11 JimmyZ__ left #perl6
01:16 orafu left #perl6
01:17 orafu joined #perl6
01:18 whiteknight left #perl6
01:35 _jaldhar left #perl6
01:35 hudnix left #perl6
01:36 _jaldhar joined #perl6
01:39 hudnix joined #perl6
01:45 jferrero left #perl6
02:00 DarthGandalf joined #perl6
02:00 orafu left #perl6
02:01 cosimo joined #perl6
02:04 orafu joined #perl6
02:04 s1n joined #perl6
02:10 donri left #perl6
02:10 hudnix left #perl6
02:10 leprevost_ joined #perl6
02:12 leprevost left #perl6
02:26 petdance joined #perl6
02:34 mikemol joined #perl6
02:53 leprevost_ left #perl6
02:59 petdance left #perl6
03:11 meswami joined #perl6
03:15 petdance joined #perl6
03:18 justatheory joined #perl6
03:23 Su-Shee_ joined #perl6
03:25 Su-Shee left #perl6
03:35 Alias joined #perl6
03:35 ggoebel perl6: 'hello'.flip.say
03:36 p6eval niecza v4-54-g2a67dcf: OUTPUT«Unhandled exception: Unable to resolve method flip in class Str␤  at /tmp/lp4F8tgjzB line 1 (MAIN mainline @ 1)␤  at /home/p6eval/niecza/lib/CORE.setting line 1307 (CORE C549_ANON @ 2)␤  at /home/p6eval/niecza/lib/CORE.setting line 1308 (CORE module-CORE @ 39)␤  at
03:36 p6eval ../home/p6eval/nie…
03:36 p6eval ..rakudo 4bf132: OUTPUT«olleh␤»
03:36 p6eval ..pugs: OUTPUT«*** No such method in class Str: "&flip"␤    at /tmp/YEjJ5tnV6s line 1, column 1 - line 2, column 1␤»
03:37 ggoebel phenny: tell moritz let me know where to send a postcard for your nephew 'moc tod liamg ta lebeog tod tterrag'.flip.say
03:37 phenny ggoebel: I'll pass that on when moritz is around.
03:38 am0c joined #perl6
03:52 GinoMan joined #perl6
03:55 orafu left #perl6
03:56 orafu joined #perl6
03:56 satyavvd joined #perl6
04:01 arnsholt left #perl6
04:07 GinoMan left #perl6
04:08 ggoebel left #perl6
04:08 ggoebel joined #perl6
04:15 am0c^ joined #perl6
04:18 arnsholt joined #perl6
04:19 nymacro joined #perl6
04:23 kaare_ joined #perl6
04:37 prammer left #perl6
04:50 petdance left #perl6
04:52 satyavvd left #perl6
05:01 JimmyZ joined #perl6
05:10 birdwindupbird joined #perl6
05:15 sftp_ left #perl6
05:31 satyavvd joined #perl6
05:41 am0c^ left #perl6
05:48 wtw joined #perl6
05:55 JimmyZ left #perl6
05:57 ggoebel left #perl6
06:01 am0c left #perl6
06:02 justatheory left #perl6
06:03 justatheory joined #perl6
06:03 ggoebel joined #perl6
06:03 am0c joined #perl6
06:07 Tedd1^ left #perl6
06:14 ggoebel left #perl6
06:16 sjohnson left #perl6
06:17 sjohnson joined #perl6
06:19 Tedd1 joined #perl6
06:20 isBEKaml joined #perl6
06:21 ggoebel joined #perl6
06:28 baest_ is now known as baest
06:28 simcop2387 left #perl6
06:30 moritz ggoebel: thanks, mail sent
06:30 phenny moritz: 03:37Z <ggoebel> tell moritz let me know where to send a postcard for your nephew 'moc tod liamg ta lebeog tod tterrag'.flip.say
06:30 [sbp] left #perl6
06:31 meswami left #perl6
06:35 justatheory left #perl6
06:37 Su-Shee_ is now known as Su-Shee
06:38 simcop2387 joined #perl6
06:44 simcop2387 left #perl6
06:46 mberends left #perl6
06:48 Mowah joined #perl6
06:52 am0c left #perl6
06:52 am0c joined #perl6
06:53 kjeldahlw joined #perl6
06:56 simcop2387 joined #perl6
06:58 cosimo left #perl6
07:08 orafu left #perl6
07:08 donri joined #perl6
07:08 orafu joined #perl6
07:10 noganex_ left #perl6
07:11 noganex joined #perl6
07:22 Chat3466 joined #perl6
07:22 Chat3466 hi all
07:24 Su-Shee left #perl6
07:26 Chat3466 left #perl6
07:31 Mowah left #perl6
07:36 yegor left #perl6
07:51 woosley perl6: mutil sub foo(0, $){}; multi sub foo(Int $n, Str $a="A"){say $a; foo($n-1, $a)}; foo(2,"A")
07:51 p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Multiple declarations of lexical '&foo'␤␤»
07:51 p6eval ..pugs: OUTPUT«*** ␤    Unexpected "foo"␤    expecting "=", subroutine parameters, trait or block␤    at /tmp/j32tdBtNuy line 1, column 11␤»
07:51 p6eval ..niecza v4-54-g2a67dcf: OUTPUT«Unhandled exception: Unable to resolve method ast in class Any␤  at /home/p6eval/niecza/src/NieczaActions.pm6 line 198 (NieczaActions NieczaActions.mangle_longname @ 5)␤  at /home/p6eval/niecza/src/NieczaActions.pm6 line 193 (NieczaActions
07:51 p6eval ..NieczaActions.simple_longname @ 2)␤  at /h…
07:52 woosley perl6: multi sub foo(0, $){}; multi sub foo(Int $n, Str $a="A"){say $a; foo($n-1, $a)}; foo(2,"A")
07:52 p6eval niecza v4-54-g2a67dcf: OUTPUT«Unhandled exception: Unable to resolve method ast in class Any␤  at /home/p6eval/niecza/src/NieczaActions.pm6 line 198 (NieczaActions NieczaActions.mangle_longname @ 5)␤  at /home/p6eval/niecza/src/NieczaActions.pm6 line 193 (NieczaActions NieczaActions.simple_longname
07:52 p6eval ..@ 2)␤  at /h…
07:52 p6eval ..pugs: OUTPUT«*** ␤    Unexpected "0"␤    expecting formal parameter or ")"␤    at /tmp/vsofer3OdT line 1, column 15␤»
07:52 p6eval ..rakudo 4bf132: OUTPUT«No applicable candidates found to dispatch to for 'foo'. Available candidates are:␤:(Int  where (0), Any )␤:(Int $n, Str $a = { ... })␤␤  in main program body at line 22:/tmp/2Q_l7rwDkX␤»
07:53 woosley rakudo: multi sub foo(0, $){}; multi sub foo(Int $n, $a="A"){say $a; foo($n-1, $a)}; foo(2,"A")
07:53 p6eval rakudo 4bf132: OUTPUT«A␤A␤»
07:53 woosley rakudo: multi sub foo(0, $){}; multi sub foo(Int $n, Str $a="A"){say $a; foo($n-1, $a)}; foo(2,"A")
07:53 p6eval rakudo 4bf132: OUTPUT«No applicable candidates found to dispatch to for 'foo'. Available candidates are:␤:(Int  where (0), Any )␤:(Int $n, Str $a = { ... })␤␤  in main program body at line 22:/tmp/ujRNU78DSv␤»
07:54 woosley rakudo: multi sub foo(0, $){}; multi sub foo(Int $n, Str $a="A"){say $a}; foo(2,"A")
07:54 p6eval rakudo 4bf132: OUTPUT«No applicable candidates found to dispatch to for 'foo'. Available candidates are:␤:(Int  where (0), Any )␤:(Int $n, Str $a = { ... })␤␤  in main program body at line 22:/tmp/bHQu4n3fq6␤»
07:56 woosley rakudo: multi sub foo(Int $n, Str $a="A"){say $a}; foo(2,"A")
07:56 p6eval rakudo 4bf132: OUTPUT«A␤»
07:57 woosley hmmm, this should be a rakudo bug
08:00 moritz it is, please submit it (rakudobug@perl.org)
08:00 Rotwang joined #perl6
08:01 isBEKaml multi sub foo(_0_,$) ?
08:02 isBEKaml can a literal simply be used there in a sub ?
08:02 moritz is short for  multi sub foo(Int $ where 0, $)
08:02 miso2217 left #perl6
08:02 isBEKaml ah
08:02 moritz very handy if you declare separate cases for stopping recursion
08:02 woosley rakudo: multi sub foo(0, $){}; multi sub foo(Int $n,  $a="A"){say $a}; foo(2,"A")
08:02 p6eval rakudo 4bf132: OUTPUT«A␤»
08:03 moritz rakudo: multi postfix:<!>(0) { 1 }; multi postfix:<!>(Int $n) { $n * ($n-1)! }; say 5!
08:03 p6eval rakudo 4bf132: OUTPUT«120␤»
08:03 isBEKaml moritz: nice!
08:04 isBEKaml moritz: it'd be even better if we didn't have to declare another sub for a terminating condition. Er, can we define/declare subs within another?
08:05 moritz isBEKaml: you can, but then you can't easily multi dispatch
08:05 moritz isBEKaml: fwiw haskell does something very similar
08:05 moritz fac 0 = 1
08:05 isBEKaml moritz: yes, that's what I was thinking of at first.
08:05 moritz fac x = x * fac (x-1)
08:06 isBEKaml moritz: and another language too, that I'm somewhat familiar with, works on the JVM. Provides TCO that way with inner functions.
08:06 moritz except tht haskell's pattern matching is top down, and compile time
08:06 isBEKaml haskell, once compiled is mostly correct.
08:07 moritz except that my first patch to pugs resulted in an infinite loop
08:08 mathw Haskell's type system is not robust enough to promise correctness just because your program compiles
08:08 mathw I've done some work with dependently typed language, and that kind of thing is incredibly hard :)
08:08 isBEKaml mathw: agda? :)
08:08 mathw I had a lot of "oh dear, it looks like I need to solve the halting problem" moments
08:08 mathw isBEKaml: Epigram
08:09 isBEKaml mathw: Oh, I have Coq and Agda on my list of things to-do-when-I-have-copious-time
08:10 isBEKaml Haskell also doesn't have subtype polymorphism, a feature in Java that I hate to admit. :)
08:11 mathw meh, Haskell has type classes
08:11 mathw Gorgeous, lovely type classes
08:11 isBEKaml type classes are great and everything. How do you define something to say that this has to be of such and such type before I can actually pass this as an argument to this function?
08:12 isBEKaml GADTs can only do so much, but they have been pretty useful so far.
08:15 isBEKaml map :: (a -> b) -> [a] -> [b] can take a function that maps a value of type "a" to a value of type "b" and a list of values of type "a", returning back a list of values of type "b"
08:16 jfried joined #perl6
08:16 isBEKaml now I want map to work only on so and so types, say numeric, so I add a constraint. map :: (Num a) => (a -> b) -> [a] -> [b], but that doesn't cut it for composite data.
08:18 * isBEKaml should just shut up and get back to reading..
08:23 dakkar joined #perl6
08:32 moritz rakudo: multi foo(0, $a) {1 }; multi foo(Int $n, Str $a = 'A'} { 2}; say foo(2, 'A')
08:32 p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Malformed multi at line 22, near "foo(Int $n"␤»
08:33 moritz std: multi foo(0, $a) {1 }; multi foo(Int $n, Str $a = 'A'} { 2}; say foo(2, 'A')
08:33 p6eval std 4608239: OUTPUT«[31m===[0mSORRY![31m===[0m␤Default expression must come last at /tmp/eUn678yCIb line 1:␤------> [32m$a) {1 }; multi foo(Int $n, Str $a = 'A'[33m⏏[31m} { 2}; say foo(2, 'A')[0m␤Unable to parse signature at /tmp/eUn678yCIb line 1:␤------> [32mmulti foo(0, $a) {1 }; multi
08:33 p6eval ..foo…
08:35 dalek roast: 5b94e54 | moritz++ | S06-multi/value-based.t:
08:35 dalek roast: [value-based.t] test for RT #88562, multi dispatch with int literals, anonymous parameters and default values
08:35 dalek roast: review: https://github.com/perl6/roast/commit/5b94e54dc5
08:38 domidumont left #perl6
08:43 mtk left #perl6
08:43 miso2217 joined #perl6
08:46 miso2217 left #perl6
08:51 domidumont joined #perl6
09:01 aindilis left #perl6
09:14 am0c left #perl6
09:16 miso2217 joined #perl6
09:18 snearch joined #perl6
09:31 SHODAN joined #perl6
09:36 starcoder2 left #perl6
09:40 starcoder2 joined #perl6
09:47 beppu joined #perl6
10:08 woosley left #perl6
10:09 snearch left #perl6
10:13 Rotwang left #perl6
10:22 tzhs joined #perl6
10:26 hanekomu joined #perl6
10:38 pernatiy left #perl6
10:42 icwiener joined #perl6
10:58 yegor joined #perl6
10:59 molaf_ left #perl6
11:13 risou joined #perl6
11:15 sftp joined #perl6
11:16 risou_ joined #perl6
11:19 risou left #perl6
11:20 hanekomu left #perl6
11:20 hanekomu joined #perl6
11:50 mux_ is now known as mux
11:54 satyavvd left #perl6
11:54 Patterner left #perl6
11:54 hudnix joined #perl6
11:55 SHODAN left #perl6
11:56 Psyche^ joined #perl6
11:56 Psyche^ is now known as Patterner
12:02 _jaldhar left #perl6
12:03 _jaldhar joined #perl6
12:09 shi joined #perl6
12:09 risou_ left #perl6
12:09 risou joined #perl6
12:17 ymasory left #perl6
12:33 shi left #perl6
12:38 icwiener left #perl6
12:43 bluescreen10 joined #perl6
12:49 Alias_ joined #perl6
12:54 noganex_ joined #perl6
12:55 noganex left #perl6
12:55 noganex_ is now known as noganex
12:55 pernatiy joined #perl6
13:11 hanekomu left #perl6
13:12 hanekomu joined #perl6
13:13 daxim_ left #perl6
13:18 pmurias joined #perl6
13:19 mtk joined #perl6
13:22 hanekomu left #perl6
13:23 awoodland joined #perl6
13:23 hanekomu joined #perl6
13:24 MayDaniel joined #perl6
13:25 Lorn left #perl6
13:27 pmurias is it possible to make ids in a mysql table be assigned sequentially without the gaps being filled in so if i have ids 1,300,301 the new id will be 302 not 2
13:27 pmurias ?
13:27 pmurias sorry
13:27 pmurias meant to ask on #mysql
13:28 awoodland left #perl6
13:28 flussence well, there is, but you have to manually tell it the new number to start at :)
13:29 * flussence hasn't used that bit of mysql in a while...
13:29 PerlJam pmurias: why are there gaps?  and why do you want to skip over those numbers?
13:30 moritz that's #perl6, you ask "how?", and get a "why?" as reply :-)
13:30 PerlJam that's any #perl in general I think.   context always matters  :)
13:33 Lorn joined #perl6
13:34 isBEKaml perl6 in general is very nosey.
13:34 * isBEKaml scurries for cover!
13:35 pmurias PerlJam: i want to be able to display the items from the table in order of addition
13:35 isBEKaml pmurias: not sure, there's initval in sql syntax. but in the case of mysql, last_insert_id ?
13:35 isBEKaml pmurias: http://dev.mysql.com/doc/refman/5.1/en/create-table.html
13:35 isBEKaml search for sequence.
13:36 flussence pmurias: I'd always use a timestamp of some sort in that case
13:36 PerlJam pmurias: what flussence said
13:39 spq joined #perl6
13:41 Holy_Cow joined #perl6
13:44 flussence on a side note, I always thought Postgres' implementation of auto-incrementing numbers as pseudo-tables was a bit over-the-top, but it turns out things are cleaner-separated for it.
13:45 flussence for instance here you'd change the start number using a select and some mutator function instead of an alter table, which means it needs less privileges
13:45 isBEKaml pmurias: you can create a table and later alter it to set auto_increment to your value
13:45 isBEKaml pmurias: http://dev.mysql.com/doc/refman/5.1/en/example-auto-increment.html
13:46 flussence (I can never remember the syntax for either, mind you :)
13:46 isBEKaml whoa, #perl6 doubles up as a get-all-channel. :)
13:48 wallberg joined #perl6
13:48 flussence we inline off-topic things sometimes for efficiency :)
13:49 PerlJam isBEKaml: It's one of the dangers of being a #perl
13:49 isBEKaml PerlJam: been on #perl, I was one of those that drove you nuts with philosphy discussions. :P
13:50 isBEKaml PerlJam: "you", I mean perl programmers. :)
13:54 kjeldahlw left #perl6
13:54 woosley joined #perl6
13:54 isBEKaml ofcourse, I didn't try that again.
14:00 coldhead left #perl6
14:17 risou left #perl6
14:17 risou joined #perl6
14:21 wtw left #perl6
14:22 risou left #perl6
14:26 ymasory joined #perl6
14:31 risou joined #perl6
14:37 risou_ joined #perl6
14:38 risou left #perl6
14:39 risou joined #perl6
14:40 risou__ joined #perl6
14:41 meswami joined #perl6
14:42 risou_ left #perl6
14:43 risou left #perl6
14:45 daxim joined #perl6
14:47 moritz for error objects, I'm currently trying to figure out if they should be more like hashes or capture
14:47 moritz ie if they should support positional data
14:47 PerlJam my gut says Capture but it doesn't tell me why
14:47 moritz that was my first reaction too
14:48 isBEKaml I'm guessing by "positional data" you mean error lines/stack traces..
14:48 moritz isBEKaml: no, those are encapsulated in other attributes
14:48 moritz lemme give you a bit of background
14:48 moritz the API for raising an error would be
14:49 moritz die('Cannot frobnicate objects of type $<type>', type => "Int")
14:49 moritz vs
14:49 moritz die('Cannot frobnicate objects of type $0', "Int")
14:50 moritz in the first case, the message is special-cased, and no more positional data would be allowed as payload
14:50 isBEKaml first is a named hash, second is a Capture, right?
14:50 moritz right
14:50 moritz the second allows positional data (here "Int") as payload
14:50 moritz it's more generic, but do we actually want/need it?
14:50 isBEKaml Capture makes sense, since you can basically add more attributes without any named params at runtime.
14:51 moritz you can also add more attributes at runtime in the hash model
14:51 moritz it's not *really* attributes
14:52 isBEKaml is there something I'm missing that's the background picture? (performance/memory issues? )
14:52 awoodland joined #perl6
14:52 moritz isBEKaml: capture will be need slightly more memory, but probably not significant
14:53 moritz PerlJam: the real reason for our gut feeling might be that it's symmetric to invocations and regex captures
14:53 isBEKaml moritz: err, I'm like PerlJam here. Gut reaction goes with Capture without any rational/reasonably strong argument.
14:54 moritz ok, three gut feelings and no opposing votes -- that settles the matter for me :-)
14:55 PerlJam until you obtain more information  :)
14:55 moritz right
14:56 isBEKaml or until after implementation to see if we're right.. :)
14:56 moritz I just noticed that in my grant application I wrote that I'll discuss the spec with "the Perl 6 design team" and the implementors
14:56 moritz which means that I don't have to take it up to p6l if I don't want to :-)
14:56 awoodland left #perl6
14:58 moritz ok, next question
14:58 icwiener joined #perl6
14:58 moritz should the context information (backtrace) be available the same way as the payload, or as a separate attribute?
14:59 moritz I'm leaning towards the latter
14:59 PerlJam separate attribute.
15:00 moritz otoh then creation might become ugly
15:00 moritz there are two cases
15:01 shi joined #perl6
15:01 moritz have die('msg', a => b())  desugar to   Exception.new(positional => ['msg'], named => { a => b() }, callcontext => callframe(1))
15:01 moritz then separate attribute is easy to do
15:01 isBEKaml moritz: are we still keeping backtrace display configurable in rakudo compilation? (ie., we can turn them on/off at will?)
15:02 cdarroch joined #perl6
15:02 cdarroch left #perl6
15:02 cdarroch joined #perl6
15:02 moritz or it desguars to Exception.new('msg', a => b(), callcontext => callframe(1)), then the distinction might blur
15:03 moritz isBEKaml: might be easy to configure with a context variable
15:03 moritz isBEKaml: the --ll-backtrace option from rakudo operates on a different level that probably won't interact with my work in any way
15:03 icwiener_ joined #perl6
15:04 icwiener left #perl6
15:05 moritz next question: should the exception has-a or is-a Capture?
15:05 sji joined #perl6
15:05 PerlJam why not both?  :)
15:06 isBEKaml moritz: isn't that question same as the first?
15:06 * isBEKaml has a vague feeling that moritz has undergone too many psychometric tests...
15:06 * moritz should repharse
15:07 moritz should the payload of the exception be kept in a separate object? or go directly into the Exception?
15:07 moritz an Exception *has* a payload? or *is* it a container of payload?
15:07 moritz s/of/for/
15:07 vuliev left #perl6
15:07 isBEKaml much better-o.
15:08 isBEKaml er, the =or= seem the same to me.
15:08 isBEKaml 1 or 1 == 1
15:09 moritz it would be overkill to do both
15:09 shi left #perl6
15:09 isBEKaml anyway, Exception is best kept to be generic and it's exactly what it is.
15:09 moritz s/or/xor/ if you will
15:09 PerlJam moritz: has-a
15:09 isBEKaml I'd probably go with exceptions containing payloads. has-a relationship.
15:09 moritz PerlJam: why?
15:09 alester I'd be glad to help out Andrew Whitworth with his Rakudo bug sniffing if there was something I could sniff at.
15:10 MayDaniel left #perl6
15:11 isBEKaml moritz: do you find anything wrong in what I said?
15:11 pmurias moritz: re exceptions taking positionals, positional info in exceptions doesn't seem very usefull (as it seems something that will need looking up in the docs)
15:11 PerlJam moritz: because that fits my brain best at the moment.  I don't see an advantage to "isa" and if an advantage were to come up in the future, if we already has-a, we can just delegate.
15:11 moritz pmurias: the same point could be made for subroutine signatures
15:11 isBEKaml moritz: if so, please point it out. I  could really do with some realigning in thinking to perl6 way..
15:12 moritz nothing wrong. Design is just a bunch of compromises, and I'd like to make good ones :-)
15:12 moritz one reason for is-a Capture would be the way we test for exceptions
15:13 isBEKaml good answer. :-)
15:13 pmurias why not has-a?
15:14 moritz pmurias: why not is-a?
15:14 PerlJam moritz: there's prickly feeling in the back of my mind that you're asking questions that are further in the future than we can see and that we need more experience to inform a decision.  So ... pick one and go with it.  Get some experience  :)
15:14 isBEKaml moritz: If we want to avoid holding stacktrace and other information in the capture (not context specific), we can go with has-a, with the above information generically in the Exception.
15:14 pmurias moritz: will we have an OO hierarchy for exceptions?
15:14 moritz pmurias: I'd like to avoid that
15:15 moritz the problem with hierarchies is that however you approach them, they'll feel wrong in some way
15:15 meswami left #perl6
15:16 moritz I'd rather have "labels" (or "tags" as they are called by mostly everyone)
15:16 moritz so that you can check an exception for different properties
15:16 moritz like "was this thrown from a PRE phaser?"
15:16 moritz "is it a syntax error?"
15:16 moritz "is it an error releated to a numeric operation?"
15:16 isBEKaml error messages are contained in captures(assuming that's context specific enough) and other secondary details that are irrelevant to the user can be hidden in Exception.
15:16 PerlJam moritz: As long as a heirarchy can be overlaid on your design in some way  (i.e., you don't decide anything that precludes heirarchies) then I think your design will succeed.  You like "tags" but heirarchies fit other people's brains better.  (those coming from a Java background for instance)
15:17 isBEKaml that way, we can avoid gathering calltraces unless absolutely necessary.
15:18 flussence I've used OO exceptions in PHP, it's easy to make a hierarchy but in practice I only ended up writing catch blocks for one type at a time anyway.
15:18 * moritz always has troubles coming up with hierarchies for orthogonal pieces of information
15:18 wallberg left #perl6
15:19 PerlJam flussence: yeah, IME with heirarchies, I only go 2 or so levels deep, or not at all
15:19 isBEKaml moritz: IOW, it boils down to this. You can use captures to generate error messages. Use Exceptions _only_ if you need calltraces and secondary information.
15:19 pmurias why do we need a hierarchy at all, don't we have roles?
15:19 moritz for example "does it come from phaser $x" and "is it related to a numeric operation"
15:19 PerlJam pmurias: you just read my mind!
15:19 moritz pmurias: the "tags" I mentioned are much closer to roles than to class inheritance
15:19 prammer joined #perl6
15:20 pmurias tags seem a bit like using a blessed hash
15:20 moritz I just don't know if we want to use actual role composition - I'd imagine it might become quite heavy very quickly
15:21 pmurias it's a implementation detail
15:21 moritz and it bears the danger of method classes in composition
15:21 isBEKaml tags, tags -- they look like we are classifying error detail here.
15:21 moritz pmurias: blessed hashes is what I thought of, yes. Except with s/hashes/captures/
15:21 pmurias tags seem usefull for logging unstructure info we need for debugging
15:22 isBEKaml log levels?
15:22 PerlJam Hmm.
15:22 isBEKaml coming from a Java background - DEBUG, ERROR, TRACE, INFO ?
15:23 PerlJam The pendulum seems to have swung too far to one side  ...
15:23 pmurias but the Exception object seems likely to be heavy weight: content of nearby lexicals etc.
15:23 PerlJam moritz: do the simplest thing that could work *now*, you'll end up refactoring/redesigning several times before you're done   :-)
15:23 isBEKaml pmurias: that's exactly what I mean. Exception carries a certain hit in performance. Use *only* when you need it.
15:23 pmurias what PerlJam suggests seems the most resonable thing
15:24 jasonmay is there a way to do parameterized traits for attributes? yet?
15:24 jasonmay s/?//
15:24 moritz jasonmay: what do you mean by that?
15:24 moritz has $.x is foo('bar')?
15:25 TimToady $.foo('bar') = 42; ?
15:25 jasonmay hmm
15:25 moritz PerlJam: you're probably correct
15:26 TimToady we need some behavior driven development :)
15:26 jasonmay something like:
15:26 moritz and "the simplest thing that could work" would mean s/Capture/Hash/ again
15:26 PerlJam aye
15:26 jasonmay has $.x is foo{'one' => 'jason', 'two' => 'may'}
15:27 PerlJam those curlies are syntactically odd.
15:27 jasonmay or is foo({...})
15:27 jasonmay I don't know, just getting back into perl6 :)
15:27 isBEKaml moritz: yes and I was for pushing auxiliary info into Exception (I'm still under the impression that populating exceptions with calltraces is expensive)
15:27 moritz isBEKaml: that's totally unrelated to what I'm trying to decide now
15:27 TimToady std: has $.x :foo{'one' => 'jason', 'two' => 'may'}
15:27 jasonmay (ignore syntax, just asking about the concept)
15:27 p6eval std 4608239: OUTPUT«ok 00:01 122m␤»
15:28 isBEKaml moritz: I understood that you're going for captures for exceptions.
15:28 moritz jasonmay: how about just storing a hash in $.x ? :-)
15:28 jasonmay sugar
15:29 jasonmay here's what I want to do eventually
15:29 jasonmay maye I'm trying to shoehorn..
15:29 jasonmay so I wrote something similar to p5's Bread::Board
15:29 jasonmay (github.com/jasonmay/perl6-ioc)
15:30 jasonmay and Bread::Board::Declare came out and it's awesome :)
15:30 isBEKaml moritz: Alright, the best thing about p6 development is, we'll quickly know when we are wrong. :-)
15:30 isBEKaml moritz: especially in design.
15:30 jasonmay it uses meta attr traits instead of a bunch of declarative syntax
15:31 PerlJam isBEKaml: I don't know ... some of TimToady's early design decisions lasted quite a while before we figured out they were "wrong"
15:31 jasonmay and I was thinking, if I wanted to put that in perl6-ioc, I'd have to use parameterized attr traits to get close
15:31 isBEKaml PerlJam: that was early, it's _now_ :-)
15:31 jasonmay sorry, I come from the moose world so I think very moosey :)
15:31 TimToady niecza: class Foo; has $.x :foo{'one' => 'jason', 'two' => 'may'}
15:31 p6eval niecza v4-54-g2a67dcf: OUTPUT«[31m===[0mSORRY![31m===[0m␤␤Colonpair traits NYI at /tmp/CENqBFXe7Z line 1 (EOF):␤------> [32mx :foo{'one' => 'jason', 'two' => 'may'}[33m⏏[31m<EOL>[0m␤␤Traits, postconstraints, and shapes on variable declarators NYI at /tmp/CENqBFXe7Z line 1 (EOF):␤------>
15:31 p6eval ..[32mx :foo{'one…
15:32 moritz jasonmay: a synopsis example might help me understand better what you're doing, and what you're trying to achieve
15:32 isBEKaml PerlJam: more eyes, short shelf life for bad designs.
15:32 jasonmay moritz: nod. I might have time this evening to get into more detail
15:32 * PerlJam looks at BBD
15:33 PerlJam interesting.
15:33 envi joined #perl6
15:34 PerlJam I kind of miss the declarative container though.  You don't see it in the code; it's implicit in using BBD
15:34 isBEKaml BBD?
15:34 isBEKaml or BDD?
15:34 isBEKaml :-)
15:34 PerlJam Bread::Board::Declare
15:34 isBEKaml ahh..
15:35 TimToady in p6, 'is' traits have the option to be as declarative or as lazy as they like, so you aren't forced into run-time "declarations" as p5 tends to do
15:36 isBEKaml sorry. didn't see it.
15:36 TimToady but you aren't forced to be completely declarative either
15:36 TimToady it's up to the trait itself
15:37 TimToady well, might need extra {} to be lazy in some cases though...
15:37 TimToady but that's what the other trait syntax is for:  has $.x will foo { later() }
15:38 pmurias left #perl6
15:39 PerlJam jasonmay++ for bringin IOC to perl6
15:40 jasonmay :)
15:40 jasonmay IOC rocks
15:40 TimToady .oO(International Olympic Committee?)
15:41 moritz Inversion Of Olympic Committee
15:43 TimToady :)
15:43 jasonmay TimToady: so in other words, has $.x is (anything I want that returns a proper trait); ?
15:43 [Coke] left #perl6
15:44 isBEKaml left #perl6
15:45 TimToady 'is' is declarative, but the grammar slot is extensible, and there's already a 'will' specced that takes a closure
15:45 TimToady other subparsers in that slot are possible, including macros
15:46 TimToady I shouldn't use 'slot'; the're called categories currently
15:46 TimToady *they
15:47 justatheory joined #perl6
15:47 TimToady the cateogory in question is trait_mod
15:48 * TimToady can't tpye this mronign
15:49 TimToady s/"can't"/cannot/  :P
15:49 moritz :-)
15:50 jasonmay reading the spec on it now
15:51 jasonmay that is pretty neat
15:55 sji left #perl6
15:56 TimToady hopefully it's enough rope to shoot ourselves in the feet many times over someday
15:56 * moritz is pretty sure there is :-)
15:56 sbp your :P adverb should have come before the substitution
15:56 TimToady but some bits of it still require time travel
15:56 PerlJam or our grandchildren
15:56 sbp otherwise you have to delay interpretation
15:57 TimToady std: s/"can't"/cannot/  :P
15:57 p6eval std 4608239: OUTPUT«ok 00:01 121m␤»
15:57 sbp aw... :-)
15:57 sbp std is now my comic nemesis
15:58 TimToady arguably, it should be an error if there's no obvious operator
15:59 PerlJam obvioius to whom? :)
15:59 TimToady otoh, s/// is sort of an operator
15:59 PerlJam er, obvious even
15:59 TimToady std: "foo" :P
15:59 p6eval std 4608239: OUTPUT«ok 00:01 119m␤»
15:59 moritz that " is a quote operator, no? :-)
15:59 PerlJam heh
15:59 TimToady but currently std just puts the adverb on the top node and doesn't check what it is
16:00 TimToady std: 42 :P
16:00 p6eval std 4608239: OUTPUT«ok 00:01 119m␤»
16:00 TimToady std: Nil :P
16:00 p6eval std 4608239: OUTPUT«ok 00:01 119m␤»
16:01 moritz TimToady: speaking of adverbs... would you be terribly opposed to change %h{@keys}:p to :pairs?
16:01 moritz and :k to :keys
16:02 moritz give that the methods are %h.pairs and %h.keys
16:02 TimToady I'd be okay with that, I guess
16:02 moritz I'd even patch all compilers that implement it :-)
16:02 moritz that is, niecza
16:02 TimToady right
16:03 moritz rakudo: my %h = a=> 2, b => 2; say %h<b>:p
16:03 p6eval rakudo 4bf132: OUTPUT«===SORRY!===␤Confused at line 22, near "say %h<b>:"␤»
16:03 moritz niecza: my %h = a=> 2, b => 2; say %h<b>:p
16:03 p6eval niecza v4-54-g2a67dcf: OUTPUT«b 2␤»
16:03 moritz muscle memory is quite strong :-)
16:04 flussence ooh, didn't know about that adverb thing.
16:04 TimToady niecza: my %h = a=> 2, b => 2; say %h<b>:p.perl  # fails, I suspect
16:05 p6eval niecza v4-54-g2a67dcf: OUTPUT«[31m===[0mSORRY![31m===[0m␤␤Any()Method call found where infix expected (omit whitespace?) at /tmp/eDWMQfPZIH line 1:␤------> [32mmy %h = a=> 2, b => 2; say %h<b>:p[33m⏏[31m.perl  # fails, I suspect[0m␤␤Parse failed␤␤»
16:05 birdwindupbird left #perl6
16:05 moritz niecza: my %h = a=> 2, b => 2; say (%h<b>:p).perl
16:05 p6eval niecza v4-54-g2a67dcf: OUTPUT«"b" => 2␤»
16:05 birdwindupbird joined #perl6
16:05 * TimToady considers the merits of distinguishing postfix adverbs from "infix" adverbs
16:07 TimToady or of making %h<b>:p\.perl into a backwards precedence dropper to auto-paren what was before the \
16:08 PerlJam uh .... wha?
16:08 TimToady these are both ideas I've rejected before :)
16:09 pmichaud good morning, perl6
16:09 PerlJam pmichaud!
16:09 TimToady o/!
16:09 PerlJam pmichaud: how's life?
16:09 moritz pmichaud, I hope your morning is good
16:09 sbp why did you reject distinguishing postfix adv. from infix?
16:09 * sbp waves at and to pmichaud
16:09 pmichaud life is fine :-)
16:09 TimToady sbp: I don't remember...
16:09 pyrimidine pmichaud: good to hear!
16:09 PerlJam TimToady: as long as you keep them on the reject pile I'll hold questioning your sanity in reserve ;)
16:10 * pmichaud frequently questions his sanity.  (Note the ambiguous "his" :-)
16:10 TimToady :P
16:10 huf pmichaud: you're trans?
16:10 pmichaud huf: no.  :-)
16:10 huf no, sorry, that was a forced misunderstanding-on-purpose
16:11 huf not a nice natural one
16:11 pyrimidine tr///?
16:11 PerlJam Though I suppose if the conceptual "temperature" gets hot enough, they might evaporate from the reject pile and condense upon the "ideas to seriously consider pile"
16:11 PerlJam er, put the quote in the right place
16:13 yegor left #perl6
16:16 yegor joined #perl6
16:21 TimToady huh, I never removed the .:foo syntax from std
16:22 TimToady niecza: my %h = a=> 2, b => 2; say %h<b>.:p.perl
16:22 p6eval niecza v4-54-g2a67dcf: OUTPUT«[31m===[0mSORRY![31m===[0m␤␤Colonpair dotties NYI at /tmp/5QraWAOp9g line 1:␤------> [32mmy %h = a=> 2, b => 2; say %h<b>.:p[33m⏏[31m.perl[0m␤␤Unhandled exception: Check failed␤␤  at /home/p6eval/niecza/boot/lib/CORE.setting line 388 (CORE die @ 2)␤  at
16:22 p6eval ../home/p6eval/niecza/…
16:23 TimToady that was originally for ~~ :e
16:23 SHODAN joined #perl6
16:23 TimToady but we might repurpose it
16:23 TimToady as a postfix adverb
16:25 TimToady note to interested bystanders: the reason we use an adverb instead of a method is that the subscript would throw away the keys too soon in %h<b>.pairs
16:25 TimToady so we need some way to tell the subscript not to do that
16:25 mberends joined #perl6
16:25 TimToady and an adverb is sufficiently macro-y to do that
16:26 TimToady the proposal above is to treat .:pairs as macro-y in a similar way (it wasn't, in its original :e form)
16:27 hercynium joined #perl6
16:28 TimToady %h<b>.:pairs would have the identical semantic effect to %h<b>:pairs, but would leave the parser in a postfix state instead of switching to an infix state
16:28 moritz that sounds vaguely sane-ish
16:29 TimToady it's a little odd to add something to make it bind tighter though
16:29 alester About to make my first Rakudo changes in who knows how long.
16:29 alester Andy Lester: Code janitor.
16:30 moritz I think the CREDITS file was just taken verbatimly from parrot when the repos were split :-)
16:30 alester I didn't mean to say that that was in the CREDITS.
16:30 alester It's just how I see my job.
16:31 hercynium left #perl6
16:31 hercynium joined #perl6
16:32 alester Certainly not complaining.
16:33 moritz :-)
16:34 PerlJam alester: we certainly wouldn't complain about it either  :)
16:34 alester What?  Unused variables!  I'M ON IT.
16:35 Alias__ joined #perl6
16:37 kjeldahl joined #perl6
16:38 Alias left #perl6
16:38 Alias_ left #perl6
16:38 Alias joined #perl6
16:39 JimmyZ_ joined #perl6
16:50 woosley left #perl6
16:50 alester ok, distracted, but now back on make spectest
16:52 Chillance joined #perl6
16:54 PerlJam moritz: have you read http://blogs.perl.org/users/jt_smith/2011/04/ouch---exceptions-that-dont-hurt.html  ?
16:55 yegor left #perl6
16:55 PerlJam moritz: maybe you can glean some good design ideas from there and morph them into something Perl6ian
16:56 jasonmay .oO( has $.x is service lifecycle Singleton depends-on <y z> )
16:57 alester moritz: what box are you on that is segfaulting?
16:57 alester What OS/compiler/etc
16:57 alester My spectest has yet to burp.
16:58 yegor joined #perl6
17:01 barika left #perl6
17:01 barika joined #perl6
17:04 nymacro left #perl6
17:05 pmichaud afk, lunch
17:07 dakkar left #perl6
17:09 pernatiy left #perl6
17:13 jnthn d'oh, missed pmichaud++ by 10 minutes
17:18 JodaZ joined #perl6
17:21 moritz alester: linux amd64, gcc 4.4.5
17:22 jnthn moritz: Where in the build?
17:23 Alias_ joined #perl6
17:25 Alias left #perl6
17:25 jnthn I'd guessing missing write-barrier, apart from it seems the issue happens in the non-gengc too...
17:25 Alias__ left #perl6
17:26 Alias joined #perl6
17:26 hudnix left #perl6
17:27 hudnix joined #perl6
17:31 jnthn nom &
17:33 JodaZ left #perl6
17:34 JodaZ joined #perl6
17:34 JodaZ left #perl6
17:34 moritz jnthn: http://irclog.perlgeek.de/parrot/2011-04-14#i_3503566
17:39 JodaZ_ joined #perl6
17:40 moritz http://img01.lachschon.de/images/101639_dancemoves_yeah.jpg reminded me of some of the smilies in here :-)
17:41 PerlJam heh!
17:46 moritz ~o~
17:47 birdwindupbird left #perl6
17:48 Alias__ joined #perl6
17:50 Alias_ left #perl6
17:50 Alias left #perl6
17:50 Alias joined #perl6
17:54 Alias left #perl6
17:54 Alias joined #perl6
18:04 saaki left #perl6
18:06 saaki joined #perl6
18:10 pernatiy joined #perl6
18:16 larsen left #perl6
18:16 larsen joined #perl6
18:26 risou__ left #perl6
18:45 icwiener_ left #perl6
18:45 icwiener joined #perl6
18:46 colomon left #perl6
18:54 masak joined #perl6
18:54 masak hi, lolzebras.
18:55 moritz lol, hizebra
18:58 tadzik hi zebras
19:02 mtk left #perl6
19:03 TimToady it's not just constants: multi foo (::T $x, T $y) {...} also turns T into a constraint, $y where T, I think, since you can't do a nominal type check on something without a nom, er, name
19:03 masak someone is hungry... :)
19:04 TimToady can't make lunch yet; waiting for a contractor to show up
19:04 tadzik anything new in perl6land?
19:04 masak TimToady: you subcontract your lunches? :P
19:04 TimToady I do usually subcontract dinners
19:05 masak I wonder how static the parametric roles are. after having seen more .NET than usual in the past few days, I have some feature envy wrt static typechecking of generic types.
19:05 rgrau joined #perl6
19:05 masak maybe s/are/can be/
19:05 masak rgrau! \o/
19:06 TimToady sure, but ::T can be known at instantiation time if it's in the role's sig
19:06 TimToady I was just thinking about normal multis
19:07 rgrau hey! loong time offline
19:08 dalek niecza: 8851938 | (Martin Berends)++ | / (3 files):
19:08 dalek niecza: [now] refactor the underlying function names and tweak 'make aot'
19:08 dalek niecza: review: https://github.com/sorear/niecza/commit/8851938736
19:09 mtk joined #perl6
19:09 TimToady rakudo: multi truncate (::T $x) { $x.Int.T }; say truncate(42.33)
19:09 p6eval rakudo 4bf132: OUTPUT«Method 'T' not found for invocant of class 'Integer'␤  in 'truncate' at line 22:/tmp/sHjQmsIJjs␤  in main program body at line 22:/tmp/sHjQmsIJjs␤»
19:09 TimToady rakudo: multi truncate (::T $x) { T($x.Int) }; say truncate(42.33)
19:09 p6eval rakudo 4bf132: OUTPUT«Could not find sub &T␤  in 'truncate' at line 22:/tmp/WKN7DlZoqd␤  in main program body at line 22:/tmp/WKN7DlZoqd␤»
19:10 TimToady aww
19:10 TimToady pugs: multi truncate (::T $x) { T($x.Int) }; say truncate(42.33)
19:10 p6eval pugs: OUTPUT«42␤»
19:11 TimToady pugs: multi truncate (::T $x) { T($x.Int) }; say truncate(42.33).WHAT
19:11 p6eval pugs: OUTPUT«Int␤»
19:11 TimToady er, oopsie
19:11 TimToady pugs: multi trunc (::T $x) { T($x.Int) }; say trunc(42.33).WHAT
19:11 p6eval pugs: OUTPUT«Int␤»
19:11 TimToady hmm
19:12 TimToady pugs: multi foo (::T $x) { T($x.Int) }; say foo(42.33).WHAT
19:12 p6eval pugs: OUTPUT«*** No such subroutine: "&T"␤    at /tmp/t6DojQbngB line 1, column 22-32␤»
19:12 TimToady pugs: multi foo (::T $x) { $x.Int.T }; say foo(42.33).WHAT
19:12 p6eval pugs: OUTPUT«*** No such method in class Rat: "&Int"␤    at /tmp/X0qOJPels9 line 1, column 22-31␤»
19:16 masak is this spec'd anywhere?
19:17 TimToady which, that Type() and .Type are both coercions?
19:17 masak no, that this works even for type captures.
19:17 pernatiy left #perl6
19:18 TimToady well, it's a type name--so what if it's known to be generic?
19:18 masak arguably one of those "it just falls out" things, but... right.
19:19 TimToady one could go as far as to argue that any construct using ::T is generic and automatically gets instantiated over T whenever a new type is seen
19:21 TimToady however, if that were a multi, it would work against knowing the candidate list at compile time
19:21 pernatiy joined #perl6
19:21 TimToady (if new candidates can be generated at run time)
19:22 masak I bet jnthn would have something to say on this.
19:22 masak I know he's been talking in these terms.
19:22 TimToady so while lazy instantiation is a possible optimization technique, I don't think we should mandate it
19:23 masak I'm more interested in how far we can statically trace call dependencies over class boundaries, if parametric roles are involved.
19:23 TimToady especially since we have type objects that are required to respond correctly (cross fingers) to .()
19:23 masak ouch :)
19:25 TimToady well, composition is normally at compile time, so that part's not a problem
19:25 dalek niecza: 4b205f2 | (Martin Berends)++ | lib/CORE.setting:
19:25 dalek niecza: [CORE.setting] add a List.reverse() method to complement the reverse function
19:25 dalek niecza: review: https://github.com/sorear/niecza/commit/4b205f216e
19:27 [Coke] joined #perl6
19:30 mberends left #perl6
19:34 mberends joined #perl6
19:34 dalek std: 3468e14 | larry++ | STD.pm6:
19:34 dalek std: LTA "Default argument must come last"
19:34 dalek std: review: https://github.com/perl6/std/commit/3468e141df
19:41 SHODAN left #perl6
19:53 jnthn TimToady: I'm skeptical $x.Int.T would work, but that T($x.Int) doesn't is a bug afaik.
19:53 jnthn Since T there is parsed as a literal method name
19:55 jnthn And yes, plesae not lets break knowing lexical multi candidate lists at compile time :)
19:55 jnthn wtf, my english...
19:55 jnthn ...please let's not break... :)
19:57 tadzik oh, a fellow beer drinker! :)
19:57 jnthn I only had one with a very large dinner :P
19:57 tadzik I had two with a kebab :)
19:58 tadzik but, whatever
19:58 jnthn :)
19:58 * jnthn is still pondering whether to drop by the hotel bar before bed
19:58 tadzik do!
19:58 tadzik drink to the health of my wrist :(
19:59 jnthn They have my favorite Czech beer on tap here, and I don't know anywhere else on Sweden that does.
19:59 jnthn ...in Sweden...
19:59 jnthn Dammit, how strong *was* that beer... :)
19:59 jnthn Your wrist? :(
20:00 tadzik yeah, I've gone with a friend to check how much skateboarding do I remembre (I don't remember much)
20:00 tadzik now I can barely code!
20:00 envi left #perl6
20:00 jnthn ouch!
20:01 jnthn Was this...after the kebab and two beers? ;)
20:01 tadzik no, before :)
20:01 jnthn Wow :)
20:02 tadzik getting hurt after getting drunk would have been embarasing :)
20:03 tadzik ...as if it isn't now ;)
20:03 Rotwang joined #perl6
20:05 jferrero joined #perl6
20:08 tadzik jnthn: how is 6model doing?
20:08 jnthn not much the last couple of weeks
20:08 jnthn :(
20:09 tadzik hugme: hug jnthn
20:09 * hugme hugs jnthn
20:09 jnthn I've started on some better docs for it though
20:09 tadzik someone was asking about the docs recently
20:09 jnthn And my schedule for the coming weeks looks a lot nicer than it's been of late.
20:09 tadzik not sure if that wasn't jaffa4
20:10 Mowah joined #perl6
20:34 MayDaniel joined #perl6
20:34 MayDaniel left #perl6
20:34 MayDaniel joined #perl6
20:48 silent_h_ joined #perl6
20:51 MayDaniel left #perl6
20:57 silent_h_ left #perl6
20:57 MayDaniel joined #perl6
21:02 Holy_Cow left #perl6
21:03 MayDaniel left #perl6
21:05 kjeldahl left #perl6
21:06 tzhs left #perl6
21:10 impious joined #perl6
21:11 hudnix left #perl6
21:19 hanekomu left #perl6
21:21 kaare_ left #perl6
21:21 hudnix joined #perl6
21:31 eternaleye left #perl6
21:31 eternaleye joined #perl6
21:39 donri left #perl6
21:41 masak 'night, #perl6
21:41 masak left #perl6
21:42 impious left #perl6
21:51 whiteknight joined #perl6
21:57 spq left #perl6
21:59 bacek left #perl6
22:02 ymasory left #perl6
22:05 daxim left #perl6
22:06 Mowah left #perl6
22:13 mux left #perl6
22:13 mux joined #perl6
22:13 aesop left #perl6
22:13 aesop joined #perl6
22:14 diakopter left #perl6
22:14 jfried left #perl6
22:14 sorear left #perl6
22:14 Tene left #perl6
22:16 mdxi left #perl6
22:16 diakopter joined #perl6
22:16 mdxi joined #perl6
22:16 sorear joined #perl6
22:16 Tene joined #perl6
22:16 Tene left #perl6
22:16 Tene joined #perl6
22:18 jfried joined #perl6
22:20 coldhead joined #perl6
22:29 ymasory joined #perl6
22:32 alester left #perl6
22:51 Rotwang left #perl6
22:59 DarthGandalf left #perl6
23:04 DarthGandalf joined #perl6
23:11 itz_ left #perl6
23:15 colomon joined #perl6
23:16 itz joined #perl6
23:16 colomon_ joined #perl6
23:17 risou joined #perl6
23:20 colomon left #perl6
23:20 colomon_ is now known as colomon
23:34 icwiener left #perl6
23:39 hercynium left #perl6
23:40 risou_ joined #perl6
23:40 risou left #perl6
23:41 rgrau left #perl6
23:44 Chillance left #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo