»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by wolfe.freenode.net on 30 October 2009. |
|||
zaslon | lolperl6adventhazblogged! perl6advent++ 'Day 24: The Perl 6 standard grammar': perl6advent.wordpress.com/2009/12/2...d-grammar/ | 00:03 | |
00:04
kensanata left,
mberends left
00:05
Su-Shee left
|
|||
Wolfman2000 | ...to whoever keeps up with standards: are emails supposed to be case insensitive? | 00:10 | |
Juerd | pmichaud++ # great advent finale :) | 00:11 | |
00:13
kensanata joined
|
|||
arnsholt | Wolfman2000: Email addresses are case-insensitive IIRC | 00:15 | |
Er, actually, I'm not sure. Check Wikipedia. E-mail is a mess =) | |||
Wolfman2000 | according to wikipedia, the local part should be case sensitive. doesn't say about the domain part | ||
diakopter | phenny: tell mberends and miguel adds multiple return to mono/C#: tirania.org/blog/archive/2009/Dec-23.html | 00:16 | |
phenny | diakopter: I'll pass that on when mberends is around. | ||
00:16
pdcawley left
|
|||
arnsholt | The domain parts are resolved by DNS, which is insensitive as well | 00:18 | |
diakopter | Wolfman2000: the domain part is historically not case-sensitive; see en.wikipedia.org/wiki/Domain_Name_System and its link to RFC 4343 | ||
00:19
ejs left,
ejs1 joined
|
|||
diakopter | Wolfman2000: the local part should be case-sensitive, but many smtp servers treat it as case-insensitive | 00:21 | |
Wolfman2000 | ...I'm starting to not like redesigning my website proper now. :( | ||
diakopter | change how you're doing it so that you enjoy it? | 00:22 | |
Wolfman2000 | diakopter: Get me more contributers so I'm not the only one doing it. | ||
...on second thought, don't worry about it. | |||
diakopter | I wasn't going to worry about it anyway | 00:23 | |
00:26
lestrrat is now known as lest_away
00:29
TiMBuS joined
00:35
ihrd1 joined,
ihrd1 left
00:57
ejs1 left
01:01
lest_away is now known as lestrrat
01:04
ashizawa joined
01:07
ShaneC1 left
01:18
cotto left
01:21
felipe left
01:24
tsbtmn joined
01:41
jferrero left
01:43
Baggio_ joined
01:44
wayland76 joined
01:48
krunen left,
krunen joined
01:53
Beetny joined
|
|||
diakopter | phenny: tell mberends named capturing groups working, in addition to lookahead (pos and neg) | 01:56 | |
phenny | diakopter: I'll pass that on when mberends is around. | ||
01:58
Baggio_ left
02:03
Baggio_ joined
02:05
eiro_ joined,
kensanata left
02:07
Baggio_ left,
cdarroch left
|
|||
colomon | \o/ Advent calendar is done! | 02:12 | |
Juerd | :( | 02:13 | |
02:16
yogurt_truck joined
02:22
patspam left
02:23
eiro left,
patspam joined
|
|||
diakopter | colomon: but wait, there's 366 days until the following Christmas | 02:26 | |
so, at least 366 more Advent Calendar posts to go! | |||
colomon | diakopter: I wouldn't mind restarting it in the January. But I'm very happy to celebrate a job well done now. :) | 02:27 | |
02:33
JimmyZ joined
02:40
felipe joined
02:50
meppl left
02:51
agentzh joined
02:53
mubot left,
pointme left,
zaslon left
02:54
pointme joined,
mubot joined,
zaslon joined
03:28
JimmyZ left
03:35
rbaumer joined
03:40
japhb left
03:48
colomon left
04:13
japhb joined
04:21
rbaumer left
04:22
rbaumer joined
04:23
rbaumer left
04:27
bluescreen left
04:32
nihiliad left
04:39
eiro_ is now known as eiro
04:46
nihiliad joined,
justatheory left
05:15
buubot left
05:36
buubot joined
05:42
niella joined
05:43
silent11 joined
05:44
gfx joined
05:55
orafu left
05:56
orafu joined
05:59
nihiliad left
06:06
bryan[c1] left
06:08
silent11 left
06:11
niella left
06:19
tsbtmn left
06:28
patspam left
|
|||
diakopter | I'm tickled that Synopsis 5 on feather is the 2nd result on google for "S05" | 06:29 | |
std: $///$////$$/ | 06:32 | ||
p6eval | std 29391: ok 00:01 106m | ||
06:34
youwin joined
|
|||
youwin | does any other language have a .comb method or is it completely a new idea for perl6? | 06:36 | |
diakopter | it's kindof a global (but non-overlapping) match aggregator | 06:42 | |
06:42
Baggio_ joined
|
|||
diakopter | youwin: I don't know whether there is a precedent; likely someone somewhere wrote up a routine to do that sort of thing. | 06:43 | |
youwin | well its not exactly brand new thing, i could do a while (/../g), but this is the first ive heard it called that and made into a method of a string | ||
Tene considers, after doing it YET AGAIN, echo "alias :w='git commit -a'" >> ~/.aliases | |||
Probably not the best idea, but it's at least debatable. | |||
youwin | its a great idea | ||
i like it | |||
if you provide split, you might as well have comb | 06:44 | ||
Tene | Yes, I agree. :) | ||
06:44
yogurt_truck left
|
|||
diakopter | youwin: well, there's the task of getting only the non-overlapping matches | 06:44 | |
youwin | theres no way to make it get overlapping matches? | 06:45 | |
not sure how useful that would be though | 06:46 | ||
diakopter | that's what you get by iterating a "normal" global match | ||
std: token space_cadet { BEGIN { <.space_cadet> } } | 06:54 | ||
p6eval | std 29391: ok 00:01 105m | ||
diakopter | std: token token { <token> } | 06:55 | |
p6eval | std 29391: ok 00:01 104m | ||
diakopter | std: token foo { ^^ . ^^ } | 06:57 | |
p6eval | std 29391: ok 00:01 104m | ||
07:04
mberends joined
|
|||
diakopter | mberends: hi | 07:05 | |
mberends | hi diakopter, 7 hours was needed apparently. backlogging... | ||
phenny | mberends: 00:16Z <diakopter> tell mberends and miguel adds multiple return to mono/C#: tirania.org/blog/archive/2009/Dec-23.html | ||
mberends: 01:56Z <diakopter> tell mberends named capturing groups working, in addition to lookahead (pos and neg) | |||
mberends | w00t! | ||
"Sprixel Reloaded" is going to be awesome | 07:06 | ||
diakopter | we'll see | 07:08 | |
I'm sticking with the "there's that crazy diakopter" routine so as to keep expectations low, hopefully. | |||
oh wait, did I say that out loud? :/ | 07:09 | ||
oh, and, it'll do 1e44 regex executions per second. ;) | |||
mberends | yeah, we all know how it goes | 07:10 | |
diakopter | :) | 07:12 | |
there's something different about working on code alone and "dark" | |||
much more freedom to fail, but also much more freedom to tinker and try newish things that are easy to label "throwaway" in hindsight | 07:13 | ||
mberends | ...that you like? | ||
07:13
lestrrat is now known as lest_away
|
|||
diakopter | yeah.. but of course there are detriments | 07:15 | |
mberends | I was itching to publish vill asap, but wanted a minimum proof of viability, and did not end up with what I had was aiming for | ||
diakopter | imho, the bar (for "viability") will continually rise | 07:16 | |
(as the costs go from opportunity to sunk) | |||
(and the pressure to justify previous decisions/activity rises) | 07:17 | ||
mberends | "fail publicly" is ok, there are usually takeaway lessons. yes, justifying decisions publicly is harder, but then the extra brains are mostly helpful. pmurias++ also encourages me at multiple levels. | 07:18 | |
diakopter watched "Armored" (a movie) in a theater tonight. An ok movie, as Matt Dillon/Laurence Fishburne heist movies go. | 07:20 | ||
, but visions of ILGenerators danced in my head | |||
mberends had an xkcd # 224 type dream, except it was Perl 6 | 07:21 | ||
that C# Tuple reference doesn't impress. Break platform independence to achieve little more than syntactic sugar for a Collection-y thing. | 07:24 | ||
diakopter | www.modernperlbooks.com/mt/2009/12/...-perl.html slashdotted | 07:25 | |
mberends | we could put the book on our Christmas lists, no, wait, oh... | 07:26 | |
diakopter | mberends: yeah, and I don't see how he'd distinguish an actual comma operator | 07:27 | |
07:27
meppl joined
|
|||
mberends | C# is stealing ideas from Perl! Again! | 07:27 | |
eiro | good thing! | 07:28 | |
no ? | |||
mberends | good thing, if it were to be true, which I don't seriously believe | 07:29 | |
diakopter | o wait. no comma operator in C#. /me feels silly | 07:31 | |
eiro | :) | 07:35 | |
mberends | under the C# Tuple article, 7 hours ago Robert Friberg commented "I have had classes Tuple<T,U> and Tuple<T,U,V> in my utilities library since 2.0...." | 07:37 | |
diakopter | yeah; shows that Robert Friberg didn't read the article | 07:39 | |
mberends | so the Tuple Patch is purely the assignment to a list of scalars, like Perl 5 does. | 07:41 | |
diakopter | and also the final slurpy slot | ||
basically, list context for assignment | 07:42 | ||
mberends | ah, found the slurpy concept, missed it earlier | ||
diakopter | I find it interesting that a MIPS jump address table header field is part of the CIL specification | 07:50 | |
mberends | chromatic is so good at thinking through improvements, also for Perl 5 packagers. Hopefully this time the suggestions don't get blocked by the keep-off-my-lawn brigade. | ||
diakopter: you're not serious, are you? | |||
diakopter | yes | ||
mberends | spec url? | 07:51 | |
diakopter | well, more precisely, it's part of the PE spec | 07:52 | |
mberends | MIPS not found in www.ecma-international.org/publicat...ma-335.htm | 07:55 | |
diakopter: but I believe you | |||
diakopter | the portable executable spec | 07:56 | |
mberends | found lots of Microsoft pages | 07:57 | |
diakopter | download.microsoft.com/download/9/c...ff_v8.docx | 07:58 | |
mberends | and this one: ntcore.com/files/inject2exe.htm | ||
07:59
gfx left,
gfldex left,
gfldex joined
08:03
JimmyZ joined
|
|||
JimmyZ | Welcome to the website of Perl 9! | 08:03 | |
Perl 9 is the next major release after Perl 6. Perl 8 has been left out because Perl 9 provides too much new features which would not fit into one major version number. Perl 9 combines all features of Perl 5 and Perl 6. This site only demonstrates some additional features over Perl 5 and Perl 6. | |||
mberends | fair enough, MIPS alongside x86, PPC, ARM, Itanic etc | ||
diakopter | JimmyZ: eh? | 08:04 | |
08:04
FalseVinylShrub joined
|
|||
JimmyZ | perl9.org ;) | 08:04 | |
diakopter | oh; heh | ||
JimmyZ | somebody's site. | ||
hejki | :D | 08:05 | |
mberends | a little innocent spoof | ||
hejki | www.perl9.org/?site=New-Features/Random-Operator | 08:06 | |
:DD | |||
diakopter | I was just about to paste that; my fav so far | 08:09 | |
mberends | nonsense, but fun. Hypergoto, Infinite-Loops and Megahyper-Operators are my faves | ||
no mention of implementation - will require an Albatross VM | 08:13 | ||
carlin | std: $foo (}}}}@.@{{{{) $bar; | 08:16 | |
p6eval | std 29391: ===SORRY!===Confused at /tmp/clTrqfilmi line 1:------> $foo ⏏(}}}}@.@{{{{) $bar; expecting any of: infix or meta-infix infix stopper standard stopper statement modifier loop terminatorOther potential difficulties: Variable | ||
..$foo is not pre… | |||
carlin | I'm wondering what happened to Perl 7 | 08:17 | |
Tene | That's left open for the other next version of Perl 6. | 08:18 | |
mberends | for Boxing Day | 08:19 | |
08:38
kaare joined
08:39
kaare is now known as Guest21602
08:48
JimmyZ_ joined
08:56
Baggio_ left,
JimmyZ left
09:05
FalseVinylShrub left
09:11
Baggio_ joined
09:18
ejs joined
09:21
[particle]1 joined
09:25
[particle] left
09:27
lest_away is now known as lestrrat
09:37
iblechbot joined
09:38
tempire left
|
|||
masak | the Perl 9 site is the best parody of Perl 6 I've ever seen. | 09:39 | |
oh, and g'morning on Christmas Eve, peeps. | |||
in Sweden, the 24th is the big day (with opening presents and celebrating in other ways), not the 25th as in the English-speaking world. | 09:40 | ||
09:42
pjcj joined
|
|||
masak | anyway: most things on the Perl 9 site are wrong, but they are wrong in interesting ways -- it would almost be worth it to go through spoof and reality in parallel in a blog post, and compare them. | 09:42 | |
like this: | |||
different grammars. spoof: an AI thingy senses whether you want to code Lisp or Python. reality: just predeclare on top to modify your grammar as you want. | 09:43 | ||
09:43
Baggio_ left
|
|||
masak | infinite loops: spoof: an infinite loop runs really fast. reality: no, but we have this nice keyword 'loop' which ends the C hegemony or three arbitrary and silly ;-separated arguments, leading to insecure and hard-to-debug loop constructs. | 09:44 | |
megamegahyper operators. spoof: just add on layers of >><< to go more mega and more hyper. reality: you don't need that; you get it for free in the first layer. neat, huh? | 09:45 | ||
mix up "contexes". spoof: some far-fetched idea where a variable behaves differently when used in scalar context or in list context. reality: some more mundane idea where a variable behaves differently when used in different contexts. | 09:46 | ||
reverse method syntax. spoof: you can do both $obj->method and method<-$obj. reality: you can't but if that floats your boat, just make a grammar-changing module, and predeclare it on top. | 09:48 | ||
...so you see, if you remove the parodying grime from the lens, Perl 6 *is* Perl 9 already. :) | 09:49 | ||
mberends | masak: there will be modules... # afk again | 09:50 | |
masak | there will indeed. | ||
carlin | the random operator could be declared as an infix | 09:53 | |
masak | for great justice. | 09:54 | |
rakudo: sub infix:<(}}}}@.@{{{{)>($a, $b) { 'something random!' }; say 2 (}}}}@.@{{{{) 5 | 09:55 | ||
p6eval | rakudo 8dc189: something random! | ||
masak | \o/ | 09:56 | |
09:57
cotto joined
|
|||
Tene | masak: Making a lot of progress on quoting and macros in my scheme compiler. Lots of fun. I'm excited about implementing it in Rakudo, so a little sad that it looks like it won't be feasible in Rakudo until after ng replaces trunk. | 10:03 | |
I'm still hopeful about getting it in before *, though. | |||
masak | Tene: woot! | 10:04 | |
Tene | I'm probably going to be playing with generating a parameterizable AST tomorrow. | ||
masak | nice. | ||
I don't have wireless access to the 'Net where I am, so I'm slightly restriced in my movements. | 10:05 | ||
I hope to get a fair amount of GGE work and 7-wonders writing and Web.pm finalization done, though. | |||
Tene | I should have a lot of free time this weekend, hopefully, so I really need to remember to go through all of the HLLs and make sure they work on latest Parrot, migrate them to NQP-rx, update them to the latest HLL interop spec, etc. | ||
That's the actually-valuable grunt-work task I need to work through. | 10:06 | ||
10:06
jferrero joined
|
|||
Tene | If I talk about it in public, greater chance I'll get it done. | 10:06 | |
shame-driven-development++ | |||
moritz_ wanted to work on the book a bit more, but hasn't really got around to it yet | 10:07 | ||
JimmyZ_ | masak: www.perl9.org/?site=Extended-Featur...-Operators | ||
moritz_ | having two families to celebrated christmas with is rather distracting :-) | ||
Tene | JimmyZ_: 02:45 < masak> megamegahyper operators. spoof: just add on layers of >><< to go more mega and more hyper. reality: you don't need that; you get it for free in the first layer. neat, huh? | ||
JimmyZ_ | oh | ||
masak | by the way: sometimes I wonder what the difference is between a module that does language tweaks for itself and one that does language tweaks for its importing module/script. does anyone know? | 10:15 | |
JimmyZ_ | rakudo: sub infix:<(}}}}@.@{{{{)>($a, $b) { return ($a*$b,$a+$b).pick(1, :replace)}; say 2 (}}}}@.@{{{{) 5 | 10:16 | |
p6eval | rakudo 8dc189: 7 | ||
JimmyZ_ | rakudo: sub infix:<(}}}}@.@{{{{)>($a, $b) { return ($a*$b,$a+$b).pick(1, :replace)}; say 2 (}}}}@.@{{{{) 5 | ||
p6eval | rakudo 8dc189: 10 | ||
JimmyZ_ | oh, perl 9 | 10:17 | |
Tene | masak: I conjecture that the macro is exported. | ||
that is, the importing module fetches language modifications from the used module and installs them into its local grammar. | |||
I don't recall if an API for that is defined or not. | 10:18 | ||
moritz_ | so can you write grammar modifications without applying them locally? | ||
Tene | If not, that's a problem. | ||
I don't see why you wouldn't be able to, though. | |||
mberends | yes, the importing scope receives the language mods, provided the imported module does not encapsulate them in an inner scope. | ||
masak | JimmyZ: why :replace if you only .pick once? | 10:19 | |
mberends | oh no, the module *is* a scope, which you need to puncture with 'is export' | 10:20 | |
JimmyZ_ | masak: that's a mistake. | ||
can remove it. | |||
masak | JimmyZ_: no problem, just wondering. | ||
JimmyZ_ | masak: ;) | ||
rakudo: sub infix:<(}}}}@.@{{{{)>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 (}}}}@.@{{{{) 5 | 10:21 | ||
p6eval | rakudo 8dc189: 7 | ||
JimmyZ_ | rakudo: sub infix:<(}}}}@.@{{{{)>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 (}}}}@.@{{{{) 5 | ||
p6eval | rakudo 8dc189: 0.4 | ||
masak | actually, even the '1' is redundant :) | ||
JimmyZ_ | yes | ||
masak | ...but not wrong, of course. | 10:23 | |
JimmyZ_ | rakudo: sub infix:<(+-*/ :random)>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 (+-*/ :random) 5 | 10:24 | |
p6eval | rakudo 8dc189: Syntax error at line 2, near ") 5"in Main (file <unknown>, line <unknown>) | ||
masak | I'd venture that the space confuses the optable parser. | 10:25 | |
try without it. | |||
JimmyZ_ | rakudo: sub infix:<(+-*/:random)>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 (+-*/:random) 5 | ||
p6eval | rakudo 8dc189: 0.4 | ||
JimmyZ_ | rakudo: sub infix:<(+-*/:random)>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 (+-*/:random) 5 | ||
moritz_ | right, whitespaces are not allowed in operators | ||
p6eval | rakudo 8dc189: 10 | ||
masak | moritz_: but there should probably be a warning or something. | 10:26 | |
moritz_ | agreed | ||
10:27
jrockway joined
|
|||
masak submits rakudobug | 10:27 | ||
moritz_ | submit a specbug first :-) | ||
JimmyZ_ | I like the space there | 10:28 | |
masak | moritz_: you mean whitespace aren't explicitly disallowed in the spec? | ||
JimmyZ_ | ng has been stopped for a month? | ||
moritz_ | masak: they are, but it's not specced that it should warn | 10:29 | |
std: multi infix:<a b>($a, $b) { } | |||
p6eval | std 29391: ok 00:01 108m | ||
JimmyZ_ | rakudo: sub infix:<>>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 > 5 | 10:30 | |
p6eval | rakudo 8dc189: Malformed routine definition at line 2, near "infix:<>>("in Main (file <unknown>, line <unknown>) | ||
JimmyZ_ | rakudo: sub infix:< > >($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 > 5 | ||
p6eval | rakudo 8dc189: Malformed routine definition at line 2, near "infix:< > "in Main (file <unknown>, line <unknown>) | ||
JimmyZ_ | rakudo: sub infix:<< > >>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 > 5 | 10:31 | |
p6eval | rakudo 8dc189: maximum recursion depth exceededin Main (file <unknown>, line <unknown>) | ||
moritz_ hands JimmyZ_ a pair of « » | |||
JimmyZ_ | rakudo: sub infix:<<>>>($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 > 5 | ||
p6eval | rakudo 8dc189: Malformed routine definition at line 2, near "infix:<<>>"in Main (file <unknown>, line <unknown>) | ||
JimmyZ_ | can't use << >> ? | ||
moritz_ | NYI | ||
JimmyZ_ | rakudo: sub infix:< +-*/ >($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 +-*/ 5 | 10:32 | |
p6eval | rakudo 8dc189: 10 | ||
10:37
Su-Shee joined
|
|||
Su-Shee | good morning. | 10:38 | |
10:40
cls_bsd left,
sushant joined,
JimmyZ_ left
|
|||
sushant | hi | 10:41 | |
10:41
sushant left
|
|||
moritz_ | \o | 10:42 | |
merry christmas to all who celebrate it today! | |||
10:42
szabgab left
10:44
szabgab joined
10:47
rgrau left
10:56
agentzh left
|
|||
carlin | It's now the 25th here :-) | 11:00 | |
Merry Christmas everyone | |||
mberends | merry xmas carlin # .nz win | 11:01 | |
Juerd | Merry Christmas where applicable | 11:09 | |
Merry *. | |||
11:12
FalseVinylShrub joined
11:14
ejs left
11:15
ejs joined
11:17
TiMBuS left
|
|||
wayland76 | Btw, do you all know what Father Christmas' wife's name is? | 11:34 | |
11:38
Helios joined
11:40
ejs1 joined,
rodi joined
|
|||
masak | wayland76: Mary, I'd venture. | 11:40 | |
wayland76 | Yes, Mary Christmas :) | ||
masak | :) | 11:41 | |
On a gamesite where I play interesting connection games, there's a forum featuring players of varying degrees of language mastery. a year or so ago someone started a thread called "Marry Christmas!". it spawned an interesting discussion, with jokes intermixed with language discussion. | 11:42 | ||
11:46
Helios left
11:47
Helios-- joined
11:54
ejs left
11:55
aindilis joined
11:56
ejs1 left
12:02
pmurias joined
12:04
Su-Shee left
|
|||
rodi | masak: thanks for the nice mention in your P6Advent post. Sorry I didn't see your tweet, but of course you can use it :) | 12:05 | |
masak | rodi: I'm relieved, and happy my hunch was correct. :) | 12:09 | |
rodi: it's also wonderful to see someone else make one-line Perl 6 scripts that output something neat. | |||
kudos. | 12:10 | ||
rodi | I had a snow day on Monday, needed to celebrate :-P | ||
12:12
Su-Shee joined
|
|||
masak | (people who celebrate by writing Perl 6)++ | 12:14 | |
pmurias celebrates by writing some Perl 5 | 12:16 | ||
12:17
jho joined
12:21
Baggio_ joined
12:27
Beetny left
12:32
FalseVinylShrub left
12:38
ejs joined,
Calimbeul left
12:39
colomon joined
|
|||
pmurias | mberends: hi | 12:42 | |
pugs_svn | r29392 | pmurias++ | [mildew] make -Cdesugar output slightly prettier | 12:43 | |
12:43
colomon left
12:45
FalseVinylShrub joined
12:47
colomon joined
12:48
colomon left
12:49
colomon joined
|
|||
pugs_svn | r29393 | pmurias++ | [mildew] one more fix to -Cdesugar | 12:50 | |
12:55
rgrau joined
|
|||
masak | std: gather take $_ for 1, 2, 3; | 12:56 | |
p6eval | std 29393: ok 00:01 108m | ||
masak | does that parse as (gather take $_) for 1, 2, 3 or as gather (take $_ for 1, 2, 3) ? | ||
pmurias | isn't for a statement_modifier? | 13:01 | |
masak: it seems that it parses as gather (take $_ for 1,2,3)) | 13:03 | ||
13:10
payload joined
13:11
Su-Shee left
13:15
eiro left,
eiro joined
|
|||
pugs_svn | r29394 | pmurias++ | [mildew] remove useless files | 13:15 | |
masak | pmurias: good. that's the most useful parsing, in my view. | 13:19 | |
13:28
colomon left
13:33
Su-Shee joined
13:49
cls_bsd joined
13:50
colomon joined
13:53
orafu left,
orafu joined
14:01
_jaldhar joined
14:02
iblechbot left
14:12
arthur-_ joined
14:14
arthur-_ left
14:25
arthur-_ joined
14:27
Baggio_ left,
arthur-_ left
14:28
IllvilJa joined
|
|||
IllvilJa | Merry Christmas greetings from Sweden to everyone at #perl6! www.youtube.com/watch?v=2A3kMTZwSQ8 | 14:31 | |
14:35
arthur-_ joined,
arthur-_ left
14:47
patspam joined
|
|||
colomon | Any ng experts out there? I was wondering what it would take to make ~~ accept Code or Callable or whatever it is called. | 14:56 | |
14:56
jferrero left
|
|||
colomon | Seems like a simple ACCEPTS would do it, but I'm not quite sure where.... | 14:56 | |
Looks like Block already does this? | 14:57 | ||
15:01
cdarroch joined
15:04
Psyche^ joined,
Patterner left,
Psyche^ is now known as Patterner
|
|||
colomon | rakudo: my $a = { $^num > 0; }; say 10 ~~ $a; | 15:05 | |
p6eval | rakudo 8dc189: 1 | ||
colomon | ng: my $a = { $^num > 0; }; say 10 ~~ $a; | ||
p6eval | ng 9d5018: 1 | ||
colomon | oh, so that works fine. The broken thing is a block with $_ in it. | 15:13 | |
I think. | |||
ng: my $a = { $_ > 0; }; say 10 ~~ $a; | 15:14 | ||
p6eval | ng 9d5018: 0 | ||
colomon | ng: my $a = { $_ > 0; }; say $a.arity | ||
p6eval | ng 9d5018: 0 | ||
colomon | ng: my $a = { $^num > 0; }; say $a.arity; | ||
p6eval | ng 9d5018: 1 | ||
15:15
patspam1 joined
|
|||
colomon | ng: say (1...11).list | 15:15 | |
p6eval | ng 9d5018: sh: ./perl6: No such file or directory | ||
15:15
patspam left
15:19
payload left
15:21
arthur-_ joined
15:24
arthur-_ left
15:26
nihiliad joined
15:30
JimmyZ joined,
arthur-_ joined
|
|||
JimmyZ | o'hai | 15:30 | |
rakudo: sub infix:< +-*/ >($a, $b) { return ($a*$b,$a+$b,$a-$b,$a/$b).pick(1)}; say 2 +-*/ 5 #Will it be lazy? | 15:31 | ||
p6eval | rakudo 8dc189: 0.4 | ||
15:32
arthur-_ left
|
|||
colomon | how would it be lazy? | 15:32 | |
JimmyZ | first pick, then eval the expr | ||
not eval all expr, then pick | 15:33 | ||
colomon | Ah. | ||
My impression is the answer is no. | |||
JimmyZ | I wish It'd be lazy | 15:34 | |
colomon | At least, not in rakudo master or ng. | ||
Yeah, I can see where that might be handy in general. | |||
JimmyZ | oh at least, Is there a lazy way? | ||
s/oh/or | 15:35 | ||
colomon | I'm sure it could be conjured up, but it would be a lot more work. | ||
JimmyZ | or Will it be lazy? | ||
I wish it will ;) | 15:36 | ||
15:36
ashizawa left
|
|||
colomon | I've been making the solution too complicated. What you really want is something like | 15:37 | |
JimmyZ | Any way that lazy is ok | 15:38 | |
15:39
patspam joined
|
|||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return (->{$a*$b},->{$a+$b}).pick()}; say 2 +-*/ 5 | 15:39 | |
p6eval | rakudo 8dc189: _block83 | ||
15:39
FalseVinylShrub left
|
|||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return (->{$a*$b},->{$a+$b}).pick()}; say 2 +-*/() 5 | 15:39 | |
p6eval | rakudo 8dc189: Confused at line 2, near "5"in Main (file <unknown>, line <unknown>) | ||
colomon | rakudo: sub infix:< +-*/ >($a, $b) { (({ $^x * $^y }, { $^x + $^y }, { $^x - $^y }, { $^x / $^y }).pick(1))($a, $b); }; say 2 +-*/ 5; | 15:40 | |
p6eval | rakudo 8dc189: 0.4 | ||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return ((->{$a*$b},->{$a+$b}).pick())()}; say 2 +-*/ 5 | ||
p6eval | rakudo 8dc189: 10 | ||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return ((->{$a*$b},->{$a+$b}).pick())()}; say 2 +-*/ 5 | ||
p6eval | rakudo 8dc189: 10 | ||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return ((->{$a*$b},->{$a+$b}).pick())()}; say 2 +-*/ 5 # I think it's a lazy way. | ||
p6eval | rakudo 8dc189: 7 | ||
15:41
patspam2 joined
|
|||
colomon | JimmyZ: look at my paste up there. It is lazy in the sense you want. | 15:41 | |
s/paste/rakudo line/ | |||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return ((->{$a*$b},->{$a+$b}).pick())()}; say 2 +-*/ 5 # I think it's lazy to | ||
p6eval | rakudo 8dc189: 10 | ||
colomon | Hmmm... yours might be too, though, now that I see what you're trying to do. | 15:42 | |
I believe -> is unnecessary. | 15:43 | ||
dalek | kudo/ng: 0977b1e | (Solomon Foster)++ | src/core/Any-list.pm: Lightly tested ng versions of the Rakudo Any.first and Any.grep methods. |
15:44 | |
JimmyZ | colonmon: we are the same, using block makes it's lazy | ||
rakudo: sub infix:< +-*/ >($a, $b) { return (({$a*$b},{$a+$b}).pick())()}; say 2 +-*/ 5 # I think it's lazy to | |||
p6eval | rakudo 8dc189: 10 | ||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return (({$a*$b},{$a+$b}).pick())()}; say 2 +-*/ 5 | ||
p6eval | rakudo 8dc189: 7 | ||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return ({$a*$b},{$a+$b}).pick()}; say 2 +-*/ 5 | 15:45 | |
p6eval | rakudo 8dc189: _block72 | ||
colomon | JimmyZ: we're using a slightly different approach -- my pick returns a Block with arity 2 and no fixed variables, yours returns one with arity 0 and $a and $b baked in. | ||
I don't have any feel yet for which approach is preferable. :) | |||
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { return ({$a*$b},{$a+$b}).pick()>>.()}; say 2 +-*/ 5 | 15:46 | |
rakudo: sub infix:< +-*/ >($a, $b) { return ({$a*$b},{$a+$b})>>.()}; say 2 +-*/ 5 | |||
p6eval | rakudo 8dc189: Can only transform an Object to p6opaquein Main (file src/gen_setting.pm, line 324) | ||
15:47
rgrau left
15:49
SmokeMachine joined
|
|||
JimmyZ | yep, they are all closure | 15:49 | |
15:50
zamolxes joined
|
|||
colomon | pmichaud, jnthn: I believe first and grep are basically right now, but unfortunately their tests depend heavily on $_ giving the correct arity in code blocks. I guess I could rewrite all the tests to use $^a instead, but that seems wrong... | 15:52 | |
JimmyZ | rakudo: sub infix:< +-*/ >($a, $b) { (({$a*$b},{$a+$b}).pick())()}; say 2 +-*/ 5 | ||
p6eval | rakudo 8dc189: 7 | ||
15:55
patspam1 left
|
|||
dalek | kudo/ng: 78e4226 | (Solomon Foster)++ | src/core/Any-list.pm: Add protos for first and grep. |
15:55 | |
15:55
FalseVinylShrub joined
|
|||
JimmyZ | rakudo: sub infix:< +||-||*||/ >($a, $b) { (({$a*$b},{$a+$b}, {$a-$b}, {$a/$b}).pick())()}; say 2 +||-||*||/ 5 | 15:56 | |
p6eval | rakudo 8dc189: 10 | ||
15:57
patspam left
15:58
^aristotle joined
|
|||
^aristotle | is there a way to declare a hash as taking a pair of strings as keys? | 15:58 | |
colomon | ^aristotle: Yes in theory, I don't think it's implemented in Rakudo yet. (And I don't know the syntax to do it.) | 15:59 | |
^aristotle | colomon: ok | 16:00 | |
are multidimensional hashes implemented, at least? | |||
JimmyZ | like? | ||
colomon | you mean like $a{"b"}{"d"} ? | ||
hashes of hashes? | |||
^aristotle | well the problem I have is that something like ++$hash{$key1}{$key2} will autovivify the second-level key | 16:01 | |
but apparently won't autovivify the top-level hash access | 16:02 | ||
so I need to sprinkle $hash{$key1} //= {} around the place | |||
that's not very nice | 16:03 | ||
colomon | I'm pretty sure that's just Rakudo limitation, but I don't know any clever way around it. | ||
^aristotle | well then I thought | ||
colomon | But I'm hardly a hash expert. | ||
There may be a way around it I don't know. | |||
^aristotle | what I really want to do is use a pair of strings as the key | ||
I don't really want a hash of hashes there | 16:04 | ||
diakopter | ^aristotle: so just concat them | ||
colomon | If you could come up with a short string you knew wouldn't appear in the others, you could do something like $hash{$key1 ~ "safe string" ~ $key2} | ||
16:04
JimmyZ left
|
|||
diakopter | o yeah; you'd need a delimiter | 16:05 | |
<-- not yet awake | |||
^aristotle | colomon: wait, I have 1991 on the phone, they want perl4 back | ||
16:06
reqamst_ left
|
|||
colomon | ^aristotle: if it's a big problem for you, no one will complain if you implement it in Rakudo. | 16:06 | |
^aristotle | (perl4 didn't have references so the way you did multidimensional structures was by concating indices with some delimiter) | 16:07 | |
colomon: I'm just saying I'd rather do it the perl5 way than the perl4 way if rakudo doesn't yet let me do it the perl6 way | |||
16:12
rodi left
|
|||
^aristotle | another question | 16:14 | |
I have two hashes | 16:15 | ||
16:15
arthur-_ joined
|
|||
^aristotle | I want to perform an operation on the combination of each pair from one hash with each pair from the other hash | 16:15 | |
in other languages one would write a nested loop | 16:16 | ||
in p6 I can do for $h1.pairs X $h2.pairs -> $h1p, $h2p { ... } | |||
but can I make that a destructuring bind somehow? | 16:17 | ||
colomon | "destructuring bind"? | ||
^aristotle | I tried this, on a lark: | ||
for $h1.pairs X $h2.pairs -> ( $h1key, $h2val ), ( $h2key, $h2val ) { ... } | |||
16:17
arthur-_ left
|
|||
colomon | ah. | 16:17 | |
^aristotle | that doesn't work... is that rakudo or my p6? | ||
sjohnson | 3merry xmas eve to all | 16:18 | |
^aristotle | is there some way to write this so that I have a single loop and still all 4 values in one variable each? | ||
diakopter | maybe not without breaking out each pair into its parts at the beginning of the loop | 16:22 | |
16:22
arthur-_ joined
|
|||
diakopter doesn't know | 16:23 | ||
16:24
arthur-_ left,
arthur-_ joined
|
|||
sjohnson | honestkopter ^_^ | 16:24 | |
16:25
arthur-_ left
16:26
arthur-_ joined
16:29
abra joined
16:31
abra left,
abra joined
16:40
abra left,
abra joined
|
|||
diakopter | mberends: I made a mono 2.6.1 .deb for lenny i386 (using alien); seems no problems. | 16:52 | |
working on amd64 | 16:53 | ||
mberends: I just had to apt-get install libglib2.0-0 | 16:55 | ||
16:56
FalseVinylShrub left
|
|||
^aristotle | how do I get from [[1],[2,3],[4]] to [1,2,3,4] ? | 16:56 | |
has to be some way to do this with some reduction operation? | 16:57 | ||
16:57
FalseVinylShrub joined
16:59
justatheory joined
17:00
abra left
|
|||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push(@a.keys)); }; say @b.perl; | 17:00 | |
p6eval | rakudo 8dc189: Unable to parse block; couldn't find final '}' at line 2, near "); }; say "in Main (file <unknown>, line <unknown>) | ||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push(&$_.keys)); }; say @b.perl; | ||
p6eval | rakudo 8dc189: Unable to parse block; couldn't find final '}' at line 2, near "); }; say "in Main (file <unknown>, line <unknown>) | ||
diakopter | extra ) | ||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push(&$_.keys); }; say @b.perl; | 17:01 | |
p6eval | rakudo 8dc189: [0, 0, 0, 0] | ||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push(@$_.keys); }; say @b.perl; | ||
p6eval | rakudo 8dc189: Symbol '@$_' not predeclared in <anonymous> (/tmp/YbwDLbKB3u:2)in Main (file <unknown>, line <unknown>) | ||
17:01
jho left
|
|||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push(@_.keys); }; say @b.perl; | 17:01 | |
p6eval | rakudo 8dc189: [] | ||
sjohnson | ahh who knows | ||
17:02
abra joined
|
|||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { print @a.WHAT~" "; } | 17:02 | |
p6eval | rakudo 8dc189: Array() Array() Array() Array() | ||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push(@_.values); }; say @b.perl; | 17:03 | |
p6eval | rakudo 8dc189: [] | ||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push(@_); }; say @b.perl; | ||
p6eval | rakudo 8dc189: [] | ||
sjohnson | rakudo: my @a = <<1> <2 3> <4>>; my @b; for (@a) { @b.push($_); }; say @b.perl; | ||
p6eval | rakudo 8dc189: ["1>", "<2", "3>", "<4"] | 17:04 | |
sjohnson | ??? | ||
too advanced for my dinosaur-sized brain | |||
oh | 17:06 | ||
i c | |||
hmm maybe not | |||
can @_ be the array in a for loop like this? | 17:07 | ||
17:08
abra left,
abra joined
17:10
colomon left
|
|||
diakopter | rakudo: my @a = [[1], [2,3], [4]]; my @b; multi flatten(@d, @c) { for @c { flatten(@d, $_) } }; multi flatten(@d, $c) { @d.push($c) }; flatten(@b, @a); say @b.perl; | 17:10 | |
p6eval | rakudo 8dc189: [1, 2, 3, 4] | ||
17:11
obra is now known as obra_grinch
17:12
obra_grinch is now known as obra
|
|||
diakopter | rakudo: my @a = [[1], [2,[3,4,5]], [4]]; my @b; multi flatten(@d, @c) { for @c { flatten(@d, $_) } }; multi flatten(@d, $c) { @d.push($c) }; flatten(@b, @a); say @a.perl; say @b.perl; # sjohnson | 17:12 | |
p6eval | rakudo 8dc189: [[[1], [2, [3, 4, 5]], [4]]][1, 2, 3, 4, 5, 4] | ||
diakopter | ^aristotle: see ^^ | 17:13 | |
sjohnson | oh, is it because i need to use [] ref context? | 17:15 | |
or is that not even the case in p6 diakopter | |||
rakudo: my @a = [[1], [2,[3,4,5]], [4]]; my @b; multi flatten(@d, @c) { for @c { flatten(@d, $_) } }; multi flatten(@d, $c) { @d.push($c) }; flatten(@b, @a); @b.=sort; say @a.perl; say @b.perl; # diakopter | 17:16 | ||
p6eval | rakudo 8dc189: [[[1], [2, [3, 4, 5]], [4]]][1, 2, 3, 4, 4, 5] | ||
diakopter | sjohnson: your example was: | ||
sjohnson | rakudo: my @a = [[1], [2,[3,4,5]], [4]]; my @b; multi flatten(@d, @c) { for @c { flatten(@d, $_) } }; multi flatten(@d, $c) { @d.push($c) }; flatten(@b, @a); @b.=uniq; say @a.perl; say @b.perl; # diakopter | ||
p6eval | rakudo 8dc189: [[[1], [2, [3, 4, 5]], [4]]][1, 2, 3, 4, 5] | ||
sjohnson | ( `ー´) | ||
diakopter | rakudo: my @a = <<1> <2 3> <4>>; say @a.perl; # sjohnson: your example | 17:18 | |
^aristotle | diakopter: euhm | ||
p6eval | rakudo 8dc189: ["1>", "<2", "3>", "<4"] | ||
^aristotle | I don't want to flatten recursively | ||
just append a bunch of arrays together | |||
diakopter | oh :) | 17:19 | |
^aristotle | basically what is the equivalent to p5 @a = map { @$_ } @b | ||
sjohnson | diakopter: is [] array ref context in p6? | ||
diakopter | [] makes an array | 17:20 | |
^aristotle | anyway, I'm giving up on the whole thing for now and writing what it should look like in a full p6... rather than how it can be done in rakudo: | ||
blogs.perl.org/users/ovid/2009/12/i...omment-197 | |||
in the rakudo of today, this is | 17:21 | ||
I found that destructuring one array in a signature is supported in rakudo | |||
but destructuring two does not work | |||
sjohnson | diakopter: i thought <> makes an array as well, but using the qw() p5 type notation | 17:22 | |
^aristotle | ie for @aoa, @aoa -> $pair, [ $k, $v ] { ... } will work | ||
and for @aoa, @aoa -> [ $k, $v ], $pair { ... } will also work | |||
but for @aoa, @aoa -> [ $k1, $v1 ], [ $k2, $v2 ] { ... } won't work | 17:23 | ||
and destructuring pairs appears not implemented (and possibly not specced, I didn't read enough of the specs) | 17:24 | ||
diakopter | sjohnson: an array of strings, yeah | 17:25 | |
^aristotle: what about for @aoa, @aoa -> [ [ $k1, $v1 ], [ $k2, $v2 ] ] { ... } | 17:26 | ||
sjohnson | oh | ||
i doth seen what i done did wrong | |||
thanks diakopter++ | |||
i guess you can't nest that shizzle | |||
is that TimToady-approved behaviour? | 17:27 | ||
diakopter | ^aristotle: (did you try it with adding brackets around the others?) | ||
^aristotle | diakopter: Symbol '$k1' not predeclared in <anonymous> | 17:28 | |
I get that for any remotely tricky signature | 17:29 | ||
17:29
kidd joined
|
|||
diakopter | ^aristotle: oh | 17:29 | |
^aristotle | rakudo: for %h.pairs X %h.pairs -> ($k1,$v1),($k2,$v2) { $k1.say } | 17:31 | |
p6eval | rakudo 8dc189: Symbol '%h' not predeclared in <anonymous> (/tmp/ZUNnbSHbd7:2)in Main (file <unknown>, line <unknown>) | ||
^aristotle | doh | ||
rakudo: my %h = a => 1, b => 2; for %h.pairs X %h.pairs -> ($k1,$v1),($k2,$v2) { $k1.say } | |||
p6eval | rakudo 8dc189: Symbol '$k1' not predeclared in <anonymous> (/tmp/Ux5J3eaevk:2)in Main (file <unknown>, line <unknown>) | ||
^aristotle | rakudo: my %h = a => 1, b => 2; my ($k1, $k2, $v1, $v2); for %h.pairs X %h.pairs -> ($k1,$v1),($k2,$v2) { $k1.say } | 17:32 | |
p6eval | rakudo 8dc189: ( no output ) | ||
^aristotle | well *I* get Not enough positional parameters passed; got 0 but expected 4 | ||
17:33
FalseVinylShrub left
|
|||
^aristotle | anyway | 17:33 | |
I've already spent 2 hours fiddling with this... | |||
diakopter | ^aristotle: :) | 17:34 | |
17:35
arthur-_ left
|
|||
masak | ^aristotle: you might want to make a subroutine to abstract away the $hash{$key1} //= {} everywhere. that might make things a little bit nicer until Rakudo does autovivification and indexing of undefs right. | 17:37 | |
another thing that Rakudo doesn't do yet with hashes is index on non-strings. | 17:39 | ||
my current workaround for that (if I want to hash on object identity and not just equivalence) is to hash on $obj.WHICH | |||
because .WHICH is essentially a memory address, and that's unique per-object. | 17:40 | ||
diakopter | I can't get hashes to work at all in p6eval | 17:44 | |
ah well; gtg; bbl& | |||
masak | rakudo: my %h; %h<foo> = 'bar'; say %h.perl | 17:48 | |
p6eval | rakudo 8dc189: {"foo" => "bar"} | ||
masak | I can get them to work. | 17:49 | |
17:51
slavik left
17:53
slavik joined
17:58
nihiliad left
|
|||
^aristotle | masak: $obj.WHICH won't help if it'll treat different pairs containing identical keys and values as distinct | 18:00 | |
cognominal | how, in a derived grammar, operators can be redefined with a different precedence? | 18:03 | |
^aristotle | the point is that in a hash keying on pairs, I would expect at least, ++$h{ $k1 => $k2 } would increment the same value each time $k1 and $k2 have values they had a previous time | ||
even though ($k1 => $k2).WHICH differs each time | 18:05 | ||
18:06
slavik left,
Guest21602 left
|
|||
sjohnson | i <3 perl | 18:17 | |
18:21
ejs left
|
|||
masak | ^aristotle: what you might want to try is creating your own class, with an overloaded postcircumfix:<{ }> operator. | 18:28 | |
^aristotle: however, I must warn that -- even though the overloading itself works splendidly -- there are about four known bugs related to overloading of that operator. | 18:29 | ||
let's see if I can recite them by heart: (1) blocks get misparsed sometimes, need silly line-ending semicolons. (2) you can't use .{} within the definition of postcircumfix:<{ }>, even when recursion isn't the problem. | 18:30 | ||
^aristotle | masak: that won't make my code shorter | 18:31 | |
18:31
colomon joined
|
|||
masak | (3) due to (2), you have to store the hash in a separate class. (4) some variables get reported as being declared doubly. | 18:31 | |
^aristotle: oh, ok. it sounded to me like it might help immensely to make your own hash access in this case. | 18:32 | ||
but you know your problem domain better than I do. | |||
^aristotle | masak: did you see the link? | ||
masak | no, I must have missed that. | 18:33 | |
I have less focus on IRC than usual. | |||
^aristotle | blogs.perl.org/users/ovid/2009/12/i...omment-197 | ||
masak | thanks. | ||
^aristotle | I suppose I could just fall back to a HoH | 18:34 | |
masak | ^aristotle: or you find a function that returns the same value for equivalent pairs. | 18:35 | |
^aristotle | it would be nice though if it's not already specced that way that pairs automatically hash based on the pair of values they represent such that that code would do what a reader would expect | ||
masak | ^aristotle: something like $key.WHICH +^ $value.WHICH, but perhaps there's something even better out there, something which guarantees that there won't be any collisions. | 18:36 | |
& | |||
^aristotle | hrm | ||
I suppose if it's a hash indexing on Any it should use $pair.WHICH | 18:37 | ||
but a hash indexing on Pair would use the value of the pair | 18:38 | ||
I mean | |||
it would equally work if I could just say (and I think this is actually specced?) $hash{Str;Str} | 18:39 | ||
the way I think it's specced for multidimensional arrays | |||
18:43
snearch joined
|
|||
pmurias | how can i create a new repo at github? | 18:53 | |
18:54
zloyrusskiy joined,
zloyrusskiy left
|
|||
pmurias | found out using google | 18:55 | |
diakopter: github.com/pmurias/javascript-v8 # i started rewriting V8.pm | 18:59 | ||
19:00
ejs joined
19:03
ejs left
19:10
abra left
|
|||
diakopter | pmurias: cool :) | 19:10 | |
19:13
tempire joined
|
|||
s1n | masak: didn't you work on Druid? is that still active? | 19:15 | |
19:27
payload joined
|
|||
mberends | diakopter++: a Debian package of mono 2.6.1 will be very useful to many people. Could it be published by a willing Debian developer? | 19:32 | |
diakopter | no; there's a whole debian mono group | ||
they're way behind, tho | |||
hm, maybe not... there's mono 2.4.3 for lenny in backports | 19:33 | ||
their webpage is out of date, then (debian mono's) | 19:34 | ||
19:48
slavik joined
|
|||
masak | s1n: in some sense, Druid is feature-complete. it has a complete CLI interface, and implements all the rules. I've been starting in on computer play, SVG rendering, and a Web.pm client. none of them are anywhere near completion. | 19:50 | |
rjbs | Druid? | ||
hejki | github.com/masak/druid/ | ||
rjbs | Cool. | 19:52 | |
masak | rjbs: what hejki++ said. in November 2008 I (re-)discovered this game, and realized that I simply had to do a Perl 6 implementation. | ||
rjbs | Was it fun? | ||
(to implement) | |||
masak | oh yes. | ||
rjbs | awesome | 19:53 | |
hejki | i bet :) | ||
masak | and some lessons from that, I still haven't blogged about. | ||
hejki | at least based on my skimmings on the strat guide | ||
masak | I really should. | ||
rjbs | Is really basic stdio working on Rakudo? | ||
masak | yes, | ||
rjbs | Could I write an inetd-based service with it? | ||
Excellent. | |||
masak | hm. dunno what exactly that takes. | ||
but probably. | |||
rjbs | stdio :) | ||
masak | we have sockets. | ||
rjbs | Oh really? | ||
I was unaware of that. | |||
masak | ya really. | 19:54 | |
Tene | no select(), though. | 19:55 | |
hejki | oh and about Druid.. | 19:56 | |
masak++ | |||
:) | |||
rjbs | select() does too much for me to understand how I would be affected by lacking it. | ||
I guess it would affect my ability to poll properly. | |||
I hate select. | 19:57 | ||
19:58
cls_bsd left
20:17
frew_ joined,
frew_ left
20:24
Chillance joined
20:26
Calimbeul joined
|
|||
mberends | pmurias: thanks for the smop setup URL, I shall use it to try to document a full mildew build procedure on a standard Ubuntu 9.10 system | 20:27 | |
hejki | is there any CGI-implementation done? | 20:30 | |
Tene | There's been SDL bindings, but I don't think they work ATM. | 20:31 | |
hejki | also is there something equiv to {open,read,close}dir()? | 20:32 | |
mberends | hejki: yes, there is a subset in github.com/viklund/november (in lib/November dir) | ||
hejki | mberends: oh nice.. ty :) | 20:33 | |
mberends | hejki: not yet, for dir we have to workaround with qqx{ ls -l } | ||
hejki | :< | ||
s1n | masak: i'm mostly interested in the guts, board display, general player handling, but i want to make something new from it | 20:34 | |
20:36
ejs joined
|
|||
mberends | hejki: there is an example of dir scanning in line 91 of github.com/masak/proto/blob/install...osystem.pm | 20:44 | |
20:47
Beetny joined
20:49
colomon left
20:52
colomon joined
|
|||
mberends | another example in line 61 of gitorious.org/http-daemon/mainline/.../bin/httpd | 20:55 | |
20:56
colomon left
|
|||
pmurias | mberends: if you encounter any problems mention them and i'll try to help | 21:02 | |
mberends | :-) thanks, I'll try most of it tomorrow (between long distractions) | 21:03 | |
sjohnson | rakudo: my @a = [[1 2] [3] [4]]; my @b; for (@a) { @b.push(@_.values); }; say @b.perl; | 21:13 | |
p6eval | rakudo 8dc189: Confused at line 2, near "2] [3] [4]"in Main (file <unknown>, line <unknown>) | ||
21:13
ejs left
|
|||
pmurias | mberends: in JavaScripdt::V8 where should the info on how to install libv8 be? | 21:13 | |
README or POD? | 21:14 | ||
sjohnson | pugs: my @a = [[1 2] [3] [4]]; my @b; for (@a) { @b.push(@_.values); }; say @b.perl; | ||
p6eval | pugs: ***  Unexpected "@a" expecting "=", context, ":" or "(" at /tmp/Kn84fF6be6 line 1, column 4 | ||
mberends | pmurias: thinking... I'll get an idea from the old Sprixel setup | 21:15 | |
sjohnson | std: my @a = [[1 2] [3] [4]]; my @b; for (@a) { @b.push(@_.values); }; say @b.perl; | ||
p6eval | std 29394: ===SORRY!===Two terms in a row at /tmp/OIaIWMljJg line 1:------> my @a = [[1 ⏏2] [3] [4]]; my @b; for (@a) { @b.push(@ expecting any of: infix or meta-infix infix stopper standard stopper statement modifier loop terminatorFAILED | ||
..00:01 108m | |||
diakopter | pmurias: I suggest README | 21:17 | |
or INSTALL | |||
21:19
^aristotle left
|
|||
mberends | stick to README unless is becomes unmanageably big. Extra files == directory pollution | 21:20 | |
*it | |||
pmurias | does anyone read the README of CPAN modules? | 21:23 | |
arnsholt | Occasionally | ||
Patterner | Sometimes | ||
arnsholt | But mostly I just use CPAN.pm | 21:24 | |
mberends | pmurias: sure, and github treats README specially too | ||
21:24
patspam1 joined
21:27
yath left
21:29
ejs joined
21:30
iblechbot joined
|
|||
sjohnson | pmurias: not me | 21:30 | |
sjohnson@web1:/usr/local/lib/site_perl/Sjohnson$ cpan Thing::ToInstall | |||
well, i use sudo | |||
pmurias | sjohnson: i use the same invocation, that's why i doubt the usefullness of README | 21:32 | |
21:34
szabgabx left
|
|||
sjohnson | i learned that trick from Alias of Strawberry Perl fame | 21:35 | |
21:36
payload left
21:39
perigrin_ joined
|
|||
pmurias | sjohnson: you mean the one of PPI fame? ;) | 21:39 | |
21:40
perigrin_ is now known as perigrin
21:41
patspam2 left
|
|||
sjohnson | hmm, what is PPI? | 21:46 | |
ahh i am googling | 21:47 | ||
Alias wrote this whole thing? | 21:48 | ||
21:48
patspam joined
|
|||
pmurias | sjohnson: he might have had some help but he is the main author | 21:49 | |
sjohnson | interesting | ||
eternaleye | phenny: tell ^aristotle one way to do the destructuring bind might be like this: for (%a.pairs X %b.pairs)>>.kv -> $akey, $aval, $bkey, $bval { ... } | ||
phenny | eternaleye: I'll pass that on when ^aristotle is around. | ||
21:51
kidd left
22:01
iblechbot left
22:05
patspam1 left
22:07
patspam left
22:08
colomon joined
22:10
colomon left
22:37
mberends left
22:41
patspam joined
22:45
snearch left
22:55
patspam1 joined
|
|||
pugs_svn | r29395 | pmurias++ | [mildew-js] use JavaScripdt::V8 instead of V8 | 22:56 | |
22:58
meppl left
|
|||
pmurias | diakopter: mildew switched from V8 to JavaScripdt::V8 :) | 22:59 | |
23:01
jferrero joined
23:10
Su-Shee left
23:11
vamped joined,
patspam left
|
|||
vamped | hey, can anyone explain the subtle difference between @a=1,2,3 and $a=1,2,3 ? (or tell me where to look) | 23:12 | |
arnsholt | IIRC, my @foo is the same as my Type $foo | ||
Where Type is Positional I think | |||
huf | @ is an interpolating array | 23:13 | |
the $ one's not | |||
for @a { } and for $a.list { } | |||
vamped | ok. so why would one want to do $a=1,2,3 ? or is $a a reference to an array? | 23:14 | |
huf | no, if i understand right, it's just a plain old array | ||
you can write it as you want | |||
vamped | hmm. lol. i thought perl 6 was supposed to be less confusing (oops - not trying to throw flaim bait). I suppose sooner or later it will click in my hed. | 23:15 | |
s/hed/head/ | |||
huf | i think the value is an array, and you bind it to a variable | ||
and if you bind it to a @variable, it interpolates in lists | |||
if you bind it to a $var, it dont | |||
pmurias | vamped: S02:1608 | ||
huf | but i'm not sure that's correct. anyone? | ||
pmurias | rakudo: my @foo=1,2,3;my @bar = 1,2,@foo;say @bar.perl | 23:16 | |
p6eval | rakudo 8dc189: [1, 2, 1, 2, 3] | ||
pmurias | pug: my @foo=1,2,3;my @bar = 1,2,@foo;say @bar.perl | 23:17 | |
pugs: my @foo=1,2,3;my @bar = 1,2,@foo;say @bar.perl | |||
p6eval | pugs: [1, 2, 1, 2, 3] | ||
23:17
colomon joined
|
|||
vamped | pmurias: is that line 1608? | 23:18 | |
pmurias | yes | 23:19 | |
23:20
kaare joined
|
|||
pmurias | rakudo: my $foo=1,2,3;my @bar = 1,2,$foo;say @bar.perl | 23:20 | |
p6eval | rakudo 8dc189: [1, 2, [1, 2, 3]] | ||
23:20
kaare is now known as Guest53549
|
|||
vamped | pmurias: ooh! | 23:20 | |
23:22
ejs left
23:23
colomon left
23:26
colomon joined
|
|||
vamped | rakudo: my $y = "bar baz"; «foo $y».perl.say; | 23:27 | |
p6eval | rakudo 8dc189: ["foo", "bar baz"] | ||
pmurias | vamped: if you prefer to read the html version of the spec, irc.pugscode.org has turns S\d+:\d+ into links | 23:29 | |
23:29
Chillance left
|
|||
vamped | I've just always used feather.perl6.nl/syn/ | 23:30 | |
still, i'm trying to figure out how to arrive at the same line number. i can use perldoc S02...pod | 23:31 | ||
perldoc and typing 1608 doesn't seem to bring me to anyplace relevant | 23:33 | ||
arnsholt | I always assumed the line numbers referred to the line count in the POD file? | ||
eternaleye | arnsholt: They do | 23:36 | |
23:37
nihiliad joined
|
|||
eternaleye | vamped: perlcabal.org/syn/S02.html#line_1608 | 23:38 | |
'Sigils indicate overall interface'... | |||
vamped | eternaleye: ok, so *that's* how it's done. thanks. I'll read it. | 23:39 | |
looks like what I wanted. thanks all. | 23:40 | ||
23:46
Guest53549 left
23:56
pmurias left
23:58
colomon left
23:59
cdarroch left,
ihrd1 joined
|