»ö« | 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. |
|||
CokeBot9000 | lue: in the states too or just the UK? | 00:03 | |
lue | well, it's the season premeire in the US. It happened in the UK April 4th. | 00:05 | |
( makes me wish I were in Britain :) ) | |||
CokeBot9000 | lue++ | 00:08 | |
lue | I believe the UK always makes better quality versions of our US shows. The entire Syfy channel looks completely uninteresting most of the time | 00:09 | |
( except for Ghost Hunters, Destination Truth, and anytime they show a british sci-fi :) ) | 00:10 | ||
m6locks | lol | ||
syfy channel was epic, saw it a couple of days | 00:11 | ||
taped the first three star trek movies, they showed it | |||
lue | :O | ||
m6locks | it was some ten years ago... | 00:12 | |
maybe 15 | |||
lue | They are good sci-fi shows, they just come off as being a bit... american (and look at me, an american! That's bad :P) | ||
CokeBot9000 | lue: just wait for TorchWood:NY. =-) | 00:13 | |
lue | :*( I miss ye, torchwood ( I'd rather now see a show on UNIT :) ) | 00:14 | |
m6locks | www.youtube.com/watch?v=9ezZgAl6aN8 | ||
diakopter | sorear: that's AWESOME | 00:16 | |
circular stack frames | |||
00:21
tewk joined
00:33
pausenclown joined
|
|||
pausenclown | rakudo: grammar G { token TOP { <nums> }; token { \d <nums>? }; }; say G.parse('123abc'); | 00:39 | |
p6eval | rakudo 78faa0: OUTPUT«Method 'nums' not found for invocant of class 'G'current instr.: 'perl6;G;TOP' pc 431 (EVAL_1:183)» | ||
pausenclown | rakudo: grammar G { token TOP { <nums> }; token nums { \d <nums>? }; }; say G.parse('123abc'); | ||
p6eval | rakudo 78faa0: OUTPUT«123» | ||
pausenclown | rakudo: grammar G { token TOP { <nums>; say $/<nums> }; token nums { \d <nums>? }; }; G.parse('123abc'); | 00:40 | |
p6eval | rakudo 78faa0: OUTPUT«Malformed regex at line 11, near "TOP { <num"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
pausenclown | rakudo: grammar G { token TOP { <nums>; { say $/<nums> } }; token nums { \d <nums>? }; }; G.parse('123abc'); | ||
p6eval | rakudo 78faa0: OUTPUT«Malformed regex at line 11, near "TOP { <num"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums> } }; token nums { \d <nums>? }; }; G.parse('123abc'); | ||
p6eval | rakudo 78faa0: OUTPUT«123» | 00:41 | |
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums><nums> } }; token nums { \d <nums>? }; }; G.parse('123abc'); | ||
p6eval | rakudo 78faa0: OUTPUT«23» | ||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums><nums><nums> } }; token nums { \d <nums>? }; }; G.parse('123abc'); | ||
p6eval | rakudo 78faa0: OUTPUT«23» | ||
00:41
plobsing joined
|
|||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums><nums><nums><nums> } }; token nums { \d <nums>? }; }; G.parse('123abc'); | 00:42 | |
p6eval | rakudo 78faa0: OUTPUT«3» | ||
pausenclown | oh. sorry for the noise. i thought i'm in query with p6eval | 00:43 | |
rakudo: grammar G { token TOP { <nums> { say $/<nums>[1] } }; token nums { \d <nums>? }; }; G.parse('123abc'); | 00:44 | ||
p6eval | rakudo 78faa0: OUTPUT«Any()» | ||
sorear | pausenclown: there is a "CPAN6" project, but the level of secrecy together with the level of ambition gives me very little confidence in the project | 00:45 | |
lue | that's fine with me at least, it's pretty quiet right now :) | ||
sorear | pausenclown: in the meantime, we have the very well designed 'proto' | ||
00:45
ruoso joined
|
|||
pausenclown | why do i need for <nums> above to get the "3"? | 00:46 | |
sorear: i failed to install that. maybe i should give it a shot again. | |||
00:47
TiMBuS left
|
|||
lue is writing an emacs highlighting file for P6, and striving to learn as little elisp as possible :) | 00:47 | ||
pausenclown | .oO( if emacs wouldn't be so ugly ) |
00:49 | |
i mean, UI wise. | 00:50 | ||
lue | well, I'd write one for Kate, but emacs highlighting is written in an actual *programming* language, which makes it much easier for dynamic highlighting (new keywords, etc.) | ||
it's not that ugly IMO :) | |||
pausenclown | i never got warm with it. | 00:51 | |
00:52
Trashlord joined
|
|||
pausenclown | i like Kate but i miss search&replace over files | 00:52 | |
rakudo: grammar G { my $i = 1; token TOP { <nums> { say '#' ~ $/<nums> } }; token nums { { say $i++ } \d <nums>? }; }; G.parse('123abc'); | 00:53 | ||
p6eval | rakudo 78faa0: OUTPUT«1234#123» | 00:54 | |
lue | (just don't ask me to use vim. I developed a distaste with it early on, where I had to shut the the terminal because I couldn't exit vim (last I recall, ^C didn't work)) | ||
s/shut the/shut down/ | |||
pausenclown | rakudo: grammar G { my $i = 1; token TOP { <nums> { say '#' ~ $/<nums> } }; token nums { { say $i++, '>', $/ } \d <nums>? }; }; G.parse('123abc'); | 00:55 | |
p6eval | rakudo 78faa0: OUTPUT«1>2>3>4>#123» | ||
pausenclown | rakudo: grammar G { my $i = 1; token TOP { <nums> { say '#' ~ $/<nums> } }; token nums { \d { say $i++, '>', $/ } <nums>? }; }; G.parse('123abc'); | ||
p6eval | rakudo 78faa0: OUTPUT«1>12>23>3#123» | ||
pausenclown | mmh. | 00:56 | |
sorear | lue: How did you discover ^X^C? | ||
emacs is, if anything, harder to exit than vim | 00:57 | ||
vim at least responds to ^C with Type :quit<Enter> to exit Vim | |||
emacs responds with C-c | |||
pausenclown | .oO( u have just pressed the doorbell button. to call the inhabitants you need to use the gong in the backyard. thanks for your cooperation ) |
00:58 | |
lue | exiting is easy! ( esp. when using graphical emacs :) ) | 01:01 | |
But I developed an early hate towards vi and vim when I was installing gentoo(?) or something and had no GUI. I had to restart to exit, because I couldn't figure it out :/ | |||
(mind you, my first days at linux! but still...) | 01:02 | ||
afk (sorry!) | |||
pausenclown | i use joe for command line editing. supports the old WordStar™ shortcuts =) | 01:04 | |
01:07
holli joined,
holli left
|
|||
CokeBot9000 | lue: they're filming Series 4 now. | 01:07 | |
chromatic | Any objections to pushing a Rakudo branch to work with Parrot immutable strings? | 01:10 | |
pausenclown | damn router | 01:11 | |
jnthn | chromatic: None from me. | 01:12 | |
chromatic | git push origin immutable_strings ? | 01:13 | |
jnthn | I *think* so. | 01:15 | |
jnthn mostly does local branches... | 01:16 | ||
chromatic | Fingers crossed. | 01:17 | |
01:18
M_o_C left
|
|||
chromatic | Shows up on GH anyway. That has to be something. | 01:21 | |
colomon | \o/ | 01:24 | |
jnthn: I'm still looking at the mandelbrot failure (slowly) in the background. | 01:26 | ||
It's dying after outputting the first few lines of the results when I ask it to do a 501 x 501 image. | 01:27 | ||
but no errors show up in valgrind or gdb. It's just "program exited normally". | |||
jnthn | Oddness. | 01:28 | |
colomon: You got the program somewhere I can try it here? | |||
01:29
pausenclown left,
alester joined
|
|||
jnthn | colomon: I'm going to sleep Real Soon Now, but I can try it under my debugger tomorrow. | 01:29 | |
colomon | github.com/colomon/mandelbrot/blob/...t-color.pl | 01:31 | |
just pushed it so the latest version is up there. | |||
Huh. It's like it's exiting normally. maybe just a bug? | |||
01:32
wknight8111 left
|
|||
jnthn | But does it say "Done!"; ? | 01:34 | |
colomon | it does. | ||
I just added that to see if it did. | |||
jnthn | Ah. | ||
Maybe some more sutble bug then, rather than a crash. | 01:35 | ||
colomon | which is utterly bizarre, because I'm pretty sure subdivide cannot return fewer than 501 elements. | ||
anyway, I'm testing further here at the moment. :) | |||
wow, subdivide is not working at all. | 01:38 | ||
01:43
alester left
01:47
nihiliad joined
|
|||
colomon | rakudo: sub subdivide($low, $high, $count) { (^$count).map({ $low + ($_ / ($count - 1)) * ($high - $low) }); }; say subdivide(0, 1, 501).elems | 01:47 | |
p6eval | rakudo 78faa0: ( no output ) | ||
colomon | :\ | 01:48 | |
jnthn | Locally, gives 501. | 01:50 | |
colomon | in the script, gives 6. | ||
ah, 501 in the REPL here, too. maybe just a timeout? | 01:51 | ||
01:53
alester joined
|
|||
jnthn -> sleep | 01:54 | ||
TimToady | o/ | ||
colomon | \o | 01:56 | |
01:57
Psyche^ joined
|
|||
TimToady wonders if it's a return or some other control exception gone awry | 02:00 | ||
colomon | (^$count).map({ $low + ($_ / ($count - 1)) * ($high - $low) }); is the construct | 02:01 | |
02:01
Psyche^ is now known as Patterner
|
|||
TimToady | what if $count-1 is 0? | 02:01 | |
then div by 0 | 02:02 | ||
well, but you're passing 501 | |||
hmm | |||
colomon | right | 02:03 | |
and the code works beautifully for smaller numbers. | 02:05 | ||
TimToady | yeah, gives 501 here too | ||
but takes a while | |||
so I'm guessing timeout | |||
colomon | thing is, in my script it's giving just the first 6 elements. :\ | 02:06 | |
TimToady | pugs: sub subdivide($low, $high, $count) { (^$count).map({ $low + ($_ / ($count - 1)) * ($high - $low) }); }; say subdivide(0, 1, 501).elems | ||
p6eval | pugs: OUTPUT«501» | ||
TimToady | 6, maybe it's summing the digits :) | 02:07 | |
colomon | I wish it were so simple. :) | 02:08 | |
TimToady | it's in an eager context in the script? | ||
colomon | yes | ||
say subdivide($upper-right.re, $lower-left.re, $height).elems; | 02:09 | ||
say subdivide($upper-right.re, $lower-left.re, $height).perl; | |||
TimToady | gather/take bug? | ||
colomon | 6 | ||
(-2, -1.995, -1.99, -1.985, -1.98, -1.975) | |||
nope, it's map, so it's a MapIterator. | |||
could be a map bug. | |||
TimToady | I don't suppose map is implemented with gather/take inside? | 02:10 | |
colomon | Nope, there definitely is a MapIterator. | ||
colomon doesn't trust gather / take either... | 02:11 | ||
TimToady | well, but that doesn't seem to say anything about the innards of MapIterator | ||
lue | oh hello again! | ||
colomon | MapIterator is all in PIR with no trace of gather that I can see. | 02:13 | |
TimToady | does it use any global variables? :) | ||
still think maybe it's getting some weird exception propagating out of the map | 02:16 | ||
colomon | umm... no? (my PIR is not that great.) | ||
let me see if I can simplify the trouble script. | 02:17 | ||
wow, this is a new piece of ugly. | 02:21 | ||
wow, maybe it really is 5+1 = 6 ... | 02:22 | ||
sort of. | 02:23 | ||
rakudo: sub subdivide($low, $high, $count) { (^$count).map({ $low + ($_ / ($count - 1)) * ($high - $low) }); }; say subdivide(-2, 1/2, "501").elems; | 02:24 | ||
p6eval | rakudo 78faa0: OUTPUT«6» | ||
colomon | rakudo: say (^"501").perl | ||
p6eval | rakudo 78faa0: OUTPUT«0..^"501"» | ||
colomon | rakudo: say (^"501").eager.perl | 02:25 | |
p6eval | rakudo 78faa0: OUTPUT«(0, 1, 2, 3, 4, 5)» | ||
colomon | Is that correct behavior (ie bug is in my code) or wrong (ie bug is in Range, which, okay, is also my code) | ||
02:27
drbean_ joined
|
|||
TimToady | rakudo: say '0'..'501' | 02:27 | |
p6eval | rakudo 78faa0: | ||
..OUTPUT«012345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913… | |||
TimToady | rakudo: say '0'..^'501' | 02:28 | |
p6eval | rakudo 78faa0: | ||
..OUTPUT«012345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913… | |||
TimToady | rakudo: say 0..501 | ||
p6eval | rakudo 78faa0: | ||
..OUTPUT«012345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913… | |||
colomon | rakudo: say 0..^'501' | ||
p6eval | rakudo 78faa0: OUTPUT«012345» | ||
TimToady | it should decide before it starts which type it's doing and just do it | 02:29 | |
hmm | |||
rakudo: say ^'zz' | |||
p6eval | rakudo 78faa0: ( no output ) | ||
TimToady | rakudo: say 0..^'5' | 02:30 | |
p6eval | rakudo 78faa0: OUTPUT«01234» | ||
TimToady | rakudo: say 0..^'50' | ||
p6eval | rakudo 78faa0: OUTPUT«012345» | ||
TimToady | rakudo: say 0..^'5000000000' | 02:31 | |
p6eval | rakudo 78faa0: OUTPUT«012345» | ||
colomon | rakudo: say 5 cmp '501' | ||
p6eval | rakudo 78faa0: OUTPUT«-1» | ||
colomon | oh, that's it. | 02:32 | |
TimToady | rakudo: say 0...^'501' | ||
p6eval | rakudo 78faa0: OUTPUT«0» | ||
TimToady | rakudo: say 0...'501' | ||
p6eval | rakudo 78faa0: OUTPUT«012345» | ||
02:32
rgrau joined
|
|||
colomon | it's counting up an Int, but the comparison function is comparing strings. | 02:32 | |
TimToady | yeah, just defaulting to leg | ||
gee, why hasn't someone specced that yet...<looks around> | 02:33 | ||
certainly would have been friendlier to blow up in this case | |||
colomon | yup. | ||
TimToady | yet another thing in my list of things to do first.... | 02:34 | |
colomon | Range iteration is still a bit messed up anyway. | ||
and that's mostly my fault. :) | |||
TimToady | well, I need to afk for a while. | 02:36 | |
colomon | check ques | ||
can we assume that 0..'50' should be the same as 0..50, somehow? | |||
TimToady | certainly if one arg is numeric and the other looks-like-num, I think so | ||
colomon | okay, I'm writing a spectest for that. :) | 02:37 | |
TimToady | colomon++ | ||
laters & | |||
colomon | o/ | ||
lue | bye o/ | 02:41 | |
pugssvn | r30399 | colomon++ | [t/spec] Test for the 0..'50' case, properly fudged to work around Rakudo's current issues with it. | ||
colomon | Mandelbrot script (patched) is still running, off to bed for me. o/ | 02:45 | |
03:00
envi^home joined,
rv2733 left,
hercynium joined
03:03
meppl joined
|
|||
diakopter | hi | 03:08 | |
wazzup #perl6 | |||
lue | 'ello o/ | 03:09 | |
03:09
dalek joined
|
|||
diakopter | perlesque: my int $a = 2; sub int foo (int $b, int $c) { System::Console.WriteLine($b); return $c; }; System::Console.WriteLine(5 + foo(55, 3)); | 03:10 | |
p6eval | perlesque: OUTPUT«558» | ||
diakopter | there, now return values of named sub calls actually work in expressions. strongly typed. | ||
lue | \o/ | 03:11 | |
does anyone know what language (other than P6) has comments like #`(), where three characters open and 1 closes ? | 03:12 | ||
diakopter | I don't know, but I'm glad I don't have to implement the parsing of that. | 03:13 | |
lue | then I guess it's custom implementation time :) | 03:19 | |
03:20
alester left,
_jaldhar joined
03:23
alester joined
|
|||
diakopter | I mean, I'm glad it's already implemented in STD.pm6 | 03:25 | |
lue | gah! elisp regex is so annoying. :*( | 03:31 | |
is there a command in perl regex where you can match to anything (ascii, non-ascii, etc.), for example to match the comment in # and #`() | 03:35 | ||
diakopter | do you mean . | 03:36 | |
or do you mean "anything but a right parens" | 03:37 | ||
lue | for example. If i had #`([text here]), how would I match [text here] so that anything allowed as a comment is matched? | 03:38 | |
same with #[text here], where the end of the comment is a \n | |||
diakopter | /#\([^)]*\)/ | 03:39 | |
and | |||
lue | basically I just want to see how much better perl is than elisp :) | ||
diakopter | /#[^\n].*(?:\n|$)/ | ||
er | 03:40 | ||
/#[^\n]*(?:\n|$)/ | |||
lue | figures. while asking, I'm perusing through the elisp reference, and for THE FIRST TIME, I see . , which matches everything except newline :) | ||
diakopter | yes. same with perl. | ||
lue | *duh* | ||
I just have to remember the \\ for everything, because ( and [ are not special, by default. In elisp regex, you must use \( and \[ to make them do what you want them to do in a regex. | 03:41 | ||
diakopter | but repetitions are greedy (consume as much as they can) by default, so you have to exclude whatever comes next to match the shortest | ||
lue | so something involving [^...] then? | 03:42 | |
diakopter | yes, as above | ||
lue | (In addition, regexes are stored as a string, so the backslash in \( must be escaped, resulting in \\( , \\[ , \\] , \\), and so on. :/) | 03:43 | |
"#\\[^\n\\]*\n" might work in elisp, for example. | 03:44 | ||
03:44
meppel joined
03:45
meppl left,
meppel is now known as meppl
03:47
dalek left
03:49
dalek joined,
_jaldhar left
|
|||
lue | out of curiosity, what can be in a variable name (bar the sigil/twigil)? [looking] | 03:49 | |
03:59
_jaldhar joined
04:15
mikehh joined
|
|||
lue | I wonder, if I told elisp to match any opening delimiter, when I tell it to match any closing delimeter, would it make sure they matched? | 04:22 | |
04:49
am0c joined
04:50
_jaldhar left
04:59
ReiniUrban joined
05:00
rurban left,
ReiniUrban is now known as rurban
05:02
cls_bsd left
05:06
meppl left
|
|||
lue | afk | 05:21 | |
05:21
and joined
|
|||
and | Hi all! | 05:25 | |
There are those who have used the socket in rakudo? | |||
05:28
test joined,
iblechbot joined
05:29
test left
05:31
molaf joined
|
|||
diakopter | got bottom-up type inference working for initializers | 05:35 | |
that's a departure from Perl 6, but that's ok. | |||
05:37
nihiliad left
05:49
alester left,
snarkyboojum joined
06:03
meppl joined
06:10
slavik1 joined
|
|||
slavik1 | grammars can have methods? | 06:10 | |
diakopter | perlesque: my $a = 1; sub int foo (int $b, int $c) { say($b); return $c; }; loop (my $x=0;$x<100;$x+=1) {say($a + (foo($x, 2) + $x)); 1;}; | 06:31 | |
p6eval | perlesque: | ||
..OUTPUT«0314253647586971081191210131114121513161417151816191720182119222023212422252326242725282629273028312932303331343235333634373538363937403841394240434144424543 | |||
06:31
gfx joined
|
|||
slavik1 | diakopter: ? | 06:36 | |
diakopter | perlesque: say(my $a = 332) | ||
p6eval | perlesque: OUTPUT«332» | ||
diakopter | slavik1: it's a thing I'm working on. | ||
slavik1 | do tell :) | ||
diakopter | well | 06:37 | |
where do I begin. | |||
slavik1 | an elevator sales pitch? | ||
diakopter | it's a compiler compiler for the CLR (.NET and/or Mono) | ||
slavik1 | in p6? | ||
diakopter | using it, I'm making this language called "perlesque" which is made up of a tiny subset of perl5 and a tiny subset of perl6 | 06:38 | |
no it's written in C# | |||
slavik1 | ok | ||
diakopter | it compiles to CIL | ||
slavik1 | right | ||
diakopter | I mean, my compiler compiler compiles to CIL | ||
slavik1 | through another version of compile and you lost me | 06:39 | |
what the compiler you are compiling? | |||
diakopter | I was just clarifying, in case by "right" you meant "I know that C# compiles to CIL". I was clarifying that my compiler-compiler generates compilers that emit CIL. | ||
slavik1 | I see | 06:40 | |
yes | |||
I understand that | |||
diakopter | ok :) | ||
slavik1 | are you using grammars/regexes? | ||
diakopter | yes, and they're p6-ish, but not as expressive. | 06:41 | |
but expressive enough to quickly add syntax & actions | |||
slavik1 | I think I get it | ||
diakopter | all in 1 source file | ||
slavik1 | you have your own yacc which produces a compiler not in binary (like gcc) but a compiler in CIL which is then run on whatever CIL runs on. | ||
did I get it right? | |||
diakopter | yes. | ||
:D | |||
slavik1 | mentioning yacc would've made it easier :) | 06:42 | |
hmm | |||
diakopter | (Mono 2.6 on Mac, *n*x, or Windows, or msft CLR on windows) | ||
slavik1 | technically, if the grammar/etc was standard or something, you could have compiler compilers that targeted different things | 06:43 | |
diakopter | yes. | ||
06:43
molaf left
|
|||
slavik1 | so then we can have a perl6 compiler in binary, jvm, cil, etc. | 06:43 | |
diakopter | yeah | ||
slavik1 | but why would write it in C# and not Perl? :P | 06:44 | |
diakopter | I didn't mention yacc b/c I've never used yacc | ||
slavik1 | oh | ||
neither have I :) | |||
I just know what it does | |||
diakopter | nor any other compiler-compiler | ||
06:44
justatheory joined
|
|||
diakopter | ... in theory. | 06:44 | |
but anyways, | |||
I want to use perlesque as an assembly language | 06:45 | ||
slavik1 | definately sounds cool | ||
diakopter | to which to target an emitter from STD/viv | ||
slavik1 | viv? | ||
diakopter | so that TimToady's standard parser/front-end can compile itself to perlesque | ||
viv is short for V->IV | |||
or five->six | 06:46 | ||
slavik1 | ahh | ||
diakopter | er | ||
hahahaha | |||
slavik1 | wait, are you using just enough of grammars/regexes to get perl6 compiler to compile? | ||
diakopter | VI->V | ||
SIX->FIVE | |||
HA | |||
slavik1 | heh | ||
must be too late | |||
diakopter | slavik1: yea, just enough | ||
slavik1 | I mised the 5->4 :P | ||
sounds neat | |||
diakopter | to answer your other question | 06:47 | |
why not perl | |||
b/c I wanted a strongly-typed language | |||
slavik1 | does mono/.net have java like management extensions? | ||
I see | |||
06:47
Trashlord left
|
|||
diakopter | I don't know. what are java's management extensions | 06:47 | |
slavik1 | then why not java? (had to be asked) | ||
imagine you have a jvm running | |||
diakopter | jconsole? | 06:48 | |
slavik1 | yes | ||
somewhat | |||
if you go to browsing mbeans you'll see what I mean | |||
imagine you have a web server written in java | |||
diakopter | ok.. | ||
diakopter thinks of tomcat. | |||
slavik1 | you can have management beans that would store number of requests served, longest time, shortest, average | 06:49 | |
diakopter: exactly | |||
diakopter: although tomcat is a 'container' | |||
for example, in Jboss, you can create a JDBC connection pool | |||
diakopter isn't a Java programmer, but I've used/debugged it here and there | 06:50 | ||
slavik1 | and JMX allows you to see how many connections are already used and how many are available | ||
diakopter | ok | ||
slavik1 | not only that, but you can stop/start sub systems this way | ||
diakopter | broadly, the answer to your question would be "yes" | ||
slavik1 | k | ||
will have to look it up | |||
diakopter | I doubt they're called "management extensions" though | 06:51 | |
slavik1 | it will be nice when parrot has this. | ||
diakopter | sounds like lingo | ||
well | |||
slavik1 | and, via JMX, you can get a dump of all thread stacks :) | ||
diakopter barely able to bite his tongue | |||
06:52
iblechbot left
|
|||
diakopter | I chose clr over jvm b/c I've had good experiences with Mono, and I hate Eclipse so much, and there was a great compiler library that was MIT-licensed that I started with, | 06:52 | |
slavik1 | lol | 06:53 | |
fair enough | |||
in my view eclipse is nice, when you through lots of memory at it | |||
I am also finding that java as a language is beginning to slowly die ... in favor of groovy. | |||
diakopter | and b/c I'd already flipped around from JavaScript to C# to Perl and back >10 times over the past 3 years... | ||
meh; it's all the same if they can be decompiled to each other reasonably readably. | 06:54 | ||
like all the 100+ clr languages | |||
disassembled, I mean. | |||
chromatic | I would like to see such management extensions for Parrot as well. | 06:55 | |
diakopter | yeah, every VM's gotta have its "hot stuff" it feels it needs to hype so that the VM still sounds hip. | ||
slavik1 | groovy is dynamic though | ||
06:55
meppl left
|
|||
diakopter | (I meant "hot stuff" to refer to Groovy) | 06:55 | |
slavik1 | and it doesn't look like Java ... looking at java code makes me want to go to another profession | 06:56 | |
diakopter: what do you use for Perl code? | 06:57 | ||
diakopter | perl.exe? | ||
slavik1 | editor/ide | ||
diakopter | heh | ||
Notepad++ | |||
slavik1 | on unix? | ||
diakopter | no | ||
wynders | 06:58 | ||
slavik1 | you don't code Perl on unix? | ||
diakopter | no. | ||
slavik1 | :( | ||
poor soul | |||
either way, try geany :) | |||
diakopter | geany | ||
slavik1 | yes | 06:59 | |
it's an awesome editor | |||
diakopter | Notepad++ has a very very responsive UI | ||
slavik1 | it doesn't run on Linux | ||
diakopter | very pretty text rendering | ||
I don't need it to run on Linux. | |||
slavik1 doesn't have a windows system | |||
diakopter | I don't need you to have a windows system | ||
slavik1 | lol | ||
diakopter | :P | 07:00 | |
I wasn't trying to convert you | |||
I was stating the reason I like Notepad++ | |||
slavik1 | I was ... | ||
I failed :( | |||
diakopter | I doubt something built on GTK+ can be as responsive as Notepad++ | ||
but I'll try it. | |||
and...... sourceforge is down. | 07:01 | ||
slavik1 | FLTK is the way to go? | ||
yea | |||
some upgrade | |||
badmonkey on thinkgeek gets a discount :) | |||
diakopter | I don't see a button to add the thinkgeek models to my cart. | 07:02 | |
especially since thinkgeek is down as well. | |||
slavik1 | the site is coded in php, hence functionality is not possible | ||
07:03
dalek left
07:07
snarkyboojum left
07:08
dalek joined
07:09
am0c left
|
|||
diakopter | hmm | 07:09 | |
time for another perlesquesketch; thanks for attending! | 07:10 | ||
this week: JFDI times 7 | |||
next week: JFDI again, pounding out class/field/method declarations, implicit return expressions, | 07:12 | ||
slavik1 | ... | ||
I need a second brain | |||
07:13
slavik1 left
07:17
Levex joined
|
|||
diakopter | hm | 07:20 | |
actually | |||
at some point implementing syntax/semantics in perlesque becomes more difficult than writing emitters in viv for the same functionality | |||
07:25
kaare joined,
kaare is now known as Guest33828
07:26
snarkyboojum joined
07:27
Guest33828 left
07:28
devsundar1 joined
07:30
Levex_ joined
07:34
Levex left
07:39
Levex_ is now known as Levex,
Levex left,
Levex joined
|
|||
moritz_ | good morning lambdamoose | 07:52 | |
07:54
pmurias joined
|
|||
pmurias | diakopter: if perlesque is meant to be used as an intermidiate form and propably for writing parts of the runtime why do you intend to add syntax sugar such as implicit return expressions? | 07:55 | |
07:56
justatheory left
07:57
agentzh joined
08:09
Levex left
08:20
plobsing left
08:33
JimmyZ joined,
devsundar1 left,
meppl joined
08:41
JimmyZ left
08:45
gfx left
08:54
cls_bsd joined
09:34
sorear joined
09:37
pausenclown joined
09:38
stepnem joined
|
|||
pausenclown | rakudo: Grammar G { token TOP { <nums> { say $/<nums> } }; token nums { \d <nums> }; }; G.parse('123'); | 09:39 | |
p6eval | rakudo 78faa0: OUTPUT«Confused at line 11, near "Grammar G "current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums> } }; token nums { \d <nums> }; }; G.parse('123'); | 09:40 | |
p6eval | rakudo 78faa0: ( no output ) | ||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums> } }; token nums { \d <nums>? }; }; G.parse('123'); | ||
p6eval | rakudo 78faa0: OUTPUT«123» | ||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums><nums> } }; token nums { \d <nums>? }; }; G.parse('123'); | 09:41 | |
p6eval | rakudo 78faa0: OUTPUT«23» | ||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums><nums><nums> } }; token nums { \d <nums>? }; }; G.parse('123'); | ||
09:41
masak joined
|
|||
p6eval | rakudo 78faa0: OUTPUT«23» | 09:41 | |
masak | oh hai, #perl6! | ||
pausenclown | why isnt that 3? | ||
hi masak | |||
rakudo: grammar G { token TOP { <nums> { say $/.perl } }; token nums { \d <nums>? }; }; G.parse('123'); | 09:43 | ||
p6eval | rakudo 78faa0: OUTPUT«Method 'perl' not found for invocant of class 'Regex;Match'current instr.: 'perl6;G;_block70' pc 733 (EVAL_1:281)» | ||
pausenclown | i wish that would work. =( | ||
moritz_ | pausenclown: there was a Match.perl implementation in alpha | 09:44 | |
but it currently blocks on Match objects being too parroty | |||
and not Perl6y enough | |||
for which in turn I have a partial fix that waits for review from pmichaud | |||
pausenclown | moritz++ | 09:45 | |
rakudo: grammar G { token TOP { <nums> { say $/<nums><nums>[0] } }; token nums { \d <nums>? }; }; G.parse('123'); | 09:47 | ||
p6eval | rakudo 78faa0: OUTPUT«23» | ||
pausenclown | rakudo: grammar G { token TOP { <nums> { say $/<nums><nums>[1] } }; token nums { \d <nums>? }; }; G.parse('123'); | ||
p6eval | rakudo 78faa0: OUTPUT«Any()» | ||
dalek | ok: b083ea1 | moritz++ | (3 files): Enable UTF-8 rendering of LaTeX problems. Also contains small markup fixes |
09:48 | |
pausenclown | moritz: i am about to add support for ELEMENT declarations, but the recursive way they are declared in the XML grammar leads me to parsing problems. | 09:49 | |
masak | rakudo: grammar G { token TOP { <nums> { say $/<nums><nums>[0]<nums> } }; token nums { \d <nums>? }; }; G.parse("123") | 09:50 | |
p6eval | rakudo 78faa0: OUTPUT«3» | ||
masak | pausenclown: there you go. | ||
there are some treacherous bugs in there, though. | |||
moritz_ | oh | ||
masak | pausenclown: the ? is a quantifier, and all quantifiers create an array in the match object. | ||
pausenclown | i know. | 09:51 | |
rakudo: grammar G { token TOP { <seq> }; token seq { <num> ( , <num> ) ? }; token num { \d } }; G.parse('1,2,3'); | 09:57 | ||
p6eval | rakudo 78faa0: OUTPUT«Malformed regex at line 11, near "seq { <num"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
pmurias | diakopter: ping | 09:59 | |
perlesque: 1+1 | 10:01 | ||
p6eval | perlesque: ( no output ) | ||
10:02
ejs joined
|
|||
pmurias | moritz_: perlesque appears to be in p6eval how did you build it on mono? | 10:02 | |
pausenclown | rakudo: grammar G { token TOP { <seq> }; token seq { <num> ( \, <num> ) ? }; }; say '#' ~ G.parse('1,2,3'); | 10:05 | |
p6eval | rakudo 78faa0: OUTPUT«Method 'num' not found for invocant of class 'G'current instr.: 'perl6;G;seq' pc 721 (EVAL_1:276)» | ||
pausenclown | rakudo: grammar G { token TOP { <seq> }; token seq { <num> ( \, <num> ) ? }; token num { \d }; }; say '#' ~ G.parse('1,2,3'); | ||
p6eval | rakudo 78faa0: OUTPUT«#1,2» | ||
moritz_ | pmurias: diakopter did, not me | ||
pmurias | ah | ||
pausenclown | so why doesnt the line above parse 1,2,3 but 1,2? | 10:07 | |
ah. | 10:08 | ||
moritz_ | because it can only match one , | ||
pausenclown | rakudo: grammar G { token TOP { <seq> }; token seq { <num> ( \, <seq> ) ? }; token num { \d }; }; say '#' ~ G.parse('1,2,3'); | ||
p6eval | rakudo 78faa0: OUTPUT«#1,2,3» | ||
pausenclown | silly me | ||
rakudo: grammar G { token TOP { <seq> { say $/<seq><num><seq> } }; token seq { <num> ( \, <seq> ) ? }; token num { \d }; }; G.parse('1,2,3'); | 10:14 | ||
p6eval | rakudo 78faa0: OUTPUT«Any()» | ||
pausenclown | grrrmpf. why isn't that 2,3? | 10:15 | |
moritz_ | because the ( ) introduce a positional capture | ||
pausenclown | so? | 10:16 | |
moritz_ | rakudo: grammar G { token TOP { <seq> { say $<seq>[0]<num>[0]<seq> } }; token seq { <num> ( \, <seq> ) ? }; token num { \d }; }; G.parse('1,2,3'); | ||
p6eval | rakudo 78faa0: OUTPUT«Method 'postcircumfix:<{ }>' not found for invocant of class ''current instr.: '!postcircumfix:<{ }>' pc 13944 (src/builtins/Code.pir:120)» | ||
moritz_ | hrmpf | ||
pausenclown: the <seq> capture is inside the positional capture | 10:17 | ||
rakudo: grammar G { token TOP { <seq> { say $<seq><num><seq> } }; token seq { <num> [ \, <seq> ]? }; token num { \d }; }; G.parse('1,2,3'); | |||
p6eval | rakudo 78faa0: OUTPUT«Any()» | ||
moritz_ | oh wait | 10:18 | |
$<seq><num> doesn't have any more captures | |||
pausenclown | facepalm | ||
of course! | |||
moritz_ | rakudo: grammar G { token TOP { <seq> { say $<seq><seq><num> } }; token seq { <num> [ \, <seq> ]? }; token num { \d }; }; G.parse('1,2,3'); | ||
p6eval | rakudo 78faa0: OUTPUT«2,3» | 10:19 | |
moritz_ | rakudo: grammar G { token TOP { <seq> { say $<seq><seq><seq><num> } }; token seq { <num> [ \, <seq> ]? }; token num { \d }; }; G.parse('1,2,3'); | ||
p6eval | rakudo 78faa0: OUTPUT«2» | ||
moritz_ | rakudo: grammar G { token TOP { <seq> { say $<seq><seq><seq><seq><num> } }; token seq { <num> [ \, <seq> ]? }; token num { \d }; }; G.parse('1,2,3'); | ||
p6eval | rakudo 78faa0: OUTPUT«3» | ||
pausenclown | funny. you do i right and suddenly it works :-D | 10:20 | |
moritz_ | :-) | ||
10:38
IllvilJa joined
10:45
pausenclown left
10:50
molaf joined
|
|||
colomon | so, I set mandelbrot-color.pl to work on a 501x501 before I went to bed last night. 8 hours later, it's still working. Using up 2.12 GB of RAM and 3.25 GB virtual memory. So pathetically slow and wasteful, but still miles beyond rakudo alpha.... | 10:56 | |
masak | aye. | ||
10:57
rurban left
10:58
wknight8111 joined,
rurban joined
|
|||
masak | rakudo: say eval "" | 11:05 | |
p6eval | rakudo 78faa0: OUTPUT«1» | ||
masak | may I ask... why 1? | 11:06 | |
moritz_ | rakudo: say (eval "").WHAT | ||
p6eval | rakudo 78faa0: OUTPUT«Int()» | ||
moritz_ | it should return Nil, really | ||
masak submits rakudobug | 11:08 | ||
11:15
M_o_C joined
11:23
rgrau left
11:26
rurban left
11:27
rurban joined
11:41
masak left
11:45
Maddingue joined
11:51
agentzh left
12:00
ejs left
|
|||
jnthn | o/ | 12:06 | |
12:10
M_o_C left
12:20
M_o_C joined,
JimmyZ joined
12:27
rv2733 joined
|
|||
colomon | \o | 12:32 | |
12:33
snarkyboojum left
12:34
M_o_C left
12:37
M_o_C joined
|
|||
colomon | jnthn: don't know if you've backlogged or not, TimToady++ and I solved the mandelbrot bug last night. | 12:42 | |
12:42
M_o_C left
12:46
M_o_C joined
|
|||
rurban | With Installed parrot 2.2: perl Configure.pl --parrot-config=/usr/bin/parrot_config Parrot revision r45386 required (currently r0) Thats lame | 12:47 | |
12:52
M_o_C left
12:53
M_o_C joined
|
|||
jnthn | colomon: Not yet. Was it Rakudobug or mandelbug? | 12:59 | |
12:59
ReiniUrban joined
|
|||
colomon | kind of both and specbug too. ;) | 13:00 | |
The question boiled down to: what should ^"501" do? | |||
jnthn | Ah! | ||
Yeah, I can see where this is going... :-) | 13:01 | ||
13:01
rurban left,
ReiniUrban is now known as rurban
|
|||
colomon | rakudo: say ^"501" | 13:10 | |
p6eval | rakudo 78faa0: OUTPUT«012345» | ||
colomon | of course, once you know that's the problem, the workaround for the script is trivial. | 13:11 | |
thus www.harmonyware.com/pictures/foo.png | |||
I killed that one when it was about 88% complete because it was slogging my MBP. | 13:12 | ||
From now on I'm running them on my Linux workhorse. :) | |||
jnthn | Wow, pretty! | 13:14 | |
But yeah, slooow. :-( | |||
colomon | it took about 9 hours to generate that much, and it seemed like at that point it was generating another row every half hour or so. :( | ||
jnthn | It got slower over time? | 13:15 | |
colomon | I don't know. | ||
It's hard to say, because the math gets harder as well. | |||
jnthn | Ah, OK. | ||
colomon | those outer layers go pretty quickly. | 13:16 | |
the inner stuff is the slowest. | |||
however, it did consume an enormous amount of memory, so that may be slowing it down as well. | |||
jnthn | Yeah, I fear a leak. | 13:17 | |
colomon | I'm going to run a series of timings on the Linux box to see what the time characteristics are. | ||
but let's not obscure the big news here! | |||
back in Dec, this script crashed most of the time on Rakudo (now alpha). | 13:18 | ||
I'm not sure it ever went more than ten minutes and ended successfully. | |||
today it went 9 hours, was still producing results, and only ended because I killed it. | |||
\o/ | |||
moritz_ | .u smiley | 13:19 | |
phenny | moritz_: Sorry, no results for 'smiley'. | ||
moritz_ | .u smile | ||
phenny | U+2323 SMILE (⌣) | ||
jnthn | colomon: Well yes, that is progress on stability. :-) | 13:20 | |
colomon: Are you making heavy use of complex numbers? | |||
colomon | yes | ||
jnthn | Yeah, we're pretty inefficient on those for the moment. | ||
colomon | jnthn: sure. | 13:21 | |
jnthn | After Rakudo * when I do the native types work, you could be able to have like: | 13:22 | |
colomon | I still reckon it's a good test for general speed and stability. It's mostly looping and simple math (wrapped in a class) after all. | ||
jnthn | class Complex { has float $.re; has float $.im; } | ||
And then you'll have one object with two fields that are floats. | |||
colomon | (That is, I don't expect it to have speed like tuned C at the moment.) | 13:23 | |
oooooo, cool. | |||
Right now Complex is just two arbitrary types, and all the type resolution stuff has to be done for every operation, so it's not surprising it's not zippy. | 13:27 | ||
jnthn | Aye. | ||
moritz_ | "not zippy" is a nice euphemism :-) | ||
13:28
clintongormley joined
13:46
masak joined
|
|||
jnthn | lolitsmasak | 13:47 | |
masak | lol | 13:48 | |
jnthn is glad that masak is back a *lot* before 2038. | |||
masak | I realized that the Singularity will happen ~2035, so I wanted to contribute a bit to Perl 6 before that. | 13:49 | |
lue: how is it to travel beyond 2035, by the way? would you describe it as mostly utopian or mostly dystopian? | 13:50 | ||
colomon | jnthn: good news on the short front: going from 101 to 201 in mandelbrot size takes pretty much exactly as long as you'd expect (4x longer, that is). no sign at all of any additional slowdown. | 13:53 | |
jnthn | Ah, OK. | 13:54 | |
Just general epic slowness then. | |||
colomon | well, memory usage is still a real issue | ||
It got up to 3.x GB virtual on the MBP. | 13:55 | ||
jnthn | Ouch. | ||
Do you keep a lot of values around in memory? | 13:56 | ||
colomon | and this implementation just exports each line of graphics as it is calculated, so memory usage should be quite light. | ||
jnthn | Right, so we're leaky. | ||
:-( | |||
colomon | sounds like something that chromatic could look at.... | 13:57 | |
masak | rakkudo: class A { method postcircumfix:<( )>($s) { say $s.WHAT } }; A.new().("OH HAI") | 13:58 | |
rakudo: class A { method postcircumfix:<( )>($s) { say $s.WHAT } }; A.new().("OH HAI") | |||
p6eval | rakudo 78faa0: OUTPUT«Capture()» | ||
masak | jnthn: Capture? not Str? | ||
jnthn | Dammit, had we not once managed to get to a point where while 1 { 1 } didn't leak? | 13:59 | |
Because it seems to be here for me. | |||
masak: Correct. | |||
masak | When is Perl 6 going to stop leaking, dammit? :) | 14:00 | |
jnthn: and if I want my Str back, what do I do? | |||
jnthn | masak: You get one parameter to postcircumfix:<( )> always, and it's a Capture. | ||
masak: 'cus ruoso said so... :-| | |||
masak | ok. ISTR you and pmichaud++ talking about this at YAPC::EU. | ||
jnthn | masak: Just unpack the capture with a sub-signature should work. | ||
masak | kthx | 14:01 | |
colomon | oh, our monthly release is next week, isn't it? | ||
jnthn | masak: Yeah, I'm still not so fond of this. It feels inconsistent with the way postcircumfix:<[ ]> works for example. | ||
masak | it does. | ||
jnthn | But it was somehow important to the way smop works. | ||
colomon: Think so. | |||
rakudo: class A { method postcircumfix:<( )>( ($s) ) { say $s.WHAT } }; A.new().("OH HAI") | 14:02 | ||
p6eval | rakudo 78faa0: OUTPUT«Str()» | ||
jnthn | rakudo++ | ||
14:02
meppl left
|
|||
masak | oh, ok. | 14:02 | |
jnthn | omfg, no wonder the Wien - Kiev train takes 35 hours. At one point, according to the timetable, it takes 8 hours to do 40km! | 14:03 | |
jnthn is trying to work out workshop travel plans for the next months... | 14:04 | ||
The French and Ukrainian ones completely overlap. :-( | |||
colomon | It's funny: on the one hand, I feel like we've really accomplished something with the ng branch work. Rakudo is more powerful, and more stable, and easier to work with. | ||
And on the other hand, there is so much more to do! | |||
masak | who would have thought; new problems lurked around the corner :P | 14:05 | |
jnthn | colomon: I remember the days when Rakudo was roughly equal to NQP. | 14:06 | |
colomon: There was no OO support at all. | |||
colomon: Not even hashes were properly in place. | |||
Let alone grammars and regexes and all that goodness. | 14:07 | ||
It gives some perspective. :-) | |||
colomon | It feels to me like we're right on the verge of having something that can recommended for general work (of things that don't have to be zippy, anyway ;) | ||
but it also feels like we've only implemented 50% of everything. :) | 14:08 | ||
jnthn | Sure. Not everything in the spec is of equal utility or importance. | ||
colomon | I don't mean we've only done half the spec, I mean that we've only half-implemented the stuff we've done. | 14:09 | |
I know pretty much every single thing I've worked on could still use more work. | |||
14:09
alester joined
|
|||
jnthn | Well, there's that too. :-) | 14:09 | |
14:10
ejs joined
|
|||
cognominal | jnthn, do you have submitted your 2 hours of talks for the french perl workshop? | 14:10 | |
jnthn | cognominal: I'm...rather conflicted now, having been told I'm welcome at both, want to go to both, and now find the two overlap. | 14:11 | |
cognominal | there is no problem scheduling your talks the first day of the fpw | 14:12 | |
but we can't force you to come :) | 14:13 | ||
but we can remind you about Chartreuse | |||
jnthn | cognominal: I hoped something like that would work, but I fear even that isn't workable. FPW is 11th and 12th. UPW is 12th (+ social stuff on 13th rather than talks). | ||
Granted I'm the only person that this affects, most likely, since few others try to do this level of workshop attendence. :-) | 14:14 | ||
cognominal watches a map of Europe to see the rspective postion of Sweden, Ukraine and France. | 14:16 | ||
jnthn | This is why I need a private jet. | ||
;-) | |||
cognominal | hoping that at this time Island will be irrelevant. | ||
Iceland. | 14:17 | ||
14:17
Alias joined
|
|||
jnthn | cognominal: lol. I'm supposed to be going there in 2 weeks too! | 14:17 | |
cognominal | I am sure that in Ukraine they can bribe you with strong alcohol too. | ||
jnthn | Amongst other things, yes. :-) | 14:18 | |
pmurias | diakopter: ping | 14:20 | |
14:24
molaf left,
Trashlord joined
14:25
ejs left
|
|||
masak | how would you describe the semantics of the 'our' initializer? | 14:25 | |
jnthn | Creates a lexically scoped alias to a thingy in the package. | 14:26 | |
Alias | say what now? | ||
oh | |||
carry on | |||
} # Descoping myself | 14:27 | ||
masak | alias, theory... good thing there's no such thing in CS as 'a masak' :) | ||
Alias | I promise to invent one | ||
jnthn | If I ever invent some really cool CS thing, I now know what to call it! | ||
masak | oh noes :) | ||
Alias | Maybe I can rename the monica filter in your honour | ||
masak | jnthn: I don't grok your description. in what package? | 14:28 | |
14:30
ejs joined
|
|||
jnthn | The current one. | 14:32 | |
rakudo: module Foo { sub lol() { our $x; $x = 42; }; sub rofl() { say $x }; }; Foo::lol; Foo::rofl; | 14:33 | ||
p6eval | rakudo 78faa0: OUTPUT«Symbol '$x' not predeclared in roflcurrent instr.: 'perl6;PCT;HLLCompiler;panic' pc 152 (compilers/pct/src/PCT/HLLCompiler.pir:108)» | ||
jnthn | rakudo: module Foo { sub lol() { our $x; $x = 42; }; sub rofl() { our $x; say $x }; }; Foo::lol; Foo::rofl; | ||
p6eval | rakudo 78faa0: OUTPUT«Can not find sub Foo::lolcurrent instr.: 'perl6;Perl6Exception;throw' pc 14818 (src/builtins/Seq.pir:41)» | ||
jnthn | oh gah | ||
masak | :) | ||
'my' subs... | |||
jnthn | rakudo: module Foo { our sub lol() { our $x; $x = 42; }; our sub rofl() { our $x; say $x }; }; Foo::lol; Foo::rofl; | ||
Yeah :-) | |||
p6eval | rakudo 78faa0: OUTPUT«42» | 14:34 | |
jnthn | Rakudo is winning against me. | ||
masak | \o/ | ||
jnthn | masak: Anyway, what I was getting at is that those two both declare lexical aliases $x to the sme variable, $Foo::x | ||
14:34
and left
|
|||
masak | ok, so 'our' means "put this var not in the lexical scope, but in the surrounding package -- or use the existing one, if one exists" | 14:34 | |
14:34
M_o_C left
|
|||
masak | rakudo: our $x = 42; say $x; { my $x = 5; say $x; { our $x; say $x } } | 14:36 | |
p6eval | rakudo 78faa0: OUTPUT«42542» | ||
masak | \o/ | ||
jnthn | Right, the storage is in the package. | ||
masak | I think I grok it now. thanks. | ||
so 'our' would play well with inheritance, right? but not 'my'? | 14:37 | ||
jnthn | Not sure what you mean. | 14:39 | |
That is, I see inheritance and these as pretty orthogonal. | |||
masak | oh, ok. | 14:41 | |
rakudo: class A { our $x = 42; say $x }; class B is A { our $x; say $x } | |||
p6eval | rakudo 78faa0: OUTPUT«42Any()» | ||
jnthn | B is a different package to A. You'd not expect those two to have any relation. | 14:42 | |
masak | ah ok, A and B are separate packages, even though one inherits from the other. | ||
jnthn | Right, but inheritance only means something because the metaclass says it means something. | ||
bacek | o hai | 14:43 | |
masak | bacek! \o/ | ||
jnthn | о хай | ||
bacek | jnthn, привет :) | ||
masak, aloha | 14:44 | ||
jnthn | .oO( хай looks a little too close to...something else... :-) ) |
||
bacek | jnthn, will you have time to try rukudo on immutable_strings_part1 branch in parrot? | ||
.oO( Someone learn Russian too fast ) |
14:45 | ||
jnthn | Well, only the *bad* bits of Russian. ;-) | 14:46 | |
bacek: I did try it out with chromatic last night. | |||
bacek: We got to the bottom of the problem and found a workaround. | |||
bacek: chromatic++ pushed a branch to the Rakudo repo. | |||
(That builds with immutable_strings_part1) | |||
bacek | jnthn, ah-ha! | ||
bacek switching from worrying about rakudo to teach jnthn more rude Russian | 14:47 | ||
14:47
ejs left
|
|||
bacek | jnthn, how was your trip to Russia? | 14:49 | |
jnthn | Short, but nice. | ||
bacek | jnthn, I hope you consumed only chilled vodka! | 14:50 | |
jnthn | ;-) | ||
I also used the duty free to bring some vodka back with me. | |||
Less than half the price of what I could get it for here in Sweden. | |||
bacek | And about twice of the price from buying in Russia? :) | 14:51 | |
jnthn | Yeah. But I'd gone hand luggage only, and you can't take liquids in that. :-( | 14:52 | |
bacek | stupid "security"... | ||
jnthn | I guess I coulda tried, and offered to drink some of it to show it was really vodka, not explosive. :-) | 14:53 | |
masak | jnthn: but an 'our' declaration is enough for a variable $x in the class A to be visible to everyone else as $A::x, no? | ||
bacek | .oO( Check-in of 30 kilogrammes of Vodka can be suspicious ) |
||
jnthn | bacek: heh, it didn't occur to me that I could use my baggage allowance solely to check in vodka! | ||
masak: Aye. | 14:54 | ||
masak | excellent. | ||
bacek | why "our" visible outside of Class/Package??? | 14:55 | |
jnthn | bacek: our variables are stored int he package | ||
use "my" if you want invizible. | |||
bacek | jnthn, you have to learn more from Russians :) | ||
jnthn | bacek: (rude Russian) I was also told an amusing story about a guy who went to a money changer and asked to минетЬ rather than менять. :-) | 14:56 | |
bacek | jnthn, гыыы :) | 14:57 | |
jnthn | Good job there's bankomats, so tourists like me can't make such embarassing mistakes. :-) | ||
14:57
alester left,
ejs joined
|
|||
masak | such an awful play on words almost has to be followed up by some etymology... :) | 15:01 | |
where do these two verbs come from? | |||
15:04
_jaldhar joined
|
|||
jnthn | Dunno, but менять ain't so far from the Slovak menit'. | 15:05 | |
15:06
alester joined
|
|||
bacek | masak, "менять" is a "change", "минетЬ" is way to close to "минет" which is "blowjob" :) | 15:07 | |
JimmyZ | I guess the last patch was wrong in the immutable_strings, since there is new `replace` op. | ||
15:07
M_o_C joined
|
|||
masak | bacek: I know what they mean -- checked with Google Translate -- but I was interested in why. | 15:08 | |
15:08
XaeroOne joined
|
|||
bacek | JimmyZ, "replace" is same as one of "substr" atm. | 15:09 | |
masak, hmm... Good question. | |||
15:09
justatheory joined
|
|||
JimmyZ | bacek: github.com/rakudo/rakudo/commit/cde...dc82f3383, Doesn't just use replace instead ? | 15:11 | |
bacek | masak, Russian version based on French "minette". They just happen to have almost same pronunciation | ||
masak | oh, ok. | 15:12 | |
15:12
ejs left
|
|||
jnthn | ...great, that's the first new French word I've learned all year. | 15:12 | |
:-) | |||
bacek | JimmyZ, I introduces "replace" after this patch. But I'll look at it closer. | ||
JimmyZ | oh | ||
jnthn -> shops, bbiab | 15:15 | ||
15:15
kaare joined
15:16
ruoso left,
kaare is now known as Guest85744
|
|||
JimmyZ | bacek++ , an mad coder. | 15:17 | |
s/an/a/ | 15:18 | ||
masak | rakudo: "foo" ~~ /(oo)/; say $0.substr(0, 1) | ||
p6eval | rakudo 78faa0: OUTPUT«Method 'substr' not found for invocant of class 'Regex;Match'current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
15:19
and joined
|
|||
moritz_ | that's because Regex::Match isn't Cool | 15:20 | |
masak | but it should be, right? | ||
15:20
Guest85744 left
|
|||
moritz_ | aye | 15:21 | |
but don't even think of submitting a bugreport | |||
we already have a "$/ is not suffciently Perl6y" or so | |||
masak | it might please you to know that my first instinct was to look for one in RT :) | 15:22 | |
though I must confess I do not find it. | 15:23 | ||
moritz_: do you? | |||
moritz_ goes a-lookin' | |||
#73462 | 15:24 | ||
pugssvn | r30400 | pmurias++ | [mildew] added the optC option to bread | 15:25 | |
masak | oh, that one. | ||
yes, that's the underlying cause, of course. | |||
(so I agree that no more RT tickets are needed) | 15:26 | ||
moritz_ | rakudo: my $x = Capture.new | ||
p6eval | rakudo 78faa0: ( no output ) | ||
moritz_ | rakudo: my $x = Capture.new; say $x[0] | ||
p6eval | rakudo 78faa0: OUTPUT«Null PMC access in type()current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
moritz_ | rakudo: my $x = Capture.new; say $x<a> | ||
p6eval | rakudo 78faa0: OUTPUT«Null PMC access in type()current instr.: '_block14' pc 29 (EVAL_1:0)» | ||
moritz_ | (probably a manifestation of RT #74110) | 15:27 | |
masak adds it to that ticket | 15:28 | ||
cognominal | I am compiling the rakudo usenqprx branch and I get Symbol 'self' not predeclared in return_handler_past when compiling Actions.pm | 15:29 | |
15:29
pyrimidine joined
|
|||
moritz_ | cognominal: uhm, that's a very old (and abandoned) branch | 15:29 | |
cognominal: is there a good reason to try to build it? | |||
cognominal | ho | ||
what is the branch that uses nqprx? | 15:30 | ||
moritz_ | master | ||
cognominal | ok | ||
moritz_, and it pulls nqprx parrot? | 15:32 | ||
moritz_ | it uses the nqprx that comes with parrot | 15:33 | |
cognominal | I am confused with all these branches flying around :) | ||
masak uses 'succeed' for the first time instead of 'break' | 15:34 | ||
15:35
JimmyZ_ joined
|
|||
moritz_ | maybe I should delete some old branches | 15:35 | |
masak | spring cleaning :) | 15:36 | |
moritz_ | jnthn: am I right in assuming that the 'llsig' branch can be deleted? | ||
it's from Oct 2009, and I believe it's merged | 15:37 | ||
15:37
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
cognominal | moritz_, so parrot is now by default nqprx? | 15:38 | |
moritz_ | cognominal: parrot ships with nqprx, yes | ||
even though the executable is called parrot-nqp | 15:39 | ||
15:41
justatheory left
|
|||
jnthn | moritz_: Yes. | 15:51 | |
moritz_ | gone. | 15:53 | |
15:55
wknight8111 left
15:56
TiMBuS joined
|
|||
lue | hello! | 15:59 | |
masak | hellue! | 16:03 | |
spock, a specification framework: code.google.com/p/spock/ | |||
looks pretty nice. I especially like the 'detailed information' in reason (4) in code.google.com/p/spock/wiki/WhySpock | 16:04 | ||
lue | I'll be in and out today, all day Doctor Who marathon \o/ | ||
masak: looks good. | 16:06 | ||
2. Are you guys Trekkies by any chance? | 16:08 | ||
Bingo! But watch out for equally subtle references to Battlestar Galactica, Dr. Who, and other fascinating life forms. | |||
from the Spock FAQ :) | |||
masak | lue: sounds like your kind of thing :) | ||
lue | Alas, I'm still occupied with P6 major mode for emacs :) | 16:10 | |
masak | no, I meant, the Trekkies/BSG/Dr. Who references :) | ||
16:10
and left
|
|||
lue | I know :) | 16:12 | |
masak | rakudo: class A { our sub foo() { 42 } }; my &f = &A::foo; say f | ||
p6eval | rakudo 78faa0: OUTPUT«42» | ||
masak | \o/ | ||
moritz_ | there's *something* that works in Rakudo | 16:13 | |
lue | The only bad part is that they're showing mainly the Season 4 specials :/ I had to wake up at 3AM if I wanted to see actual episodes. | ||
masak: \o/ | |||
moritz_ | rakudo: my %a; say %a<foo>; say %a.keys | 16:21 | |
p6eval | rakudo 78faa0: OUTPUT«» | ||
lue | apparently, your key is a newline (interesting) | ||
moritz_ | nope | 16:22 | |
rakudo: my %foo; if %foo<a> {}; say %foo.perl | |||
p6eval | rakudo 78faa0: OUTPUT«{}» | ||
lue | ah (wonder why it spit out two newlines then) | 16:23 | |
moritz_ | because of two say() calls | ||
lue | rakudo: my $_var = 3; say $_var; | ||
p6eval | rakudo 78faa0: OUTPUT«3» | ||
lue | oh (duh) | ||
masak | rakudo: sub foo(%hash? is copy) {}; foo | ||
p6eval | rakudo 78faa0: OUTPUT«Null PMC access in invoke()current instr.: 'perl6;Hash[];!STORE' pc 473702 (src/gen/core.pir:67931)... call repeated 1 times» | ||
masak submits rakudobug | |||
jnthn | wtf | ||
masak | GGE++ # bugfinder | 16:24 | |
jnthn | Two is copy bugs in two days. I should smack ma binder up. | ||
masak | jnthn: when are you going to get around to that hash slice business, by the way? turns out I was using it in GGE after all. :) | ||
jnthn | masak: Got half-done patch here. :-) | 16:25 | |
masak | yay | ||
colomon | rakudo: my @a = 1...10; say @a[7/3] | ||
p6eval | rakudo 78faa0: OUTPUT«3» | ||
lue | ō.o | ||
masak | that's fine by me. | ||
lue | just wondering what the [7/3] is supposed to do :) | 16:26 | |
moritz_ | indexing | ||
colomon | It's suppose to do [2] | ||
what's weird is I don't understand how it works at the moment. | |||
rakudo: my @a = 1...10; say @a[7/3.Num] | |||
p6eval | rakudo 78faa0: OUTPUT«3» | ||
jnthn | colomon: I'm sorta looking into some of that stuff along with the hash slicing bits. | 16:27 | |
colomon: I'm not very happy with how some that lot works. | |||
colomon | I've just gotten another of the | ||
No applicable candidates found to dispatch to for 'postcircumfix:<[ ]>'. Available candidates are: | |||
:(Mu : Int $i;; *%_) | |||
:(Mu : Block $b;; *%_) | |||
:(Mu : !whatever_dispatch_helper ;; *%_) | |||
pugssvn | r30401 | moritz++ | [t/spec] test for RT #61882, reading a non-existent hash item should not autovivify it | ||
colomon | errors, this time because I was passing a Num instead of an Int. | ||
but it just worked fine in the test back there. | |||
masak | colomon: @a[2] is 3 in this case. | ||
colomon | masak: yes, my worry is that there is no Rat or Num case for [ ] | 16:28 | |
on Array, anyway. | |||
masak | oh, you're worried that it works :P | ||
colomon | yes, exactly. | ||
masak | s/that/because/ | ||
colomon | that or because are both fine. :) | ||
16:28
JimmyZ left
|
|||
colomon | our multi method postcircumfix:<[ ]> (Int $i) seems like the case that is being called, but how / why? | 16:29 | |
why does it fail in my code but work on the REPL? | |||
jnthn | I think there's something rotten somewhere in that area of the code, fwiw. | 16:30 | |
moritz_ | is that area of code inside the state of Denmark? :-) | ||
masak | 629 bugs in RT. at this rate, we'll hit 650 next week. | 16:31 | |
moritz_ updated rakudo.org/status | |||
jnthn | masak: Depends on the rate of fixes too. | ||
masak | not really :) | ||
or rather, I took that into account in my estimate. | 16:32 | ||
but sure, consider it a challenge if that helps. | |||
16:32
Alias left
|
|||
colomon | btw, in this case in my code, casting with .Int fixed the problem. | 16:33 | |
moritz_: exactly! | |||
moritz_ | colomon: any progress in reviewing that lazy assignment patch? | 16:35 | |
moritz_ tries polite nagging | |||
colomon | moritz_: not in the least, I'm afraid. :( | ||
I'm still running at about half speed here. | |||
moritz_ | rakudo: sub foo(:$) {}; say &foo.signature.perl | 16:36 | |
p6eval | rakudo 78faa0: OUTPUT«:(Any :())» | ||
moritz_ | it's ok | ||
jnthn | :-) | ||
moritz_ | uhm, is that correct? | ||
I'd expected :$ | |||
jnthn | rakudo: sub foo(:$) { say "ok"; }; my %h = '' => 1; foo(|%h) | ||
p6eval | rakudo 78faa0: OUTPUT«ok» | ||
moritz_ | rakudo: sub foo(:()) { say "ok"; }; my %h = '' => 1; foo(|%h) | 16:37 | |
p6eval | rakudo 78faa0: OUTPUT«ok» | ||
moritz_ | ok, fine | ||
jnthn | moritz_: Signature.perl gets a tad...confused...when there's no name. | ||
It's consistent with the other output it gives, fwiw. | |||
rakudo: sub foo(:$a) {}; say &foo.signature.perl | |||
p6eval | rakudo 78faa0: OUTPUT«:(Any :a($a))» | ||
moritz_ | well, as long as the result works, why not? | ||
jnthn | That is, it doesn't collapse it if the variable name matches the parameter name. | ||
Probably the guy who wrote Signature.perl was lazy. | 16:38 | ||
TimToady | std parses it as an anonymous named parameter | ||
lue | afk (doctor who) | ||
jnthn | TimToady: So does Rakudo. | ||
colomon | jnthn: you're saying he was a Perl programmer? | ||
jnthn | colomon: Yeah, and he was awesome! | ||
Well, the empty-string-named named parameter anyway. :-) | 16:39 | ||
masak still likes the term 'named anonymous (yes I know) parameter' | |||
or was it 'anonymous named'? | 16:41 | ||
jnthn | Anonymous yet named can make sense. :-) | 16:42 | |
masak | it can. it's just etymologically odd. | ||
moritz_ | anonymous named | 16:43 | |
masak | so is 'atom' nowadays, I guess. | ||
16:50
wknight8111 joined,
lorenzo_miwi joined
|
|||
moritz_ | rakudo: sub foo(:$) {}; say &foo.signature.perl ~~ / ':' / | 16:50 | |
p6eval | rakudo 78faa0: OUTPUT«:» | ||
moritz_ | rakudo: use Test; plan 1; sub foo(:$) {}; ok &foo.signature.perl ~~ / ':' /, 'bar' | ||
p6eval | rakudo 78faa0: OUTPUT«1..1ok 1 - bar» | ||
16:50
lorenzo_miwi left
|
|||
moritz_ | why does this fail in my test file? | 16:50 | |
anyway, I have to run :( | 16:51 | ||
16:55
pyrimidine left
17:04
mberends joined
|
|||
masak | lolitsmberends | 17:04 | |
mberends | ahoy, #perl6! | ||
phenny | mberends: 14 Apr 10:46Z <masak> tell mberends that I'm glad things are happening with proto right now. I think the sanest way I can contribute long-term is to write that 'testable core' thingy. would like to get together some evening and brainstorm on that -- just to make sure I grok the new model. | ||
mberends | 3+ days ago! (was distracted teaching PHP Intermediate) | 17:05 | |
jnthn | ahoj mberends! | ||
17:06
k23z__ joined,
k23z__ left,
k23z__ joined
|
|||
mberends | ahoj! good thing you flew back just in time, jnthn | 17:06 | |
masak | ahojte alle Leute :) | ||
jnthn | ...you just exploded my parser. | 17:07 | |
masak | a bit like GGE is all in pieces now, in other words :/ | 17:08 | |
17:09
Kyril joined
|
|||
masak | though to be fair, I've gotten some tests passing today. | 17:09 | |
and the road ahead seems clear enough, just thorny. | |||
jnthn | Ah, *that's* why we'll hit 650 bugs. :-) | ||
masak++ # becoming a master | |||
er, master guy | 17:10 | ||
masak | yes, that's why. | ||
jnthn | :-) | ||
masak | I expect to keep doing this with the rest of the app cheese as much as I can this month. | ||
jnthn | \o/ | 17:14 | |
Hopefully as you discover bugs and they get fixed, it'll get less painful as you go along. | 17:15 | ||
colomon | what's the syntax to open a file for writing in p6? | 17:16 | |
jnthn | open("file", :w) | ||
colomon | jnthn++ | ||
masak | well, one good piece of news is that some of the things I'm fixing are errors in the app cheese itself, things that slipped through because Rakudo alpha was insufficiently strict. | ||
17:18
envi^home left
|
|||
diakopter | pmurias: hi | 17:20 | |
after you've installed mono 2.6, you just type xbuild -p:Configuration=Release Sprixel.sln (actually the -p:Configuration=Release is optional) | 17:21 | ||
17:23
Kyril left
|
|||
diakopter | pmurias: to answer your other question, yes. :) | 17:26 | |
(I shouldn't be considering adding "cloying" syntax such as implicit return expressions) | 17:28 | ||
diakopter continues class declarations | 17:29 | ||
17:32
ruoso joined
|
|||
diakopter | masak: the app cheese. | 17:37 | |
masak | aye. | 17:38 | |
diakopter | mm | ||
is it a smelly cheese or a processed cheese | |||
masak | it's one with holes. | ||
diakopter | so a holy cheese. | ||
masak | exceedingly so. | 17:39 | |
jnthn | switzerland++ | 17:40 | |
masak | which, by an amazing coincidence, borders Austria. | 17:41 | |
and which, speaking of holes, isn't in the European Union, even though all its neighbours are. | 17:42 | ||
rakudo: say $*IN.get | 17:43 | ||
p6eval | rakudo 78faa0: OUTPUT«Land der Berge, Land am Strome,» | ||
jnthn | masak: Not true. | ||
masak | I may be wrongly informed. | ||
jnthn | Liechtenstein is its neighbor, and is not in the EU either. | ||
masak | ah. | 17:44 | |
diakopter | rakudo: while($_ = $*IN.get) { .say } | ||
p6eval | rakudo 78faa0: OUTPUT«Land der Berge, Land am Strome,Land der Äcker, Land der Dome,Land der Hämmer, zukunftsreich!Heimat bist du großer Söhne,Volk, begnadet für das Schöne,vielgerühmtes Österreich,vielgerühmtes Österreich!» | ||
masak | so it is. it's very lichtle and easy to miss :) | ||
diakopter | shouldn't rakudo require a space between while and ( | 17:45 | |
masak | yes. | ||
but I do believe there's an RT ticket for that. | |||
rakudo: $*IN.get(3)[2].subst(/ä/, 'u').say | |||
p6eval | rakudo 78faa0: OUTPUT«No candidates found to invokecurrent instr.: '_block14' pc 29 (EVAL_1:0)» | ||
masak | rakudo: $*IN.lines(3)[2].subst(/ä/, 'u').say | 17:46 | |
p6eval | rakudo 78faa0: OUTPUT«Land der Hummer, zukunftsreich!» | ||
masak | hee hee | ||
diakopter | hm. currently perlesque creates blocks with names '_Closure_1', '_Closure_2', etc | 17:48 | |
should I make it match nqp/rakudo's '_blockN' instead? :) | |||
or is that something from parrot | 17:49 | ||
okily dokily | |||
jnthn | diakopter: It's just an internal name. | 17:50 | |
diakopter: Generated by PAST, iirc. | |||
Rather than anything Parrot-y. | |||
diakopter | ok. | ||
jnthn | You could call it _Llama_1 and it'd be fine | ||
diakopter | but Llamae might feel offended. | 17:51 | |
jnthn | Who cares, they smell. | 17:52 | |
colomon has perl 6 writing out IGES files now, but cannot get his own software to recognize them. :( | 17:53 | ||
17:58
alester left
|
|||
diakopter | colomon: missing BOM maybe? | 18:00 | |
colomon | bill of materials? | ||
diakopter | byte order mark? | ||
colomon | IGES is ascii | ||
80 columns, even. | |||
diakopter | o | 18:01 | |
colomon | oh, I'm an idiot. | ||
think I've been successfully writing out points, and thinking I was failing to write out lines. | 18:03 | ||
okay, now I'm definitely failing to write out lines rather than writing points. :\ | 18:09 | ||
18:10
hercynium left
|
|||
colomon | hey, that's 90% there... | 18:12 | |
diakopter | TimToady: should I assume every postcircumfix:<{ }> node in STD's AST of itself is a Perl 5 hash lookup? | 18:13 | |
18:13
mberends left
18:17
rv2733 left
18:18
mberends joined
|
|||
pmurias | diakopter: installing mono | 18:19 | |
diakopter | pmurias: :) | 18:21 | |
2.63? | |||
2.6.3? | |||
pmurias | 2.6.3 | 18:22 | |
colomon | Argh. Finally got my own software to recognize the IGES files I'm writing, but now Rhino 3D won't recognize my "improved" versions of these files. Why can't anything ever be easy? | 18:24 | |
rurban | I studied the chmod 755 dll/so problem. perl5 File::Copy never preserved file attributes, even not with syscopy. Will be ahrd to persuadae them that Extutils::Commands is broken. | 18:25 | |
Just a few platforms have special rules, like mac, Win32, mepix | |||
diakopter | rurban: as long as it's not the linux or *bsd ones that are broken. ;) | 18:27 | |
rurban | I think it's better to let perl5 be broken, and fix that entirely in parrot configure hints (for hpux, cygwin already done) | ||
diakopter | o wait, mac is *bsd... | ||
arnsholt | Probably Mac OS 9 and below | 18:28 | |
pmurias | rurban: is a failing test not enough to demonstrate the bug? | 18:29 | |
rurban | we will see. | 18:30 | |
masak | rakudo: my $x = Nil; say defined $x | 18:34 | |
p6eval | rakudo 78faa0: OUTPUT«1» | ||
masak | rakudo: say defined Nil | ||
p6eval | rakudo 78faa0: OUTPUT«0» | ||
masak | should the definedness of Nil change when it's stored in a scalar variable? | 18:35 | |
diakopter | rakudo: say defined Nil but Nil | ||
p6eval | rakudo 78faa0: OUTPUT«No applicable candidates found to dispatch to for 'infix:<does>'. Available candidates are::(Mu $do-it-to-me, Role $r):(Mu $do-it-to-me, ConcreteRole $r)current instr.: 'infix:<but>' pc 300187 (src/gen/core.pir:3700)» | ||
diakopter | erm. that's what she said. | ||
colomon | masak: I thought that Nil switched to undefined variable of the appropriate type as a scalar? | ||
masak | colomon: so the above is wrong? | 18:36 | |
colomon | easier test: | ||
rakudo: my Int $x = Nil; say $x.defined; say $x.WHAT | 18:37 | ||
p6eval | rakudo 78faa0: OUTPUT«Type check failed for assignmentcurrent instr.: '&die' pc 17293 (src/builtins/Junction.pir:404)» | ||
masak | I think that one's in RT already. | ||
colomon | if I'm right, this is just NYI | ||
masak | I think you are. S02 says that assigning or binding Nil should restore a scalar variable to its pristine state. | 18:38 | |
colomon | \o/ | ||
so my $x = Nil should be Any() | |||
masak | aye. | ||
baking & | 18:39 | ||
18:40
masak left
|
|||
colomon | baking what? :) | 18:40 | |
lue | hello! (oh! just missed you masak) | ||
jnthn | maybe baking @s | ||
colomon | woah, he's gone | ||
lue | he's baking blue police-box shaped cookies I hope :) | ||
colomon | mmmmm, @s | 18:41 | |
lue | eh, he should bake scalars. Those would get him some money :) | ||
18:42
alester joined
|
|||
jnthn | Hope he's not baking hash. ;-) | 18:42 | |
lue | bake them in a 2D array at least :) | 18:43 | |
And scope them properly! | |||
colomon | jnthn: btw, on my big linux box, there is no unexpected slowdown going from mandelbrot 101 to 401 | 18:47 | |
(that is to say 401 takes 16x as long) | |||
of course, that machine has 8GB ram... | 18:48 | ||
mberends | colomon: is the trend in memory size similar to the trend in run time? | 18:49 | |
colomon | mberends: I'm afraid it may be. | ||
which would be bad, as memory usage for this should go up by N, not N^2 | 18:50 | ||
do you have a good way of testing that on linux or os x? | |||
mberends | no, I sometimes watch it using 'top', but the numbers are very volatile | 18:51 | |
colomon | drat | 18:52 | |
mberends | I'm going to look for a better tool | ||
colomon | I vaguely remember finding a memory monitoring tool for os x, but don't remember what it was now. | 18:53 | |
valgrind can do it, but it's very slow | |||
mberends | of course, any scripting language that cat read /proc could do it. Perl 5, for example | 18:54 | |
*can read | |||
18:57
Kyril joined
18:58
iblechbot joined
19:02
tri1 joined
19:06
justatheory joined
19:11
alester left
|
|||
lue | rakudo: say `hello` | 19:18 | |
p6eval | rakudo 78faa0: OUTPUT«Confused at line 11, near "say `hello"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
lue | rakudo: say `hello' | ||
p6eval | rakudo 78faa0: OUTPUT«Confused at line 11, near "say `hello"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
lue | ` is not a quoting construct, is it? | ||
colomon | ` was in p5 | 19:19 | |
mberends | only in Perl 5, not in Perl 6. You may be able to use qx{}. | 19:20 | |
colomon | rakudo: say `ls` | ||
p6eval | rakudo 78faa0: OUTPUT«Confused at line 11, near "say `ls`"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
19:20
k23z__ left
|
|||
lue | yeah, I'm looking at the p5 syntax table (emacs), and was wondering if it still applies | 19:20 | |
colomon | std: say `ls` | ||
p6eval | std 30401: OUTPUT«===SORRY!===Confused at /tmp/IbSY2WsKco line 1:------> say ⏏`ls` expecting any of: bracketed infix infix or meta-infix statement modifier loopOther potential difficulties: Unsupported use of bare 'say'; in Perl 6 please use | ||
...say if y… | |||
lue | here are all the symbols the perl5 major mode has to define in the syntax table (not counting sigils/comments): *+-/<=>\| | 19:23 | |
methinks I'll end up defining a lot more (imagine all the parentheses I might have to define o.o) | 19:24 | ||
19:24
meppl joined
19:26
tri1 left
19:28
mantovani left,
rv2733 joined
|
|||
mberends | colomon: you've got me trying to write a memory monitor utility now ;) | 19:29 | |
colomon | \o/ | ||
cognominal | www.appleinsider.com/articles/10/04...pairs.html "acts of God or other external causes" | 19:32 | |
sacrés (sic) avocats américain!! | |||
lue | sacré bleu! | 19:33 | |
cognominal: est-ce que tu parles français? | 19:34 | ||
cognominal | oops, I wanted to paste on #perlfr | 19:35 | |
sacrebleu! | |||
lue | ah. well, I'm only beginning to learn French. Right now we're at adjectives, and just did verbs ending in 'er'. :) | 19:36 | |
cognominal | come to #perlfr on irc.perl.org if you want to perfect your french | ||
lue | I'll consider it once I finish French 1, I can barely say anything :) | 19:38 | |
19:40
tri1 joined
19:42
M_o_C left
|
|||
diakopter | perlesque: my $sub_a = sub int foo (int $arg0) { say(my $b = $arg0 * 2); return $b; }; $sub_a($sub_a($sub_a(5))); | 19:47 | |
p6eval | perlesque: OUTPUT«102040» | ||
19:48
tri1 left
|
|||
diakopter | type inference for closures-as-expressions, and hence closures-as-variables | 19:48 | |
rakudo: my $sub_a = sub foo ($arg0) { say(my $b = $arg0 * 2); return $b; }; $sub_a($sub_a($sub_a(5))); | 19:49 | ||
p6eval | rakudo 78faa0: OUTPUT«102040» | ||
diakopter | oh good | ||
19:50
mantovani joined
|
|||
diakopter | perlesque: my $sub_a = sub int foo (int $arg0) { say(my $b = $arg0 + 4); return $b; }; my $last = 5; loop (my $x=0;$x<100000;$x+=1) { $last = $sub_a($last) } | 19:53 | |
p6eval | perlesque: | ||
..OUTPUT«913172125293337414549535761656973778185899397101105109113117121125129133137141145149153157161165169173177181185189193197201205209213217221225229233237241245249253257261265269273277281285289293297301xE2 | |||
diakopter | rakudo: my $sub_a = sub foo ($arg0) { say(my $b = $arg0 + 4); return $b; }; my $last = 5; loop (my $x=0;$x<100000;$x+=1) { $last = $sub_a($last) } | ||
p6eval | rakudo 78faa0: | 19:54 | |
..OUTPUT«913172125293337414549535761656973778185899397101105109113117121125129133137141145149153157161165169173177181185189193197201205209213217221225229233237241245249253257261265269273277281285289293297301xE2 | |||
19:54
XaeroOne left
|
|||
lue | oooh | 19:55 | |
afk | 20:02 | ||
20:30
TiMBuS left
|
|||
diakopter | 3.1s for perlesque to do 100million iterations of that on my machine | 20:31 | |
oh, with the say() removed. | 20:32 | ||
heh | |||
otherwise it's obviously IO bound | |||
20:53
synth joined
20:59
ReiniUrban joined
21:01
rurban left,
ReiniUrban is now known as rurban
21:04
clintongormley left
21:25
iblechbot left
21:36
s1n joined
|
|||
moritz_ | rakudo: sub foo($v, $w?, $x?, $y?){ say $v~"|"~$w~"|"~$x~"|"~$y}; foo(1,,3,); | 21:44 | |
p6eval | rakudo 78faa0: OUTPUT«1|3|Any()|Any()» | ||
21:45
dual joined
|
|||
lue | hello again | 21:46 | |
s1n | ya know, no matter how slow rakudo is, it just can't be worse than the jvm :/ | 21:48 | |
so, when rakudo just takes a second or two to start, i'm okay with that | |||
lue | me too :) | 21:49 | |
mberends | moritz_: did 3 move from the $x to the $w ? That's wrong, ain't it? | ||
lue | I actually don't get why people are concerned with things like "my computer takes 30 seconds to boot up! Let's reduce it to 5!". At least it boots in a reasonable amount of time | ||
moritz_ | mberends: it should be a parse error (and there's a ticket for that) | 21:50 | |
jnthn | std: sub foo($v, $w?, $x?, $y?){ say $v~"|"~$w~"|"~$x~"|"~$y}; foo(1,,3,); | ||
moritz_ | std: 1,,3, | ||
p6eval | std 30401: OUTPUT«===SORRY!===Preceding context expects a term, but found infix , instead at /tmp/GgxdASfVG1 line 1:------> ?){ say $v~"|"~$w~"|"~$x~"|"~$y}; foo(1,⏏,3,);Parse failedFAILED 00:01 112m» | ||
std 30401: OUTPUT«===SORRY!===Preceding context expects a term, but found infix , instead at /tmp/T8mmvUXZEd line 1:------> 1,⏏,3,Parse failedFAILED 00:01 108m» | |||
moritz_ | RT #54804 FWIW | 21:51 | |
21:53
_jaldhar left
21:57
cledu joined
|
|||
pugssvn | r30402 | moritz++ | [t/spec] test for RT #69492 | 22:04 | |
moritz_ | btw this test fails on a parrot version newer than the recommended one | 22:05 | |
jnthn | :-( | 22:06 | |
lue | Any particular reason why? | 22:09 | |
moritz_ | because of a regression | ||
lue | ah | 22:11 | |
jnthn | Given the Parrot 2.3 release would happen next week iirc, and we'll need to ship #28 on that, maybe worth reporting? | ||
(If not already done) | |||
lue | rakudo: say 3 add 5 | 22:12 | |
p6eval | rakudo 78faa0: OUTPUT«Confused at line 11, near "say 3 add "current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
lue | rakudo: say 3 plus 5 | ||
p6eval | rakudo 78faa0: OUTPUT«Confused at line 11, near "say 3 plus"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
moritz_ | jnthn: I wanted to bisec first, but it seems I'm too tired for that right now | ||
lue | 3rd tuesday right? In which case, the 20th, 3 days away. R* would release the 22nd | 22:13 | |
moritz_ | nope | 22:14 | |
lue | oh :/ | 22:15 | |
22:20
M_o_C joined
|
|||
pmurias | diakopter: after i build sprixel how should i run it? | 22:24 | |
22:25
justatheory left,
justatheory joined
|
|||
colomon | lue: why didn't you tell me the dude from Life on Mars was on Doctor Who? | 22:35 | |
22:36
huf left
|
|||
lue | I never saw Life on Mars :) | 22:39 | |
mberends | colomon: first cut of a process monitor to report maximum memory size: gist.github.com/369869 | 22:40 | |
colomon | mberends++ | 22:44 | |
mberends | colomon: Linux only (/proc dependent) and only measures the immediate child, so no make processes etc (...yet) | 22:45 | |
colomon | ...will that work with ./perl6? | ||
mberends | probably. must try it ;) | 22:46 | |
22:46
huf joined
|
|||
mberends | colomon: yes, 187MB process size for rakudo -v | 22:47 | |
colomon | lue: Life on Mars (BBC) was fantastic, and starred the dude who plays the Master. | ||
mberends++ | |||
jnthn | mberends: What do you get for Rakudo just opening and sitting at the command line? | 22:48 | |
colomon | I'll give it a whirl as soon as I'm doing making chocolate pudding for my wife, now watching her first episode of Dr. Who. :) | ||
lue | her first episode is the End of Time? | ||
great one :) | |||
mberends | colomon: 187207680(bytes) # amd64 ubuntu 10.4 | 22:49 | |
colomon | lue: ah, I see she just switched over to curling, which was what she meant to turn on. I'm sure she'll be planning on watching those episodes of Who at a later date. :) | 22:51 | |
mberends watched "Victory of the Daleks" a few hours ago www.bbc.co.uk/programmes/b00s56d2 | 22:52 | ||
lue | Ah well, I figure Part 2 of the End of Time (when it's split apart; right now is the streamlined 1-part "movie" style) is coming up soon :) | 22:53 | |
22:53
crythias joined
|
|||
lue | mberends: is that from the old series? I would love to get my hands on so 20th century DW | 22:53 | |
s/so/some/ | |||
mberends | no, this is current series with Matt Smith as the 11th regenerated Doctor | 22:55 | |
colomon | lue: I think he's gloating about seeing them ahead of us.... ;) | 22:57 | |
mberends gloats some more... | |||
find archived episodes at tvunderground.org.ru/index.php?show...p;sid=3405 | 22:59 | ||
lue | mberends: i can haz free tiket tu lundin? | 23:00 | |
( not really of course :) ) | 23:01 | ||
mberends | lue: the airport's closed, otherwise it would be a fun idea | ||
lue | oh yeah ( stupid volcano. can't believe that monster from Pompeii is back ;) ) | 23:02 | |
mberends | every 1/2 day the authorities are rolling the grounding of planes forward another 1/2 day or more | 23:03 | |
lue | just wondering; are the bees still disappearing? | 23:04 | |
mberends: hopefully that doesn't affect you in any way | |||
pmurias | diakopter: perlesque works here | ||
lue *Ba-da-da* 1 hour until the 1-hour special detailing all about the Doctor Who-niverse. 2 hours until the season premeire | 23:05 | ||
cognominal | rakudo: say 'a' ~~ m/ <? a > a/ | 23:06 | |
p6eval | rakudo 78faa0: OUTPUT«Confused at line 11, near "say 'a' ~"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (ext/nqp-rx/src/stage0/HLL-s0.pir:328)» | ||
jnthn | mberends: It's kinda scary and amazing to watch it. | ||
lue | jnthn: where is you in the situation? | ||
mberends | lue: fortunately there are no health risks, just the risk to aircraft. The trains, ferries and buses are full. | ||
jnthn | lue: I made it home from Moscow within 4-5 hours before the point things all shut down here. | ||
lue: So I got lucky. | |||
lue | good :) | 23:07 | |
jnthn | Otherwise I'd be stuck in Russia now. | ||
cognominal | STD: say 'a' ~~ m/ <? a > a/ | ||
lue | .oO(trains are awesome; there ought to be more in the US) |
||
cognominal | std: say 'a' ~~ m/ <? a > a/ | ||
p6eval | std 30402: OUTPUT«===SORRY!===Unrecognized regex assertion at /tmp/IPIMYlizKk line 1:------> say 'a' ~~ m/ <?⏏ a > a/ expecting any of: assertion nameParse failedFAILED 00:01 111m» | ||
jnthn | Though my visa would last through to the 20th, so I'd probably have made the most of my stuckness. :-) | ||
mberends | jnthn: yeah, you had incredible timing this week. | ||
jnthn | mberends: Aye, getting back without flying woulda turned into a slight adventure. | 23:08 | |
mberends: Train to Petersburg, train from there to Helsinki, boat. | |||
I actually have done that in reverse before now. | 23:09 | ||
cognominal | What is the syntax for looking-ahead a sting? | ||
jnthn | Though they didn't have the super-fast Moscow - Petersburg trains last time. | ||
lue | Spirit Tracks and Phantom's Hourglass in one trip ( oh wait, probably not that fun in real life ;) ) | ||
cognominal | *string | ||
jnthn | cognominal: <?before foo> | ||
colomon | jnthn: the good news on mandelbrot: the expected (proper) ratios for timing hold up out to the 501x501 case on my Linux box. | ||
jnthn | colomon: OK, so we're just slow. | ||
23:09
orafu left
|
|||
jnthn | But not worseningly slow. | 23:09 | |
23:09
orafu joined
|
|||
jnthn | That's good to know. Thanks for doing the analysis. colomon++ | 23:09 | |
cognominal | thx | ||
colomon | and mberends++ wrote the code to let me test memory characteristics. | 23:10 | |
which is what I'll tackle next. | |||
I don't expect such good news there, alas... | |||
23:10
pmurias left
|
|||
jnthn | oops, I just vi a-20gb-file | 23:13 | |
lue | O.o /o\ | ||
jnthn: if ye can open that in good time, ye can run rakudo without pause. Good Luck! | |||
.oO(words from the East) |
23:14 | ||
jnthn: what is this 20gb file? the linux kernel? | 23:15 | ||
23:16
rgrau joined
|
|||
mberends | it's the todo list for rakudo * ;) | 23:16 | |
lue | what is on the todo list for R*? I'm missing something :/ | 23:17 | |
jnthn | lue: Wikipedia dump. | ||
lue: See docs/ROADMAP in Rakudo git repo. | 23:18 | ||
lue | hopefully not all of Wikipedia is 20gb. ( that means it has to get bigger! that's way too small :) ) | 23:19 | |
jnthn | lue: Current revisions only. | 23:20 | |
And text only, no images etc. | 23:21 | ||
lue | where is the REPL implemented? I've been curious about that. | ||
23:24
nihiliad joined
|
|||
lue | ~ 30 minutes until an explanatory special on DW, 1 hour and 30 minutes until the premiere. afk! | 23:27 | |
23:29
dual_ joined
23:31
dual left
23:32
dual joined
|
|||
colomon | mberends: \o/ | 23:34 | |
23:35
dual_ left
23:46
LionMadeOfLions joined,
c1sung joined
|
|||
diakopter | \o\ | 23:54 | |
//o/ | 23:55 | ||
er | |||
\/o/ | |||
er | |||
/o/ | |||
mberends | /o\ | 23:56 | |
23:58
M_o_C left
|