»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo:, alpha:, pugs:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by lichtkind on 5 March 2010. |
|||
ruoso | pmurias, pong again ;) | 00:12 | |
00:14
am0c joined
|
|||
pugssvn | r30238 | lwall++ | [CURSOR] add mark_sinks method | 00:15 | |
r30238 | [STD] call mark_sinks on statement list | |||
r30238 | [STD] get a start on marking which operators are pure | |||
jnthn | Oh wow. | 00:16 | |
:-) | |||
colomon | \o/ | ||
TimToady | it's just a start | 00:17 | |
but it does set _sink on all but the last statement of a statementlist | 00:18 | ||
it's probably wrong too, since it won't propagate sinkness too inner final statements yet | 00:19 | ||
jnthn | aha | ||
my $final = pop(@s); | |||
nod | 00:20 | ||
TimToady | in p5 this is done as a separate pass, which is correcter | ||
jnthn | Think we might be able to get away with it in one pass in Perl 6? | ||
TimToady | probably not; we don't usually know the outer reduction soon enough | 00:21 | |
{ sink; { sink; sink; }; notsink } | 00:22 | ||
we don't know there's going to a notsink after the inner block yet | |||
jnthn | Ah, I see. | ||
Yes. | |||
TimToady | so don't pay too much attention to what I've got yet | ||
pausenclown | is there LWP functionality in rakudo? | 00:27 | |
pugssvn | r30239 | lwall++ | [STD] include --> type in redundant 'of' type checking | 00:30 | |
jnthn | pausenclown: There's certainly socket support, and I think there's some other modules that build on it. | 00:31 | |
jnthn needs sleep | |||
night all o/ | |||
pausenclown | speaking of modules. where to look for them? | ||
colomon | jnthn: \o | ||
pausenclown | jnthn: sleep is overrated =) | 00:32 | |
lichtkind | o/ | ||
good night | |||
pausenclown | oh, hi herb | 00:33 | |
lue | night | ||
afk | |||
pausenclown | does kephra have perl6 syntax hiliting? | ||
00:34
yinyin joined,
lestrrat is now known as lest_away
|
|||
lichtkind | pausenclown: not really | 00:34 | |
pausenclown: adding keywords is easy | |||
pausenclown | too bad, since padre has | ||
*kidding* | |||
lichtkind | pausenclown: but padre uses for that a very slow parser and lot of dependecies and I wanted stay small | 00:35 | |
00:35
payload left
|
|||
lichtkind | pausenclown: i know the guy who wrote that personally so no news there :) | 00:35 | |
00:36
eiro left
|
|||
pausenclown | i personally would be fine with something that doesnt get utterly confused when i write regex foo { \' } | 00:37 | |
i comment such things out by adding #' or the like but thats itchy | 00:38 | ||
lichtkind | pausenclown: tell it ahmadzawawi | ||
pausenclown | i'm just ranting. i use 'Notepad | 00:39 | |
++' || Kate | |||
00:39
lest_away is now known as lestrrat
|
|||
lichtkind | pausenclown: i almost only use kephra | 00:39 | |
pausenclown | i am almost only not surprised =) | 00:40 | |
lichtkind | g night | 00:41 | |
pausenclown | for me the problems are twofold. on windows i failed to install it twice (using ActivePerl and Strawberry) and on linux there was a strange problem with the wx lib | ||
lichtkind | i can tell you tomorrow why np++sucks :) | ||
pausenclown: with padre or kephra? | 00:42 | ||
00:42
Helios left
|
|||
pausenclown | kephra | 00:42 | |
00:43
eiro joined
|
|||
pausenclown | problem with ui was that the whole UI looked rasterized or dithered | 00:43 | |
lichtkind | pausenclown: i you most propably did mot fail, there was small problem a simple copy would had solved that but its now solved anyway next release i hop will come this week | ||
diakopter | [OT] np++ is the coolest. | 00:44 | |
lichtkind | cant say anything about that | ||
diakopter | TimToady: type-checking! !!! | 00:45 | |
lichtkind | diakopter: yes they same a long way but still no sense for beauty there :) | ||
00:45
lichtkind left
|
|||
pausenclown | did u consider creating install packages (.deb et al)? | 00:46 | |
snarkyboojum | rakudo: (1, 3, *+2 ... -1) | ||
p6eval | rakudo 534afd: ( no output ) | ||
00:46
Helios joined
|
|||
snarkyboojum | rakudo: (1, 3, *+2 ... -1)[4] | 00:46 | |
00:47
eiro left
|
|||
snarkyboojum | oops - that seems to hang rakudo | 00:48 | |
00:48
gfx joined
|
|||
pausenclown | no, the bot just likes to hang itself | 00:48 | |
snarkyboojum | just tried it on my local build and it hangs | 00:49 | |
00:49
eiro joined
|
|||
pausenclown | anyway, what the heck is whatever+2? | 00:49 | |
snarkyboojum | Whatever + @ | ||
2 | |||
pausenclown | rakudo: say *+1 == Inf -1 | 00:50 | |
diakopter | phenny: tell lichtkind I care only about the beauty of the text-editing box itself (ClearType, Ctrl-scroll to zoom, line-highlight, C#/Perl/JS syntax highlighting), I use it in full-screen mode so the rest of the UI is invisible to me. | ||
phenny | diakopter: I'll pass that on when lichtkind is around. | ||
snarkyboojum | > (1, 3, *+2 ... 9).say | ||
13579 | |||
pausenclown | std: say * + 1 == Inf - 1 | 00:51 | |
00:51
p6eval left
|
|||
pausenclown | there he goes | 00:51 | |
snarkyboojum | but I guess the ... -1 generates an infinite list and accessing it with an array subscript is making it hang | ||
pausenclown | rakudo: my @a=(1,2,3,4,5); say @a[2..*]; | 00:52 | |
std: my @a=(1,2,3,4,5); say @a[2..*]; | 00:53 | ||
snarkyboojum | rakudo: say "Boo" | ||
rakudo bot is hanging I guess | |||
pausenclown | oh yeah it did not rejpin | ||
s/pi/oi/ | 00:54 | ||
anyway, that code doesnt work in rakdo (yet) | |||
00:54
eiro left
|
|||
pausenclown misses purl | 00:55 | ||
snarkyboojum | hanging seems a bit buggy | ||
or maybe not :) | |||
but yeah - buggy vs nyi type of issue | 00:56 | ||
00:57
payload joined,
lestrrat is now known as lest_away
|
|||
pausenclown | nyi, yeah. the other day i was dreaming i try to flush my new fancy internet toilet and it greeted me with exactly that =) | 00:59 | |
snarkyboojum | (1, *+2 ... -1).batch(10).say # gives me results | 01:00 | |
diakopter | hee | 01:01 | |
pausenclown: you killed p6eval | |||
snarkyboojum | diakopter: it was me :| | ||
diakopter | oh | ||
snarkyboojum | with (1, *+2 ... -1)[4] or similar | 01:02 | |
diakopter investigates | |||
p6eval | rakudo 534afd: OUTPUT«Method 'Num' not found for invocant of class 'Block'current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)» | 01:03 | |
std 30239: OUTPUT«ok 00:01 108m» | |||
01:03
p6eval joined
|
|||
snarkyboojum | or (1, *+2 ... *)[-3] probably | 01:03 | |
any array subscript on an infinite-ish list I guess | 01:04 | ||
01:04
ruoso left
|
|||
pausenclown | std: my @a=(1,2,3,4,5); say @a[2..*]; | 01:04 | |
p6eval | std 30239: OUTPUT«ok 00:01 107m» | ||
pausenclown | rakudo: my @a=(1,2,3,4,5); say @a[2..*]; | ||
p6eval | rakudo 534afd: ( no output ) | ||
pausenclown | mmh. | ||
on my copy that just croaks | |||
snarkyboojum | hangs on my copy | 01:06 | |
diakopter | yeah it hangs on p6eval | ||
but it kills it after 15 seconds | |||
snarkyboojum | but (1, *+2 ... *)[1] didn't get killed after 15s? | 01:07 | |
it killed p6eval after 15s ho ho | |||
01:08
eiro joined
|
|||
pausenclown | maybe the computer running p6eval is moving very fast and his 15s aren't our 15s | 01:09 | |
diakopter | I think there were a couple of rebuilds going on that prevented p6eval from ponging the irc server | ||
snarkyboojum | ah | ||
can I try again? | |||
diakopter | yeah | ||
snarkyboojum | rakudo: (1, *+2 ... *)[1] | ||
p6eval | rakudo 534afd: ( no output ) | 01:10 | |
snarkyboojum | yay | ||
diakopter | rakudo: say (1, *+2 ... *)[0] | ||
snarkyboojum | that seems more robust :) | ||
p6eval | rakudo 534afd: ( no output ) | ||
pausenclown | positive test | 01:11 | |
rakudo: say 1 | |||
snarkyboojum | rakudo: (1, *+2 ... *)[1 + 2i] | ||
p6eval | rakudo 534afd: OUTPUT«1» | ||
diakopter | linux people: if you 'nice up' a process by "nice +10 ...", are its children also niced up by default? | ||
snarkyboojum | complex indices! :P | ||
p6eval | rakudo 534afd: ( no output ) | ||
snarkyboojum | std: (1, *+2 ... *)[1 + 2i] | ||
p6eval | std 30239: OUTPUT«ok 00:01 106m» | ||
snarkyboojum | heh | ||
pausenclown | rakudo: say Inf - 1 | ||
snarkyboojum | td: (1, *+2 ... *)[-2i] | ||
p6eval | rakudo 534afd: OUTPUT«Inf» | ||
diakopter | rakudo: say Inf - Inf | 01:12 | |
pausenclown | smart! | ||
p6eval | rakudo 534afd: OUTPUT«NaN» | ||
snarkyboojum | std: (1, *+2 ... *)[-2i] | ||
p6eval | std 30239: OUTPUT«ok 00:01 107m» | ||
pausenclown | not so smart | ||
snarkyboojum | do complex indices make sense? heh | ||
diakopter | !!!! | ||
rakudo: say Inf - say Inf | |||
p6eval | rakudo 534afd: OUTPUT«InfInf» | ||
diakopter | ;) | 01:13 | |
pausenclown | shouldnt that be 0? | ||
snarkyboojum | rakudo: say (Inf - (Inf +1)) | ||
pausenclown | rakudo: say say 99 | ||
p6eval | rakudo 534afd: OUTPUT«NaN» | ||
rakudo 534afd: OUTPUT«991» | |||
diakopter | rakudo: say 11 - say 4 | ||
p6eval | rakudo 534afd: OUTPUT«410» | ||
snarkyboojum | hehe | ||
diakopter | (that's correct) | 01:14 | |
pausenclown | how can that be correct | ||
snarkyboojum | do complex array subscripts make sense? | ||
pausenclown | ugh | ||
ignore | 01:15 | ||
snarkyboojum | rakudo: +(1+2i).say | ||
p6eval | rakudo 534afd: OUTPUT«1 + 2i» | ||
01:15
eiro left
|
|||
pausenclown | rakudo: say say 2 - say 3 | 01:16 | |
snarkyboojum | rakudo: (1+2i).re.say | ||
p6eval | rakudo 534afd: OUTPUT«311» | ||
rakudo 534afd: OUTPUT«1» | |||
snarkyboojum | rakudo: (1+2i).re.WHAT | ||
p6eval | rakudo 534afd: ( no output ) | ||
snarkyboojum | rakudo: (1+2i).re.WHAT.say | ||
p6eval | rakudo 534afd: OUTPUT«Int()» | ||
pausenclown | what does 2i mean? | ||
snarkyboojum | so it gets coerced to an int in an array subscript or similar? | 01:17 | |
2 * i where i = sqrt(-1) :) | |||
colomon | I'd argue that using a complex number for an array index should be an error. | 01:18 | |
pausenclown | we have built in in imaginery numbers? | ||
colomon | but maybe not the sort of error that STD detects. | ||
pausenclown: yes. | |||
snarkyboojum | see Complex.pm | ||
pausenclown | wow | ||
colomon | rakudo: say e ** pi * i | 01:20 | |
p6eval | rakudo 534afd: OUTPUT«Could not find non-existent sub &icurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | whoops, standalone i still doesn't work. | ||
rakudo: say e ** pi * 1i | |||
p6eval | rakudo 534afd: OUTPUT«0 + 23.1406926327793i» | ||
colomon | gack | ||
rakudo: say e ** (pi * 1i) | |||
p6eval | rakudo 534afd: OUTPUT«-1 + 1.22464679914735e-16i» | ||
colomon | third try is the charm. :) | 01:21 | |
snarkyboojum | rakudo: say (e ** (2 * pi * 1i)) | ||
p6eval | rakudo 534afd: OUTPUT«1 + -2.44929359829471e-16i» | ||
snarkyboojum | :) | ||
TimToady | std: my Str sub x (--> Int) {...} | 01:22 | |
p6eval | std 30239: OUTPUT«===SORRY!===Extra 'of' type; already declared as type Str at /tmp/OxnTlVDsLE line 1:------> my Str sub x (--> Int⏏) {...} expecting typenameFAILED 00:01 107m» | ||
TimToady | that's better | ||
pausenclown | ok. since we have a pi keyword we should have a ∅ operator ( and somesuch =) | ||
snarkyboojum | rakudo: say pi | 01:23 | |
p6eval | rakudo 534afd: OUTPUT«3.14159265358979» | ||
snarkyboojum | rakudo: say phi | ||
:) | |||
p6eval | rakudo 534afd: OUTPUT«Could not find non-existent sub &phicurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
TimToady | ∅ is a term, not an operator | ||
diakopter | TimToady: yay for strongly-typed-ness. | ||
pausenclown | * | ||
colomon | rakudo: say pi.Rat(1e-10).perl | ||
p6eval | rakudo 534afd: OUTPUT«312689/99532» | ||
TimToady | .u ∅ | 01:24 | |
phenny | U+2205 EMPTY SET (∅) | ||
diakopter | .u empty | ||
phenny | U+2205 EMPTY SET (∅) | ||
01:24
eiro joined
|
|||
diakopter | .u set | 01:24 | |
phenny | U+2205 EMPTY SET (∅) | ||
pausenclown | we had | ||
diakopter | .u 2205 | ||
phenny | U+2205 EMPTY SET (∅) | ||
snarkyboojum | rakudo: sub phi { (1 + sqrt(5))/2 }; say phi | 01:25 | |
p6eval | rakudo 534afd: OUTPUT«1.61803398874989» | ||
snarkyboojum | heh | ||
am0c | oh hai | ||
TimToady | unicode contains twenty or so phi's, none of which are the empty set :) | 01:26 | |
01:26
poincare101 joined
|
|||
snarkyboojum | oh that ϕ | 01:26 | |
poincare101 | how long does rakudo take to compile on something that's not very new (say, a pentium 3, 800 mhz)? 30 mins? | ||
I'm looking to get into perl6 development. | 01:27 | ||
snarkyboojum | poincare101: how much memory? | ||
01:27
lest_away is now known as lestrrat
|
|||
TimToady | .u ϖ | 01:27 | |
phenny | U+03D6 GREEK PI SYMBOL (ϖ) | ||
poincare101 | snarkyboojum: 512 MB | ||
am0c | moritz_: it seems the two announcements are duplicated there rakudo.org/ | ||
snarkyboojum | poincare101: you might have issues with swapping and that amount of memory.. last I heard compilation was maxing out at 700MB or so | 01:28 | |
TimToady | then there's ⌽ of course | ||
snarkyboojum | poincare101: though I don't really know :) | ||
01:28
eiro left
|
|||
TimToady | .u ⌽ | 01:28 | |
phenny | U+233D APL FUNCTIONAL SYMBOL CIRCLE STILE (⌽) | ||
poincare101 | snarkyboojum: wow, that's pretty heavy. I can compile perl5 on this thing pretty easy. | 01:29 | |
TimToady | .u ⍉ | ||
phenny | U+2349 APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH (⍉) | ||
sorear | poincare101: I have a P4, 2 GHz, 384 MB RAM (the RAM is the limiting factor here, I think, so your should be faster) - it takes 12 hours | ||
01:29
eiro joined
|
|||
poincare101 | APL is very annoying. | 01:29 | |
sorear | however this was before the PCC overhaul | ||
pausenclown | rakudo: multi sub prefix:<Ø> (*@n) { ( [+] @n ) / @n.elems }; say Ø(1,2,3); | 01:30 | |
p6eval | rakudo 534afd: OUTPUT«2» | ||
snarkyboojum | poincare101: the devs are working on reducing it, not sure how much luck they've had | ||
poincare101 | the parrot VM is pretty heavy... | ||
sorear | snarkyboojum: after the PCC overhaul, compilation memory usage was at 1.5-2G, chromatic cut it down to 700MB | ||
snarkyboojum | sorear: yeah, see above :) | ||
pausenclown | why does p6eval give me different results in private chatter? | ||
snarkyboojum | sorear: so no major inroads after that? | 01:31 | |
sorear | poincare101: the parrot VM is about as heavy as the P5 VM; however, Rakudo (analagous to the Perl5 parser) is quite underoptimized at the moment | ||
poincare101 | I see. thank you very much for this info. | 01:32 | |
TimToady | o⃠ is kinda cool | ||
sorear | it doesn't do much in the way of incremental parsing, and it retains a lot more than it ought to | ||
snarkyboojum | hehe.. frog with a black eye? | ||
sorear | fun fact: using Unicode characters anywhere in your source file will slow down parsing by an order of magnitude | ||
for the entire file | 01:33 | ||
snarkyboojum | which means core.pm when it's concatenated I suppose | ||
01:33
payload left
|
|||
pausenclown | thats like $& | 01:33 | |
sorear | it stores the translation unit as a single string, and if it has unicode characters, it has to use a variable width encoding | ||
there's a GSoC project, iirc, to implement a suitable fixed width encoding | |||
pausenclown fights the urge to make an A20 gate joke | |||
sorear | What does A20 have to do with anything | 01:34 | |
TimToady | rakudo: sub Ø (*@n) { ( [+] @n ) / @n.elems }; say Ø(1,2,3); | ||
snarkyboojum | pausenclown: I get the same results in private chatter with p6eval | ||
p6eval | rakudo 534afd: OUTPUT«2» | ||
01:34
stepnem left
|
|||
TimToady | rakudo: sub Ø (*@n) { ( [+] @n ) / @n.elems }; say Ø 1,2,3; | 01:35 | |
p6eval | rakudo 534afd: OUTPUT«2» | ||
snarkyboojum | pausenclown: provided I still address a particular implementation e.g. rakudo: | ||
pausenclown | i try open a new query window | ||
colomon | TimToady: is that last one correct? | 01:36 | |
TimToady | rakudo: sub φ (*@n) { ( [+] @n ) / @n.elems }; say φ 1,2,3; | ||
p6eval | rakudo 534afd: OUTPUT«2» | ||
TimToady | colomon: that's not a 0 | ||
sorear | one of the projects I've assigned to myself is a Parrot memory profiler | ||
TimToady | nor is it an empty set | ||
.u Ø | |||
phenny | U+00D8 LATIN CAPITAL LETTER O WITH STROKE (Ø) | ||
colomon | TimToady: yes, I was worried about the lack of parens on the sub call. :) | ||
sorear | Parrot is different in enough ways from the P5 VM that I think it's actually doable | ||
TimToady | it's just a list operator like any normal function can be | 01:37 | |
colomon | okay. | ||
TimToady | if you don't want list operator precedence, then you have to get fancier | ||
poincare101 | how can I get started developing for rakudo? Is there a "cheatsheat" for the source structure? | ||
sorear | see docs/ | 01:38 | |
especially docs/compiler_overview.pod | |||
and feel free to pick #perl6's collective brains | |||
TimToady | they're already pretty picked over, so only the unwanted ones are left | ||
01:40
stepnem joined
|
|||
snarkyboojum | .u Φ | 01:41 | |
phenny | U+03A6 GREEK CAPITAL LETTER PHI (Φ) | ||
TimToady | .u ጲ | ||
phenny | U+1332 ETHIOPIC SYLLABLE PHI (ጲ) | ||
01:43
wknight8111 left
|
|||
snarkyboojum | rakudo: (1,2,3).[1+2i].say | 01:43 | |
p6eval | rakudo 534afd: OUTPUT«Method 'Int' not found for invocant of class 'Complex'current instr.: 'perl6;Mu;' pc -1 ((unknown file):-1)» | ||
01:43
eiro left
|
|||
snarkyboojum | std: (1,2,3).[1+2i].say | 01:43 | |
p6eval | std 30239: OUTPUT«ok 00:01 108m» | ||
TimToady | imaginary semantics :) | 01:44 | |
01:44
eiro joined
|
|||
TimToady | dinner & | 01:44 | |
snarkyboojum | I can imagine what it'd return | ||
01:44
lestrrat is now known as lest_away
|
|||
snarkyboojum | TimToady: did you ever get that IRC text to speech converter installed? | 01:45 | |
pausenclown | bed & | ||
snarkyboojum | I was watching an old vid where someone mentioned you thinking about that :) | 01:46 | |
01:46
lest_away is now known as lestrrat
01:48
eiro left
01:50
pausenclown left
|
|||
poincare101 | where can I find a good PIR tutorial? | 01:50 | |
01:54
cotto left,
eiro joined
|
|||
snarkyboojum | poincare101: I learned bits and pieces from docs.parrot.org/parrot/latest/html/ | 01:55 | |
poincare101: notably the PIR book section | 01:56 | ||
poincare101: tho this looks good too www.parrot.org/wiki/pir-tutorial-and-faq | 01:57 | ||
poincare101 | wow, parrot looks like a really ambitious project, it has, like, a dozen different langs inside of it (NQP, PIR, PASM0 | 01:58 | |
01:58
Patterner left
|
|||
snarkyboojum | poincare101: look at parrot/examples when/if you d/l it | 02:01 | |
02:05
Psyche^ joined,
Psyche^ is now known as Patterner
02:09
eiro left
02:10
cotto joined,
payload joined
|
|||
poincare101 | hmm... I did ./Configure.pl --gen-parrot inside the rakudo checkout, it compiled parrot, but when I type in parrot, the command is not found. | 02:10 | |
02:12
Patterner left
|
|||
snarkyboojum | the parrot executable will be in the parrot directory inside the rakudo checkout | 02:12 | |
is that what you meant? | |||
02:15
eiro joined
02:22
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
poincare101 | snarkyboojum: yup. thanks. | 02:26 | |
I'm getting this error when I try to do make install: | 02:27 | ||
02:28
pugssvn left
|
|||
poincare101 | pastebin.com/CWmZmS0w | 02:29 | |
02:29
PerlJam left,
Juerd left,
pmichaud left,
dalek left,
eiro left
|
|||
poincare101 | what's going on? | 02:30 | |
perl6: say3; | |||
perl6: say 3; | |||
p6eval | pugs: OUTPUT«*** No such subroutine: "&say3" at /tmp/0eiFo3Tslu line 1, column 1-5» | 02:31 | |
..rakudo 534afd: OUTPUT«Could not find non-existent sub &say3current instr.: '_block14' pc 29 (EVAL_1:0)» | |||
..elf 30239: OUTPUT«Undefined subroutine &GLOBAL::say3 called at (eval 122) line 3. at ./elf_h line 5881» | |||
elf 30239, pugs, rakudo 534afd: OUTPUT«3» | |||
poincare101 | snarkyboojum: could you help? Its not building! | ||
snarkyboojum | poincare101: did you do a 'make' before this? | 02:32 | |
poincare101 | yup. | 02:33 | |
oh wait, I just had to do sudo :dense: | 02:34 | ||
02:34
eiro joined
|
|||
snarkyboojum | you're building parrot separately? | 02:35 | |
poincare101 | no. | 02:37 | |
i just did make install and that's where it got stuck. | |||
snarkyboojum | you shouldn't need to do sudo for make install of rakudo | ||
afaik | |||
poincare101 | hmm... it seems to work when I do sudo. Well, I'll find out anyway. | 02:38 | |
snarkyboojum | afk& | 02:42 | |
02:46
cotto left
03:03
cotto joined
03:05
mepplock joined
03:09
meppel left
03:11
poincare101 left
|
|||
lue | echo hello! | 03:13 | |
03:15
snarkyboojum left,
cognominal left
03:16
felipe left
03:20
snarkyboojum joined
03:28
alester left
03:34
agentzh joined
03:39
meppel joined
03:42
mepplock left,
am0c left
03:46
stepnem left
03:50
isitfosho joined
|
|||
isitfosho | When is perl6 going to become a production tool? | 03:51 | |
I didn't get on the perl5 bandwagon, but I am considering giving it a spin if it's going to bust out of academic stages anytime soon | |||
03:52
alester joined
04:04
lestrrat is now known as lest_away
|
|||
sorear | isitfosho: perl 6 has reached a catch-22 development stage | 04:06 | |
isitfosho: it can only advance if people use it in production to find what's missing | |||
but few people want to use it until it's finished! | |||
help break this cycle - name a feature and I'll tell you if it's ready | 04:07 | ||
isitfosho | So, I download perl6 - use it to build something cool, THEN, if it becomes a cool thing, I get to be the one of the first early adopters, and thereby more cool? | 04:08 | |
04:08
cotto left
|
|||
isitfosho | I'm downloading it now, btw | 04:08 | |
sorear | Yes, basically | 04:09 | |
isitfosho | I will use it to write a photo thing for my website. | ||
And I will put a big button that says, "Perl6" | 04:10 | ||
that's the most I can do for now | |||
sorear | It's not really a matter of exposure. | 04:11 | |
04:11
gfx left
|
|||
sorear | It's more a case of - we need to interact with users in order to decide some design issues | 04:11 | |
isitfosho | in that case, my purposes should be substantial | 04:12 | |
sorear | Insubstantial things are good too. | 04:13 | |
It's no good if we make the hard things easy and the easy things impossible. | 04:14 | ||
isitfosho | many languages are already in the business of making easy things impossible | ||
sorear | I/O heavy programs are a particularly good bet, since right now we don't really have I/O | ||
isitfosho | I could do a perl6 irc bot | 04:15 | |
do you have one in here? | |||
sorear | I'm already working on a perl6 irssi replacement | ||
isitfosho | how about a perl6 code cross-referencer and searching framework | ||
I wanted to write that in PHP, but PHP is not "cool" | 04:16 | ||
sorear | that sounds really cool | ||
isitfosho | Ok, I'll take a crack at that | ||
I'll let you know how I do in a couple weeks | |||
see ya | |||
sorear | drop by often | ||
04:17
isitfosho left
|
|||
sorear | and learn about pir::, Q:PIR, and the NCI | 04:17 | |
04:20
hercynium left
04:26
cotto joined
04:32
am0c joined
04:41
mantovani left
04:42
mantovani joined
04:55
rekhajos joined
05:30
cotto left
05:36
payload left,
payload joined
05:41
stepnem joined,
payload1 joined,
payload left
05:43
mepplock joined,
meppel left
05:44
payload joined,
payload1 left,
payload1 joined,
payload left
05:46
meppel joined,
payload joined,
payload1 left
05:47
payload left,
payload joined,
rgrau left,
payload left
05:48
eternaleye joined
05:49
mepplock left
|
|||
lue | good night | 05:56 | |
05:59
dignan joined
|
|||
dignan | Ok so I started writing some perl6, but I need to know this information if anyone can please help: 1. is there a function that can print all the attributes of an object? 2. where do I go to install modules? Is it cpan still? | 06:00 | |
colomon | 1. no 2. proto is probably the best existing Perl 6 module tool, but it doesn't work at the moment. | 06:01 | |
TimToady | well, .perl will usually approximate 1 | 06:02 | |
colomon | TimToady: right, was just going to get to that. | ||
is there a default .perl that will print out the attributes on a user-defined class yet, though? | |||
or rather, .perl.say will approximate 1 | |||
dignan | I don't care so much for the user defined classes as much as basic things like a built-in type | ||
colomon | oh, then you definitely want .perl | 06:03 | |
dignan | ah | ||
excellent, thanks guys | |||
colomon | It doesn't always do exactly what you want, but it does dump all the attributes somehow or the other. | ||
so for instance | |||
rakudo: (-1 + 0i).sqrt.perl.say | 06:04 | ||
p6eval | rakudo 534afd: OUTPUT«Complex.new(0, 1)» | ||
dignan | my @x = ("a", "b", "c"); print @x.perl; >> (a,b,c) | ||
i would like to know about methods this has, perhaps it has @x.elems.. I am pretty sure | 06:05 | ||
how do I find out what kind of functionality it has | |||
TimToady | rakudo: my @x; say @x.^methods.perl | ||
p6eval | rakudo 534afd: OUTPUT«maximum recursion depth exceededcurrent instr.: 'perl6;Seq;!fill' pc 14088 (src/builtins/Block.pir:19)» | 06:06 | |
TimToady | heh | ||
colomon | rakudo: my @x; say @x.WHAT | ||
TimToady | rakudo: my @x; say Array.^methods.perl | ||
p6eval | rakudo 534afd: OUTPUT«Array()» | ||
rakudo 534afd: OUTPUT«maximum recursion depth exceededcurrent instr.: 'perl6;Seq;!fill' pc 14088 (src/builtins/Block.pir:19)» | |||
dignan | same deal here | ||
I'm trying these as you type | |||
TimToady | rakudo: my @x; say [1,2,3].^methods.perl | ||
colomon | rakudo: my @x; say Array.^methods | 06:07 | |
p6eval | rakudo 534afd: OUTPUT«maximum recursion depth exceededcurrent instr.: 'perl6;Seq;!fill' pc 14088 (src/builtins/Block.pir:19)» | ||
rakudo 534afd: ( no output ) | |||
TimToady | alpha: say [1,2,3].^methods.perl | ||
p6eval | alpha 30e0ed: OUTPUT«[{ ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }]» | ||
colomon | isn't there supposed to be a .name in there somewhere? | ||
TimToady | probably | ||
colomon | rakudo: my @x; say Array.^methods>>.name | ||
p6eval | rakudo 534afd: OUTPUT«maximum recursion depth exceededcurrent instr.: 'perl6;Seq;!fill' pc 14088 (src/builtins/Block.pir:19)» | ||
colomon | looks like a wacky new bug. | 06:08 | |
06:08
uniejo joined
|
|||
colomon | dignan: of course, the other way to do it is to look at the spec. | 06:08 | |
TimToady | alpha: say [1,2,3].^methods».name.perl | ||
p6eval | alpha 30e0ed: OUTPUT«["pop", "item", "values", "delete", "Scalar", "", "shift", "Array", "push", "splice", "exists", "unshift"]» | ||
dignan | Well, the bright side of this is a bug can be filed. | ||
AH! | |||
colomon: I will be doing just that | |||
TimToady | rakudo: say [1,2,3].^methods».name.perl | ||
p6eval | rakudo 534afd: OUTPUT«maximum recursion depth exceededcurrent instr.: 'perl6;Seq;!fill' pc 14088 (src/builtins/Block.pir:19)» | 06:09 | |
TimToady | looks like definitely a bug of some sort | ||
colomon | rakudo: my @x; say Array.^methods.WHAT | ||
p6eval | rakudo 534afd: ( no output ) | ||
dignan | TimToady: I need to use that unicode character in my command line? | 06:10 | |
say [1,2,3].^methods».name.perl ? | |||
TimToady | rakudo: say [1,2,3].HOW.methods(Array)».name.perl | ||
colomon | rakudo: my $a = []; say $a.^methods.WHAT | ||
TimToady | no | ||
you can always do >> or << for hyperops | |||
but the french char is prettier | |||
p6eval | rakudo 534afd: ( no output ) | ||
rakudo 534afd: OUTPUT«maximum recursion depth exceededcurrent instr.: 'perl6;Seq;!fill' pc 14088 (src/builtins/Block.pir:19)» | |||
dignan | I am exceeding recursion depth here on that one | ||
is p6eval using an older version or something? | 06:11 | ||
TimToady | something is obviously defined in terms of itself accidentally | ||
sorear | ^methods doesn't work | ||
I filed a bug on this last month | |||
you need to add :local somehow | |||
TimToady | rakudo: say [1,2,3].^methods(:local)».name.perl | 06:12 | |
p6eval | rakudo 534afd: OUTPUT«get_attr_str() not implemented in class 'Sub'current instr.: 'perl6;Code;name' pc 13135 (src/builtins/Str.pir:68)» | ||
TimToady | er, how did we get to Sub? | ||
sorear | rakudo: say ([1,2,3].^methods(:local))[0].WHAT | 06:13 | |
p6eval | rakudo 534afd: OUTPUT«Code()» | ||
sorear | rakudo: say ([1,2,3].^methods(:local))[0].name | ||
p6eval | rakudo 534afd: OUTPUT«get_attr_str() not implemented in class 'Sub'current instr.: 'perl6;Code;name' pc 13135 (src/builtins/Str.pir:68)» | ||
sorear | rakudo: say ([1,2,3].^methods(:local))[0].perl | ||
p6eval | rakudo 534afd: OUTPUT«{ ... }» | ||
TimToady | well, that's not terribly helpful :) | ||
alpha: say [1,2,3].^methods(:local)».name.perl | 06:14 | ||
p6eval | alpha 30e0ed: OUTPUT«["shift", "Array", "splice", "push", "exists", "unshift", "item", "pop", "values", "delete", "Scalar", ""]» | ||
TimToady | should work again pretty soon, anyhoo | ||
sorear thinks subs should save a copy of their parse tree so that .perl returns parsable, equivalent code | |||
in the non-closure case at least | 06:15 | ||
TimToady | yeah, in the limit you have to include the entire outer lexical scope... | ||
or have funny references to things that ordinarily don't have names | |||
06:16
dignan left
|
|||
sorear | I hope we can do better than B::Deparse->new->coderef2text($sub) | 06:16 | |
TimToady | well, viv -p6 already does that almost perfectly from the AST | ||
it's pretty certain we can do better than p5 in this regard, I think | 06:17 | ||
oh, dignan is gone... | 06:18 | ||
sorear | we need to teach him to stay | 06:19 | |
06:19
lest_away is now known as lestrrat
|
|||
sorear | I think he's the same as isitfosho | 06:19 | |
~cfb49e38 in both cases ... iirc that's the hex client IP | 06:20 | ||
TimToady | well, my antihistamine is kicking in, so I'd better Z off now... | 06:22 | |
bed & | |||
colomon | o/ | 06:24 | |
06:25
justatheory left,
dignan joined
|
|||
dignan | So perl6.org perlcabal.org and pugscode are all offline, anywhere else I can get the spec? | 06:25 | |
well that or someone in my immediate chunk of the internet doesn't like perl very much. | 06:26 | ||
colomon | all offline again? | ||
dignan | i tried them all from two different IPs | ||
hejki | try google cache on one of those sites? | ||
dignan | yeah, but I can't get the spec from cache | ||
colomon | ack, I wonder how hard it would be to set up a mirror. | 06:27 | |
06:28
alester left
|
|||
dignan | I found a couple | 06:28 | |
but they're in .cz and .nl | |||
i'll make do for now | |||
06:30
dignan left
06:37
mikehh left
|
|||
sorear thinks about what needs to happen before inheritance hierarchies can cross language boundaries. | 06:38 | ||
colomon | rakudo: role Heavy { }; class Weight does Heavy { }; say Weight.new ~~ Heavy | 06:52 | |
p6eval | rakudo 534afd: OUTPUT«1» | ||
07:08
cognominal joined,
[particle]1 joined
07:09
[particle] left
07:13
mberends joined
07:14
gfx joined
07:15
dalek joined,
Juerd joined
07:20
felipe joined
07:21
iblechbot joined
|
|||
mberends | phenny, tell masak the proto bootstrapping side is almost done, it would be good to brainstorm the proto implementation of S11-Modules in Installer.pm and Ecosystem.pm in the next few days. (how's that for a homework assignment?) | 07:21 | |
phenny | mberends: I'll pass that on when masak is around. | ||
Juerd | To those who use feather with @reboot scripts: you may want to use a shell script with sleep 300, to allow for the dnscache to start :) | 07:22 | |
And someone sent me a new kernel that I wish to try soon. | 07:23 | ||
sorear | Juerd: Oh, do you know what happened just now, why dalek was out for hours? | 07:24 | |
Juerd | Yes. Feather0, the physical box, was upgraded Monday last week and since then has been very unstable. | 07:27 | |
It crashes every third day, more or less. | |||
sorear | yes, but why does dalek stay down for hours when the other services come right back up? | 07:32 | |
or am I merely hallucinating the latter | |||
07:33
Su-Shee joined
07:39
rgrau joined
|
|||
Juerd | sorear: Er, everything stays down for hours, if it runs on feather | 07:45 | |
juerd.nl/i/5ec012aca52e90cb82a4e6c8ff51e04b.png # uptime chart | |||
sorear | oh. | 07:52 | |
07:57
flity_ is now known as flity
08:10
payload joined
08:18
dakkar joined
08:26
xomas left
|
|||
hejki | rakudo: say 0.1+0.1+0.1-0.3 | 08:30 | |
p6eval | rakudo 534afd: OUTPUT«0» | ||
08:31
mikehh joined
|
|||
sorear | rakudo: say (0.1+0.1+0.1-0.3)*1e20 | 08:41 | |
p6eval | rakudo 534afd: OUTPUT«0» | 08:42 | |
sorear | rakudo: say (0.1+0.1+0.1-0.3)*1e50 | ||
p6eval | rakudo 534afd: OUTPUT«0» | ||
moritz_ | rakudo: say (0.1+0.1+0.1-0.3).perl | ||
sorear | rakudo: say (0.1*10-1)*1e50 | ||
p6eval | rakudo 534afd: OUTPUT«0/1» | ||
rakudo 534afd: OUTPUT«0» | |||
sorear | Sneaky | ||
moritz_ | sorear: it's internally handled as a Rat (fraction) | ||
08:48
ascent_ joined
08:49
proller joined
09:00
mrsaturn joined
09:06
mberends left
09:07
JimmyZ joined
09:10
mberends joined
09:14
proller left
09:15
proller joined
09:31
gfx left
09:34
payload left,
JimmyZ_ joined
09:35
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
sorear | chromatic just pushed another optimization to string handling. | 09:36 | |
I just compiled Rakudo | |||
45 minutes | |||
260 MiB | |||
chromatic++ | |||
09:45
mrsaturn left
09:56
JimmyZ left
10:07
lollan joined,
mberends left
|
|||
lollan | hello | 10:07 | |
sorear | Hello. | 10:08 | |
10:10
drbean joined
10:12
cognominal left
10:15
yinyin left
|
|||
mathw | Hello | 10:17 | |
10:18
agentzh left,
cognominal joined
|
|||
jnthn | o/ | 10:30 | |
moritz_ not motivated at all | 10:31 | ||
mathw is tracking down a segmentation fault | 10:33 | ||
it's the best kind - intermittent! | |||
and sometimes it's a bus error instead! | 10:34 | ||
10:34
iblechbot left
|
|||
moritz_ | rakudo: class A { has $!g; method foo { self.bar(:$!g) } }; | 10:35 | |
p6eval | rakudo 534afd: OUTPUT«Symbol '$!g' not predeclared in foocurrent instr.: 'perl6;PCT;HLLCompiler;panic' pc 152 (compilers/pct/src/PCT/HLLCompiler.pir:108)» | ||
moritz_ | rakudo: class A { has $!g; method foo { say $!g } }; | ||
p6eval | rakudo 534afd: ( no output ) | ||
10:35
clintongormley joined
|
|||
moritz_ submits rakudobug | 10:35 | ||
m6locks | heh | 10:36 | |
moritz_ | alpha: class A { has $!g; method foo { self.bar(:$!g) } }; | ||
p6eval | alpha 30e0ed: ( no output ) | ||
colomon | \o | ||
moritz_ | o/ | 10:37 | |
rakudo: class A { method b($x = $_) { say $x } }; given 34 { say A.new.b() } | 10:38 | ||
p6eval | rakudo 534afd: OUTPUT«Any()1» | ||
moritz_ | pugs: class A { method b($x = $_) { say $x } }; given 34 { A.new.b() }\ | 10:39 | |
p6eval | pugs: OUTPUT«***  Unexpected end of input at /tmp/WvsM3wEWlZ line 2, column 1» | ||
moritz_ | pugs: class A { method b($x = $_) { say $x } }; given 34 { A.new.b() } | ||
p6eval | pugs: OUTPUT«» | ||
moritz_ | pugs: class A { method b($x = $OUTER::_) { say $x } }; given 34 { A.new.b() } | ||
p6eval | pugs: OUTPUT«» | ||
10:40
lestrrat is now known as lest_away
|
|||
moritz_ | rkaudo: sub f { say $/ }; pir::store_dynamic_lex__vSP('$/', 'a' ~~ /./); f() | 10:44 | |
rakudo: sub f { say $/ }; pir::store_dynamic_lex__vSP('$/', 'a' ~~ /./); f() | |||
p6eval | rakudo 534afd: OUTPUT«Lexical '$/' not found in dynamic scopecurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
10:49
payload joined
|
|||
moritz_ | rakudo: class A { method postcircumfix:<{ }>() {} }; my &r = { my $a }; if 0 { if 0 { my $a } } | 10:50 | |
p6eval | rakudo 534afd: ( no output ) | ||
moritz_ | rakudo: class A { method postcircumfix:<{ }>() {} }; my &r = {;}; if 0 { if 0 { my $a } } | ||
p6eval | rakudo 534afd: ( no output ) | ||
10:51
xinming_ left
10:53
xinming joined
11:16
riffraff joined,
cognominal left
11:29
riffraff left
11:35
masak joined
|
|||
masak | oh hai, #perl6 | 11:35 | |
phenny | masak: 07:21Z <mberends> tell masak the proto bootstrapping side is almost done, it would be good to brainstorm the proto implementation of S11-Modules in Installer.pm and Ecosystem.pm in the next few days. (how's that for a homework assignment?) | ||
jnthn | reverse('!kasam') | 11:36 | |
masak | phenny: tell mberends I'll be around quite often; will be happy to brainstorm proto with you. | ||
phenny | masak: I'll pass that on when mberends is around. | ||
colomon | o/ | 11:38 | |
jnthn | masak: BTW, nice blog post. :-) | 11:39 | |
masak | gracias. | ||
it was about time. | |||
jnthn | masak: I'll try and sort out that regex issue later today. | ||
masak | ++jnthn | ||
colomon | what jnthn said. | ||
jnthn | masak: You're going to have to add a "my" or "our". | ||
colomon | (about the post, not the sorting.) | 11:40 | |
jnthn | See backlog for discussion. | ||
masak | jnthn: that's OK. | ||
jnthn | colomon: Aww! :-P | ||
11:40
frettled sets mode: +oo masak colomon
|
|||
masak | mmm, kamelbulle. | 11:40 | |
frettled | jnthn: he would have agreed if you'd sorted _in_ ;) | 11:41 | |
jnthn | But the weather's so nice today! I want to sort *out*! | 11:42 | |
oh, damm, actually it's clouded over. :-/ | |||
colomon | looks like it will be a nice day here, but the current temp is -3C | ||
moritz_ | +15C or so here :-) | 11:43 | |
sunny | |||
colomon | we're supposed to hit that today. it will just take a few hours... | ||
jnthn | colomon: I count -3C and sunny as nice weather. | 11:44 | |
Needs a nice warm furry hat, but that's fine. I likes my furry hat. :-) | |||
11:47
cognominal joined
|
|||
masak | jnthn: min sömn e kass. :/ | 11:49 | |
jnthn | masak: Aww. :-( | 11:50 | |
11:51
rekhajos left
|
|||
colomon | jnthn: I count -3C and sunny as nice weather when there's enough snow on the ground to ski. It's definitely a bit less nice in spring... | 11:51 | |
jnthn | masak: Sömnlöshet? | 11:52 | |
masak | jnthn: japp. | 11:58 | |
jnthn | Det ar inte bra. :-/ | 11:59 | |
masak | when I finally did fall asleep, I dreamt that I was in a parallel universe where Einstein hadn't become famous, and YouTube was somehow known as 'CatSpensive'. | ||
11:59
payload left
|
|||
masak | jnthn: don't you have ä on your keyboard? | 11:59 | |
jnthn | masak: No, it's British. | 12:00 | |
masak | the dots are not just decoration, you know. :) | ||
jnthn | Yeah...I kinda got away with it in Slovakia...dropping the mekcens and accents was pretty typical. :-) | 12:01 | |
mekcni for plural I guess. | |||
12:02
envi^home joined
|
|||
jnthn | masak: Is there a Good Way to handle typing them aside from finding a Swedish keyboard I like? :-) | 12:02 | |
masak | heh. I'm using a Swedish keyboard right now, but with a US layout. | ||
I guess you could do the opposite. | 12:03 | ||
I've even heard about Windows people who do that. | |||
jnthn will have to try that | |||
masak | when I want to type an 'ä' in Emacs, I don't switch layout, but instead I switch the input method. so Swedish keyboard, US layout, Swedish input method :P | ||
jnthn | It seems to be bad form here not to put the dots. :-) | 12:04 | |
masak | it makes it ever so slightly harder to read. | ||
jnthn | It did with Slovak too at first, but after a while became normal. | ||
masak | but I suspect I'm somewhat of a purist. I don't like the information loss as such. | ||
jnthn | Yeah, they're useful. :-) | ||
masak | I tend to type 'ae' rather than 'a' when I have to leave out the dots. | ||
(and 'aa' for 'å' and 'oe' for 'ö') | 12:05 | ||
in fact, that's how the input method in Emacs works. | |||
12:07
bluescreen joined
12:09
cognominal left
12:17
ruoso joined
|
|||
colomon | jnthn: you there? | 12:19 | |
jnthn | colomon: yes | ||
colomon | can you take a quick look at justrakudoit.wordpress.com/2010/03/...of-attack/ | ||
jnthn | just nomming lunch and playing with input methods ;-) | ||
colomon | I'm particularly concerned to get the first paragraph right. :) | 12:20 | |
jnthn | ok, looking in just a moment :-) | 12:21 | |
colomon | thanks. | ||
12:22
pmurias joined
12:23
literal joined
|
|||
pmurias | ruoso: ping again ;) | 12:23 | |
jnthn | Aha! | ||
Jag will en små öl med lunch. | |||
\o/ | 12:24 | ||
masak: Happy? :-) | |||
masak | about the dots, yeah :) | ||
jnthn | Jag är en bra svensk nu. | ||
masak | 'vill' is with a 'v', not 'w', and 'små' is just for the plural, otherwise it's 'liten'. :) | 12:25 | |
jnthn: :D | |||
jnthn | Oh | ||
masak | that last part was all correct. and a little bit funny. | ||
jnthn | Ah well, it's not like I've actually learned any Swedish yet. :-) | ||
A grammar book did arrive yesterday though. | |||
masak | step by step. :) | ||
jnthn | colomon: Nice post! :-) | 12:30 | |
colomon++ | |||
masak | colomon++ | 12:31 | |
colomon | *blush* | ||
moritz_ | colomon++ | ||
colomon | jnthn: do you think the first paragraph is okay? | ||
moritz_ | colomon.face.color++ | ||
frettled | yay colomon! | ||
moritz_ | colomon: for comparison of real numbers, why not jut use Num? | 12:32 | |
jnthn | moritz_: on the R component of the RGB ;-) | ||
moritz_ | jnthn: :-) | ||
jnthn | colomon: Yes, it looks fine. :-) | ||
colomon | btw, just compiled rakudo with Numeric and Real roles defined here. They don't do anything yet, but they're there. | ||
jnthn++ | |||
now how do I crosspost it to perl planet six? | |||
moritz_: that will be my first approximation, but Num cannot handle Big Ints or FatRats. | 12:33 | ||
afk # need to shower so I'm decent when the moving estimator stops by | 12:34 | ||
jnthn | colomon: The planet is an aggregator, I always forget who is the right person to bother about adding to that. :-/ | ||
moritz_ | obra: could you please add the justrakudoit.wordpress.com/feed/ to planetsix? | 12:35 | |
jnthn | moritz_++ | ||
mathw | o/ | 12:37 | |
12:37
iblechbot joined
|
|||
ruoso | pmurias, aha! | 12:40 | |
got you | |||
12:41
riffraff joined
|
|||
ruoso | did I? | 12:41 | |
pmurias | ruoso: yes | ||
masak | finally. it's like watching a soap opera unfold. :) | 12:42 | |
pmurias | ruoso: do you think smop/mildew is active enough that i could write a GSoC proposal for it? | ||
masak | "In this episode, ruoso finally gets a hold of pmurias..." | ||
pmurias | s/proposal/application/ | 12:43 | |
ruoso | pmurias, I'm not that active, but you are... your works with mildew were very relevant | 12:44 | |
and still are | |||
I think it's worth posting, yes | |||
moritz_ | pmurias: what are your goals for mildew? | 12:45 | |
pmurias | i plan to work on type inference | 12:46 | |
moritz_ | I meant broader goals | 12:47 | |
like: "implementing more features" or "implementing features from $synopsis" or "getting users" or so | |||
pmurias | "see if type inference gives us good performance for static stuff" is my short term goal | 12:51 | |
moritz_ | nice | ||
12:52
nacho joined
|
|||
pmurias | and after that putting it on CPAN/getting more features/perl 5 interop | 12:54 | |
12:55
ignacio_ joined
|
|||
mathw | masak: if it was a soap opera, they'd now be having a fight because pmurias' third cousin four times removed slept with ruoso's second cousin once removed and left before she woke up the next morning, sticking a note on the mirror but failing to spell 'love' correctly. | 12:55 | |
colomon | moritz_++ | ||
12:55
nacho left
12:56
espadrine left
|
|||
pmurias | moritz_: documenting mildew internals is also a thing i should do at some point | 12:59 | |
13:03
holli joined
|
|||
holli | hi. | 13:04 | |
moritz_ | hi | ||
holli | wtf? i cant change my nick. | 13:05 | |
colomon | get pill # probably not a valid git command... | ||
13:05
holli is now known as pausenclown
|
|||
pausenclown | oh. took a while | 13:05 | |
2nd level use bug is still alive, that darn thing | 13:06 | ||
13:07
lisppaste3 left
|
|||
pausenclown | my XML Parser file is 2000 lines long by now (without docs). I'd really like to split it up =) | 13:07 | |
moritz_ | pausenclown: what bug? loading a class from inside a class? | 13:08 | |
rakudo: sub foo { say 5 }.() | |||
p6eval | rakudo 534afd: OUTPUT«Confused at line 11, near "sub foo { "current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
13:08
lisppaste3 joined
|
|||
moritz_ | rakudo: 'a' ~~ /<foo=alpha>/; say $<foo> | 13:10 | |
p6eval | rakudo 534afd: OUTPUT«a» | 13:11 | |
moritz_ | rakudo: 'a' ~~ /<foo=alpha>/; say $<alpha> | ||
p6eval | rakudo 534afd: OUTPUT«a» | ||
moritz_ | rakudo: 'a' ~~ /<foo.=alpha>/; say $<alpha> | ||
p6eval | rakudo 534afd: OUTPUT«regex assertion not terminated by angle bracket at line 11, near ".=alpha>/;"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
moritz_ | rakudo: 'a' ~~ /<foo=.alpha>/; say $<alpha> | 13:12 | |
p6eval | rakudo 534afd: OUTPUT«Any()» | ||
lisppaste3 | pausenclown pasted "bug" at paste.lisp.org/display/97071 | 13:20 | |
pausenclown | moritz_: this one | ||
13:20
REPLeffect left
13:22
PerlJam joined
|
|||
moritz_ | pausenclown: can you try to move the 'use' out of the class defintion, as a workaround? | 13:22 | |
pausenclown | thats is my workaround. | ||
moritz_ | ok | ||
pausenclown | i mean, no use and all in one file | ||
moritz_ | well, I was talking about a workaround that allows you to use multiple files | 13:23 | |
13:23
cognominal joined
|
|||
moritz_ | rakudo: say 4.log(2) | 13:24 | |
mathw | why do you need to call use inside the class definition? I've never imagined a necessity for it before. | ||
p6eval | rakudo 534afd: OUTPUT«2» | ||
moritz_ | rakudo: say log(4, 2) | ||
p6eval | rakudo 534afd: OUTPUT«2» | ||
moritz_ | rakudo: say log(4, :base(2)) | ||
p6eval | rakudo 534afd: OUTPUT«Unexpected named parameter 'base' passedcurrent instr.: 'log' pc 282809 (src/gen/core.pir:9681)» | ||
pausenclown | when i do. use X::Y; class X {} i get a "Illegal redeclaration of symbol 'X'" | ||
moritz_ | nasty | ||
arnsholt | Does nqp do references in some way? | 13:25 | |
pausenclown | mathw: i dont care where to put the use as long as it works =) | 13:26 | |
moritz_ | arnsholt: everything is a reference in nqp, in some way | 13:27 | |
PerlJam | greetings. | ||
13:28
proller left
|
|||
arnsholt | moritz_: True, true | 13:28 | |
What I'm trying to do is this: www.perlmonks.org/?node_id=193649 | |||
About halfway down there's a var class | |||
13:28
proller joined
|
|||
pausenclown | mmh. maybe i could toss a script together which concatenates all my source files | 13:28 | |
and runs the result | 13:29 | ||
moritz_ | pausenclown: another workaround is to use a different class name than X | ||
like X_ | |||
arnsholt | Which handles unification by being a reference to a reference to a var. I'd like to do something along the same lines in nqp, but can't quite figure out how to do it | ||
mathw | pausenclown: You're wanting to split one class's definition across multiple files? | 13:30 | |
arnsholt | Binding vars to other vars gets me halfway there. But without assignment I can't see how to get all the way tehre | 13:31 | |
pausenclown | no. i just want to use class A within class B | ||
colomon | moritz_: oooo, log issues. | ||
moritz_ | hm? | ||
mathw | pausenclown: aaah right. | 13:32 | |
pausenclown | mathw: like using XML::Parser::Dom::Element in XML::Parser::Actions::Dom | ||
colomon | moritz_: just looking at your rakudo: say log(4, :base(2)) back there | ||
working on a fix now. | 13:33 | ||
moritz_ | missing proto? | ||
btw colomon++ #Add trivial versions of Numeric and Real and apply them to Complex and Rat. # /me plays dalek | |||
13:33
payload joined
|
|||
colomon | proto is for the one argument version. trying to switch that around. | 13:33 | |
I don't think we had e available when I first added those, which is probably why there are two versions instead of one sensible one. | 13:34 | ||
13:34
dalek left
|
|||
mathw | speaking of dalek... | 13:34 | |
13:34
PerlJam left
|
|||
colomon | jnthn: How do you add a role to classes defined in pir? | 13:34 | |
13:34
REPLeffect joined
|
|||
colomon | (or even, can you add a p6 role to classes defined in pir?) | 13:35 | |
13:35
Juerd left
|
|||
masak | pausenclown: thanks. two bugs found due to what you wrote above :) | 13:38 | |
pausenclown++ | |||
13:38
payload left
13:39
payload joined
|
|||
colomon | > say log(4, :base(2)) | 13:39 | |
2 | |||
moritz_ | colomon++ | ||
pausenclown | masak++ # hunter of beetles | 13:42 | |
masak | all you need is love. :) | ||
jnthn | colomon: Thing is, if you defined it in Perl 6, it doesn't exist for you do add to the PIR type. | 13:45 | |
colomon: I think best bet will be to augment class Int does Real { } or something | 13:49 | ||
colomon: I think adding a role when augmenting doesn't quite work yet though. | |||
colomon | that would be a bit of a complication. :) | 13:50 | |
jnthn | Aye | ||
I'll try and fix that up soonish for you. | |||
moritz_ | rakudo: say Positional | ||
jnthn | Maybe if it's easy enough I can manage it today | ||
p6eval | rakudo 534afd: OUTPUT«Positional()» | ||
moritz_ | rakudo: augment class Int does Positional { method foo { 34 } }; say 42.foo | 13:51 | |
p6eval | rakudo 534afd: OUTPUT«Can't augment class Int without 'use MONKEY_TYPING'current instr.: 'perl6;Perl6;Grammar;add_name' pc 39586 (src/gen/perl6-grammar.pir:276)» | ||
jnthn | colomon: Feel free to try it just to check it doesn't work, mind. It's always possible that it does. ;-) | ||
moritz_ | rakudo: use MONKEY_TYPING; augment class Int does Positional { method foo { 34 } }; say 42.foo | ||
p6eval | rakudo 7c265d: OUTPUT«Method 'foo' not found for invocant of class 'Integer'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | jnthn: poking at log at the moment, but I'll give it a try in a few. | ||
moritz_ | at least it doesn't complain about the composition | ||
rakudo: use MONKEY_TYPING; augment class Int does Positional { method foo { 34 } }; say 42 ~~ Positional | |||
jnthn | moritz_: yeah, but iirtcc, it doesn't attempt it either ;-) | ||
p6eval | rakudo 7c265d: OUTPUT«0» | ||
moritz_ | you're right | 13:52 | |
anyway, jnthn++ for awesome use MONKEY_TYPING error message | |||
13:53
perlpilot joined
|
|||
moritz_ | rakudo: say PROCESS.WHAT | 13:53 | |
p6eval | rakudo 7c265d: OUTPUT«Method 'WHAT' not found for non-objectcurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
moritz_ | rakudo: say ( -> $x { $x } !~~ Code) | 13:54 | |
p6eval | rakudo 7c265d: OUTPUT«0» | ||
perlpilot | What's up with feather? My IRC session locked up and I don't get a password prompt when I try to login. | 13:56 | |
moritz_ | perlpilot: XEN troubles since the last hardware upgrade | ||
colomon | feather's down again at the moment, I think -- at least svn up t/spec didn't work for me a second ago | 13:57 | |
pausenclown | how do i tell RT to show me the tickets i am "watching"? | 14:03 | |
masak | jnthn: you're news: habrahabr.ru/company/ontico/blog/89366/ | ||
jnthn | Scandalous! | 14:04 | |
masak | Джонатан Вортингтон :) | ||
jnthn | Yeah, that's certainly me :-) | ||
masak | Mr. Vortington... :P | ||
jnthn | They're a little w-deprived. :-) | 14:05 | |
moritz_ | pausenclown: I'd expect them on the "homepage" | ||
perlpilot | jnthn: That has the kernel of a good AFJ | ||
jnthn | .oO( XEN troubles...the sound of one kernel crashing ) |
14:06 | |
masak | jnthn: it's interesting to try to picture how a cyrillic letter for 'w' would look, if it existed. | ||
perlpilot | the worst thing about feather being down is no perl6.org | 14:08 | |
moritz_ | aye | 14:09 | |
hey, I've got an idea for a new name of the pugs repo | |||
Mu | |||
jnthn | Mostly Useful. :-) | 14:10 | |
moritz_ | :-) | ||
14:13
nihiliad joined
|
|||
jnthn | masak: I'm curious where the shape of ш is derived from. | 14:15 | |
(maps to a "sh" sound...) | 14:16 | ||
Or if that's in any way related to how we got "w"...I'm not particularly convinced though. | |||
masak | jnthn: it's interesting to note that Hebrew has a consonant that looks and sounds much in the same way. | 14:17 | |
ש | |||
dunno if they're related of if it's convergent evolution :) | 14:18 | ||
jnthn | sounds like sh? | ||
masak | yesh. | 14:19 | |
arnsholt | masak: Probably conincidence | ||
snarkyboojum | "The Hebrew letter shin has a W shape; the sounds and histories of the two letters, however, are entirely unrelated—shin represents /ʃ/ or /s/, and developed into the Latin alphabet S." | ||
jnthn | Ah. | 14:20 | |
arnsholt | And, I'm wrong =) | ||
14:21
SmokeMachine joined
|
|||
arnsholt | According to Wikipedia, the Glagolitic letter corresponding to the Cyrrilic one is derived from Hebrew Shin =D | 14:21 | |
masak | \o/ | ||
jnthn | Ah, apparently W started out as VV | 14:22 | |
mathw | double-u | ||
snarkyboojum | literally double u :) | ||
perlpilot | There's a reason it's called a ... blah too slow! | ||
mathw | presumably that was before u had been distinguished from v | 14:23 | |
jnthn | en.wikipedia.org/wiki/W offers up some more infos. | 14:24 | |
14:24
payload left
|
|||
mathw | aaah wikipedia | 14:28 | |
jnthn | Wikipedia is the font of all knowledge. [Citation Needed] | 14:29 | |
[particle]1 | you're nuts! N V T S. nuts! | ||
jnthn | masak: Gleaned from that article: "The equivalent representation of the /w/ sound in the Cyrillic alphabet is Ў, a letter unique to the Belarusian language." | 14:33 | |
masak | 'o- | ||
jnthn | That...makes a sort of sense...ish. | ||
masak | \o/ | ||
it makes a lot of sense. | 14:34 | ||
xinming | Is cabal dead? | ||
14:34
lisppaste3 left,
lisppaste3 joined
|
|||
xinming | Here I receives "No route to host" | 14:34 | |
mathw | It makes no sense to me, but I've not studied anything that uses Cyrillic | 14:35 | |
masak | jnthn: it's to у as й is to и. | ||
jnthn | ooh | ||
Yes | |||
masak | it's beautiful. | ||
Belarussian++ | |||
jnthn | Yeah, my brainz were stuck in consonant land. | ||
masak | well, Ў and й have always inhabited the land between consonants and vowels, in a way. | 14:39 | |
oh, and by the way, Esperanto has ŭ, so I guess that's part of why it feels natural for me. :) | 14:40 | ||
14:40
iblechbot left
|
|||
masak | xinming: which 'cabal' are you referring to? | 14:40 | |
xinming | perlcabal.org | 14:41 | |
masak | mayhaps it's on feather an feather is down again? | 14:42 | |
masak is just guessing | |||
14:43
justatheory joined
14:45
uniejo left
|
|||
colomon | pretty sure you're right about that. | 14:45 | |
masak | Church Slavonic also had a ѡ, but it fell into disuse after the 18th century. | 14:48 | |
pausenclown | do i have to pay special attention to moving files using git? like having to use "svn move" or so? | ||
perlpilot | pausenclown: not especially, but it helps :) | 14:49 | |
14:49
masak left
|
|||
[particle]1 | git mv ... | 14:49 | |
pausenclown | tx | 14:50 | |
[particle]1 | although, git usually picks up on git delete x ; mv x y; git add y | ||
jnthn | bbiab, walk in the sun, systemet | ||
perlpilot | jnthn: walking in the sun sounds like a really good idea to me right now too | ||
TimToady | it's raining in sunny california | 14:51 | |
mathw | sunny here in rainy England | ||
although it's not been sunny for most of the day | |||
so I'm not getting my hopes up | |||
we're supposed to get some snow this week | |||
TimToady | well, my bit of it | ||
mathw | But look! It's time for me to go and engage in the preservation of 16th- and 17th-century music! | 14:54 | |
14:54
justatheory left
|
|||
mathw -> ludos muzikon o | 14:55 | ||
moritz_ | rakudo: say <a b>>>.uc | 15:02 | |
p6eval | rakudo 5c9338: OUTPUT«AB» | ||
moritz_ | rakudo: say <a b>».uc | ||
p6eval | rakudo 5c9338: OUTPUT«AB» | ||
moritz_ | that works? since when? | ||
rakudo: my $a = 1; my @b = (1, 2, 3); say ($a <<-<< @b).perl | |||
p6eval | rakudo 5c9338: OUTPUT«[0, -1, -2]» | ||
moritz_ | rakudo: my $a = 1; my @b = (1, 2, 3); say ($a «-« @b).perl | ||
p6eval | rakudo 5c9338: OUTPUT«[0, -1, -2]» | ||
moritz_ | rakudo: say :16<dead_beef.face>; | 15:05 | |
p6eval | rakudo 5c9338: OUTPUT«3735928559.97971» | ||
moritz_ | lue++ | 15:06 | |
rakudo: say :16<1g> | 15:07 | ||
p6eval | rakudo 5c9338: OUTPUT«DON'T PANIC! Invalid character (G)! Please try again :) current instr.: '&radcalc' pc 11974 (src/builtins/Parcel.pir:78)» | ||
moritz_ | rakudo: say :11<1a> | 15:09 | |
p6eval | rakudo 5c9338: OUTPUT«21» | ||
moritz_ | rakudo: say :11<1b> | ||
p6eval | rakudo 5c9338: OUTPUT«DON'T PANIC! Invalid character (B)! Please try again :) current instr.: '&radcalc' pc 11974 (src/builtins/Parcel.pir:78)» | ||
TimToady | rakudo: say :16< deface > | 15:12 | |
p6eval | rakudo 5c9338: OUTPUT«Malformed radix number at line 11, near "< deface >"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
TimToady | hmm | ||
rakudo: say :16(' deface ') | 15:13 | ||
p6eval | rakudo 5c9338: OUTPUT«DON'T PANIC! Invalid character ( )! Please try again :) current instr.: '&radcalc' pc 11974 (src/builtins/Parcel.pir:78)» | ||
TimToady | rakudo: say :16("deface\n") | ||
moritz_ | I guess whitespaces should be allowed? :-) | ||
p6eval | rakudo 5c9338: OUTPUT«DON'T PANIC! Invalid character ()! Please try again :) current instr.: '&radcalc' pc 11974 (src/builtins/Parcel.pir:78)» | ||
TimToady | seems like | ||
15:14
bluescreen left,
nihiliad left,
nihiliad joined
15:15
bluescreen joined
|
|||
TimToady | rakudo: say :16('-2+3i') | 15:15 | |
p6eval | rakudo 5c9338: OUTPUT«DON'T PANIC! Invalid character (-)! Please try again :) current instr.: '&radcalc' pc 11974 (src/builtins/Parcel.pir:78)» | ||
TimToady | rakudo: say :10('-2') | ||
p6eval | rakudo 5c9338: OUTPUT«DON'T PANIC! Invalid character (-)! Please try again :) current instr.: '&radcalc' pc 11974 (src/builtins/Parcel.pir:78)» | ||
moritz_ | std: :10<-2> | ||
TimToady | there's an even bigger deficiency | ||
colomon | is there actually a smiley face in the error message? :) | ||
p6eval | std 30240: OUTPUT«===SORRY!===Malformed radix number at /tmp/lhPDqm5f6W line 1:------> :10<⏏-2> expecting number in radix notationFAILED 00:01 107m» | 15:16 | |
TimToady | not my message--I never smile :( | ||
moritz_ | rakudo: say <1 2 3> »+« <3 2> | 15:17 | |
p6eval | rakudo 5c9338: OUTPUT«Sorry, right side is too short and not dwimmy.current instr.: '&die' pc 17189 (src/builtins/Junction.pir:399)» | ||
TimToady | kaboom I hope | ||
moritz_ | rakudo: say <1 2 3> «+» <3 2> | ||
p6eval | rakudo 5c9338: OUTPUT«445» | ||
moritz_ | so that's both correct, right? | ||
15:17
payload joined
|
|||
moritz_ | rakudo: say <1 2 3> »+» <3 2> # should live | 15:17 | |
p6eval | rakudo 5c9338: OUTPUT«445» | 15:18 | |
moritz_ | rakudo: say <1 2 3> «+« <3 2> # should die | ||
p6eval | rakudo 5c9338: OUTPUT«Sorry, right side is too short and not dwimmy.current instr.: '&die' pc 17189 (src/builtins/Junction.pir:399)» | ||
colomon is very amused that he just got a RESOLVED message for a bug that he reported back in September and then was partially responsible for fixing in March. :) | 15:19 | ||
moritz_ | but is the result of 4, 4, 5 correct in the living example above? | ||
colomon | moritz_: yes | ||
you extend with the last element. | |||
TimToady | well, *how* to extend the faulty dimension is not exactly specced | ||
colomon | what do you mean, "how"? | ||
TimToady | well, duping the last element is not specced behavior | 15:20 | |
moritz_ | that's specced for things ending in *, I think | ||
TimToady | "By default this dwimmery only upgrades whole dimensions, not short lists. | ||
However, any list ending with C<*> can also be arbitrarily extended as if | |||
the last element of the list were arbitrarily replicated C<*> times. But | |||
this happens only on the "dwimmy" side. | |||
moritz_ | so, what should <1 2> «+» <1 2 3> return? | 15:21 | |
TimToady | it has also been argued that you should start a short list over | ||
moritz_ would assume the neutral element of the operation | 15:22 | ||
TimToady | but the current spec would make that an error | ||
moritz_ | so it would return 2, 4, 3 | ||
TimToady | that's another approach | ||
colomon | I remembers a long conversation last year where you argued that replicating the last element was the right thing to do. (I was in favor of neutral element) | ||
moritz_ | rakudo: say (1..10).sort(&rand) | 15:23 | |
colomon | *remember | ||
p6eval | rakudo 5c9338: OUTPUT«Method 'sort' not found for invocant of class 'Range'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
moritz_ | rakudo: say (1..10).Seq.sort(&rand) | ||
p6eval | rakudo 5c9338: ( no output ) | ||
[particle]1 | pick? | ||
colomon | sort(&rand) is pretty evil. | ||
TimToady | rakudo: my @a = 1,2,3; say (@a,*).batch(7) | ||
p6eval | rakudo 5c9338: OUTPUT«Method 'batch' not found for invocant of class 'Parcel'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | we don't have 1, 2, 3, * yet, I've been meaning to look at adding it. | 15:24 | |
.oO(but was too busy shadow walking...) |
|||
TimToady | mostly it comes down to what will be most useful X what expresses something that can't be easily expressed some other way | 15:25 | |
all of these approaches have something to be said for them | |||
moritz_ | rakudo: lives_ok { '1 3' ~~ /(\d+) \s (\d+)/; $range = $0..$1 }; | ||
p6eval | rakudo 5c9338: OUTPUT«Symbol '$range' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 152 (compilers/pct/src/PCT/HLLCompiler.pir:108)» | ||
moritz_ | rakudo: lives_ok { '1 3' ~~ /(\d+) \s (\d+)/; say $0..$1 }; | 15:26 | |
p6eval | rakudo 5c9338: OUTPUT«Could not find non-existent sub &lives_okcurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
colomon | btw, I also went off spec and made the empty list expand with the neutral element. (Not that we actually have the neutral element yet.) | ||
moritz_ | rakudo: use Test; plan 1; lives_ok { '1 3' ~~ /(\d+) \s (\d+)/; say $0..$1 }; | ||
p6eval | rakudo 5c9338: OUTPUT«1..1not ok 1 - # Looks like you failed 1 tests of 1» | ||
colomon | afk # got to drive another car full of stuff to our new city. will backlog when I get there. | ||
TimToady | but current spec really only documents turning <1 2 3> «+» 1 into <1,2,3> »+« (1 xx 3) | ||
moritz_ | rakudo: role Seq {method foo{1}} | 15:27 | |
p6eval | rakudo 5c9338: ( no output ) | ||
15:27
colomon left,
pausenclown left
|
|||
TimToady | generally, if you know the operation, you know the identity element already, and can supply it via 1 xx * or some such | 15:28 | |
I think a better argument can be made for reusing the whole list, but that's just (@list) xx * | |||
[particle]1 | can you specify the identity element as part of the attributes of an op? | 15:29 | |
TimToady | assuming dwimmy can also trim an excessive list, esp an infinite one | ||
that's not how you do it. | |||
you define a multi of the op with one arg | |||
or zero args, rather | 15:31 | ||
rakudo: say [+]() | |||
p6eval | rakudo 5c9338: ( no output ) | ||
TimToady | alpha say [+]() | ||
alpha: say [*]() | |||
p6eval | alpha 30e0ed: OUTPUT«1» | ||
moritz_ | bkeeler: it seems that passing an argument to subrules works. Also interpolating constant strings into regexes works - but the combination (interpolating a string that was provided as an argument to a rule) does not | 15:32 | |
rakudo: grammar Foo { token TOP { <a('b')> }; token a($x) { $x } }; say Foo.parse('b') | 15:33 | ||
p6eval | rakudo 5c9338: OUTPUT«» | ||
moritz_ | rakudo: grammar Foo { token TOP { <a('b')> }; token a($x) { 'b' {say $x } } }; say Foo.parse('b') | ||
p6eval | rakudo 5c9338: OUTPUT«bb» | ||
TimToady | rakudo: grammar Foo { token TOP { <a('b')> }; token a($x) { $OUTER::x } }; say Foo.parse('b') | 15:34 | |
p6eval | rakudo 5c9338: OUTPUT«:: not yet implemented at line 11, near "x } }; say"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
TimToady | uh | ||
15:35
charsbar_ left,
REPLeffect left,
charsbar joined
|
|||
TimToady | anyway, I wonder if the regex has a secret inner scope separate from the method itself | 15:36 | |
they should be the same lexical scope | |||
15:37
juerd joined
|
|||
perlpilot | TimToady: My brain can only handle so many "invisible" scopes. | 15:37 | |
juerd | Grrrrrrr | ||
Feather's really frustrating. | 15:38 | ||
moritz_ | quite understandable | ||
perlpilot | juerd: time to get a new one! ;) | ||
juerd | perlpilot: The hardware is not the problem. | ||
TimToady | well, you could always upgrade to Windows 7... | 15:39 | |
juerd | The last thing it says is "Restarting in 30 seconds" | ||
perlpilot | 30 really long seconds? | ||
juerd | And it doesn't live up to that promise. | ||
perlpilot | you just have to be on the right side of the event horizon for it to seem like 30 seconds to you. | 15:40 | |
TimToady | the last thing it says after what? | ||
jnthn | (I wonder if the regex has a secret inner scope) I am fairly sure it doesn't, from what I remember of the code-gen. | ||
TimToady | after you ran shutdown? | ||
perlpilot: I'm advocating the absence of an invisible scope here... | |||
juerd | TimToady: After the kernel panic stacktrace | ||
moritz_ | rakudo: sub f($x) { say $x }; f(|4) | 15:41 | |
TimToady | ah | ||
p6eval | rakudo 5c9338: OUTPUT«Cannot use prefix:<|> with a Int()current instr.: '&die' pc 17189 (src/builtins/Junction.pir:399)» | ||
juerd | TimToady: Which mentions calls all over the kernel, but they are all storage/blockdevice related | ||
Only we can't downgrade the kernel to the old version because Debian decided that compatibility with older kernels wasn't needed. | |||
(Really, Debian, stop screwing around.) | 15:42 | ||
TimToady | I think |4 should probably work on the principle that anything not otherwise listy can be taken as a list of 1 argument. | ||
rakudo: say 4.kv | 15:43 | ||
p6eval | rakudo 5c9338: OUTPUT«04» | ||
TimToady | like that... | ||
jnthn | TimToady: I can trivially make it do so. | ||
TimToady | it just seems like a better default than dying | ||
jnthn | Well, dying is conservative. :-) | ||
But yes, that default wfm. | 15:44 | ||
TimToady | (same principle for making Complex have a sorting order, even if the mathematicians don't want want the type officially Orderable) | ||
the poor schmuck trying to print out a sorted list of values probably doesn't care to be conservative wrt death | |||
we might want to distinguish Sortable from Orderable somehow | 15:45 | ||
or somehow have the default comparison semantics pragmatically settable | 15:46 | ||
where the default default is make everything "orderable" willy nilly | |||
15:48
REPLeffect joined
|
|||
TimToady | seems like that would be trivial, if the default comparison is = &?LEXORDER or some such | 15:48 | |
15:50
xomas joined
|
|||
TimToady | I suspect we have enough knobs to keep the mathematicians happy while not confusticating the sane people. | 15:50 | |
moritz_ | *cough* sane | ||
TimToady | well, differently sane | 15:51 | |
15:51
lollan left
|
|||
TimToady | .oO(use strict <math>;) |
15:52 | |
[particle]1 | gah. which strict? | 15:53 | |
math is like ebnf | |||
or make. | |||
too many implementations. | |||
moritz_ | akshually mathematicians are often very sloppy about the scoping of their symbols | 15:54 | |
15:54
lichtkind joined
|
|||
TimToady | use Math:ver(2.0):auth<Liebnitz> | 15:54 | |
moritz_: yes, they are; mathematicians rely on the intelligence of their readers more than they reallize, often. | 15:55 | ||
*realize | |||
lichtkind | ah TimToady i didnt fount junction in the perl 6 type table | ||
phenny | lichtkind: 00:50Z <diakopter> tell lichtkind I care only about the beauty of the text-editing box itself (ClearType, Ctrl-scroll to zoom, line-highlight, C#/Perl/JS syntax highlighting), I use it in full-screen mode so the rest of the UI is invisible to me. | ||
TimToady | Junctions are derived from Mu but not from Any | ||
lichtkind | TimToady: but dont have their own type? | 15:56 | |
TimToady | sure they do | ||
lichtkind | TimToady: but i didnt found that one in s02 | ||
diakopter: then should kephra be eqivalent to np++ :) | 15:57 | ||
moritz_ | lichtkind: S02:576 "The C<junction> type is considered a native type because its internal..." | ||
TimToady | I think S02 lists it as 'junction' on the assumption it's naitve | ||
*native | |||
jnthn | :-/ | ||
jnthn tries to remember why it's native. | 15:58 | ||
TimToady | The C<junction> type is considered a native type because its internal | ||
representation is fixed, and you may not usefully derive from it | |||
because the intent of junctions is to autothread any method calls | |||
on them. | |||
jnthn | Well, s/J/j/ is easy enough in a sense... | 15:59 | |
TimToady | but everyone keeps writing it uppercase :) | ||
jnthn | Well yeah | ||
moritz_ | jnthn: and then we support (at least one) native type :-) | ||
jnthn | I much, much prefer it uppercase... | ||
It feels odd to write Mu and Any but then not Junction. | |||
lichtkind | i think i need a whil e to understand this | 16:00 | |
jnthn | int/num etc feel native, junctions kinda...fit my intuitive sense of @native@ a bit less. | ||
s/@/"/ | |||
16:00
payload left
|
|||
moritz_ | std: 1 ?? 1,2 !! 3,4 | 16:00 | |
p6eval | std 30240: OUTPUT«===SORRY!===Precedence too loose within ??!!; use ??()!! instead at /tmp/QZESqbh35Y line 1:------> 1 ?? 1⏏,2 !! 3,4 expecting an infix operator with precedence tighter than item assignmentFAILED 00:01 108m» | ||
moritz_ | rakduo: 1 ?? 1,2 !! 3,4 | ||
TimToady | I keep wondering if there's an Each type that autothreads like junctions, but otherwise behaves like a map | 16:01 | |
jnthn | Serial/ordered semantics? | ||
moritz_ | TimToady: with some method (or other possiblilty) to extract the values/eigenstates? | ||
TimToady | eigenstates is all you get from it | 16:02 | |
it's not for logic | |||
moritz_ | so... it flattens in list context? | ||
TimToady | yes | ||
had a use case for it a week or two, which I've forgotten... | 16:03 | ||
lichtkind | moritz_: i still have a mojor review of the book in my queue i just was not satisfied with my own cpmplaines after twice reading so you get mail later | ||
TimToady | *ago | ||
lichtkind | s/mojor/major | ||
moritz_ | lichtkind: ok | 16:04 | |
jnthn | TimToady: each(@foo).say iirc | ||
TimToady | ah, that were it | 16:05 | |
jnthn | To try and nip the @foo>>.say meme in the bud. | ||
TimToady | or more likely, @foo.each.say | 16:06 | |
jnthn | yes | ||
TimToady | but notice it's lower case :P | ||
jnthn | :-P | ||
TimToady | course, so are 'all', 'any', etch | 16:07 | |
jnthn | Yeah | ||
TimToady | *. | ||
jnthn | I had been seeing each as more along the lines of all/any than a coercion. | ||
TimToady | well, in this case, it's really the same as Each(), I suspect | ||
but I'm okay with having both | |||
jnthn | If Each is gonna be uppercase, I'd posit that Junction maybe wants to be too. Or boht lower. | 16:08 | |
*both | |||
TimToady | well, I'm really fine with Junctions, since the lowercase doesn't really seem to work for people so far | 16:09 | |
it's not like we *decide* whether something behaves natively based on the case of the type... | 16:10 | ||
16:10
justatheory joined
|
|||
moritz_ | rakudo: module Foo { say (1,2,3).map: { $_ } } | 16:10 | |
p6eval | rakudo 5c9338: OUTPUT«123» | ||
16:11
justatheory left
|
|||
TimToady | and the exoticness of junctions is already guaranteed elsewise :) | 16:11 | |
16:12
pausenclown joined
|
|||
moritz_ | rakudo: my Bool $t; $t = Bool::True; print $t.succ | 16:13 | |
p6eval | rakudo 5c9338: OUTPUT«1» | ||
16:14
REPLeffect left
|
|||
moritz_ | rakudo: constant $x = 1; $x += 2; say $x | 16:14 | |
p6eval | rakudo 5c9338: OUTPUT«Symbol '$x' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 152 (compilers/pct/src/PCT/HLLCompiler.pir:108)» | ||
moritz_ | rakudo: class A {}; A::B.parse("") | 16:20 | |
p6eval | rakudo 5c9338: OUTPUT«Null PMC access in invoke()current instr.: '_block14' pc 29 (EVAL_1:0)» | 16:21 | |
lichtkind | pausenclown: hai | 16:24 | |
pausenclown | hi | ||
the synopses are offline =( | 16:25 | ||
16:25
hercynium joined
|
|||
perlpilot | pausenclown: that's why haven't your own copy via svn (or git-svn) is probably wise :) | 16:26 | |
TimToady | 'course, you can't get one right now for the same reason... | 16:27 | |
perlpilot | chance favors the prepared mind | ||
:-) | 16:28 | ||
TimToady | preparation favors the chance mind... | ||
[particle]1 | if it's git, somebody must have a repository that can be cloned... | 16:30 | |
moritz_ | I have a git-svn clone | ||
can upload to github, just a sec... | |||
perlpilot | moritz++ | 16:31 | |
moritz_ | uploading... takes some time | 16:34 | |
perlpilot | moritz_: you uploaded the whole pugs repo or just the docs? | ||
moritz_ | perlpilot: the whole | 16:35 | |
perlpilot | ah, that would take a qhile | ||
er, while | |||
16:36
astrojp left,
bluescreen left
16:37
mariano__ joined
16:39
synth joined
16:48
perlpilot is now known as PerlJam
|
|||
PerlJam | pausenclown: you could always get a copy from google's cache as well | 16:49 | |
moritz_ | PerlJam: github.com/moritz/Mu copy of the pugs repo | 17:02 | |
PerlJam | heh! You just wanted an excuse to use Mu like that didn't you? | ||
moritz_ | it's just stupid to still call it "pugs repo" | 17:03 | |
since pugs has left the repo | |||
PerlJam | and alot shorter than random-collection-of-perl6-related-stuff | ||
PerlJam giggles a little bit at the name of an article author -- Hari J. Krishna | 17:06 | ||
TimToady | we could publish that we changed the name of the pugs repo to Mu on April 1st :) | 17:08 | |
17:10
dakkar left
|
|||
jnthn | An inverse April Fools. The fools are the ones who don't believe it. :-) | 17:14 | |
diakopter | _finally_ | 17:17 | |
diakopter shakes his head, eyes closed. | |||
if only there were a smiley for that. | |||
17:20
arthur-_ left
17:21
Chillance joined
17:26
RandalSchwartz joined
|
|||
RandalSchwartz | greetings, fellow earthlings :) | 17:26 | |
# SRCSSH=merlyn@blue.stonehenge.com | |||
if I had to summarize Perl6 status in three sentences, where would I get -those sentences? | |||
17:28
mberends joined
|
|||
RandalSchwartz | hmm. crickets. :) | 17:28 | |
diakopter | well | ||
PerlJam | RandalSchwartz: patience. | ||
diakopter | I'd point you to perl6.org/status but it appears to be down atm | ||
PerlJam | diakopter: yeah, feather is having fits. | 17:29 | |
RandalSchwartz | apparently, $client has decided to have me host a brownbag today on the past and future of Perl | ||
so I thought I should probably get the latest info | |||
17:30
CokeCokeCokeCoke joined
|
|||
CokeCokeCokeCoke | RandalSchwartz: It's not really a summary, but I'd check out pmicahud's Rakudo * blogpost for material. | 17:31 | |
RandalSchwartz | yeah, looking at that now | ||
PerlJam | RandalSchwartz: there is rakudo.org/status too, but that's more about rakudo than Perl 6 in general | ||
diakopter | Large parts of the design are solidifying, but large parts remain slushy. Those parts that are more solidified mostly correspond to the portions explored by the implementations. The Rakudo implementation has the most attention at the moment, and a "usable" (but categorically not *stable*) release in April looms. | 17:32 | |
PerlJam | diakopter++ :) | ||
diakopter | There are many large parts of the design. | ||
:) | |||
TimToady | won't be in April now | 17:33 | |
diakopter | oh | ||
TimToady | given pm's travails | ||
CokeCokeCokeCoke | TimToady: what if we buy jonathan lots of red bull? | ||
TimToady | but still aiming at Q2 | ||
RandalSchwartz | Q2 includes june :) | ||
jnthn runs on beer, not red bull! | |||
PerlJam | diakopter: I especially like how you said "solidifying". We could have an "event" that would up the temperature and some parts of the design will liquify again. | ||
TimToady | anyway, at some point Rakudo * comes out, targeted for Early Adopters | 17:34 | |
CokeCokeCokeCoke | jnthn: Done and Done. | ||
RandalSchwartz | I should just have you type on the screen, TimToady :) | ||
TimToady | who will, we hope, close the remaining design issues by actually trying to use it. | ||
PerlJam | Coke: are you sending lots of beer to jnthn as we speak? | ||
RandalSchwartz | but that's a good summary... I'll put that in | 17:35 | |
TimToady | we'd like platform stability in Rakudo *, in the sense that it's not crashing left and right | 17:36 | |
but we're not promising any kind of backward compatibility until 6.0.0 comes out | |||
CokeCokeCokeCoke | hey, parrot folks fixed a memory braino in parrot yesterday. anyone tried building rakudo with it? | ||
17:36
justatheory joined
|
|||
TimToady | early adopters can freeze a particular version if they need to | 17:37 | |
jnthn | CokeCokeCokeCoke: I believe sorear++ did and reported success and improvement. | ||
CokeCokeCokeCoke: I'll try myself later tonight, and bump PARROT_REVISION provided all is well. | |||
PerlJam builds a newer parrot and trys rakudo on it. | |||
TimToady | RandalSchwartz: is $client in PDT (or even PDX? :) | 17:38 | |
17:38
dalek joined
|
|||
RandalSchwartz | PDT yes. PDX no. LAX would be close | 17:38 | |
TimToady | when does your brownbag start? | 17:39 | |
RandalSchwartz | I landed a full-time contract here. | ||
TimToady | I can be around the channel then if you like. | ||
RandalSchwartz | I don't know. I didn't get the email. :) | ||
so I'm waiting for my boss to remind me when we start. | |||
probably noon | |||
yeah, I think it's mostly gonna be handwaving though, no screen | |||
just me talking about the early days | 17:40 | ||
but I wanted to finish up with a bit of futures | |||
TimToady | well, if they ask a Q you want to refer to me, I should be available | ||
assuming you have connectivity yourself | |||
RandalSchwartz | I guess if Rakudo * is coming out soon, I'll have to start writing Llama 6 any day now | ||
yeah | |||
PerlJam | RandalSchwartz: who is the audience? Are they youngsters? oldsters? In between? A mix? | ||
RandalSchwartz | employees of $client | 17:41 | |
CokeCokeCokeCoke | PerlJam: to you, they're all youngsters. :P | ||
RandalSchwartz | most of them younger than me now | ||
RandalSchwartz is old | |||
PerlJam | CokeCokeCokeCoke: :-PPPP | ||
17:41
mssm joined
|
|||
RandalSchwartz | I turned 0x30 this year. :) | 17:41 | |
CokeCokeCokeCoke | HA! | ||
PerlJam | I'm wondering if any of the younger generation programmers are getting some perl exposure. | 17:42 | |
17:42
pausenclown left
|
|||
TimToady | I will be :9<70> this year | 17:42 | |
rakudo: say :9<70> | 17:43 | ||
PerlJam | I had two of my student workers apply at USAA (java shop) and both of them said their experience using perl here helped on the interview. | ||
p6eval | rakudo 5c9338: OUTPUT«63» | ||
TimToady | er, no | ||
17:43
Juerd_ joined
|
|||
PerlJam | heh | 17:43 | |
TimToady | rakudo: say :9<60> | ||
p6eval | rakudo 5c9338: OUTPUT«54» | ||
Juerd_ | Feather's now at a 2.6.31 kernel that someone gave to me. | ||
TimToady | that's not right either... | ||
Juerd_ | That is, feather0 | ||
17:44
juerd left
|
|||
TimToady | rakudo: say :8<70> # should learn math one of these days | 17:44 | |
p6eval | rakudo 5c9338: OUTPUT«56» | ||
TimToady | that's more like... | ||
[particle]1 | you need to practice your alternate base times tables | ||
TimToady | no, I should learn my times tables | ||
the mistakes were in decimal :) | 17:45 | ||
CokeCokeCokeCoke | p6eval rakudo: say :16<30> | ||
p6eval | CokeCokeCokeCoke: rakudo 5c9338: OUTPUT«48» | ||
CokeCokeCokeCoke | ... missed a /msg there. | 17:46 | |
diakopter | weird | ||
blah rakudo: say :16<30> | |||
rakudo rakudo: say :16<30> | |||
p6eval p6eval: say :16<30> | 17:47 | ||
p6eval | diakopter: : $code | ||
TimToady | back in two bits & | ||
arnsholt | nqp: class A { has $.val; } | ||
p6eval | nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1current instr.: 'parrot;Regex;Cursor;FAILGOAL' pc 1664 (src/Regex/Cursor-builtins.pir:179)» | ||
17:48
iblechbot joined
|
|||
diakopter | p6eval p6eval: bleh | 17:48 | |
p6eval | diakopter: : $code | ||
diakopter | p6eval p6eval: $code | 17:49 | |
p6eval | diakopter: : $code | ||
diakopter | p6eval : $code | ||
p6eval rakudo $code | |||
jnthn | arnsholt: nqp only has DIY accessors :-) | ||
arnsholt | Aha. Also, looks like it doesn't like class with a block | 17:50 | |
Or not. I must have done something else wrong | |||
jnthn | nqp: class A { has $!val; } | 17:51 | |
p6eval | nqp: ( no output ) | ||
arnsholt | I thought I'd tried that, but apparently not =) | ||
17:53
mberends left
18:06
mberends joined
18:09
colomon joined
18:10
Juerd_ is now known as Juerd
18:16
nihiliad left
|
|||
PerlJam | perl6.org is still down? | 18:17 | |
TimToady | nod | ||
18:18
ignacio_ left
|
|||
colomon | is it? | 18:19 | |
pugs repo svn is back | |||
as is perlcabal. | 18:20 | ||
TimToady | yes, seems to be back now | 18:21 | |
colomon | I see what you mean about the hyper ops now: "However, any list ending with * can also be arbitrarily extended as if the last element of the list were arbitrarily replicated * times. But this happens only on the "dwimmy" side." | ||
But isn't a list ending with * supposed to be an infinite list repeating the last element before the *? | 18:22 | ||
TimToady | yes | ||
it's not the same as xx * though | |||
since @foo,* replacates the end of @foo | 18:23 | ||
*lic | |||
colomon | right, whereas xx * is looping through the entire list? | ||
rakudo: ((1, 2, 3) xx 3).eager.say | 18:24 | ||
p6eval | rakudo 5c9338: OUTPUT«123123123» | ||
colomon | rakudo: ((1, 2, 3) xx *).eager.say | ||
whoops | |||
p6eval | rakudo 5c9338: ( no output ) | ||
colomon | rakudo: ((1, 2, 3) xx *).batch(10).say | ||
arnsholt is amused by the default blogs.perl.org About blurb | |||
p6eval | rakudo 5c9338: ( no output ) | ||
TimToady | you'd have to write (@foo[0 .. *-2], @foo[*-1] xx *) to get the same effect | ||
colomon | TimToady: what worries me about that is it seems as if the result is infinite in general, but just "big enough" in hyper ops. | 18:25 | |
TimToady | only on the dwimmy side | 18:26 | |
18:26
frettled sets mode: +o colomon
|
|||
TimToady | and * doesn't mean "infinite", it means "whatever" | 18:26 | |
frettled | Whatever you say. :) | 18:27 | |
TimToady | I don't have infinite patience... | ||
colomon | you have whatever patience? ;) | 18:28 | |
frettled | *:-) | ||
RandalSchwartz | a doctor would wish for infinite patients | ||
TimToady | no, I have whatever patients. | ||
frettled | RandalSchwartz: at least infinitely patient patients | 18:29 | |
colomon | here's my issue. I have been assuming that (@a, *) would generate a new Iterator that iterated @a and then just kept repeating the last element. | ||
but that clashes really badly with how the hyper ops are spec'd to use the same construct. | 18:30 | ||
TimToady | how so? | ||
frettled | RandalSchwartz: are you researching Rakudo * for an upcoming FLOSS weekly? ;) | ||
RandalSchwartz | nope. I have a brown bag to deliver today | 18:31 | |
floss is tomorrow :) | |||
colomon | well, the hyper op version needs to know how many elements are in @a rather than how many are in @a, * | ||
basically, it amounts to one has to be lazy and the other has to be eager. | |||
TimToady | it doesn't need to know that on the dwimmy side, since it gets the shape from the other side | ||
colomon | maybe I've misunderstood something. I thought the dwimmy side just upgraded the list if needed. It can't shorten it, can it? | 18:32 | |
TimToady | well, maybe it can | 18:33 | |
colomon | hmmm... | ||
TimToady | though we need some way to tell if an iterator knows it's finite, in any case | ||
there are other places we rely on that info, I seem to recall | 18:34 | ||
18:34
mberends left,
ignacio_ joined,
mberends joined
|
|||
TimToady | mostly eager has to know that | 18:35 | |
bkeeler | Morning, #p6 | 18:36 | |
frettled | :) Just when I was about to keel over | 18:37 | |
TimToady | but I think rewriting @foo,* as @foo,{$^last}...* is probably | ||
fine | |||
colomon | ack, I foresee asking an iterator if it knows it's finite maybe be a bit of a pain. or at least, a problem for gather / take iterators. | ||
TimToady | gather/take doesn't consider itself finite unless declared, I suspect | 18:38 | |
otherwise you're talking Halting Problem | |||
PerlJam | and we're saving that one for Perl 7 | 18:39 | |
frettled | :) | ||
18:39
frettled sets mode: +o PerlJam
|
|||
RandalSchwartz | perl7 solves the halting problem. I'll use that in my talk | 18:39 | |
colomon | TimToady: my point precisely. :) | ||
TimToady | we'll solve half of it in Perl 7, at least | ||
RandalSchwartz | presuming my talk is still happening... I haven't been informed *where* yet | ||
frettled | and the Travelling Salesman problem | ||
RandalSchwartz | the travelling salesman and the farmer's daughter problem | ||
frettled | heh :D | ||
18:40
Juerd left
|
|||
TimToady | we might only be able to solve half of that problem too... | 18:40 | |
it's a bad sign when Juerd drops off... | 18:41 | ||
18:41
dalek left
|
|||
TimToady | well, svn is still there | 18:41 | |
18:42
dalek joined
18:50
jaldhar left
18:54
jaldhar joined
18:56
justatheory left
19:00
envi^home left,
lichtkind left
|
|||
mberends has just thought of an evil workaround for proto to install Parrot and Rakudo into "C:Documents and Settings" tree: just use "C:DOCUME~1" instead! | 19:02 | ||
phenny | mberends: 11:36Z <masak> tell mberends I'll be around quite often; will be happy to brainstorm proto with you. | ||
19:02
nihiliad joined
19:07
justatheory joined
19:08
jaldhar left
|
|||
jnthn | mberends: What breaks? | 19:10 | |
That probably works though...most of the time. | 19:11 | ||
mberends | jnthn: parrot builds ok in C:\Documents and Settings\Martin\.perl6\parrot, but "make install" creates a "C:\Documents" and dumps some of the binaries there :/ | ||
moritz_ | mberends: which 'make install'? parrots? | 19:12 | |
mberends | yes | ||
jnthn | Oops. | ||
moritz_ | mberends: did you submit a bug report? | ||
jnthn | mberends: May be good...what moritz_ said. :-) | ||
mberends | it's already known. trac.parrot.org/parrot/ticket/930 | ||
CokeCokeCokeCoke | bumping it up on my priority list... | 19:14 | |
mberends | tweaking the parrot Makefile with copious extra " " around directories does not fix it | ||
19:15
alester joined
|
|||
mberends | gotta try that evil C:\DOCUME~1 trick now ;) | 19:16 | |
CokeCokeCokeCoke | mberends: some tool is probably pulling the dir out of the config and using it unprotected. | ||
mberends | CokeCokeCokeCoke: yes, I think it's tools/dev/install_files.pl | 19:17 | |
19:18
nihiliad left
19:19
nihiliad joined
|
|||
moritz_ | oh wow | 19:19 | |
it doesn't even use Getopt::Long | 19:20 | ||
CokeCokeCokeCoke | ... embarassing. | 19:23 | |
moritz_ | hurm, tools/dev/install_files.pl | 19:25 | |
looks fine to me wrt whitespace in file names | |||
if called correctly | |||
but | 19:26 | ||
it's called as | |||
$(PERL) tools/dev/install_files.pl \ | |||
--buildprefix=$(BUILDPREFIX) \ | |||
etc | |||
so $(BUILDPREFIX) is not escaped | |||
mberends | the 'install-bin' target in Parrot's configured Makefile might need quotes to be added around the options passed to tools/dev/install_files.pl | ||
moritz_ | yes, that's where I am right now | 19:27 | |
CokeCokeCokeCoke | I'd be happy with a patch that quoted things. I don't think we have a platform on which double quotes around a command line arg are bad. | ||
mberends | moritz_: starting in Makefile:3714 but your line number may differ | 19:28 | |
moritz_ | mberends: config/gen/makefiles/root.in line 2410 | ||
CokeCokeCokeCoke | (line numbers in config/gen/makefiles/root.in should be consis.... right.) | ||
moritz_ | CokeCokeCokeCoke: should @PKGCONFIG_DIR@ also be quoted? | 19:29 | |
19:32
mberends left
|
|||
CokeCokeCokeCoke | Seems like pretty much any path shoudl be. | 19:33 | |
19:33
mberends joined
|
|||
moritz_ | I just don't know which tool translates the @\w+@ variables | 19:33 | |
lisppaste3 | moritz_ pasted "parrot Makefile patch for mberends++ to test" at paste.lisp.org/display/97092 | 19:34 | |
mberends tries | |||
moritz_ | mberends: you'll need to reconfigure parrot, obviously | 19:35 | |
mberends | yes, going to do that soon... | ||
CokeCokeCokeCoke | moritz_: configure. | 19:36 | |
the gen::makefiles step in configure does all that substitution. | |||
mberends | perl Configure.pl --prefix="C:\Documents and Settings etc etc | 19:37 | |
19:37
riffraff left
|
|||
moritz_ | CokeCokeCokeCoke: ok, that doesn't seem to care if it's inside quotes or not | 19:42 | |
19:46
SmokeMachine left
19:50
clintongormley left
19:52
mssm left
|
|||
mberends | moritz_: make and make test worked, but make install again created a new C:\Documents directory :( | 19:53 | |
moritz_ | mberends: :( | 19:54 | |
mberends: do you haave a log that shows the call install_files.pl? | 19:55 | ||
'make install' should have that very close to the beginning | |||
mberends | but also a "C:\Documents and Settings\Martin\.perl6\parrot_install" ! containing include lib and share subdirs :) | ||
moritz_ | so only parts go wrong | 19:56 | |
mberends | yes, it's a step in the right direction. no bin directory yet... | 19:57 | |
19:58
avuserow left
|
|||
mberends | C:\strawberry\perl\bin\perl.exe tools/dev/install_files.pl \ | 19:58 | |
--buildprefix="" \ | |||
--prefix="C:\Documents and Settings\Martin\.perl6\parrot_install" \ | |||
--exec-prefix="C:\Documents and Settings\Martin\.perl6\parrot_install" \ | |||
--bindir="" \ | |||
--libdir="C:\Documents and Settings\Martin\.perl6\parrot_install/lib" \ | |||
--includedir="C:\Documents and Settings\Martin\.perl6\parrot_install/include | |||
" \ | |||
--destdir="" \ | |||
--docdir="C:\Documents and Settings\Martin\.perl6\parrot_install/share/doc" | |||
\ | |||
--versiondir="/2.2.0" \ | |||
MANIFEST MANIFEST.generated | 19:59 | ||
Installing ... | |||
hope you don't mind the little flood... | |||
20:00
avuserow joined
|
|||
moritz_ also has a line --pkgconfigdir= in there | 20:00 | ||
mberends | this parrot may be a few days older | 20:01 | |
moritz_ | I don't think it matters much | ||
I'm just curious about differences | |||
mberends | oh, this was the 2.2.0 tarball | 20:02 | |
proto is aiming to deploy the monthly Parrot and Rakudo releases | 20:04 | ||
arnsholt | Curse my perfectionism! | 20:05 | |
moritz_ curses arnsholt's perfectionism | 20:06 | ||
arnsholt | Can't even type out a basic blog post without obsessing >.< | ||
jnthn | arnsholt: srsly, *&!% your perfectionism! | ||
;-) | |||
.oO( there. I did something useful today. ) |
20:07 | ||
arnsholt | Couldn't agree more! | ||
20:08
masak joined
|
|||
masak | ahoy, #perl6! | 20:08 | |
arnsholt | Ahoy, masak! | ||
mberends | ahoy masak! | ||
RandalSchwartz | the talk went well, except for when they said "so when's perl6 coming out?" | 20:09 | |
arnsholt | What, they hadn't heard? | ||
mberends | RandalSchwartz: you said Christmas, right? | 20:10 | |
arnsholt | I thought everybody knew it's coming out for christmas ^^ | ||
jnthn | lolitsmasak! | ||
RandalSchwartz | somebody even asked "but what if Larry gets hit by a bus" | ||
so I got to describe @Larry :) | |||
masak | lolitsrandalschwartz! | ||
PerlJam | RandalSchwartz: But what if @Larry are all riding in a bus and it explodes if it drops below 50mph? | 20:11 | |
cognominal | Whatever @Larry | ||
PerlJam | :) | ||
masak | the more time I spend with Perl 6, the less I understand what 'Perl 6 coming out' would actually mean. | ||
I've been using the thing since 2005, and not much would change for me if we passed some imaginary 'release' date. | 20:12 | ||
sjohnson | yo dudes | ||
masak | sjohnson! | ||
PerlJam | masak: When's Perl 5 coming out? :) | ||
masak | PerlJam: yeah. give me an official Perl 5 release, man! | ||
sjohnson | hi :) | ||
masak | none of this preliminary stuff. | 20:13 | |
moritz_ | actually there's one coming up | ||
PerlJam | yeah 5.12RC1 is out and about | ||
moritz_ | there were RC{0,1} for 5.12 these past days | ||
PerlJam | But I don't think that a release of Perl 5.12 means much more than a release of Rakudo except that Perl 5 has been around much longer | 20:14 | |
moritz_ | PerlJam: it's what the distributors will pick up for their next release | ||
masak | one of mst's last memes is that "it's like comparing a 20-year old with a fetus" | 20:15 | |
PerlJam | mst++ | ||
jnthn | Seems with latest Parrot, we build in 250MB on my machine. | ||
moritz_ | otoh there are distributors who do ship rakudo | ||
mberends | masak: when can I run a Perl 6 implementation of my fairly trivial Perl 5 web client scripts, fairly trivial database client scripts? | ||
jnthn | That's quite an improvement from > 1GB not so long back. :-) | ||
moritz_ | jnthn: aye, chromatic++ found some fuckups in string pool allocations, or so | 20:16 | |
jnthn | Epic fuckups! | ||
moritz_ | r45315 | ||
masak | mberends: now, that's a meaningful way to ask it. I like that. | ||
jnthn | chromatic++ for finding them. | ||
masak | mberends: and the answer is, of course, that we're working very hard on getting there. unless we're there already, and none of us noticed. :P | ||
sbp | mberends: 6.1 | ||
RandalSchwartz | when the perl6 cpan has more than 10 submissions a day. :) | 20:17 | |
then I'll know perl6 is "out" | |||
sbp | actually that would be interesting | ||
jnthn | moritz_: The bad news is that it seems rather slower to build. :-/ | 20:18 | |
PerlJam | RandalSchwartz: Perl 6 will just co-opt the existing CPAN. | ||
sbp | model the language's current version number based on the behavioural characteristics of people using it | ||
moritz_ | jnthn: aye | ||
20:18
mariano__ left
|
|||
sbp | 6.numberofdownloads.numberofperl6cpanpackages.etc. | 20:18 | |
jnthn | moritz_: Like, painfully slower... :-| | 20:19 | |
jnthn wonders whether to bump or not. | |||
I'm guessing it's not the string handling fix that's made things slower... | |||
moritz_ | mberends: which compiler do you use on windows? msvc? | 20:20 | |
mberends | moritz_: the gcc that comes with Strawberry 5.10.1 | ||
moritz_ | jnthn: with newest parrot it takes about 15min to compile rakudo here, and also S05-mass/rx.t is the last test file to finish | 20:22 | |
so something made parsing horribly slow | |||
jnthn | :-/ | ||
I'm not going to bump. | |||
Otherwise I'll get nothing done. | |||
moritz_ | at least that's my impression | ||
jnthn | Yes, I noted that grammar.pm took a *lot* longer to compile than actions.pm. | ||
mberends | jnthn: +1 to bump if it passes all spectests. a build time of less than infinity is a speedup for a 1GB RAM machine. Oh, I'm out on my own there... | 20:23 | |
-1 to bump then, I just have to get more RAM | |||
jnthn | mberends: I'm looking at 2-3 times longer to build here by the looks of it. | 20:24 | |
mberends | then again, how long can we wait and *not* bump? | ||
jnthn | mberends: Well, maybe we can wait for a couple of hours while I try and write and test some patches. :-) | 20:25 | |
mberends | sure, +1 to that | ||
jnthn | Maybe good to file a Parrot ticket. | 20:26 | |
mberends will bump the eePC Ubuntu installation locally and see how it fares, while wrestling with proto on WinXP | 20:27 | ||
masak | mberends: btw, I'm here if you want to talk aobut proto some. | 20:28 | |
CokeCokeCokeCoke | do you have 2 parrot revisions for bisecting the speed issue? | ||
moritz_ | CokeCokeCokeCoke: r45178 good, r45315 bad | ||
arnsholt | There. I even managed to publish it | 20:29 | |
mberends | masak: good idea. Data structures first. The S11-modules implementation will make new demands on the projects.state database, probably projects.list as well. | 20:30 | |
masak | oh, so proto is going the S11 route? nice! | 20:31 | |
mberends | yes! | ||
masak | time to start looking for a less throwaway name! :) | ||
mberends | heh, the thought is beginning to stir.. | ||
20:31
SmokeMachine joined
20:33
mariano__ joined
|
|||
jnthn | masak: "Austria" :-) | 20:33 | |
masak | "because November wasn't confusing enough for people..." :P | ||
"We named it after the country whose public uprising the Novel Peace Price committee mistakenly thought it prevented." | 20:34 | ||
s/Novel/Nobel/ | |||
PerlJam | "newp" | 20:35 | |
masak | moritz_: seems I'm getting a lot of RESOLVED mails from RT today. kudos! | 20:36 | |
moritz_: I owe you a beer :) | |||
colomon | \o/ | 20:39 | |
20:40
payload joined
|
|||
masak | this meme keeps popping up. twitter.com/timdorr/status/11323472253 | 20:43 | |
I'm not sure replying to it will improve anything. it's basically flamebait. | 20:44 | ||
still, maybe someone here has some ideas? | |||
20:47
TiMBuS joined
|
|||
colomon | it's like the perfect flamebait... | 20:47 | |
moritz_ | Perl 6 - actively working to disprove this meme | ||
RandalSchwartz | perl 6 - call us the memebuster! | 20:48 | |
masak | "hello, this is Perl 6 calling. alive and kicking :)" | 20:49 | |
"is there anything particular you dislike about our efforts?" | |||
moritz_ | don't | ||
masak | I won't. | ||
moritz_ | that's just waste of time | 20:50 | |
mberends | masak: there are probably enough decent v6 counterexamples to dismiss the allegation, but responding to the bait, even as we are doing now, is wasting more of our time than his | ||
masak | feeding the flames. | ||
ok, I'll stop. | |||
this one from @uasi is much more relevant, and could perhaps be turned into an RT ticket: twitter.com/uasi/status/11247932654 | 20:52 | ||
rakudo: say ("some file" ~~ :d).WHAT | |||
colomon | Hmmm? I don't understand that one. | ||
p6eval | rakudo 5c9338: OUTPUT«Bool()» | ||
masak | rakudo: say ("some file" ~~ :d).perl | ||
p6eval | rakudo 5c9338: OUTPUT«Bool::False» | ||
masak | hm. seems to work. | ||
colomon | alpha: say ("some file" ~~ :d).perl | 20:53 | |
p6eval | alpha 30e0ed: OUTPUT«Bool::False» | ||
arnsholt can haz choclit | 20:54 | ||
nom nom | |||
moritz_ | rakudo builds and spectests on parrot r45314 in 20.5min | 20:56 | |
now I'll try again on 45315 | |||
jnthn | moritz_++ | 20:57 | |
mberends | masak: if you bypass proto's bootstrap code, and continue to its Perl 6 part, we have to design how the command line specifies :auth and :ver nameparts. line 29 etc in github.com/masak/proto/blob/master/...staller.pm | ||
masak looks | 20:58 | ||
what's the simplest thing that could possibly work? | 20:59 | ||
mberends | currently it's just ./proto install druid | ||
masak | './proto install druid :ver<0.1> :auth<masak>', maybe | ||
with all additional flags optional if no ambiguity occurs. | |||
(and defaulting to latest if there's no :ver option) | 21:00 | ||
would that work? | |||
am I silly in wanting the colon in the options? should we go with a dash, or two dashes, instead? | |||
maybe people will write things as one argument and expect it to work? | 21:01 | ||
mberends | masak: are you happy to code it? Implementation wins the debate. | ||
masak | if I were to code this, I'd start from tests. | ||
mberends | ah, good idea | ||
moritz_ | well, one could preserve dash options for more environmental options | 21:02 | |
like, where to install the module, what $thing to use etc. | |||
mberends | proto has needed testing for a long time, better to make any kind of start on tests | ||
masak | moritz_: yes. or maybe :ver<4.2> is sugar for '--ver 4.2'... | ||
moritz_ | masak: dwim++ | ||
masak | mberends: I'd like to mock a whole lot of things. | 21:03 | |
it sounds like a pleasant project. | |||
just need to find time for it... | |||
PerlJam | my rakudo build with parrot 45325 has slowly grown to 436 meg and then stayed steady for the last several minutes | ||
arnsholt | masak: Excellent idea. Now that you mention it, all Perl 6 command line apps should do that | ||
mberends | yes, a mock downloader would save lots of time | ||
PerlJam | (still waiting for it to finish to see how long it takes) | ||
masak | arnsholt: while we're at it, let's fix the rest of S19 :P | ||
CokeCokeCokeCoke | it does finish on feather, anyway. closed #1489. | 21:04 | |
PerlJam | compiles on feather is excellent even if it takes forever | ||
21:04
wallberg joined
21:05
ignacio_ left
|
|||
colomon is getting fed up with "maximum recursion depth exceeded" today. | 21:06 | ||
arnsholt | I think you need tail-call optimisation and a Cray =) | 21:07 | |
21:10
wasy is now known as wasy_afk
|
|||
colomon | Pretty sure tail-call and a Cray won't help with infinite recursions... ;) | 21:10 | |
21:11
am0c left
|
|||
moritz_ | class Cool { ...; multi method kv() { @.keys Z=> @.values }; ... } | 21:12 | |
moritz_ likes the look of that | 21:13 | ||
rakudo: say (<a b c> Z=> (1, 2, 3)).perl | |||
p6eval | rakudo 5c9338: OUTPUT«GatherIterator.new()» | ||
moritz_ | rakudo: say (<a b c> Z=> (1, 2, 3)).eager.perl | ||
p6eval | rakudo 5c9338: OUTPUT«("a" => 1, "b" => 2, "c" => 3)» | ||
colomon | \o/ | ||
moritz_ | wow, and it actually works | ||
PerlJam | nice | ||
though that GatherIterator output is annoying :) | 21:14 | ||
moritz_ | aye | ||
colomon | rakudo: say (<a b c> >>=><< (1, 2, 3)).eager.perl | ||
p6eval | rakudo 5c9338: OUTPUT«("a" => 1, "b" => 2, "c" => 3)» | ||
moritz_ | why isn't .perl .eager by default? | ||
colomon | we haven't really figured out what to do with .perl and iterators yet, as far as I know. | ||
moritz_ | until we can serialize closures, assuming .eager seems sensible | 21:15 | |
PerlJam | I agree | ||
21:16
poincare101 joined
|
|||
moritz_ tries to come up with good examples for the R X Z meta operators for the book | 21:17 | ||
PerlJam | 15m just to build rakudo | ||
seemed like forever | |||
poincare101 | is there some kind of to-do list for rakudo? | ||
moritz_ | poincare101: sure, the ROADMAP | 21:18 | |
in docs/ | |||
masak | URLs trump directions: github.com/rakudo/rakudo/blob/maste...cs/ROADMAP | 21:19 | |
:) | |||
poincare101 | thank you :) | 21:20 | |
21:21
riffraff joined
|
|||
PerlJam | poincare101: for a more fine-grained "todo list" you might want to look at the perl6 queue at rt.perl.org | 21:22 | |
colomon | > say (<a b c> Z=> (1, 2, 3)).perl | 21:25 | |
("a" => 1, "b" => 2, "c" => 3) | |||
moritz_ | colomon: sship it! | 21:26 | |
21:26
iblechbot left
|
|||
jnthn | Ah, hmm. | 21:26 | |
regex foo { \d+ } outside of a grammar now just warns. | |||
my and our don't, and seem to install it | |||
Unfortunately, it isn't then found by /<foo>/, however. | |||
> my regex foo { lol }; say 'omglolyay' ~~ /<foo>/ | 21:27 | ||
Method 'foo' not found for invocant of class 'Regex;Cursor' | |||
moritz_ | and the error messag says why, no? | 21:28 | |
arnsholt | Well, the cursor object created probably doesn't have foo in its inheritance hierarchy | ||
moritz_ | arnsholt: that would be my guess too | ||
arnsholt | Which, given my understanding of how these things are implemented, means that <foo> won't work | ||
Hard to say how you could fix that | 21:29 | ||
bkeeler | I think I could fix that | ||
21:30
shamu__ joined,
moritz_ sets mode: +oo arnsholt bkeeler
|
|||
arnsholt | Cool. What's your plan? | 21:30 | |
jnthn isn't sure if/why it should work. | |||
PerlJam | make a global anonymous grammar that regex get installed into if not already in a grammar | ||
jnthn | I'd like it to work though. :-) | 21:31 | |
bkeeler | Question is, would be OK if the lexical or package scoped foo took precedence over a method one? | ||
arnsholt | jnthn: Well, I think S05 says it should work =) | ||
PerlJam | arnsholt: does it? | ||
jnthn | bkeeler: I suspect a method one should win | ||
arnsholt | IIRC | ||
arnsholt goes looking | |||
bkeeler | That would be tricky then | ||
moritz_ says it should work | |||
bkeeler | Well, perhaps not that tricky | 21:32 | |
jnthn | TimToady: Question. my method foo() { ... } - the methods table doesn't have sigils, but should we install it as &foo in the lexpad? | ||
bkeeler | Oooh, I've been oppified! | ||
jnthn | whoz op wiv dat? | ||
bkeeler: I did a slight refactor to share a little more code between regex_def and method_def. | 21:33 | ||
bkeeler | Excellent, thanks | ||
jnthn | (And to add our/my handling into the shared bit.) | ||
There's probably more that could be shared, but it's a step in the right direction, I think. | |||
bkeeler | I failed miserable when I tried to refactor that, but probably some stupid typo or other was to blame | ||
arnsholt | Hmm. Or maybe I was wrong. Can't find it | 21:34 | |
shamu__ | is this a place I can ask a rakudo question? | ||
PerlJam | shamu__: yep | ||
shamu__ | is there a 'portable' version for windows I can run off a flash/portable drive? | 21:35 | |
the strawberry perl portable version really makes a huge difference for me, and I'd like to set up a copy on a portable drive before yapc so I can have it ready if I decide to take Damien's class | 21:36 | ||
and if there isn't one, who could I, uh, gently make a suggestion to? | 21:37 | ||
PerlJam | shamu__: I think, as long as it can find parrot, the rakudo executable will run from anywhere just fine. | ||
shamu__ | oh ok | 21:38 | |
uh, is there a portable parrot? | |||
bkeeler | jnthn: S05 does explicitly mention a <&foo> syntax as a shortcut for <{ foo() }>, perhaps the intention is to be explicit about what you want to call? | ||
jnthn | bkeeler: Ah, interesting. | ||
bkeeler: Well, I've gone ahead and set us up to install as &foo | |||
21:38
RandalSchwartz left
|
|||
jnthn | So that may just work. | 21:39 | |
spectesting now. | |||
PerlJam | shamu__: do a git clone of rakudo to your portable drive, then execute "perl Configure.pl --gen-parrot && make" | ||
bkeeler | jnthn: Actually, that syntax calls the sub and interpolates the result | ||
jnthn | bkeeler: oh. | ||
bkeeler | jnthn: Hmmm | ||
PerlJam | shamu__: it should build both parrot and rakudo and make a parrot_install dir for rakudo to use | ||
jnthn | That probably won't do what we want here then. | 21:40 | |
bkeeler | jnthn: There's always <{ &foo }> | ||
21:40
mariano__ left
|
|||
jnthn | bkeeler: Does that work in Rakudo now? | 21:40 | |
bkeeler | jnthn: once my patch (or it's eventual pm-approved successor) is applied | ||
jnthn | OK | ||
bkeeler | jnthn: Doesn't yet | ||
shamu__ | PerlJam -- thanks a bunch! I'll save that off and see if I can get it to work under windows. | 21:43 | |
PerlJam | shamu__: caveat lector--I don't regularly (ever :) use parrot/rakudo on windows | ||
shamu__ | thanks | 21:44 | |
I'd tend not to, but I find myself around windows boxes often enough that having the ability to hack in 15-30 minute snatches of time is useful | |||
masak | wow, this perl5i things seems really great: www.perl.org/pub/2010/03/perl5i-mak...imple.html | 21:45 | |
21:46
pjcj joined
|
|||
moritz_ | well, autoboxing existed as a module for quite some time | 21:47 | |
I find this $thing->is_number slightly worrying | |||
snarkyboojum | I noticed someone else has gone and implemented Array.exists by smart matching elements against Proxy, which moritz_ pointed out was probably wrong when I tried that way a while back :) | ||
rakudo: my @a = (Proxy.new, Proxy.new); say @a.exists(0); | 21:48 | ||
jnthn | > method foo() { say 42 } | ||
Useless declaration of has-scoped Method in a module; add our or my to install it in the lexpad or namespace | |||
> my method foo() { say 42 }; foo(*) | |||
42 | |||
moritz_ | because perl 5 tries very hard to hide the actual type of a scalar | ||
poincare101 | hmmm... perl6 is taking almost 2 seconds to do a hello world! | ||
p6eval | rakudo 5c9338: OUTPUT«0» | ||
snarkyboojum | so that fails | ||
masak | moritz_: indeed. | ||
moritz_ | snarkyboojum: then I apologize for the likely wrong comment | ||
21:49
justatheory left
|
|||
snarkyboojum | oh so it's correct? | 21:49 | |
for @a.exists(0) to return false above? | |||
moritz_ | snarkyboojum: no idea, but somebody else thought it was | ||
snarkyboojum | ok :) | ||
jnthn | I'm not convinced it's right. Particularly since I think pm mentioned Proxy was a temporary measure. | ||
snarkyboojum | I thought your example of putting Proxy objects in an array was good evidence that it was the wrong approach :) | ||
jnthn: yeah, was just about to mention that (from IRC backlog reading) | 21:50 | ||
moritz_ | jnthn: don't we have EMPTY to smart-match against instead? | ||
anway, self.goto($bed) | |||
good night | |||
jnthn | night o/ | ||
snarkyboojum | night | ||
colomon | o/ | ||
PerlJam | std: method foo { } | 21:51 | |
p6eval | std 30243: OUTPUT«ok 00:01 107m» | ||
masak | night, moritz_. | ||
jnthn | PerlJam: std probably could be made to warn there too. | ||
poincare101 | what's the humoungus array at the top of perl6.c ? | ||
(almost 23000 line array) | |||
jnthn | poincare101: Bytecode. | ||
PerlJam | poincare101: the program :) | 21:52 | |
snarkyboojum | the compiled rakudo? | ||
jnthn | Right, bytecode of the compiled Rakudo. :-) | ||
PerlJam | poincare101: there's a reason it's called a "fake executable" | ||
jnthn | The rest of perl6.c is just a little "loader" that tells Parrot to run that bytecode. | ||
masak | snarkyboojum: by the way, I'll see if I can get Yapsi into some sort of shape until tomorrow, so that it can do what yapsi-prototype can do. if so, I might release it on April 1 :) | 21:53 | |
poincare101 | as in bytecode that's fed into parrot or real opcode for somethin like x86? | ||
snarkyboojum | parrot bytecode | ||
poincare101 | jnthn: I see. | ||
what does vivification mean? | 21:54 | ||
masak | poincare101: it means automatically putting e.g. an array at a point where there was previously no entry in a hash. | 21:55 | |
PerlJam | poincare101: what distinguishes "real opcode"? | ||
masak | poincare101: but it doesn't have to be an array, it can be another hash. it depends on the use you make of it. | ||
jnthn | PerlJam: The hardware runs it I guess. :-) | ||
masak | poincare101: for example, 'push %h<foo>, "OH HAI";' | ||
arnsholt | masak: Speaking of yapsi, I almost called my new project yapsy >:) | 21:56 | |
masak | poincare101: if %h<foo> was empty before the push, we first create an empty array there. that's vivification. | ||
arnsholt: confusion++ :P | |||
"Salsa? No, Seltzer." | |||
arnsholt | Indeed =D | ||
I went with parrotlog, in the end. But it would have been amusing =) | 21:57 | ||
poincare101 | PerlJam: Something can be run on a processor, like x86 | ||
masak: ah. | 21:58 | ||
21:58
riffraff left
|
|||
PerlJam | poincare101: the parrot vm is a processor | 21:58 | |
snarkyboojum | hardware processor? | 21:59 | |
:) | |||
masak: oh hello! missed your message above | 22:00 | ||
masak | snarkyboojum: hi! it's because we are traveling at different time trajectories, just like lue predicted. | 22:01 | |
er. will predict. whatever. | |||
snarkyboojum | masak: w00t for release on April Fools' day :) | 22:02 | |
masak feels motivated to go for it | |||
snarkyboojum: also, it'd be nice to sit down fairly soon and discuss where to go from there. | |||
snarkyboojum | let me know if there's anything I can do | ||
cheerleading is fine too :) | 22:03 | ||
masak | snarkyboojum: I need to do a bit of braindumping and air some ideas :) | ||
perhaps not now, since I need to fix my sleep. | |||
jnthn | rakudo: class B; method foo() { } | ||
snarkyboojum | masak: great - ping me whenever you like | ||
p6eval | rakudo 5c9338: ( no output ) | ||
22:03
PerlJam left
|
|||
masak | snarkyboojum: maybe we should set a meeting in a few hours, so I have a good reason to rise early tomorrow :) | 22:03 | |
snarkyboojum | masak: sounds good to me | 22:04 | |
masak mentally sets his alarm clock | |||
jnthn spectests a bunch of bits | 22:05 | ||
cognominal | say per6eval rakudo: my @a = < a >; say 'a' ~~ m/ @a / | ||
colomon just pushed the eager .perl for Iterators patch. | 22:06 | ||
cognominal | arf | ||
jnthn | colomon: yay | ||
colomon | jnthn: any thoughts on adding roles when augmenting? | 22:07 | |
22:07
hercynium left
|
|||
jnthn | rakudo: grammar Foo { regex TOP { x } }; say 'xxx' ~~ Foo | 22:07 | |
p6eval | rakudo 5c9338: OUTPUT«0» | 22:08 | |
jnthn | rakudo: grammar Foo { regex TOP { x } }; say Foo.parse('xxx') | ||
p6eval | rakudo 5c9338: OUTPUT«x» | ||
jnthn | rakudo: my $x = 42; grammar Foo { regex TOP { x { say $x } } }; say Foo.parse('xxx') | ||
p6eval | rakudo 5c9338: OUTPUT«Lexical '$x' not foundcurrent instr.: 'perl6;Foo;_block76' pc 788 (EVAL_1:300)» | ||
22:09
SmokeMachine left
|
|||
bkeeler | Hmm, that's not good | 22:10 | |
dalek | kudo: 00d8d8d | (Solomon Foster)++ | src/core/Iterator.pm: Make .perl on Iterators eager. |
||
masak | bkeeler: new bug? | ||
jnthn | > my $x = 42; grammar Foo { regex TOP { x { say $x } } }; say Foo.parse('xxx') | 22:11 | |
42 | |||
bkeeler | masak: Not sure | ||
jnthn | x | ||
masak: I changed something in the regex code-gen just now. | |||
masak | oh, ok. | ||
jnthn | masak: And I was pretty sure we musta had a bug before. | ||
masak: That's the bug. | |||
I'm not sure it's made it into RT | 22:12 | ||
But anyway, it's an ex-bug now. | |||
masak | oh, ok. | ||
jnthn | Just wanted to check it was wrong in current master...otherwise I wouldn't have understood my patch as well as I thought. ;-) | ||
jnthn goes to pick a beer | |||
22:12
lichtkind joined
|
|||
renormalist | Hi! Has onyone tried Perlito and is currently awake? I wanted to try it out and have problems getting it to run. | 22:13 | |
22:14
Su-Shee left
|
|||
bkeeler | .oO( Is Perlito a sedative then? ) |
22:14 | |
masak | well, that's it for tonight. | 22:15 | |
bkeeler | G'night masak | ||
renormalist | I just follow the instructions from README on a fresh cloned git repo and get "mv: cannot stat `libast-perl5': No such file or directory" and later "can't execute at mp6.pl line 373." whch is a system to 6.pl | ||
masak | see you, hopefully early, tomorrow. | ||
jnthn | o/ masak | ||
masak | \o | ||
jnthn | masak: Hope you sleep well! | ||
masak | yeah. me too. :) | ||
bkeeler hasn't tried perlito | |||
22:15
masak left
|
|||
renormalist | m'kay | 22:16 | |
sorear | CokeCokeCokeCoke: Memory use compiling Rakudo has fallen from 1000MiB to 260MiB. Time use (including time spent swapping) from 12 hours to 45 minutes. | 22:18 | |
bkeeler | Woot! | ||
22:19
Juerd joined
|
|||
sorear | What's a brown bag? | 22:20 | |
cognominal | sorear, that's a grocery bag. So a brown bag meeting is discussing while eating, each one bringing his own food. | 22:22 | |
Or, in the street, a way to hide booze :) | 22:23 | ||
CokeCokeCokeCoke | sorear: awesome. | 22:24 | |
(thank chromatic.) | |||
22:26
wallberg left
22:28
pmurias left
|
|||
sorear wonders how much of a win it would be to only auto-localize $[_/!] in functions that use them | 22:30 | ||
CokeCokeCokeCoke | cognominal: (brown bag) ah, thanks for bringing back the memories of my childhood! | ||
bkeeler | Yeah, you really have to keep the booze hidden when you're a kid | 22:33 | |
22:37
nihiliad left
22:42
lest_away is now known as lestrrat
|
|||
jnthn hopes his latest tweak will fix up some $*SCOPE leakage that's causing us trouble. | 22:48 | ||
TimToady | jnthn: yes, routines are always installed with an & sigil in the symbol tables | 22:51 | |
and I think perhaps <foo> compiles differently if there's a lexically scoped foo visible, and gets called directly as foo($¢) rather than $¢.foo in that case | 22:54 | ||
we might have to disallow postdeclaration for that | 22:55 | ||
jnthn | TimToady: OK, good, I went the & route. :-) | 22:56 | |
bkeeler | That was my first thought too | ||
TimToady | but a lexical has to take precedence over inheritance, if we allow it at all | 22:57 | |
bkeeler | That should be easy enough to implement I think | ||
TimToady | alternately, we pick a different syntax | ||
<&foo> | |||
bkeeler | <&foo> is specced to mean <{ foo() }> right now, correct? | 22:58 | |
TimToady | since <$foo> already does much the same thing with 'my $foo' | ||
and a regex is just a routine that is always going to take its first arg as a cursor, whether it's officially the invocant or not. | |||
22:58
pjcj left
|
|||
jnthn | rakudo: class A { sub x() { say 42 }; method y() { x() } }; A.new.y | 22:58 | |
p6eval | rakudo 00d8d8: OUTPUT«42» | 22:59 | |
22:59
pjcj joined
|
|||
TimToady | I'm quite willing to steal the <&foo> notation to make it mean something less dynamic | 23:00 | |
jnthn | Means everyone who wrote regex foo { ... } ... /<foo>/ will have to tweak the codez. | 23:01 | |
But I guess that's not the end of the world. | |||
After all, calling a method has different syntax from calling a sub... | |||
TimToady | but it might or might not be less confusing than just overriding <foo> with the lexical meaning | ||
jnthn | rakudo: class A { my sub x() { say 42 }; method y() { x() } }; A.new.y | ||
TimToady | I can argue it both wayz | ||
p6eval | rakudo 00d8d8: OUTPUT«42» | ||
jnthn | TimToady: Same. :-) | 23:02 | |
TimToady | but <&foo> wouldn't necessarily capture in $<foo> | ||
while <foo> would | |||
<&foo> is more like <.foo> | |||
so maybe we should have <foo> ambigous, and those two forms to disambiguate | |||
*guous | 23:03 | ||
I think that likes me. | |||
jnthn | Could work | ||
grr. | |||
TimToady | let's go with that. | 23:04 | |
jnthn | There's something rotten with $*SCOPE handling somewhere. | ||
jnthn decides to look at that one tomorrow. | |||
colomon: ping | |||
TimToady | but presumably we only pick the lexical one if it could take a Cursor as its first arg. | ||
jnthn | TimToady: heh. | ||
TimToady: Bit too much for us to be able to statically look at in Rakudo right now. | 23:05 | ||
Chances of us supporting that soonish are low. | |||
TimToady | well, we can assume they'll behave for the moment; it'll just blow up at run time if they don't | ||
jnthn | OK, that works. | ||
We need to have the stuff to decide it eventually, for other things too. | 23:06 | ||
But may (or may not...not sure yet) be too big an ask for pre-R*. | |||
23:06
ruoso left
|
|||
TimToady | I'm not gonna ask for anything pre-R* we don't need for R*...except when I want to... :) | 23:07 | |
after all, I've taken on the mantle of Chief Tormentor... | |||
but I wouldn't want you to die too soon, now... | |||
bkeeler feels the torment | |||
jnthn | TimToady: In package_def in STD there's: | 23:09 | |
{ $*SCOPE ||= 'our'; } | |||
I'm not sure yet, but I fear that may be leaking to places it shouldn't. | 23:10 | ||
23:10
poincare101 left,
eternaleye left
|
|||
jnthn | As in, accidentally the method our scoped. | 23:11 | |
(now that we pay attention to such things) | |||
23:11
Chillance left
|
|||
jnthn | I've got such a leakage bug, and that seems the most likely candidate ATM. I need to dig more to be sure. | 23:11 | |
Oh. Hmm. I think it may be less straightforward though. :-/ | 23:12 | ||
colomon | jnthn: pong | 23:15 | |
skyping with parents, may be slwo to respond | |||
jnthn | colomon: I was going to ask, did you add any extra "augment Foo does Numeric" style things yet? | 23:17 | |
colomon | no | ||
jnthn | ok | 23:18 | |
Just looking at patching augment + does up | 23:19 | ||
23:24
wknight8111 joined
23:25
alester left
|
|||
TimToady | jnthn: termish localizes $*SCOPE to '' | 23:25 | |
jnthn | TimToady: Ah. | ||
TimToady: hmm | |||
TimToady: I missed that. | 23:26 | ||
Sorry. | |||
I'll have to try the both. | |||
lue | hello everyone! | ||
TimToady | but I'm not everyone... | ||
jnthn | Google Street View visited my home town in England! Where there's a nice pub called "The Hole In The Wall", but sadly the stitching algorithm, er, well... xrl.us/bg5zox | ||
colomon: Yay. :-) | 23:28 | ||
> say Num ~~ Real | |||
0 | |||
> use MONKEY_TYPING; augment class Num does Real { } | |||
> say Num ~~ Real | |||
1 | |||
colomon | \o/ | 23:29 | |
lue | phenny: tell masak I don't remember making any prediction based on time trajectories. A link to the backlog would jog my memory :) | ||
phenny | lue: I'll pass that on when masak is around. | ||
jnthn | lue: No no, you made it in the future. | ||
23:30
Limbic_Region joined
|
|||
lue | that explains it :) | 23:30 | |
Oh zarking, I'm in the year 3095. Better leave... (good thing I have pandimensional wireless, or else I'd be messaging a dead Freenode server :)) | 23:33 | ||
23:37
xomas left
23:39
shamu__ left
23:51
snarkyboojum left
|
|||
jnthn | colomon: Pushed. :-) | 23:52 | |
bkeeler | Pulled :) | 23:54 | |
23:55
payload left
23:56
justatheory joined
|
|||
lue | Heaved :) | 23:56 | |
dalek | kudo: 9f829b4 | jonathan++ | src/Perl6/Actions.pm: Factor a little bit of commonality out of method_def and regex_def. Support our method/our regex (or my) style declarations. For regexes, get handling of lexical scopes correct, as we do for methods. |
||
kudo: 666470e | jonathan++ | src/Perl6/Compiler/Module.pm: Declaring a regex (or method) outside of some classy thing shouldn't be an error, just a warning that gets suppressed by writing my or our. |
|||
kudo: 3576524 | jonathan++ | src/metamodel/ClassHOW.pir: Make it possible to add extra roles with an augment. |
|||
lue | I see Numeric.pm and Real.pm were created recently | 23:57 | |
jnthn | Yes, by colomon++ | 23:58 | |
lue | why does dalek/pugssvn always put ++ by someone's name? Is it to ensure karma? | 23:59 | |
bkeeler | Pretty much | ||
dalek++ | |||
23:59
snarkyboojum joined
|