»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:00
kivutar left
00:02
berekuk left
00:03
berekuk joined
00:11
btyler left
|
|||
clsn | Whyfor aren't ⸨⸩ considered a bracketing pair? They're Ps/Pe and all. But they aren't in the lists of openers/closers in Rakudo or in Std. I think there are others too. Std does mention in a comment that the list should be based directly on Unicode tables, but isn't yet. | 00:15 | |
00:15
Vlavv_ left
00:16
aindilis left,
aindilis joined
00:20
lue left
00:22
jeffreykegler joined
00:27
rurban1 left
|
|||
TimToady | clsn: it was not added till Unicode 5.1, so probably after we generated that list | 00:27 | |
the STD list was just copied out of pugs, which came even ealier | 00:29 | ||
*earlier | |||
feel free to automate that now that we actually have Unicode props :) | |||
smls | Does P6 support P5-style subpattern recursion within a single regex (i.e. without defining a full-fledged grammar with multiple tokens)? | 00:31 | |
TimToady | in theory | 00:32 | |
jnthn | Well, you can always define it as my token foo { ... <&foo> ... } or so to lighten it | 00:33 | |
Otherwise there's <~~> | |||
TimToady | I think smls is looking more for <~~1> and such to reuse whatever matched $1 | ||
jnthn | Ah | ||
I'm not sure that's implemented | |||
smls | see rosettacode.org/wiki/Balanced_brackets#Perl for example | ||
jnthn | 'cus it's...hard to do. | 00:34 | |
smls | subpattern recursion allows the P5 solution to be nice and pretty :) | ||
jnthn | Like many other things, but this one is rarely asked for :) | ||
smls | sub balanced { shift =~ /^ (\[ (?1)* \])* $/x; } | 00:35 | |
timotimo | hard to do? :( | ||
timotimo has a hard-to-do thing already on his plate | |||
smls | well ok, in my editor with syntax highlighting it looks nice :) | ||
00:36
daniel-s left
|
|||
jnthn | timotimo: It's not greedy to have more than one... :P | 00:38 | |
00:38
Vlavv_ joined
|
|||
smls | in this example, P5 subpattern-recursion vs P6 grammars is just a stylistic difference | 00:39 | |
but the P5 recursion allows backtracking across subpatterns | |||
and P6 tokens prevent that, right? | |||
jnthn | token does, regex don't | 00:42 | |
smls | ah ok | ||
TimToady | but you don't really want backtracking here anyway | 00:44 | |
the current P6 solution using a grammar is busted, fixing | |||
smls | yeah, that's why I said in this example there's no difference | ||
TimToady | see new rosettacode.org/wiki/Balanced_brack..._a_grammar | 00:46 | |
reduced the grammar to a one-liner | 00:47 | ||
since TOP now implicitly checks ^ and $ | |||
or rather, .parse does | |||
smls | nifty :) | 00:48 | |
TimToady | in fact, wouldn't work if TOP implicitly checked, since we call TOP recursively | 00:50 | |
00:52
berekuk left
|
|||
smls | Of course the main problem with P5 recursive regexes, is that they discard all information about what they matched - except for the *last* *top-level* match of each capture group. | 00:52 | |
grondilu | TimToady: isn't there a way to shorten brace expansion as well? I suspect the "meta" rule is not really necessary. | 00:55 | |
TimToady | grondilu: I couldn't make it work; the different terminators mess up the levels | 00:56 | |
and doing things like passing a $level arg didn't seem to pan out | 00:57 | ||
also, didn't work with the '{' ~ '}' idiom | |||
00:58
rurban1 joined
|
|||
TimToady | because that commits in a way that seems detrimental to backtracking | 00:58 | |
I tried a *lot* of things before the initial entry... | |||
though most of that was trying to build up the X during the parse, which didn't work out well at all, because I think rakudo is biased towards action routines that are not inlined | 00:59 | ||
so I ended up with a separate walker | |||
grondilu | well, if there's room for improvement, someone will find them eventually. | 01:00 | |
jnthn | TimToady: If you tried it on JVM, until a couple of weeks ago there was a serious bug with closures inside of regexes. | ||
TimToady | the walker could probably be simplified/obfuscated too to make it "pointless" | ||
jnthn | TimToady: Which could well have gotten in the way of inline actions | ||
TimToady | but I didn't want to explain [X~] | ||
I tried it on all three, in fact | 01:01 | ||
dunno what I was running into | |||
but { make ... } would not pass an ast up | |||
and all my attempts to set a $<foo> directly met with failure | |||
it's probably better to do it outside with a separate walker anyway, because then you don't have to throw stuff away on backtracking | 01:02 | ||
timotimo | oh my | ||
"not" xx not $balanced | |||
TimToady | smls: yes, we notice that problem with P5, which is why P6 does it differently :) | ||
TimToady grins at timotimo | 01:03 | ||
smls | :) | ||
TimToady | you can do the same trick, kinda, in P5 | ||
only of course it's x there | |||
konnjuta | how many types of encoding does rakudo currently have? | 01:04 | |
TimToady | three: the Good, the Bad, and the Ugly | ||
01:05
jnap left
|
|||
TimToady | seriously, it's probably highly platform dependent at the moment | 01:05 | |
jnthn | Yeah, I think it'll depend by backend somewhat | 01:06 | |
I imagine latin-1, ascii and utf-8 can re relied upon to exist | |||
konnjuta | is it possible to create custom encoding? | 01:07 | |
say come up with my own charmps | |||
to read legacy data | |||
01:07
arnsholt left
|
|||
TimToady | r: say "foo".encode('ISO-8858-15').decode('UTF-8') | 01:08 | |
timotimo | that's backend-specific, but there should be a way; even if not yet | ||
camelia | rakudo-jvm d6a93b: OUTPUT«Unknown encoding 'iso-8858-15' in method encode at gen/jvm/CORE.setting:6275 in block at /tmp/tmpfile:1» | ||
..rakudo-parrot d6a93b: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:6279 in block at /tmp/tmpfile:1» | |||
..rakudo-moar d6a93b: OUTPUT«Unknown string encoding: 'iso-8858-15' in method encode at src/gen/m-CORE.setting:6275 in block at /tmp/tmpfile:1» | |||
TimToady | not "euro"-centric :) | 01:09 | |
r: say "foo".encode('ISO-8858-1').decode('UTF-8') | |||
camelia | rakudo-moar d6a93b: OUTPUT«Unknown string encoding: 'iso-8858-1' in method encode at src/gen/m-CORE.setting:6275 in block at /tmp/tmpfile:1» | ||
..rakudo-jvm d6a93b: OUTPUT«Unknown encoding 'iso-8858-1' in method encode at gen/jvm/CORE.setting:6275 in block at /tmp/tmpfile:1» | |||
..rakudo-parrot d6a93b: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:6279 in block at /tmp/tmpfile:1» | |||
TimToady | oops | ||
r: say "foo".encode('ISO-8859-1').decode('UTF-8') | |||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«foo» | ||
TimToady | r: say "foo".encode('ISO-8859-15').decode('UTF-8') | ||
camelia | rakudo-jvm d6a93b: OUTPUT«Unknown encoding 'iso-8859-15' in method encode at gen/jvm/CORE.setting:6275 in block at /tmp/tmpfile:1» | ||
..rakudo-moar d6a93b: OUTPUT«Unknown string encoding: 'iso-8859-15' in method encode at src/gen/m-CORE.setting:6275 in block at /tmp/tmpfile:1» | |||
..rakudo-parrot d6a93b: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:6279 in block at /tmp/tmpfile:1» | |||
TimToady | n: say "foo".encode('ISO-8859-15').decode('UTF-8') | 01:10 | |
camelia | niecza v24-109-g48a8de3: OUTPUT«foo» | ||
TimToady | niecza++ | ||
n: say "foo".encode('UTF-32') | 01:11 | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«Buf.new(...)» | ||
TimToady | n: say "foo".encode('UTF-32').chrs | 01:12 | |
camelia | niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Cannot unbox a BigInteger from an object of repr P6box[Byte[]] at /home/p6eval/niecza/lib/CORE.setting line 1496 (chr @ 4)  at /home/p6eval/niecza/lib/CORE.setting line 1498 (ANON @ 4)  at <unknown> line 0 (KERNEL map …» | ||
TimToady | huh | ||
n: say "foo".encode('UTF-32')[] | |||
camelia | niecza v24-109-g48a8de3: OUTPUT«Buf.new(...)» | ||
TimToady | n: say "foo".encode('UTF-32')[*] | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«Buf.new(...)» | 01:13 | |
konnjuta | perl6 -e 'open("-",:!chomp).lines>>.encode("ascii").say' < /tmp/utffile | ||
TimToady | sigh | ||
konnjuta | Lossy conversion to single byte encoding in method encode at gen/parrot/CORE.setting:6277 in method dispatch:<hyper> at gen/parrot/CORE.setting:1245 in block at -e:1 | ||
can't lossy conversion be done with a subchar? | |||
TimToady | n: say "foo".encode('UTF-32')[^3] | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«Buf.new(...) (Any) (Any)» | ||
TimToady | p: say "foo".encode('UTF-32')[^3] | ||
camelia | rakudo-parrot d6a93b: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:6279 in block at /tmp/zo6MU4Vysi:1» | ||
TimToady | that message is LTA | ||
jnthn | r: say "foo".encode('UTF-32')[^3] | 01:14 | |
camelia | rakudo-moar d6a93b: OUTPUT«Unknown string encoding: 'utf32' in method encode at src/gen/m-CORE.setting:6275 in block at /tmp/tmpfile:1» | ||
..rakudo-jvm d6a93b: OUTPUT«102 111 111» | |||
..rakudo-parrot d6a93b: OUTPUT«encoding #-1 not found in method encode at gen/parrot/CORE.setting:6279 in block at /tmp/tmpfile:1» | |||
jnthn | Moar message seems better, and it works on JVM | ||
TimToady | j: say "foo".encode('UTF-32').chrs | 01:15 | |
camelia | rakudo-jvm d6a93b: OUTPUT«No such method 'chrs' for invocant of type 'utf32' in block at /tmp/2Vm7XH8XTP:1» | ||
jnthn | What does .chrs on a Buf mean? | ||
TimToady | nothin' | ||
jnthn | OK, so that's correct... :) | ||
TimToady | j: say "foo".encode('UTF-32').list | 01:16 | |
camelia | rakudo-jvm d6a93b: OUTPUT«102 111 111» | ||
konnjuta | lta = long term abuse? | ||
TimToady | less than awesome | 01:17 | |
jnthn | haha :) | ||
TimToady | perlcabal.org/syn/S99.html#LTA | ||
hah: 17:17 < TimToady> less than awesome | 01:18 | ||
17:17 < jnthn> haha :) | |||
17:17 < TimToady> perlcabal.org/syn/S99.html#LTA | |||
er, wrong paste | |||
jnthn | haha :) | ||
TimToady | but if you follow that link, you'll find an autopun | 01:19 | |
01:19
arnsholt joined
|
|||
timotimo | hm. i wonder if :!chomp would have helped me ~1 year ago when i tried to handle $a_socket.lines on top of parrot | 01:20 | |
TimToady | though as definitions go, it's a bit LTA | ||
timotimo | (the problem i ran into was not being able to differentiate "a full buffer's read, or just one line that ended on a newline" | 01:22 | |
and since i was reading some json data that was sent to me via the wire, i ran into some trouble trying to parse it ... | 01:23 | ||
01:29
rurban2 joined
01:32
rurban1 left
|
|||
konnjuta | r: "\x41".print | 01:35 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«A» | ||
konnjuta | r: "\x41\xE2\x82\xAC".print | 01:36 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«A⬻ | ||
01:44
lue joined
01:46
jnap joined
|
|||
TimToady | grondilu: I added a point-free version of crosswalk at the end of the rosettacode.org/wiki/Brace_expansion entry for Perl 6 | 01:55 | |
TimToady wonders why it doesn't build a TOC till there's four languages... | |||
02:02
rurban2 left
|
|||
konnjuta | perl -e 'print "\x41\xE2\x82\xAC"' | perl -le 'print unpack("H*",<>)' | 02:05 | |
41e282ac | |||
perl6 -e 'print "\x41\xE2\x82\xAC"' | perl -le 'print unpack("H*",<>)' | |||
41c3a2c282c2ac | 02:06 | ||
whats happening here? | |||
skids | wide unicode characters? | 02:07 | |
jnthn | \xE2 in a string refers to Unicode code-point E2, not a byte E2 | 02:08 | |
If you want to work with bytes, use Buf, not strings. | |||
smls | TimToady: yikes, what happened to this solution: rosettacode.org/wiki/First-class_fu...ons#Perl_6 | ||
konnjuta | thank you | 02:09 | |
jnthn | yay, I think I'm an hour so so's more work of having a deliverable FOSDEM talk. | 02:10 | |
I guess that means I should get some sleep before the flight.. :) | |||
'night, #perl6 | |||
skids | sleep tight. Don't let the unicode byte | 02:11 | |
smls | TimToady: never mind, I fixed it. | 02:17 | |
02:20
FROGGS left
02:21
smls left
02:25
kbaker joined
02:34
FROGGS joined
02:36
Alula left
02:38
Alula joined
|
|||
TimToady | smash: yeah, someone was using a bad browser and/or editor that thought it would helpfully decode to ASCII | 02:38 | |
I saw them getting told in another discussion page somewhere, so it shouldn't happen again soon | 02:39 | ||
but we'll need to keep our eyes peeled for other such damage | |||
didn't ingy++ have a download stashed somewhere? | 02:42 | ||
or maybe I can figure out whose edits did it and look at those pages | 02:44 | ||
02:44
regreg joined
02:54
dayangkun_ left
02:57
thou left
03:04
grondilu left
03:06
rurban1 joined
|
|||
konnjuta | r: (<[ ]> xx 5).pick(*).join.say | 03:22 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«[][][][][]» | ||
konnjuta | r: (<[ ]> xx 5).pick(*).join.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«[][][][][]» | ||
konnjuta | r: (<[ ]> xx 5).pick(*).elem | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«No such method 'elem' for invocant of type 'List' in block at /tmp/tmpfile:1» | ||
konnjuta | r: (<[ ]> xx 5).pick(*).elems | 03:23 | |
camelia | ( no output ) | ||
konnjuta | r: (<[ ]> xx 5).pick(*).elems.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«5» | ||
lue | Apparently I signed up for RosettaCode way back in 2010 :P | 03:24 | |
konnjuta | seems like list is not flatten? | 03:28 | |
r: (<[ ]> xx 5).pick(*).list.elems.say | 03:29 | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«5» | ||
konnjuta | r: (<[ ]> xx 5).list.pick(*).elems.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«5» | ||
konnjuta | r: (<[ ]> xx 5).list.elems.say | 03:30 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«5» | ||
konnjuta | r: @(<[ ]> xx 5).list.elems.say | 03:31 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«5» | ||
konnjuta | r: (<[ ]> xx 5).flat.elems.say | 03:36 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«10» | ||
konnjuta | r: my @a=(<[ ]> xx 5); | 03:37 | |
camelia | ( no output ) | ||
konnjuta | @a.elems.say | ||
r: my @a=(<[ ]> xx 5); @a.elems.say | |||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«10» | ||
konnjuta | r: (<[ ]> xx 5).elems.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«5» | ||
raydiak | r: my @a=(<[ ]> xx 5); @a.perl.say; | 03:40 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«Array.new("[", "]", "[", "]", "[", "]", "[", "]", "[", "]")» | ||
raydiak | r: (<[ ]> xx 5).perl.say | 03:41 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(("[", "]"), ("[", "]"), ("[", "]"), ("[", "]"), ("[", "]")).list» | ||
konnjuta | seems like (<[ ]> xx 5) does not flatten | 03:42 | |
r: (<[ ]> xx 5).flat.perl.say | |||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«("[", "]", "[", "]", "[", "]", "[", "]", "[", "]").list» | ||
raydiak | it's not supposed to flatten, it's a parcel until you assign it to something else, like an array | ||
TimToady | it's actually a parcel of 5 parcels | 03:43 | |
lue | konnjuta: it does flatten when you use .flat | ||
TimToady | r: (<[ ]> xx 5).perl.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(("[", "]"), ("[", "]"), ("[", "]"), ("[", "]"), ("[", "]")).list» | ||
TimToady | which is why I changed it for the RC entry | 03:44 | |
I note that the .roll($n*2) entries don't have this problem | |||
otoh, they don't guarantee an even number of opening/closing brackets | |||
which is okay for that problem | 03:45 | ||
r: say pick, *, <[ ]> xx 5 | 03:46 | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileCalling 'pick' requires arguments Expected any of: :(Any $n, *@values)at /tmp/tmpfile:1------> say ⏏pick, *, <[ ]>…» | ||
TimToady | r: say pick *, <[ ]> xx 5 | ||
camelia | rakudo-parrot d6a93b: OUTPUT«[ ] [ ] ] [ ] [ ] [» | ||
..rakudo-moar d6a93b: OUTPUT«[ ] [ ] ] ] ] [ [ [» | |||
..rakudo-jvm d6a93b: OUTPUT«[ ] ] ] [ ] [ [ ] [» | |||
TimToady | that works too | ||
since a slurpy flattens | |||
konnjuta | under what condition in addition to (<[ ]> xx 5) does it no flatten? | 03:49 | |
TimToady | parcels never flatten until bound into something that flattens it | 03:50 | |
konnjuta | ok | ||
TimToady | and xx is defined to return a parcel for each iteration | ||
the outer parens have nothing to do with it | |||
r: given <[ ]> xx 5 { .perl.say } | 03:51 | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(("[", "]"), ("[", "]"), ("[", "]"), ("[", "]"), ("[", "]")).list» | ||
TimToady | see, no outer parens, still not flat | ||
r: given (((<[ ]> xx 5))) { .perl.say } | 03:52 | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(("[", "]"), ("[", "]"), ("[", "]"), ("[", "]"), ("[", "]")).list» | ||
TimToady | extra parens don't matter either, unless there's a comma | ||
r: given (((<[ ]> xx 5),),) { .perl.say } | |||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(((("[", "]"), ("[", "]"), ("[", "]"), ("[", "]"), ("[", "]")).list,),)» | ||
03:56
jnap left
04:02
BenGoldberg left
04:11
regreg left
04:19
colomon left
04:21
colomon joined
04:26
jnap joined
04:31
jnap left
04:48
SamuraiJack joined
05:02
btyler joined
|
|||
TimToady | okay, turned in my SOTO application for OSCON, though now I see that Geoffrey has also proposed it with the Lightning Talks | 05:18 | |
05:23
[Sno] left,
kbaker left
05:27
jnap joined
05:31
jnap left
05:36
jeffreykegler left
05:44
mcglk left
05:55
Alina-malina joined
|
|||
konnjuta | how to convert string to buf? | 06:04 | |
moritz | with .encode | ||
with .encode($encoding) to be precise | |||
06:17
sqirrel_ joined
06:27
[Sno] joined
06:28
jnap joined
|
|||
lue grumbles in the direction of all things list-like in Perl 6 | 06:29 | ||
06:29
zby_home_ joined
06:32
jnap left
|
|||
raydiak contemplates putting together a list behaviour matrix which crosses parcel, list, array, capture, etc, with mutable, lazy, flattening, context-imposing, and so forth | 06:35 | ||
06:38
kaleem joined
06:39
darutoko joined
|
|||
TimToady | revised rosettacode.org/wiki/ABC_Problem#Perl_6 to be correct in the face of different blocksets | 06:41 | |
06:41
rurban1 left
|
|||
lue | I can make Nil disappear anytime I want to, so long as it's not the code I'm trying to fix >_< | 06:41 | |
konnjuta | r: (<1 2>, <1 2>).WHAT | 06:42 | |
camelia | ( no output ) | ||
konnjuta | r: (<1 2>, <1 2>).WHAT.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(Parcel)» | ||
konnjuta | r: (<1 2>, <1 2>).elems.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«4» | ||
konnjuta | r: (<1 2>, <1 2>).list.WHAT.say | 06:43 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(List)» | ||
konnjuta | r: (<1 2>, <1 2>).list.elems.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«2» | ||
konnjuta | r: (<1 2> xx 2 ).WHAT.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(List)» | ||
konnjuta | r: (<1 2> xx 2 ).elems.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«2» | ||
konnjuta | r: (<1 2> xx 2, ).WHAT.say | 06:44 | |
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«(Parcel)» | ||
konnjuta | r: (<1 2> xx 2, ).elems.say | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«4» | ||
konnjuta | So parcel flattens but list don't? | ||
lue | If someone can tell me why I can't make the Nils disappear, that'd be great: gist.github.com/lue/2761b448d04219e23cc4 | 06:45 | |
moritz | how about not using 'make Nil' if you don't want Nils? :-) | 06:48 | |
TimToady | what moritz sez | 06:50 | |
06:51
sqirrel_ left,
bibifuc_ is now known as bibifuc
|
|||
TimToady | neither parcels nor lists are interested in flattening | 06:51 | |
it's how you use them | |||
lue | moritz: I haven't experimented as much with not doing make Nil, though I didn't have much success there either. | 06:52 | |
TimToady | what do you want instead of the Nil? | ||
lue | nothing, that's why I was counting on Nil's "disappear from the array" trick | 06:53 | |
TimToady | Nils have not disappeared from lists for most of a year now... | ||
except as fossilized bugs | |||
lue | (the list will be turned into a Bag later, and I don't want (Any)=> to be an entry) | ||
r: say (1, Nil, 3).Array | |||
TimToady | did you try () instead? | ||
camelia | rakudo-parrot d6a93b, rakudo-jvm d6a93b, rakudo-moar d6a93b: OUTPUT«1 3» | ||
lue | TimToady: no, testing... | 06:54 | |
TimToady | interesting, something is itemizing it | ||
I'm guessing there's an itemize somewhere in make, when maybe there shouldn't be | 06:57 | ||
lue | TimToady: that might explain it, $() and things refusing to flatten seem to be plaguing me at the moment. | 06:58 | |
It could be I'm using not-the-absolute-latest builds of rakudo, my p6 is 2014.01-25-gfd8316f | 06:59 | ||
TimToady | sub make(Mu $ast) { <-- the $ is itemizing what you make, so () turns into $() | 07:01 | |
that should probably be using a \ instead of a $ | 07:02 | ||
07:02
regreg joined
|
|||
lue | TimToady: replacing 'make Nil' with 'make ()' and using 'make $<word>».ast».Array.flat.Bag;' works for me. | 07:03 | |
TimToady | testing a patch | 07:05 | |
07:07
FROGGS left
07:08
konnjuta left
|
|||
lue goes for the night | 07:09 | ||
raydiak | goodnight lue | ||
07:26
crab2313 joined
07:29
jnap joined
07:33
jnap left
07:35
aindilis left
07:41
kaare_ left
07:42
rurban1 joined
07:46
kaare_ joined
07:51
dmol joined
07:52
FROGGS joined
07:56
kaare_ left
08:01
kaare_ joined
08:05
zakharyas joined
|
|||
dalek | kudo/nom: 8128f6a | larry++ | src/core/Match.pm: Don't itemize make's ast argument |
08:10 | |
FROGGS | morning | 08:12 | |
raydiak | \o morning FROGGS | ||
TimToady | o/ | 08:14 | |
08:15
berekuk joined,
rurban1 left
|
|||
dalek | kudo/nom: 1d6accc | moritz++ | CREDITS: larry is typically known as TimToady++ |
08:21 | |
moritz | 07:58 < lue> TimToady: that might explain it, $() and things refusing to flatten | 08:22 | |
of course it doesn't flatten, it begins with a $ ! | |||
08:25
tgt joined
08:29
jnap joined
08:33
BooK left
08:34
jnap left,
BooK joined
08:37
pdcawley joined
08:39
rindolf joined
08:41
dmol left
08:42
fhelmberger joined
08:44
berekuk left
08:46
berekuk joined
08:50
tgt left
|
|||
hoelzro | morning #perl6! | 08:58 | |
raydiak | good morning hoelzro | 08:59 | |
hoelzro | moritz: raydiak | ||
09:00
berekuk left
|
|||
timotimo | i can sense making make not itemize by default is going to chang lots of user code | 09:03 | |
but i agree that it's more sensible to use \foo rather than $foo for make. | |||
hoelzro | oops | 09:04 | |
that was supposed to be "morning raydiak" =P | |||
timotimo | why didn't it autocomplete to "mroing" or something? :P | 09:05 | |
09:05
bjz left,
bjz_ joined
|
|||
raydiak | b/c it's not a cellphone? :) | 09:05 | |
09:08
bjz_ left,
bjz joined
|
|||
moritz | because my nick isn't 'MRoing' | 09:12 | |
timotimo | :) | 09:14 | |
can't you just interpolate @foobar into a regex? | 09:20 | ||
rather than evaling "/" ~ .comb.join('|') ~ "/"? | |||
09:20
rurban1 joined
|
|||
FROGGS | timotimo: you can | 09:21 | |
who says the opposite? | |||
09:24
lestrrat left
|
|||
timotimo | the ABC problem code from RC does that :) | 09:25 | |
gotta run now. | |||
09:25
lestrrat joined
09:27
sqirrel_ joined
09:29
tgt joined
09:30
jnap joined
09:35
jnap left
09:37
dmol joined
09:38
dmol left
09:39
zby_home_ left
|
|||
masak | mroing, #perl6 | 09:39 | |
09:40
dmol joined
|
|||
FROGGS | mroing mrask! | 09:40 | |
raydiak | good method resolution order, masak | ||
masak | (masak) (RT-bot) (bot) (Mu) | 09:42 | |
09:45
rurban1 left
|
|||
masak | "Blocks are stored as precompiled regexes." -- the code seems to have obsoleted the description here. rosettacode.org/wiki/ABC_Problem#Perl_6 | 09:48 | |
oh wait. | |||
no, there it is, EVAL and slashes. | |||
never mind. :) | |||
masak ponders if macros could do that | |||
diakopter | macros can do anarthing | 09:49 | |
masak | except when they can't | 09:57 | |
diakopter | .. but you can do anything within a macro :) | 09:58 | |
masak | hehe | 09:59 | |
by that argument, subs and class declarations can do anarthing too | 10:00 | ||
diakopter | classes can do subs! | ||
subs can do classes! | |||
such do | |||
masak | p: class C1 { has $.x = sub { my class C2 { has $.y = sub { say "OH HAI" } }; return C2 } }; C1.new.x()().new.y()() | 10:05 | |
camelia | rakudo-parrot 1d6acc: OUTPUT«OH HAI» | ||
masak | \o/ | ||
diakopter | lolz | 10:06 | |
moritz | subs in attributes in clases in subs in attributes in classes | ||
such inception | |||
10:13
btyler left
|
|||
jnthn waves from l'airport | 10:28 | ||
10:28
tgt left
|
|||
FROGGS waves back from l'office | 10:29 | ||
jnthn | Late flight is late | ||
Not much, thankfully | |||
masak | hi, jnthn from l'airport | 10:30 | |
10:31
jnap joined
|
|||
moritz | L'ate flight is late :-) | 10:31 | |
\o jnthn, FROGGS, * | |||
10:31
crab2313 left
|
|||
jnthn | J'ai l'ate un cookie | 10:32 | |
10:33
zby_home_ joined
|
|||
masak .oO( how l'ame ) | 10:33 | ||
10:33
zby_home_ left
10:35
jnap left
10:47
daniel-s joined
10:50
rurban1 joined
10:56
daniel-s_ joined,
daniel-s left
|
|||
masak sometimes wishes he could declare named lexical rules and invoke them from a // regex | 10:57 | ||
10:57
fhelmberger left
|
|||
FROGGS | masak: what do you mean? | 10:58 | |
jnthn | /<&foo>/ ? | ||
dalek | kudo/nom: 1a44ca6 | jonathan++ | tools/build/Makefile-Moar.in: Install the debugger on MoarVM. |
10:59 | |
FROGGS | p: my &foo = regex { \w+ }; say "ohh?" ~~ / <&foo> / | ||
camelia | rakudo-parrot 1d6acc: OUTPUT«「ohh」» | ||
jnthn | r: my regex foo { \w+ }; say "ohh?" ~~ / <&foo> / | 11:00 | |
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc: OUTPUT«「ohh」» | ||
diakopter | masak: I wanted that so badly, I thought we already had it | ||
11:01
Alula left
|
|||
jnthn | OK, time to wander gate-wards I guess... | 11:01 | |
bbl | |||
masak | jnthn: I suspected there was a syntax for it, thanks. | 11:02 | |
FROGGS resists to ask "Wie gates?" | |||
masak | haha | ||
masak .oO( look to gate-wards ) | |||
FROGGS | r: my regex foo { \w+ }; say "ohh?" ~~ / <foo> / | ||
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc: OUTPUT«「ohh」 foo => 「ohh」» | ||
masak | FROGGS++ | ||
FROGGS | :o) | ||
masak | wow, I don't even need the & | 11:03 | |
FROGGS | ENOSPECIALSYNTAX | ||
the hardest thing about it is the "my" | |||
though I think the errmsg would point you in the right direction nowadays | |||
r: regex foo { \w+ }; say "ohh?" ~~ / <foo> / | |||
camelia | rakudo-moar 1d6acc: OUTPUT«Useless declaration of a has-scoped method in mainline (did you mean 'my regex foo'?)No such method 'foo' for invocant of type 'Cursor' in method ACCEPTS at src/gen/m-CORE.setting:12552 in method ACCEPTS at src/gen/m-CORE.setting:782 in bloc…» | ||
..rakudo-parrot 1d6acc: OUTPUT«Useless declaration of a has-scoped method in mainline (did you mean 'my regex foo'?)No such method 'foo' for invocant of type 'Cursor' in regex at /tmp/tmpfile:1 in method ACCEPTS at gen/parrot/CORE.setting:12575 in method ACCEPTS at gen…» | |||
..rakudo-jvm 1d6acc: OUTPUT«Useless declaration of a has-scoped method in mainline (did you mean 'my regex foo'?)No such method 'foo' for invocant of type 'Cursor' in method ACCEPTS at gen/jvm/CORE.setting:12554 in method ACCEPTS at gen/jvm/CORE.setting:782 in block at…» | |||
FROGGS | yeah :o) | 11:04 | |
masak | wow, that made the code lots more readable. nice! | 11:05 | |
FROGGS | yeah, I mean named captures already are nice in a sense of self-documenting code (/$<date>=.../), but declaring these rules somewhere and use these as captures is nice in several ways | 11:07 | |
masak | indeed. | 11:08 | |
11:09
tgt joined
|
|||
diakopter thinks the camelia smudger could make responses equivalent if they're errors and the first two lines of the error/backtrace are the same | 11:12 | ||
masak | aye. | 11:13 | |
p: my regex t { \s+ <(foo|bar)> }; say " bar" ~~ / <t> / | |||
camelia | rakudo-parrot 1d6acc: OUTPUT«「bar」 t => 「bar」» | ||
masak | p: my regex t { \s+ <(foo|bar)> }; say " bar" ~~ / <t>? / | 11:14 | |
camelia | rakudo-parrot 1d6acc: OUTPUT«「」» | ||
masak | I'm... wondering if the that second one is correct? | ||
FROGGS | does not feel right | 11:15 | |
n: my regex t { \s+ <(foo|bar)> }; say " bar" ~~ / <t>? / | |||
camelia | niecza v24-109-g48a8de3: OUTPUT«「」» | ||
FROGGS | n: my regex t { \s+ <(foo|bar)> }; say " bar" ~~ / <t> / | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«「bar」 t => 「bar」» | ||
FROGGS | hmmmm | ||
rn: my regex t { \s+ <(foo|bar)> }; say " bar" ~~ / <t>* / | |||
masak | consistent across implementations. | ||
11:15
rurban1 left
|
|||
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「」» | 11:15 | |
FROGGS | rn: my regex t { \s+ <(foo|bar)> }; say " bar" ~~ / <t>+ / | ||
masak | I'm feeling we're missing something. | ||
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「bar」 t => 「bar」» | ||
FROGGS | rn: my regex t { <(foo|bar)> }; say "bar" ~~ / <t>? / | 11:16 | |
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「bar」 t => 「bar」» | ||
FROGGS | rn: my token t { \s+ <(foo|bar)> }; say " bar" ~~ / <t>? / | ||
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「」» | ||
FROGGS | I dunno | 11:17 | |
rn: my token t { \s+ }; say " bar" ~~ / <t>? / | |||
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「 」 t => 「 」» | ||
FROGGS | at least that makes sense to me :o) | ||
masak | then please explain it to me :) | 11:18 | |
rn: my token t { \s+ <(foo|bar)> }; say " bar" ~~ / <t>? / | |||
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「」» | ||
masak | in the above, why isn't 'bar' captured? | ||
11:19
tgt left
|
|||
FROGGS | rn: my token t { \s+ (foo|bar) }; say " bar" ~~ / <t>? / | 11:19 | |
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「 bar」 t => 「 bar」 0 => 「bar」» | ||
masak is thinking how this relates to github.com/perl6/specs/commit/4128...3fb4260f43 | |||
11:20
sqirrel_ left
|
|||
FROGGS | rn: my token t { \s+ <(foo|bar) }; say " bar" ~~ / <t>? / | 11:21 | |
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileMalformed regexat /tmp/tmpfile:1------> my token t { \s+ <(foo|bar⏏) }; say " bar" ~~ / <t>? / expecting an…» | ||
..niecza v24-109-g48a8de3: OUTPUT«===SORRY!===Unable to parse regex; couldn't find right brace at /tmp/tmpfile line 1:------> my token t { \s+ <(foo|bar⏏) }; say " bar" ~~ / <t>? /Parse failed» | |||
FROGGS | rn: my token t { \s+ <((foo|bar) }; say " bar" ~~ / <t>? / | ||
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「 bar」 t => 「bar」 0 => 「bar」» | ||
FROGGS | rn: my token t { \s+ <((foo|bar))> }; say " bar" ~~ / <t>? / | 11:22 | |
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«「 bar」 t => 「bar」 0 => 「bar」» | ||
FROGGS | interesting | ||
rn: my token t { \s+ <(foo|bar)> }; say " bar" ~~ / <t>? /; say $/.perl | 11:23 | ||
camelia | rakudo-parrot 1d6acc, rakudo-moar 1d6acc: OUTPUT«「」Match.new(orig => " bar", from => 0, to => 0, ast => Any, list => ().list, hash => EnumMap.new())» | ||
..niecza v24-109-g48a8de3: OUTPUT«「」#<match from(0) to(0) text() pos([].list) named({}.hash)>» | |||
..rakudo-jvm 1d6acc: OUTPUT«「」Match.new(to => 0, hash => EnumMap.new(), ast => Any, list => ().list, orig => " bar", from => 0)» | |||
masak | niecza is wrong there. <( and )> are supposed to be independent. | ||
FROGGS | but <( is a thing on its own | 11:24 | |
so <(foo) is invalid | |||
masak | ah, troo. | ||
anyway, I think there was a bug in there, but I'm too fuzzy-headed to analyze it. | 11:25 | ||
FROGGS | yeah, me too | ||
11:29
tgt joined
|
|||
daniel-s_ | perl6: say 'hi' | 11:30 | |
camelia | rakudo-parrot 1d6acc, rakudo-jvm 1d6acc, rakudo-moar 1d6acc, niecza v24-109-g48a8de3: OUTPUT«hi» | ||
daniel-s_ | :-) | 11:31 | |
11:32
jnap joined
|
|||
FROGGS | hi daniel-s_ | 11:32 | |
daniel-s_ | Hey | ||
I figure, camelia is always reliable about saying hi... even if it's only because she's running the code that tells her to do it. | 11:33 | ||
11:34
tgt left
11:36
jnap left
|
|||
masak | oh hai daniel-s_ | 11:36 | |
some of us humans are fairly reliable too ;) | 11:37 | ||
albeit admittedly less so | |||
smash | TimToady: huh?! ah, that wasn't for me, roger | ||
11:41
daniel-s_ left
11:42
daniel-s_ joined
|
|||
Ulti | [Coke] what did you get up to re. bioperl people? | 11:43 | |
last time I spoke to them they said they weren't going to push for bioperl6 yet but would get back to me | 11:44 | ||
11:58
tgt joined
12:02
tgt left
12:10
atroxaper joined
12:13
beastd joined
12:22
tgt joined
|
|||
masak , for perhaps the first time ever, uses TDD purely to map out a domain | 12:27 | ||
12:31
darutoko- joined
12:32
jnap joined
12:33
darutoko left
12:37
jnap left
|
|||
timotimo | hm, it would appear that's one of its strengths, no? | 12:38 | |
masak | yes, it is. | ||
but I usually do it mainly to implement something. | |||
here I do it simply to *understand* what the domain *is*. | |||
as in, I primarily expect the TDD process to *tell* me things. | |||
(and it does) | |||
timotimo | as in "what is the exact size and shape of the domain"? | ||
masak | more like "how the heck does the domain work" | 12:39 | |
note, "domain" as in "problem domain", not as in "domain of a function". | |||
timotimo | that's what i thought, too | ||
12:41
zacts left
|
|||
lizmat is off to FOSDEM | 12:47 | ||
see you there or be square :-) | |||
12:47
lizmat left
|
|||
masak .oO( □ ) | 12:48 | ||
moritz | .oO( is that square fair? ) |
||
FROGGS is now known as froggsbob nottherepants | |||
12:54
kaare_ left
|
|||
colomon is a well-known square | 13:03 | ||
13:07
kaare_ joined
13:15
tgt left,
tgt joined
13:19
ajr joined
13:20
ajr is now known as Guest47646,
Guest47646 is now known as ajr_
13:25
denis_boyun joined
13:28
kaleem left
13:29
Ven joined
13:30
tgt left
13:33
jnap joined
13:38
jnap left
13:40
tgt joined,
kbaker joined
|
|||
Ven | Hi ! I wanted to know if there was a "special variable" that contains the (lexically scoped) current loop iteration (like in awk) | 13:42 | |
masak | Ven: no, we usually do @array.kv for that | 13:44 | |
p: my @array = <A B C D>; for @array.kv -> $i, $val { say "On index $i we have $val" } | 13:45 | ||
camelia | rakudo-parrot 1a44ca: OUTPUT«On index 0 we have AOn index 1 we have BOn index 2 we have COn index 3 we have D» | ||
masak | the "key" in an array is simply the index, as if it were a (non-sparse) Int-keyed hash. | 13:46 | |
it's a nicer solution, in my opinion. a hidden special variable would affect everyone's performance, not just those who used the feature. | 13:48 | ||
13:49
woolfy1 left
|
|||
moritz brings up the sufficiently smart compiler straw-man | 13:50 | ||
Ven | "a SSC would statically determine that the variable isn't used and not generate it" ? | 13:51 | |
moritz | yes | ||
masak | yes, sure. | 13:52 | |
but even considering that, there's something to be said for being explicit. | |||
moritz | but we still hate special variables enough to reduce their number, not increase it | ||
it's down to 4 | |||
masak | if someone really liked the idea of a special variable, they could module it. | ||
moritz | ... with a macro | ||
moritz ducks | |||
masak | ooh, that's a nice example. | ||
yes, because they'd essentially be creating their own for loop, so it's legit. | 13:53 | ||
moritz++ | |||
moritz | "rebaes linearizes history" # 3 words | 13:56 | |
one of them missspelled | |||
masak | ww? | 13:58 | |
moritz | yes | 13:59 | |
14:01
telex left
|
|||
[Coke] | Ulti: nothing happened, I am just in that channel. no substantial discussion. | 14:01 | |
14:02
telex joined
14:04
tgt left
14:05
denis_boyun left
|
|||
[Coke] | I did hear that a lot of people doing bio in perl5 are rolling their own instead of using BioPerl. | 14:09 | |
(because NIH, not for good reasons) | |||
moritz | because perl is so expressive, that in the beginning it's less of a hurdle to roll something on your own | ||
instead of reading docs, and finding the stuff in the first place | 14:10 | ||
14:10
kaare_ left
|
|||
moritz | and getting acquainted with the module author's terminology | 14:10 | |
masak | indeed. | 14:12 | |
just because there's a module out there doesn't mean it's the right fit for everyone. | |||
14:13
faceblaster joined
14:14
tgt joined
|
|||
ajr_ | In a field close the experimental edge, the terminology might not have settled down to the point that people discussing the same subject would recognise the fact. | 14:17 | |
moritz | most bioperl tasks don't seem to apply to that | ||
ajr_ | (Not to mention professional competition generating a struggle over definitions. | ||
14:24
SamuraiJack left,
SamuraiJack joined
14:25
bjz left,
bjz joined
|
|||
Ven | mmh, `class` syntax is a new perl6-feature, right ? It's kinda hard to google things sometimes haha, I got onto Moo's page | 14:29 | |
[Coke] | if you're looking for perl6 docs, the advent calendar, doc.perl6.org and perlcabal.org/syn are good places to poke about. | 14:30 | |
(plus also the roast test suite) | |||
(but to navigate that, you need the ../syn) | |||
[Coke] hasn't done moo programming in a loooong time. | 14:31 | ||
Ven | [Coke]: yeah, that's there I navigate, roast test suite + github finder usually brings good result. I have doc.perl6 and perlcabal open and I get often on the advent calendar. (is it up-to-date with new standarts etc?) | ||
moritz | yes, 'class' syntax is a new feature in Perl 6 | 14:32 | |
geekosaur is somewhat amused, considering that if you follow Moo backwards you end up back here | 14:33 | ||
14:34
jnap joined
14:35
SamuraiJack left
|
|||
masak | geekosaur: I'm so old on this channel, I remember when stevan_++ was active around here, cooking up Moose. :) | 14:37 | |
geekosaur | yep :) | ||
masak | Ven: the advent calendar is up-to-date, except in very rare cases. | ||
Ven: if you think you've found such a case, we're interested to hear about it. | |||
[Coke] is reminded that we have some roast tests for older advents, butnot newere. | 14:38 | ||
14:38
tgt left
|
|||
[Coke] | *but not newer | 14:38 | |
14:39
jnap left
|
|||
Ven | moritz: what are the "4 special variables" still left ? Do you still count $^ variables ? $\d, $`, $' etc ? | 14:47 | |
moritz | Ven: there are $`, $' etc. variables in Perl 6 | ||
Ven: $!, $_, $/ and $¢ | |||
the latter one is usually only used inside the regex engine | |||
Ven | uuh. :D | 14:49 | |
moritz | sorry | 14:50 | |
there are *no* $`, $' etc. variables in Perl 6 | |||
missed that one, unimportant word | |||
masak | those two are simply attributes on $/ these days. | ||
forgotten what exactly... | |||
I just remember there was quite some discussion over the names :) | 14:51 | ||
FROGGS | $¢ might be $/.CURSOR | ||
moritz | $/.prematch and $/.postmatch iirc | ||
FROGGS | ahh, these | 14:52 | |
moritz | m: 'abcdef' ~~ /c/; say $/.prematch | ||
camelia | rakudo-moar 1a44ca: OUTPUT«ab» | ||
Ven | very interesting :) | ||
FROGGS | p: 'abcdef' ~~ /c/; say $` | ||
camelia | rakudo-parrot 1a44ca: OUTPUT«===SORRY!=== Error while compiling /tmp/i5f432KmM2Unsupported use of $` variable; in Perl 6 please use explicit pattern before <(at /tmp/i5f432KmM2:1------> 'abcdef' ~~ /c/; say ⏏$` expecting any of:…» | ||
masak | right .prematch and .postmatch -- moritz++ | ||
FROGGS | std: $' | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===Unsupported use of $'variable; in Perl 6 please use explicit pattern after )> at /tmp/W9f_2P1c5X line 1:------> $'⏏<EOL>Parse failedFAILED 00:01 121m» | ||
masak | Ven: Perl 6 is very thought-through. it is extremely earnest in trying to improve on and fix Perl 5. | 14:53 | |
FROGGS | and I try to get all the nice P5 things back :o) | 14:55 | |
Ven | masak: I'm afraid the only knowledge of perl is a IRC bot I did when I was 12 ;). Coming to perl 6 directly without experience from perl 5 (except some snippets I've read here and there) | ||
tadzik | ok, time for Star release :) | ||
Ven | But sometimes I think it's a hard and steep choice to do (like python did) | ||
masak | Ven: you are right. | 14:56 | |
Ven: and there's a long way for Perl 6 to go still. | |||
Ven: what you see here is a group of enthusiasts who really believe in the idea, and carry it forward day by day. | |||
moritz | and the python step from 2 to 3 isn't nearly as steep as p5 to p6 | ||
masak | and yet people seem embittered and disappointed even by Python's small step. | 14:57 | |
dalek | ar: 9ed36f1 | tadzik++ | tools/star/release-guide.pod: Fix release guide git submodule sync doesn't have a --force option |
14:59 | |
masak | Ven: I think the best way to approach Perl 6 is with a curiosity of what's possible. Perl 5 is awesome, but it has some known limitations. Perl 6 is all about thinking bigger and further than that, and to create a language which transcends Perl 5 while still remaining Perl. | ||
15:00
skids left
|
|||
moritz | tadzik: oh, 'git submodule update' has the --force option | 15:00 | |
masak | Ven: if that ends up sounding interesting, feel free to use Perl 6. if it sounds *very* interesting, feel free to get involved. :> | ||
tadzik | moritz: not here | ||
moritz | git 1.7.9.5 | ||
tadzik | oh, update | ||
Ven | masak: definitely why I approached it | ||
tadzik | should it be 'update --force' then? | ||
masak | Ven: \o/ | 15:01 | |
Ven: let me know if I can be of some assistance. I was once where you are right now. | |||
Ven: experience tells is that newcomers/volunteers have the best change of being helpful/useful by (a) doing what they like and (b) asking questions freely. | 15:02 | ||
Ven | masak: seems like a lot of fun. also used an altJS with a perl-like syntax, so several things feel home. I'm also interested in a lot of programming languages (generally), so generally I just think "oh that's like X in language Y", which helps a lot. But there are a *lot* of features. Read 4 synapses yet, I'll get some as PDFs. | 15:03 | |
FROGGS | Ven: it feels like as if you belong to us :o) | 15:04 | |
15:04
btyler joined
|
|||
moritz | you have been 6ieted. Resistance is normal. | 15:05 | |
15:06
treehug88 joined
|
|||
TimToady | r: my regex foo { \w+ }; say "ohh?" ~~ / <foo> / | 15:07 | |
15:07
tgt joined
|
|||
Ven | One thing for sure, this community's reputation isnt stolen | 15:07 | |
camelia | rakudo-parrot 1a44ca, rakudo-jvm 1a44ca, rakudo-moar 1a44ca: OUTPUT«「ohh」 foo => 「ohh」» | ||
TimToady | masak: don't need the & either | ||
unless you want to force it to not mean a grammar rule, but here it's not ambiguous in any case | |||
15:08
jnap joined
|
|||
FROGGS | just ooc, are dynamic subs specced? like &*foo? | 15:08 | |
dalek | ar: 35aca2d | tadzik++ | tools/star/Makefile: Update Makefile for 2014.01 |
||
ar: ebaa7e5 | tadzik++ | docs/announce/2014.01.md: Add the new release announcement |
|||
tadzik | proofreading will be welcome | ||
FROGGS | not that I'd need it, just wanted to know | ||
15:08
thou joined
|
|||
TimToady | well, you have to call it using &*foo() | 15:09 | |
FROGGS | yes yes | ||
I am aware of that | |||
TimToady | to me it just falls out of everything else; dunno if it's specced | ||
FROGGS | p: my &*foo = sub { 42 }; &*foo() | ||
camelia | ( no output ) | ||
FROGGS | p: my &*foo = sub { 42 }; say &*foo() | ||
camelia | rakudo-parrot 1a44ca: OUTPUT«42» | ||
FROGGS | mkay | 15:10 | |
(fall out)++ | |||
moritz | tadzik: I've skimmed it, looks good | ||
tadzik | moritz: thank you | ||
TimToady | in S06 it has things like &*saith($next_id); # print the lexical $next_id; | ||
dalek | ar: 9f13743 | tadzik++ | / (2 files): Update version numbers |
||
15:11
raiph joined
15:12
tgt left
|
|||
TimToady | oh, I see you discovered the lack of need for &, nevermind :) | 15:12 | |
TimToady never knows whether to respond to the backlog now, or later after he's forgotten to... | |||
FROGGS | hehe | ||
better now than never | |||
moritz | redundant replies don't hurt. | ||
FROGGS | except when they do | 15:13 | |
FROGGS .oO( just wanted to say a Toadism ) | |||
timotimo | hi Ven | ||
what does "this community's reputation isn't stolen" mean? | |||
TimToady | the problem is, if your pride takes a hit point, and it was already negative, you start taking the absolute value as a source of pride | ||
(re redundant replies) | 15:14 | ||
tadzik | urgh, my star doesn't like my ICU, it seems | ||
auto::icu - Is ICU installed...error: icushared not defined | 15:15 | ||
does that ring a bell? | |||
I also had to give it --icuheaders so it'd find them | |||
FROGGS | tadzik: you've got the /usr/include/unicode symlink? | ||
ahh, hmmm | |||
tadzik | FROGGS: I don't think so | ||
timotimo | tadzik++ # star release 2014.01 | 15:16 | |
tadzik | FROGGS: but adding it helpde | ||
might be worth telling people that | |||
I'll check if it's in the readme | |||
15:17
tgt joined
|
|||
TimToady | I do think a lot of our community's reputation was stolen at the beginning, but all new communities do that... | 15:17 | |
timotimo | i don't know what "stolen" means in this context | ||
TimToady | not earned, I suspect | ||
timotimo | oh, of course | ||
15:17
kaleem joined
|
|||
TimToady | at the start, Perl 6 was riding on the Perl 5 community's reputation, for instance | 15:18 | |
timotimo | geekosaur is somewhat amused, considering that if you follow Moo backwards you end up back here -- is that because Moo backwards reads OOM and that's what perl6 tends to do for bigger programs? :P | ||
moritz | :-) | ||
timotimo | Ven: btw, i've come from python directly to perl6 and i'm quite happy here | ||
TimToady | and Perl 1 was riding on a whole heap of borrowed Unix memes | ||
moritz | timotimo++ | ||
TimToady | not to mention Henry Spencer's regex engine :) | ||
dalek | ar: c2982ee | tadzik++ | README: Note potential Parrot ICU problems in the README |
15:19 | |
timotimo | next month's rakudo star may be the first rakudo jvm star and i'm very excited about that possibility | ||
masak | TimToady: re "stolen at the beginning" -- I disagree, to the extent that au++ single-handedly bootstrapped a community around Pugs. | 15:20 | |
tadzik | in the long run it would be nice to have fixed on Parrot side | ||
moritz | masak: afiact Perl 6 started way before au++ was involved | ||
masak | oh, of course. | 15:21 | |
moritz | sadly I wasn't there | ||
masak | me neither. | ||
but up until Pugs, it was basically the Perl 5 and/or Parrot community building Perl 6. | |||
moritz | masak: when did you join, roughly? | ||
raiph | re perl6 advent bitrot: perlmonks.org/?node_id=1067940 | ||
TimToady | well, au borrowed heavily from Haskell culture at that point too :) | ||
15:21
tgt left
|
|||
moritz | for me it must have been in 2006 or 2007 | 15:21 | |
masak | moritz: I was aware of Perl 6 already sometime around 2003-2004. I was reading apocalypses in 2004. I joined the #perl6 channel in 2005. | 15:22 | |
TimToady | and certainly we've been avoiding success at all costs since then :) | ||
moritz | the first rakudo commit mentioning me is from 2008 | ||
15:22
REPLeffect left
|
|||
masak | TimToady: was gonna say. people self-identified as "lambdacamels"; half Perlers, half Haskellers. | 15:22 | |
moritz | first mu patch mentioned me in 207-02 | 15:23 | |
TimToady | wow, that was a long time ago :P | ||
moritz | erm | ||
2007-02 :-) | |||
tadzik | :D | ||
moritz | and first roast patches in 2008-01 | ||
FROGGS | I started recognizing Perl 6 at the YAPC in frankfurt 2012 :o) | 15:25 | |
(and fell in love) | |||
15:26
atroxaper left
|
|||
TimToady | you probably had heatstroke | 15:26 | |
15:26
atroxaper joined
15:27
aindilis joined
|
|||
masak | that would explain the warm feelings | 15:28 | |
PerlJam | blogs.perl.org/users/damian_conway/...urich.html | ||
I see Damian will be giving an intro to perl6 course. | 15:29 | ||
15:29
daniel-s_ left
|
|||
PerlJam | Maybe that will garner some new contributors :) | 15:29 | |
15:31
kaleem left
|
|||
FROGGS | well, my projects before involved hacking threaded stuff in xs (SDL game library), and so the talk about parrot's threads by seven++ where kinde sweet :o) | 15:31 | |
I either had ignored Perl 6 before or I have missed its existence for other reasons | 15:32 | ||
15:35
denis_boyun joined
15:43
denis_boyun left
|
|||
dalek | kudo-star-daily: 064a2c7 | coke++ | log/ (5 files): today (automated commit) |
15:43 | |
[Coke] | lots of failures. :( | 15:44 | |
moritz | :( | 15:45 | |
[Coke] | panda, lwp-simple, dbiish... json? | 15:47 | |
15:47
census joined
|
|||
timotimo | how did that happen? | 15:47 | |
[Coke] | I just report 'em. | ||
timotimo | ah | 15:48 | |
yeah, we changed make | |||
to not automatically itemize any more | |||
moritz | oh dammit | ||
that'll break json | |||
[Coke] | note: i'm testing with the latest rakudo, not the last rakudo-compiler tag. | 15:49 | |
timotimo | irclog.perlgeek.de/perl6/2014-01-31#i_8202738 | ||
[Coke] | so perhaps this doesn't matter for the star release. | 15:50 | |
moritz | likely not | ||
timotimo | it doesn't, luckily | ||
moritz builds a parrot again | |||
Ven | timotimo: Sorry, just got back. That's a french phrase I tried to translate, what I meant is that you didn't usurp your reputation, if that makes more sense. ya'all are nice and fun folks | 15:51 | |
(also hi and thanks for the help yesterday :P) | |||
timotimo | that's a part of what kept me here :P | ||
15:51
dmol left
|
|||
PerlJam | Ven: #perl6 was founded on fun :) | 15:52 | |
tadzik | uhh, it doesn't seem like modules got updated in the star release I prepared | ||
json, Bailador and others still warn about EVAL | |||
timotimo | ah, you were vendethiel yesterday? | ||
tadzik | while it was clearly fixed recently | ||
timotimo | tadzik: i personally recommend "git submodule foreach gitk --all" | ||
er, actually | 15:53 | ||
"git submodule foreach git fetch\; gitk --all" | |||
or ... some kind of quoting or something? | |||
that'll give you a gui that shows where the checkout is, what's available, and you can right-click on any of the commits and select "check out this commit" | |||
tadzik | but well, at least the old ones all work :) | ||
15:53
kbaker left
|
|||
FROGGS | hoelzro: ping | 15:54 | |
hoelzro: I palyed around with your openpipe... and I was wondering if using the macros from procops.c would help | |||
hoelzro: so the result is this, which even seems to work: gist.github.com/FROGGS/998bacca7b3d3abab644 | |||
palyed* | |||
played* | |||
-.- | |||
tadzik | ah, the instructions are RONG agian | 15:56 | |
FROGGS | aww, not agian | ||
timotimo | toldya its tyop day! | ||
FROGGS | \o{ | 15:57 | |
dalek | ar: f269c3f | tadzik++ | modules/ (11 files): Update modules, all but MIME::Base64 |
15:58 | |
ar: 89ae451 | tadzik++ | tools/star/release-guide.pod: Fix release guide to not tell releaser to rollback module updates |
|||
15:58
Psyche^ joined
|
|||
tadzik | I think I need to take a break and go buy some foods :o | 16:01 | |
16:02
faceblaster left,
Psyche^_ left
16:13
panchiniak joined,
FROGGS left,
kbaker joined
|
|||
dalek | ecs: fcaf02c | larry++ | S05-regex.pod: make uses parcel semantics |
16:16 | |
tadzik | rakudo.org/downloads/star/rakudo-st....01.tar.gz is out! | 16:17 | |
moritz | tadzik++ | ||
TimToady | \o/ | ||
moritz | it has escaped! | ||
tadzik | I'll quickly go and grab something to eat; I'll post all the announcements after the shoptrip :) | ||
so there's still time to find a critical bug that'll make me crazy :P | 16:18 | ||
shop & | |||
TimToady | testing | 16:23 | |
(on Linux Mint) | |||
16:23
[Sno] left
|
|||
moritz | I have pushed a json fix; it should not even break on old rakudo | 16:28 | |
16:29
jeffreykegler joined
|
|||
timotimo | i expected as much | 16:29 | |
but i also expect some more breakage to show up in the smoker | 16:30 | ||
[Coke] | moritz++ tadzik++ TimToady++ | 16:36 | |
TimToady | I am very glad we found this one before 6.0.0 :) | 16:40 | |
[Coke] | is there a test? | ||
TimToady | not yet | ||
but it's specced now :) | |||
[Coke] | not without a test it's not. :P | 16:41 | |
TimToady hopes at some point some minions will go through the specs and figure out what doesn't have a test yet :P | |||
[Coke] | you've only synned. :) | ||
tadzik | . o O ( without a test it's snot ) | 16:42 | |
timotimo | got some good noms, tadzik? :) | ||
tadzik | TimToady: does it seem to work well? | ||
timotimo: yeah :) | |||
timotimo | yay | ||
tadzik | timotimo: also, it's so freezing that I think I'll design a plan to always have a 2-weeks-worth of food at home | ||
canned or whatever | |||
TimToady | tadzik: you mean the 'make' parcel patch? | 16:43 | |
tadzik | TimToady: um, I mean the new star :) | ||
TimToady | it spectested before I pushed it | ||
timotimo | hah | 16:44 | |
i hope the weather will nicen up soon :) | |||
TimToady | it seems to have finished 'make install' successfully | ||
tadzik | okay | 16:45 | |
I'll send out the good enws | |||
not sure if I have wordpress' rakudo.org/ account tho | 16:46 | ||
TimToady | trying a make modules-test | ||
16:48
kaleem joined
|
|||
tadzik | moritz: do you have a writeaccess to rakudo.org? | 16:49 | |
TimToady | passes modules-test | 16:50 | |
16:51
panchiniak left
|
|||
PerlJam | tadzik: do you need an invite? | 16:51 | |
16:52
FROGGS[mobile] joined
|
|||
stevan_ | masak: I am so old in this channel I remember when masak++ first arrived ;) | 16:52 | |
tadzik | PerlJam: I think so | 16:53 | |
vendethiel | timotimo: yes, that's me :P | 16:55 | |
dalek | ar: a48e619 | tadzik++ | tools/star/release-guide.pod: Update release guide |
16:56 | |
16:56
FROGGS[mobile]2 joined
|
|||
tadzik | ok, now rakudo.org/2014/01/31/rakudo-star-2...-released/ is out too :) | 16:58 | |
16:59
FROGGS[mobile] left
|
|||
[Coke] | Much of synopsis 9/11 | 17:00 | |
timotimo | =o | 17:01 | |
masak .oO( never forget ) | 17:02 | ||
[Coke] | m: say 9/11 | ||
camelia | rakudo-moar 1a44ca: OUTPUT«0.818182» | ||
17:02
rindolf left
17:03
rindolf joined
|
|||
tadzik | .oO( miecza ) |
17:03 | |
diakopter | m: say e - 2 | 17:04 | |
camelia | rakudo-moar 1a44ca: OUTPUT«0.718281828459046» | ||
diakopter | m: say e - 1.9 | ||
camelia | rakudo-moar 1a44ca: OUTPUT«0.818281828459046» | ||
tadzik | m: say e - (9/11 + 1) | 17:06 | |
camelia | rakudo-moar 1a44ca: OUTPUT«0.900100010277227» | ||
tadzik | m: say e - (9/11 + 1.9) | ||
camelia | rakudo-moar 1a44ca: OUTPUT«0.00010001027722728» | ||
17:07
panchiniak joined
|
|||
timotimo | m: say chr(0b0_000100010) | 17:07 | |
camelia | rakudo-moar 1a44ca: OUTPUT«"» | ||
PerlJam | Who does the R* MSIs typically? | ||
17:07
kaleem left
17:08
rindolf left
|
|||
FROGGS[mobile]2 | I am able to | 17:08 | |
17:08
rindolf joined
|
|||
PerlJam | The last one appears to be from September 2013. It would be nice to have one for the first R* of the new year. | 17:09 | |
tadzik | any volunteers for Star 2014.02, or should I pick one? :> | 17:10 | |
FROGGS[mobile]2 | I think I can do that this weekend | ||
tadzik | thanks FROGGS[mobile]2! | ||
:P | |||
FROGGS[mobile]2 | nooooo!!!! | ||
>.< | |||
tadzik | that'd be a daily R* release | 17:11 | |
timotimo | :D | 17:12 | |
17:15
beastd left
17:16
skids joined
17:18
denisboyun joined
17:30
ajr_ left
17:33
zakharyas left
17:34
denisboyun left
17:37
Vlavv_ left
17:39
erkan left
17:42
atroxaper left
|
|||
TimToady | the current rosettacode.org/wiki/Brace_expansion#Perl_6 solution makes the Haskell solution look rather cluttered :) | 17:45 | |
17:45
denisboyun joined
17:49
Vlavv_ joined
|
|||
moritz | TimToady++ | 17:49 | |
though the use of try is a bit hacky :-) | 17:50 | ||
diakopter | rosettacode-driven idiom/language design | ||
17:50
grondilu joined
|
|||
grondilu | perl6: say ++(my$ ) Ror 2 | 17:51 | |
camelia | niecza v24-109-g48a8de3: OUTPUT«===SORRY!===This macro cannot be used as a function at /tmp/tmpfile line 1:------> say ++(my$ ) Ror⏏ 2Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1502…» | ||
..rakudo-parrot 1a44ca, rakudo-jvm 1a44ca, rakudo-moar 1a44ca: OUTPUT«1» | |||
TimToady | well, hey, Haskell uses try :) | ||
grondilu was expecting 2 | 17:52 | ||
TimToady | besides, the whole brace substitution meme is hacky in the first place :) | ||
in this case, the try saves the redundancy of evaluating $<meta><alts> twice, and makes it read better, so I judged it to be worth it | 17:54 | ||
17:54
denisboyun left
|
|||
timotimo | TimToady: what's the try needed for, ooc? | 17:54 | |
TimToady | was just noticing that it works without the try too :) | 17:55 | |
moritz | \o/ | ||
timotimo | ah, ok | ||
TimToady | since it cascades Nil, I presume, even through the » | ||
anyway, seems to work | 17:56 | ||
timotimo | i wonder, can we ».?&crosswalk | ||
17:57
SamuraiJack joined
|
|||
TimToady | what, you think crosswalk might not be defined? :P | 17:57 | |
timotimo | er ... hah | ||
TimToady | I can see some use for ».?&*dynasub | 17:58 | |
timotimo | :D | ||
TimToady | but I'll be surprised if that parses currently | ||
maybe it will | |||
timotimo | here we go again with the line noise :) | ||
FROGGS[mobile]2 | *g* | ||
feels home | |||
TimToady | okay, try removed, and now it really is quite pretty | 18:00 | |
18:01
dmol joined
18:04
FROGGS joined
18:06
bjz left,
bjz joined
18:07
benabik joined
18:09
[Sno] joined
18:10
tgt joined
|
|||
PerlJam | reading the description for brace expansion ... "$<meta> is likewise short for $/<meta>" while entirely true, saying it's "short for" when it's only one character seems weird. :) | 18:11 | |
18:16
arnsholt left,
arnsholt joined
18:17
ajr joined
|
|||
grondilu | TimToady: have you tried using || instead of | in the grammar in order enforce resolution order? | 18:17 | |
18:17
ajr is now known as Guest5682
18:18
Guest5682 is now known as ajr_
|
|||
TimToady | I decided I don't care if it does LTM instead in this case | 18:18 | |
in fact, probably does the 2nd bracket matcher first | |||
but it gets a pretty quick reject if there's something in the middle | 18:19 | ||
also, need to propagate the LTMs to the other rules so | works right there; if I put || into meta, I'd have to put || everywhere | 18:20 | ||
with LTM I don't actualy have to try meta if the dfa won't match, it goes straight to the . (in TOP) | 18:21 | ||
well, nfa, but yeah | 18:22 | ||
18:23
panchiniak left,
kivutar joined
|
|||
lue | TimToady: I'm going to hazard a guess and say that code I plan on putting on RC probably shouldn't bother using ANSI colors to make things prettier :) | 18:23 | |
TimToady | .oO(A character here, a character there, pretty soon you're talking real bloat.) |
18:24 | |
18:28
SamuraiJack left,
denisboyun joined
|
|||
TimToady | I wanna test the Haskell version, but I've forgotten how to download Text.Parsec (have ghc) | 18:29 | |
oh wait, aptitude found it | |||
geekosaur | normally you'd want to install haskell-platform but ubuntu broke it | 18:30 | |
diakopter | it's a conspiracy. | ||
18:31
jeffreykegler1 joined,
rindolf left
18:32
berekuk joined,
rindolf joined,
darutoko- left,
berekuk left,
berekuk joined,
jeffreykegler left
18:33
denisboyun left
18:37
rindolf left
18:38
rindolf joined
18:40
arnsholt left
18:41
jeffreykegler joined,
vendethiel left
18:42
rindolf left
18:43
Alina-malina left,
rindolf joined,
jeffreykegler1 left
18:44
Alina-malina joined
18:49
erkan joined
18:52
arnsholt joined
18:56
rindolf left,
rindolf joined
18:57
arnsholt left
19:00
denisboyun joined
19:08
arnsholt joined
19:10
zakharyas joined,
rindolf left
19:11
rindolf joined
19:12
arnsholt left
19:15
erkan left
19:17
rindolf left
19:18
rindolf joined,
araujo joined,
jeffreykegler left
19:20
araujo left
19:24
arnsholt joined
19:33
smls joined
19:35
census left
19:37
jeffreykegler joined
19:38
jeffreykegler left
19:43
jeffreykegler joined,
jeffreykegler left
19:47
arnsholt left
19:48
tgt left
19:49
tgt joined
19:50
rindolf left
19:51
arnsholt joined
|
|||
raiph | 10 python idioms: news.ycombinator.com/item?id=7151433 | 19:51 | |
19:52
bluescreen10 joined
|
|||
PerlJam | raiph: btw, thanks for fighting the good fight on perlmonks | 19:53 | |
timotimo | PerlJam, raiph, was that about the post on the advent calendar uptodateness? | 19:55 | |
19:57
arnsholt left
|
|||
PerlJam | timotimo: well, the original was about "Perl 7", but yeah. | 19:57 | |
timotimo | i remember seeing that | 19:58 | |
that was pretty good, indeed | |||
i kind of thought the reply by the anonymous monk was kind of lackluster | |||
but oh well. | |||
19:59
arnsholt joined
|
|||
PerlJam | Sometimes I think "Just ignore the anonymonk" but then I think "It's good that the anonymonk wasn't ignored because others might think his word true" | 19:59 | |
(but I tend to ignore anonymonks anyway because I don't frequent perlmonks much these days :) | |||
lue has never really been to perlmonks, barring the occasional passing-by. | 20:00 | ||
timotimo | i was refering to the anomonk that answered raiphs stuff | ||
i don't think that person understood the concept of the advent calendar; although it would probably be a good idea to put a short snippet of text in a colored box on top of every advent calendar post if there's something outdated in it and explain (as exactly as seems prudent) what's the new status | 20:01 | ||
PerlJam | aye. | 20:03 | |
lue | timotimo: and/or a general site-wide disclaimer at the top of each page saying "Posts are contemporaneous, not current." :) | 20:04 | |
timotimo | right. | ||
but that does seem like an LTA to me | 20:05 | ||
lue | timotimo: it's one of those "It should be obvious" things | ||
lue likes how make -j3 in the nqp repo builds all three nqps at once :D | |||
20:05
arnsholt left
|
|||
timotimo | that's very enjoyable, indeed | 20:05 | |
PerlJam | I think the anonymonk's point was that "Perl 6 isn't usable because the language isn't stable (enough)" or something. | ||
timotimo re-reads | 20:06 | ||
lue | Could I have a link to this thing we're discussing? :) | ||
timotimo | perlmonks.org/?node_id=1067940 | ||
lue | danke | ||
timotimo | okay, i don't think i actually know what that anonymonk referred to with "a significant portion of the important documentation you keep claiming that people will be working on in 2013" | ||
20:08
pdcawley left
|
|||
PerlJam | I think that was a mistake. The anonymonk conflated the Synopses with the Advent articles. (that's just my guess anyway) | 20:09 | |
timotimo | wow, that'd cause a pretty grave misunderstanding | ||
[Coke] | no change in rakudo/moar log files on daily roast. | ||
timotimo | "these crazy fools are only working on the specification on 24 days in the whole year!" | ||
20:10
tgt left
|
|||
lue | timotimo: that "sig portion of imp. doc" thing is likely in response to "I'm not currently willing to go thru all 100+ articles." | 20:10 | |
20:11
tgt joined
|
|||
[Coke] points at github.com/perl6/roast/tree/master/integration //advent* | 20:11 | ||
we have at least partial coverage in the test suite for 2009&2010 | 20:12 | ||
lue | As far as I can tell, Perl 7 is an idea by people who want a shiny new major version on their favorite language, but are peeved that the next major version of a language is taking so long :) | ||
[Coke] | LHF to add the rest (and we probably should) | ||
20:13
kaare_ joined
|
|||
PerlJam | [Coke]++ | 20:13 | |
[Coke] | but: If I go ahead and do that (which needs doing) that will not satsify anonymonk. | ||
so anyone who does it, do it because it's right, not because he's wrong. | |||
PerlJam cares not for anonymonk's desires | |||
lue | [Coke]: my senses tell me anonymonk does not want to be satisfied. | ||
FROGGS | [Coke]: pretty much nothing satisfies haters | ||
just go on and deliver an awesome product | 20:14 | ||
[Coke] | FROGGS: exactly. | ||
[Coke] sets up some quests for the various advent stuff. | |||
timotimo | lue: Anonymonk is probably in THERE IS SOMEONE WRONG ON THE INTERNET mode | 20:16 | |
[Coke] hurls questhub.io/player/coke | |||
lue | timotimo: agreed | ||
[Coke] | feel free to join in any of those. | ||
timotimo | some stuff to +1 \o/ | ||
masak | 'night, #perl6 | ||
[Coke] | +1 ALL MY THINGS! | ||
timotimo | FWIW, i looked through a bunch of advent calendar posts for testable code to copypaste and came up with not much | 20:17 | |
[Coke] | *\[oo]/ | ||
timotimo | i'd say whoever goes with that will have to do a more thorough reading and thinking than i did :) | ||
lue | [Coke]: should advent tests be contemporaneous or current? (e.g. leave eval($stuff) or change to EVAL($stuff)) | ||
[Coke] | I had a bunch of code in 2013 that's testable. | ||
lue: IMO, the code in the article should be updated to match current code. | |||
that's a lot of work, which is why it isn't done. (ditto RC code) | 20:18 | ||
but we shoudl either update the article in situ, or at least have a box at the top saying something like "This article displays an older style of code. <link to roast tests showing current style>" | 20:19 | ||
lue | [Coke]: by "RC code" you mean "script that downloads all completed tasks from RC one-by-one and tests them", right? | ||
I think updated articles should update code + a box somewhere detailing the changes. | 20:20 | ||
PerlJam | lue: +! | ||
er, +1 | |||
[Coke] | lue: something like that. ingy has work in that direction. also see integration/rose* in roast. | ||
moritz turns 2013 day 02 into tests | 20:21 | ||
[Coke] | moritz++ | ||
sweet, now I get credit for doing less work! ;) | |||
lue | .oO(We clearly need gitblog for our advent posts, so we don't have to NIH changelogs) |
||
PerlJam | day 24 is going to be a little harder to turn into a test :) | ||
FROGGS | is somebody willing to test this? froggs.de/perl6/rakudo-star-2014.01-RC0.msi | ||
e.g., test panda | |||
colomon | isn't it released already? | 20:22 | |
FROGGS | colomon: not the msi :o) | ||
lue | colomon: the MSI is specifically released "sometime after the main release" | ||
FROGGS | colomon: it is the compiled version for windows | ||
[Coke] | FROGGS++ trying now. | 20:23 | |
FROGGS | awesome! | ||
[Coke]: thank you | |||
[Coke] | (don't tell anyone I have a sometimes win box) | ||
timotimo | i'd like to see the test that verifies "Clever dogs can do up to 10 words a minute, with surprisingly few typos." :P | ||
FROGGS | *g* | ||
[Coke] | I'd love for us to get a publisher cert. | ||
FROGGS | yeah | ||
colomon is also downloading it | |||
dalek | ast: 1ff6d63 | moritz++ | integration/advent2013-02.t: turn advent 2013 day 02 into a test |
||
lue | Rakudo doesn't do the same "all three rakudos at once with -j3" though :( | 20:24 | |
moritz | lue: it doesn't? | ||
lue | oh, nevermind, I just wasn't patient enough for when it starts :) | ||
FROGGS | lue: my does | ||
hehe | |||
lue: yeah, you have to wait for parrot kicking in :o) | |||
[Coke] | FROGGS: installed it, C:\rakudo\bin\perl6.exe seems to work ok. | 20:25 | |
FROGGS | cool, I hope the repl and panda is fine... then we can ship it | ||
lue | Well, it wavers between "3 jvm", "all three", and "2 jvm + 1 parrot" for me | ||
PerlJam | Can we fudge tests for just one rakudo implementation? | ||
FROGGS | PerlJam: yes | ||
moritz | yes | ||
lue | PerlJam: rakudo.parrot (etc.) | ||
moritz | #?rakudo.parrot 'OH NOEZ' | ||
FROGGS | #?rakudo.jvm skip | ||
PerlJam | nice. | ||
FROGGS | or todo or emit... | 20:26 | |
raiph | timotimo: the anonymonk in question is almost certainly educated_{f,p}oo | ||
[Coke] | panda fails here, but EFIREWALL | ||
FROGGS | hmmm | ||
[Coke] | moritz++ is missing a todo or skip there. | ||
moritz | aye | 20:27 | |
timotimo | raiph: well, if he aint got any other hobbies, let's share a moment of silence for his pitiful existence ... | ||
raiph | timotimo: he's a dedicated and unreasonable P6 troll | ||
[Coke] | FROGGS: but the REPL and the command line seem fine. | ||
20:27
vendethiel joined
|
|||
lue | Funny thing, I still don't care about the troll :) | 20:27 | |
FROGGS | [Coke]++ # thank you very much | ||
[Coke] | r: say [*] 2..1000000 | ||
^^ returns 0 on win7 | 20:28 | ||
FROGGS | panda seems to work here | ||
20:28
denisboyun left
|
|||
camelia | rakudo-parrot 1a44ca, rakudo-jvm 1a44ca, rakudo-moar 1a44ca: OUTPUT«(timeout)» | 20:28 | |
raiph | lue: right, I try (and generally succeed I think) in following au++to go with | ||
[Coke] wonders if questhub.io/realm/perl/quest/511a56...060700005f is worth doing these days - is there another smolder-alike that doesn't have the maintenance issues smolder does? | |||
lue | raiph: what does au say on the matter? | 20:29 | |
colomon | can confirm I get working REPL on * 2014.1 on Windows Vista | ||
20:29
treehug88 left
|
|||
raiph | lue: hug trolls: answer the substance, acknowledge any authentic feelings, ignore the rest | 20:29 | |
FROGGS | colomon++ # thanks for testing | ||
colomon | FROGGS: trying to use it to install ABC module at the moment. | 20:30 | |
FROGGS | moritz: can you please upload froggs.de/perl6/rakudo-star-2014.01-RC0.msi with s/-RC0// ? | 20:31 | |
Please pre-compile C:\rakudo\.work\1391200250_1\lib/ABC/Header.pm | |||
build stage failed for ABC: Failed building lib\ABC\Actions.pm | |||
20:32
cooper_ joined,
arnsholt joined
20:33
treehug88 joined
|
|||
tadzik | my dream: when rakudo says "Please pre-compile", it's followed by "because I tried to do it myself and failed" | 20:34 | |
FROGGS | tadzik: I want to implement proper cache invalidation some day... | 20:35 | |
tadzik: I've made the msi btw | 20:36 | ||
tadzik | FROGGS: that's awesome :) | ||
it's like windows is almost a first-class citizen | |||
FROGGS | *g* | ||
raiph | perlmonks.org/?node_id=1072014 # chromatic "secretly" "publicly" aplogogizes to educated_ | 20:38 | |
PerlJam | FROGGS: When you put it on rakudo.org, add a short article that says it's there with a link to it. | ||
colomon | FROGGS: ABC installation via panda failed, I suspect because the perl6 command is not in the path | ||
is it suppose to be. | |||
FROGGS | PerlJam: I can't upload it, but I can add a link to the post | ||
colomon: it is in my path | 20:39 | ||
panda does not get the deps right for some reason | |||
colomon | give me a moment | ||
20:39
cooper_ is now known as cooper,
cooper left,
cooper joined
|
|||
tadzik | oh! | 20:39 | |
dalek | ast: 90ed0c3 | moritz++ | integration/advent2013-04.t: Add tests for advent 2013 day 04 (incomplete) |
20:40 | |
PerlJam | FROGGS: let me know the URL of the final MSI and I'll upload it to rakudo.org | ||
FROGGS | PerlJam: that is the final IMO | 20:41 | |
froggs.de/perl6/rakudo-star-2014.01-RC0.msi with the -RC0 stripped | |||
PerlJam | okay. | ||
FROGGS | because I can't fix panda and/or ABC in a reasonable timeframe | 20:42 | |
dalek | kudo/nom: 8ea845b | moritz++ | t/spectest.data: run new advent tests |
||
PerlJam | FROGGS: uploaded. See rakudo.org/downloads/star/ | 20:43 | |
FROGGS | PerlJam++ # :o) | ||
20:44
psch joined,
arnsholt left
|
|||
psch | hi #perl6 | 20:44 | |
PerlJam | hello psch | ||
20:45
arnsholt joined
|
|||
dalek | ast: dacd397 | moritz++ | integration/advent2013-06.t: Add test for advent 2013 day 06 |
20:46 | |
kudo/nom: 2f948dd | moritz++ | t/spectest.data: run another advent test |
20:47 | ||
20:48
rindolf joined
20:50
arnsholt left,
arnsholt joined
|
|||
dalek | ast: a78a516 | (Pepe Schwarz)++ | S32-exceptions/misc.t: Added test for RT #98854 |
20:50 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=98854 | ||
colomon | FROGGS: I don't see any sign that c:\rakudo\bin has been added to my oath | 20:52 | |
path | |||
(obviously I can do it manually….) | 20:53 | ||
FROGGS | ohh, I might have done that in the past | ||
20:54
kbaker left
|
|||
hoelzro | FROGGS: nice, I like it! | 20:57 | |
I had just started to look at procops =/ | |||
tadzik++ # release | |||
FROGGS | hoelzro: cool! | ||
colomon | tadzik++ | ||
# indeed | |||
FROGGS | hoelzro: though the output of "perl6-p -e 'use v5; say `ls`'" and "perl6-m -e 'use v5; say `ls`'" looks a bit different | 20:58 | |
maybe perl6-p's openpipe does not spawn a shell? | |||
hoelzro | try echo $$ | ||
FROGGS | an btw, I did no test except v5 stuff so far | 20:59 | |
hoelzro | ok | ||
psch | lines 135ff in S14-roles/parameterized-basic.t look like they kinda-sorta test for RT #84492. can someone explain what's different if there is anything? | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=84492 | ||
hoelzro | I'm hoping to finish it up at FOSDEM | ||
FROGGS | hoelzro: I get the pid on both backends | 21:00 | |
hmmm, then I dunno why `ls` displays in column on parrot but not on moar | |||
hoelzro | hmm | 21:01 | |
well | |||
ls will columnize in a tty | |||
21:02
arnsholt left
|
|||
clsn | r: my \φ; say "alive" | 21:04 | |
camelia | rakudo-moar 1a44ca: OUTPUT«===SORRY!===Cannot find method 'ast'» | ||
..rakudo-parrot 1a44ca, rakudo-jvm 1a44ca: OUTPUT«===SORRY!===No such method 'ast' for invocant of type 'NQPMu'» | |||
dalek | rl6-roast-data: 45afbfa | coke++ | / (3 files): today (automated commit) |
||
clsn | Hm, when I tried earlier it worked for moar and jvm, but failed for parrot. | ||
FROGGS | clsn: huh | ||
clsn | Maybe I'm wrong; moar just SEGVd when I tried it now. | 21:05 | |
[Coke] | looks like additionally, moar has a LTA LTA error. | ||
(those 3 errors should be identical) | |||
lue | somehow, the +x on perl6-debug-m wasn't carried over when I did 'make install' | 21:06 | |
clsn | huh, I thought it worked for me for -j and -m before... Guess not. | 21:07 | |
21:07
zakharyas left
|
|||
FROGGS | $<term_init> in token declarator is null | 21:07 | |
21:10
havenwood joined
|
|||
FROGGS tries a fix | 21:11 | ||
21:13
arnsholt joined
|
|||
FROGGS | r: my \φ | 21:13 | |
camelia | rakudo-moar 1a44ca: OUTPUT«===SORRY!===Cannot find method 'ast'» | ||
..rakudo-parrot 1a44ca, rakudo-jvm 1a44ca: OUTPUT«===SORRY!===No such method 'ast' for invocant of type 'NQPMu'» | |||
FROGGS | r: my \φ = 7 | ||
camelia | ( no output ) | ||
FROGGS scratches his head | |||
21:13
DarthGandalf left
|
|||
clsn | Oh right, maybe I was trying it with a value... | 21:13 | |
FROGGS | std: my \φ | ||
camelia | std 09dda5b: OUTPUT«===SORRY!===Term definition requires an initializer at /tmp/Zn96AjnSG9 line 1 (EOF):------> my \φ⏏<EOL>Check failedFAILED 00:01 121m» | ||
clsn | Yeah, I guess all looks well... I could have sworn I was getting weird errors from parrot... | 21:15 | |
FROGGS | still weird that it does not complain about the missing initializer | ||
clsn | And I was getting different behavior for my \x vs my \φ, that was the cool thing.... Wonder what I was doing differently. | 21:16 | |
lue | $ ./bootstrap.pl | 21:17 | |
==> Bootstrapping Panda | |||
Cannot call 'postcircumfix:<{ }>'; none of these signatures match: | |||
Anyone else get this? | |||
dalek | kudo/nom: d5f7c71 | (Tobias Leich)++ | src/Perl6/Grammar.nqp: need to panic now! Otherwise it would continue and complain about missing method NQPMu.ast because of lacking $<term_init>. |
21:19 | |
FROGGS | clsn++ | ||
moritz | FROGGS++ | 21:20 | |
clsn | moritz++ | ||
moritz isn't a big fan of continuing to parse after errors | |||
FROGGS | well, it *is* nice to get a list of error, like "unknown sub foo used in line 223, 448 and 976" | 21:21 | |
because you can fix all in one go | |||
timotimo | agreed. as long as there are no BEGIN blocks in between :P | ||
moritz | FROGGS: aye. But I can also fix them all in one go by using the search function in my editor | 21:22 | |
lue | I am I the only one getting that random "cannot call postcircumfix" error with panda? | ||
FROGGS | lue: possible, and I don't even use panda O.o | 21:23 | |
21:23
DarthGandalf joined
|
|||
lue | r: class Foo { }; say Foo ~~ Any | 21:25 | |
camelia | rakudo-parrot 1a44ca, rakudo-jvm 1a44ca, rakudo-moar 1a44ca: OUTPUT«True» | ||
clsn | r: my @all=(1...*); my @ones:=(1,@all) Z- @all; say @ones[^10] | ||
camelia | rakudo-parrot 1a44ca, rakudo-jvm 1a44ca, rakudo-moar 1a44ca: OUTPUT«0 -1 -1 -1 -1 -1 -1 -1 -1 -1» | ||
clsn | r: my @all=(1...*); my @ones=(1,@all) Z- @all; say @ones[^10] | 21:26 | |
But it's Bad if you don't use :=. Which indicates that I don't really understand = vs :=. | |||
camelia | rakudo-parrot 1a44ca, rakudo-jvm 1a44ca, rakudo-moar 1a44ca: OUTPUT«(timeout)» | ||
timotimo | using = with a list on the LHS will eagerly assign | 21:27 | |
:= replaces the listy thing with the lazy thing | 21:28 | ||
clsn | Apparently. And I guess := doesn't project eagerness. | ||
timotimo | rather than asking the lazy thing to fill up the listy thing | ||
clsn | Can only use := in declarations though, right? as in my @foo :=... not with things already declared. | ||
timotimo | nope. you can do := as often as you want | 21:29 | |
NQP only has :=, no = at all | |||
dalek | kudo/nom: aa72afa | moritz++ | CREDITS: fix typo in credits |
21:30 | |
clsn | I knew that about NQP. Yes, I just tried out and see what you mean about :=. Once again, I was misled by REPL weirdness, since I do most of my tinkering in the REPL. The REPL won't let you use := most places. | ||
timotimo | yeah, the repl is usually trouble :( | ||
clsn | Yeah, I'm starting to understand that. I really need to test out anything anomalous non-REPLly more carefully. | 21:31 | |
timotimo | yes :( | 21:34 | |
i've started using a vim buffer and having a :!perl6 % on hand | |||
21:34
raiph left
|
|||
PerlJam | timotimo: do you map that to one of the function keys or type it out by hand each time? | 21:34 | |
timotimo | neither | 21:36 | |
i type :!<Up> | |||
well, actually i usually type :w<CR>:!<Up> | |||
which is pretty bad as far as huffmanization goes :) | |||
grondilu | TimToady: trying to do brace-expansion with a simpler grammar. Doesn't quite work yet, but works for a few examples at least. gist.github.com/grondilu/8743717 | 21:39 | |
21:41
rurban1 joined
|
|||
PerlJam | grondilu: did the "redundancy" in the original grammar inspire you? :) | 21:41 | |
grondilu | not sure what you mean | 21:42 | |
diakopter | repetition of the < > | ||
er <[ ]> | |||
grondilu | well, there are definitely a few things I don't like in the current entry. It's great that we have something that works, but the logic behind it is hard to grasp, imho. | 21:44 | |
21:44
arnsholt left
|
|||
grondilu | I really have the feeling it's possible to write something more elegant. | 21:44 | |
(thus my modest attempt) | 21:45 | ||
21:45
arnsholt joined
|
|||
diakopter | grondilu: well, idiomacy trades off with elegance.. | 21:45 | |
21:46
smls left
|
|||
diakopter | sometimes. | 21:46 | |
timotimo | since i can't decide between organisation and organization, i'll write organißation | 21:48 | |
clsn | TIL: (just now, really) It's faster to say sub blah($a, $b) { if $a > $b ... else ... } than it is to say multi sub blah($a, $b where $a>b) { ...} and multi sub blah($a, $b) { ... }. | ||
i.e. it executes faster. | |||
timotimo | get it? because ß is "sz" | ||
FROGGS | Missing test file: t/spec/integration/advent2013-day02.t | 21:49 | |
Missing test file: t/spec/integration/advent2013-day04.t | |||
Missing test file: t/spec/integration/advent2013-day06.t | |||
the files don't have a "day" in their names | |||
colomon | clsn: yes, definitely | ||
FROGGS | moritz: ^^ | ||
clsn | Makes sense. But it had to be experimented with. | 21:50 | |
lue | That panda error in more detail ==> gist.github.com/lue/1029c4d379bb8143b8f3 | ||
dalek | kudo/nom: 257e61a | moritz++ | t/spectest.data: fix file names, FROGGS++ |
21:54 | |
moritz | I shouldn't hack this late in the week anymore | ||
timotimo | ... but it's friday? | 21:56 | |
friday night isn't in the week :) | |||
21:56
rindolf left
|
|||
moritz | well, that's the problem, aint it? :-) | 21:56 | |
21:56
rindolf joined
21:57
treehug88 left
22:02
benabik left
22:06
smls joined
22:10
berekuk left
|
|||
smls | moritz: re "continuing to parse after errors", why not do it like Perl: Continue parsing, but stop at the first thing that's not safe after an error. | 22:13 | |
--> "line 5: Error X; line 17: Error Y; line 33: BEGIN not safe after errors; aborting." | 22:14 | ||
22:17
BenGoldberg joined
|
|||
vendethiel | is this good ? | 22:17 | |
subset FilledArray of Array where *.elems > 0; | |||
tadzik | why don't you try it out? :) | 22:19 | |
[Coke] | can we pick a consistant way to name the advent files? | 22:21 | |
vendethiel | tadzik: yeah that works but I'm looking for a way to convert an Array to FilledArray | ||
[Coke] | (rather than some day, some not?) | ||
vendethiel | I tried .FilledArray, FilledArray([1,2]) | ||
[Coke] | if no objections, I'll unify them later this even. | 22:22 | |
smls | vendethiel: I don't think subsets are types that you can instantiate, but merely meant as restrictions for parameters/attributes | 22:23 | |
vendethiel | smls: ah, okay :). thanks ! | ||
smls | r: subset FilledArray of Array where *.elems > 0; sub foo (FilledArray $x) { say $x }; foo [1, 2]; foo [] # like this | ||
camelia | rakudo-parrot 2f948d, rakudo-jvm 2f948d, rakudo-moar 2f948d: OUTPUT«1 2Constraint type check failed for parameter '$x' in sub foo at /tmp/tmpfile:1 in block at /tmp/tmpfile:1» | 22:24 | |
smls | I'm new to Perl 6 as well, though :) | ||
vendethiel | smls: thanks | 22:25 | |
22:26
arnsholt left
22:29
mcglk joined
22:38
btyler left
22:47
FROGGS[mobile]2 left
22:48
FROGGS[mobile] joined
22:54
arnsholt joined
22:56
kaiz joined
22:57
kaiz left
22:58
grondilu left,
dmol left,
tgt left
|
|||
Ulti | [Coke] yeah the only part of bioperl that I use is the parsers, the more analytical things I don't trust at all | 23:00 | |
lue | I really have no clue why panda suddenly breaks on postcircumfix:<{ }> :( | 23:01 | |
Ulti | which is why Perl6 is neat because a module filled with well tested grammars for different file formats would be really great | ||
23:12
bluescreen10 left
23:14
btyler joined
|
|||
dalek | ast: 1ccbe07 | coke++ | integration/advent2013- (6 files): follow naming convention of other advents. |
23:15 | |
vendethiel | is ==>> not implemented yet ? | ||
dalek | kudo/nom: dc42ad8 | coke++ | t/spectest.data: track file rename |
||
[Coke] | easy enough to check with the evalbot. | 23:16 | |
vendethiel | (did not mean "yet", sry) | ||
[Coke] looks up the syntax | |||
vendethiel | r: my @a; 1..2 ==> @a; 3..4 ==>> @a; | ||
camelia | rakudo-parrot 257e61, rakudo-jvm 257e61, rakudo-moar 257e61: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile==>> feed operator not yet implemented. Sorry. at /tmp/tmpfile:1------> my @a; 1..2 ==> @a; 3..4 ==>> @a⏏; expecti…» | ||
vendethiel | oh okay :) | ||
diakopter | n: my @a; 1..2 ==> @a; 3..4 ==>> @a; | ||
camelia | niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Feed ops NYI at /home/p6eval/niecza/lib/CORE.setting line 1536 (die @ 5)  at /home/p6eval/niecza/lib/CORE.setting line 3571 (infix:<==>> @ 4)  at /tmp/_dW_Xtvh9G line 1 (mainline @ 4)  at /home/p6eval/niecza/lib/CO…» | ||
[Coke] | there ya go. | 23:17 | |
vendethiel++ | |||
vendethiel | [Coke]++ | ||
(now I know where au got this habit of ++'ing people :p | |||
23:17
arnsholt left
|
|||
[Coke] | ;) | 23:18 | |
23:18
jeffreykegler joined
|
|||
TimToady | r: 1..2 ==> my @a; 3..4 ==> @a.push; say @a | 23:18 | |
camelia | rakudo-parrot 257e61, rakudo-jvm 257e61, rakudo-moar 257e61: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileSorry, do not know how to handle this case of a feed operator yet.at /tmp/tmpfile:1------> 1..2 ==> my @a; 3..4 ==> @a.push⏏…» | ||
TimToady | r: 1..2 ==> my @a; 3..4 ==> push @a; say @a | ||
camelia | rakudo-parrot 257e61, rakudo-jvm 257e61, rakudo-moar 257e61: OUTPUT«1 2 3 4» | ||
TimToady | there ya go | ||
smls | www.dlugosz.com/Perl6/web/info-model-TOC.html | 23:19 | |
^^ How up-to-date is this? | |||
vendethiel | I don't even understand what ==>> does compared to ==> :P | ||
r: 1..2 ==> my @a; 3..4 ==> @a; say @a | |||
TimToady | it may be a syntax in search of a feature | ||
[Coke] | smls: it says right there :) | ||
camelia | rakudo-parrot 257e61, rakudo-jvm 257e61, rakudo-moar 257e61: OUTPUT«1 2 3 4» | ||
vendethiel | r: 1..2 ==> my @a; 3..4 ==> @a; say @a.perl | ||
camelia | rakudo-parrot 257e61, rakudo-jvm 257e61, rakudo-moar 257e61: OUTPUT«Array.new(1, 2, 3, 4)» | 23:20 | |
smls | [Coke]: I mean, does it still apply to today's Rakudo more or less | ||
vendethiel | nah, this is not a LoL. So I'm not sure why it's there | ||
TimToady | vendethiel: we might decide that implicit "push" semantics are abug | ||
[Coke] | smls: yah, I know, I'm just being snarky. | ||
23:20
Pleiades` left
|
|||
vendethiel | TimToady: and make my last case [1, 2, [3, 4]] ? | 23:20 | |
[Coke] | (and I don't know the answer) | ||
23:21
rurban1 left
|
|||
vendethiel | (==> actually is like F#'s |>, I like it) | 23:21 | |
TimToady | vendethiel: depends on how we implement it; mind end up just 3,4 | ||
*might | 23:22 | ||
vendethiel | oh yeah, just overwrite, makes sense ! | ||
TimToady | but I shouldn't do design while I'm sick :) | ||
vendethiel | while it could just be `1..2 ==> my @a; 3..4 ==> (@a = [])`, couldn't it ? | ||
to "just end up 3,4". (I don't say that's practical, I'm just asking if how I see evaluation order is correct) | 23:23 | ||
TimToady | we haven't really nailed down the most desired semantics of ==> yet, specwise | ||
especially since ==> may end up representing channels | |||
and behave even more like Unix pipes that way | |||
vendethiel | TimToady: I see. Does it append to the arglist of the following call, kind of like a macro, or does the right operand's function needs to be curried ? | ||
like 1..2 ==> map({$_ * 2}) | 23:24 | ||
TimToady | right, that's the debate :) | ||
23:24
arnsholt joined
|
|||
TimToady | and to what extent do we recognize different targets at compile time vs run time | 23:24 | |
vendethiel | not sure I'm getting that last bit | ||
you mean, semantics to decide if it should just call the function or append to arglist ? | 23:25 | ||
TimToady | to what extent to we limit visibility of data structures outside that might need locking or lock-free consideration? | ||
vendethiel | oh, okay. | ||
23:25
Pleiades` joined
|
|||
TimToady | the original idea was just appending to an arglist | 23:25 | |
the ==>> spec-ese came from groping our way toward inter-thread communication, which jnthn++'s more recent stuff serves as a good basis for | 23:26 | ||
so we'll need to revisit whether ==> represents channels, and how we target multiple feeds to the same target | 23:27 | ||
and whether push semantics even make sense in that context | |||
or whether push semantics are in some sense mandatory | |||
also whether we specifically recognize declarations like my @a, or need something around that | 23:28 | ||
exactly at what point do we figure out the nature of the function or object that we're passing values to... | 23:29 | ||
and what are the optimization tradeoffs for each approach? | 23:30 | ||
23:30
arnsholt left,
arnsholt_ joined
|
|||
TimToady | I can come up with lots of questions while I'm running a fever, but I'd better not come up with any answers... :) | 23:30 | |
vendethiel | TimToady: you're still interesting to read tho :) | 23:31 | |
TimToady | thanks, and welcome to the research project | ||
23:35
ponbiki left
|
|||
dalek | ast: 2162736 | (Pepe Schwarz)++ | S12-methods/delegation.t: Added tests for RT #95514. |
23:40 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=95514 | ||
23:41
xinming left
23:42
ajr_ left,
xinming joined,
ponbiki joined
23:43
ponbiki is now known as Guest62859,
colomon left
23:50
havenwood left
23:54
arnsholt joined,
arnsholt_ left
23:55
jnap left
|
|||
dalek | ast: 84c4742 | (Pepe Schwarz)++ | S14-roles/parameterized-type.t: Added test for RT #84492. |
23:58 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=84492 | ||
psch has run out of things he understands how to write tests for | 23:59 |