»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by moritz on 3 May 2013.
pmichaud FROGGS, jnthn: I agree with jnthn++ . The handling of dynamically quantified expressions has always been meant to be handled outside of the standard quantifier node type. 00:58
especially since the thing that follows ** is to be a closure. 00:59
if it's possible to cleanly make the range dynamic via the existing rxtype node, I'll be okay with that, but more likely it wants a specialized node type. 01:01
the other reason for making it a specialized node type is to more cleanly distinguish declarative versus procedural quantifiers. 01:02
the other other reason for making it a specialized node type is so that one can smart-match the number of repetitions against the value returned from the closure. Although p6 only allows Int and Range to be returned from a closure now, at one time it was allowed to be lists, and we might want that capability again someday (e.g., \d ** { @primes } ) 01:05
timotimo is there a way to figure out if there's a character ready for reading in $*IN without blocking? 01:45
dalek rl6-roast-data: 62cd9c7 | coke++ | / (4 files):
today (automated commit)
01:47
sorear not reliably
timotimo okay, how about "sort-of-kind-of"? how would i do that? in rakudo?
sorear select and FIONREAD provide advisory notification of data, but you're supposed to set file descriptors to nonblocking in case of false alarm
timotimo can i even do that to $*IN etcetc? 01:48
dalek kudo-star-daily: a665867 | coke++ | log/ (5 files):
today (automated commit)
01:52
[Coke] wonders if there is any need for ^^ with colomon's new thing. 01:56
[Coke] the rakudo failures on feather in S02-bool.t are a result of the iospec merge. 02:16
er, S02-types/bool.t
labster Yeah, we know. 02:17
[Coke] ... ok. if someone already did a bisect, putting that on the ticket would have saved me several hours. 02:18
labster But what FROGGS and I are trying to figure out is why these two lines in canonpath cause the failure: gist.github.com/FROGGS/0d1a9f4967a2c4d49606
dalek rl6-bench: 8dad53a | (Geoffrey Broadwell)++ | bench:
Several miscellaneous bugfixes in bench
02:19
[Coke] thanks for trying to track it down. 02:20
rt.perl.org/rt3/Ticket/Display.html?id=117957 if you figure it out.
labster Sorry, I fell asleep last night while we were talking about it. 02:22
[Coke] heh. I fell asleep in the middle of my bisect and just got back from a trip across 3 states to finish it up. ;) 02:29
pmichaud which two lines in canonpath ? 02:40
labster They're two regex substitutions, triggered when $*TMPDIR is created. They're the two lines he's commented out in the gist above, 9 and 12 02:42
pmichaud I'm not sure those lines are the actual cause of the failure. 02:44
maybe I should read prior backlog on the topic, though.
labster You should ask FROGGS, as he was the one doing the bisect. 02:45
labster still doesn't have a feather account.
pmichaud reads backlog 02:46
labster start here: irclog.perlgeek.de/perl6/2013-05-26#i_7116874
pmichaud this bug feels like a GC or pointer problem of some sort, and commenting out those lines changes things just enough to cause the bug to appear somewhere else. 02:48
(or disappear) 02:49
i.e., a heisenbug
pmichaud however, just looking at the code.... 02:52
$path ~~ s:g { '/'+ } = '/'; # xx////xx -> xx/xx
seems horribly inefficient.
timotimo i made an amazing console program that will, given a time in minutes, fill up one line of the terminal using eigths of blocks from the unicode "block elements" chart 02:58
timotimo apparently i can only get the terminal width via %*ENV on gnome-terminal, which b0rks if i have only one line :( 03:14
labster oh, that is inefficient. It's a port of File::Spec, so blame perl 5 :o) 03:33
maybe the problem will disappear on the JVM ... and I just use System.getProperty("io.tmpdir") instead 03:36
timotimo: just put a 1; at the end of your modules 03:37
timotimo labster: huh?
dalek kudo/nom: 25a0b3f | pmichaud++ | src/core/IO/Spec/Unix.pm:
Make IO::Spec::Unix.canonpath more efficient.
03:38
labster it sounds like a oneliner program is not working, so add a "1;" on it like perl 5 modules (as a joke)?
timotimo oh, that's funny 03:39
sorry, i don't know any perl5
labster Yeah, that was a misfeature of Perl 5, where a module had to return true to load correctly, so everyone puts a 1; at the bottom of the file. 03:40
timotimo whoa. that was a BAD idea. 04:06
r: for 1, 2, 3, 4 { when * > 3 { say "a" }; when * <= 3 { say "b" }; KEEP { say "oh my" } } 04:07
camelia rakudo 0e206e: OUTPUT«b␤oh my␤b␤oh my␤b␤oh my␤a␤oh my␤»
timotimo on my machine similar code caused a major meltdown
r: for 1, 2, 3, 4 -> $_ { when * > 3 { say "a" }; when * <= 3 { say "b" }; KEEP { say "oh my" } }
camelia rakudo 0e206e: OUTPUT«b␤oh my␤b␤oh my␤b␤oh my␤a␤oh my␤»
timotimo r: for 1, 2, 3, 4 -> $_ { when * > 3 { say "a" }; default { say "b" }; KEEP { say "oh my" } } 04:07
camelia rakudo 0e206e: OUTPUT«b␤oh my␤b␤oh my␤b␤oh my␤a␤oh my␤»
timotimo huh.
pmichaud ...feather only has 1.2GB memory? 04:12
or am I reading top(1) and free(1) incorrectly?
pmichaud and something is causing p6eval to churn on feather right now. 04:15
(maybe it always does that, but it's currently eating up a lot of CPU)
timotimo what do i have to write into my Foo module so that anyone who has use Foo will get the same result is if they also said "use Term::ANSIColor"? 04:26
[Coke] fwiw, pmichaud's last commit doesn't fix RT #117957 (not that it was meant to) 04:38
[Coke] once a branch is removed from rakudo/rakudo, can we get it back? 04:41
diakopter if someone still has it locally I suppose it could be re-pushed
[Coke] git-- svn++ 04:42
timotimo [Coke]: hg can do it, too, because branches are versioned along with the code (which i find SUPER weird)
colomon [Coke]: I'm not testing anything to do with roast, just testing how the modules work. 04:54
[Coke]: might be able to extend it to roast, I dunno. Same sort of idea, but not identical. 04:55
pmichaud timotimo: I suspect it's NYI in Rakudo, but S11 says that "use Term::ANSIColor :EXPORT;" will both import Term::ANSIColor and export its symbols 05:10
perlcabal.org/syn/S11.html#Compile-...mportation
timotimo cool, thanks 05:11
yeah, Error while importing from 'Term::ANSIColor': no such tag 'EXPORT'
pmichaud feel free to file a ticket :) 05:12
timotimo enh, it's not that important really
pmichaud or write a test case for it :)
or both :)
time for bed here; bbl
timotimo i'm staying up to give my sleep-arythm a kick in the bum 05:13
moritz \o
timotimo how would people like Term::Xterm256Color? 05:20
timotimo hm, nowadays, can i match individual thingies from the % operator? 05:48
r: say "foo,bar.baz!" ~~ /(...) % (.)/;
camelia rakudo 25a0b3: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter % (must be quoted to match literally)␤at /tmp/vHXk9rDWvz:1␤------> say "foo,bar.baz!" ~~ /(...) ⏏% (.)/;␤Unable to parse regex; couldn't find final '/'␤at /tmp/vHXk9rDWvz:1␤------> …
timotimo r: say "foo,bar.baz!" ~~ /(...)+ % (.)/;
camelia rakudo 25a0b3: OUTPUT«「foo,bar.baz」␤ 0 => 「foo」␤ 1 => 「,」␤ 0 => 「bar」␤ 1 => 「.」␤ 0 => 「baz」␤␤»
timotimo ooooh, that's excellent! :)
hm, now i realise i don't even need that >_<
FROGGS_ *g* 05:50
timotimo i may just be too tired, but i'm failing to make a simple bracket and comma coloring thingie with grammars 06:00
dalek rl6-bench: a3e6fb9 | (Geoffrey Broadwell)++ | analyze:
html_plot improvements: fix title; improve plot highlight contents to include series name and improve readability a bit
06:29
tadzik good morning #perl6 07:45
timotimo ===SORRY!=== 08:03
Null PMC access in find_method('Stringy')
i'm good at this! :)
labster good work timo 08:11
timotimo i think it came from creating a character class from braces, brackets and all other types of parenthesizing characters 08:12
is there a cleverer way to .comb alternating chunks of many non-brace-characters and single brace characters?
than to do <-[,(<[{}]>)]>*||<[,(<[{}]>)]> ? 08:13
nope, actually it's this 08:17
constant @twofiddy is export := "\e[38;5;{$_}m" for ^256; 08:18
(missing some paranthesis)
moritz use = not :=
and maybe precedence is wrong 08:19
is export = ("\e[38;5;{$_}m" for ^256).eager;
timotimo but do i want to do it eagerly? 08:22
i'm likely to only access the first 5
moritz maybe not eager 08:24
but you'll still need the parens
leontopod is Perl 6 1.0 out yet? 08:28
tadzik we have 2013.05 out 08:29
itz__ leontopod: at Christmas
FROGGS_ leontopod: the specification has no '1.0' yet so there is not implementation with the version '1.0' 08:30
moritz wonders if people also constantly ask if java 9 1.0 is out 08:40
leontopod I'm just trolling =) 08:41
how is everyone?
tadzik heh 08:42
moritz I'm just trolling =) 08:43
tadzik I think I've seen him before, maybe he really was just kidding?
moritz yes, I've seen him before, and it was never funny before, and never productive 08:43
arnsholt Yeah, Teratogen is a name I've seen before I think 08:44
sorear but which logs? 08:46
.privacy
yoleaux sorear: This channel is public. When I am asked when I last saw you, I may repeat things you say and what time it was when you said them.
sorear .help
yoleaux sorear: I'm yoleaux. Type .commands to see what I can do, or see dpk.io/yoleaux for a quick guide.
moritz sorear: I know that irclog.perlgeek.de and collabti respect [off] lines; I know it's not 100% private 08:47
arnsholt sorear: The ones linked in the /topic, obviously
sorear I thought yoleaux logged as well as keeping .seen
tadzik you only log once 08:48
moritz sorear: but probably not everything, just last line + timestamp per nick
sorear .private-prefix [off]
yoleaux sorear: Sorry, this command is admin-only.
moritz .private-prefix 08:49
yoleaux moritz: Sorry, this command is admin-only.
timotimo oh damn. i can no longer use the debugger, because the first thing it does is generate all 256 xterm-256colors before it does anything else 09:09
bbkr good morning 09:24
moritz Teratogen: you are correct. 09:37
Teratogen: just look through irclog.perlgeek.de/search.pl?channe...gen&q= and ask yourself how much you actually contribute to on-topic, useful discussions
and how much is only trolling and noise
we're not averse to a bit fun now and then, but if you only contribute noise, we will ban you permantently 09:38
or more precisely, I will ban you permanently.
itz__ r: say slurp.WHO 09:53
camelia rakudo 25a0b3: OUTPUT«().hash␤»
timotimo moritz: can you tell why constant @twofiddy is export := ("\e[38;5;{$_}m" for ^256); is eagerly evaluated at startup time? 10:10
moritz timotimo: is it? how can you tell? 10:11
timotimo it may be wrong; just what rakudo-debugger shows 10:12
moritz well, maybe rakudo-debugger tries to show the list
and thus triggers eager evaluation
r: constant @twofiddy is export :=(say "\e[38;5;{$_}m" for ^256); say 42
camelia rakudo 25a0b3: OUTPUT«[38;5;0m␤[38;5;1m␤[38;5;2m␤[38;5;3m␤[38;5;4m␤[38;5;5m␤[38;5;6m␤[38;5;7m␤[38;5;8m␤[38;5;9m␤[38;5;10m␤[38;5;11m␤[38;5;12m␤[38;5;13m␤[38;5;14m␤[38;5;15m␤[38;5;16m␤[38;5;17m␤[38;5;18m␤[38;5;19m␤[38;5;20m␤[38;5;21m␤[38;5;22m␤[38;5;23m␤[38;5;24m␤…
moritz :-)
ok, it's not just the debugger 10:13
masak oh hai, #perl6 10:16
tadzik hai masak 10:18
masak is teaching JavaScript! o/ 10:23
tadzik :)
nwc10 does JavaScript want to be taught? 10:24
masak oh, very much.
it's one of our most taught courses. :)
masak realizes too late that nwc10 was probably aiming for a misunderstanding of some kind
nwc10 yes. 10:25
Teratogen javascript is a pretty good language 10:26
java, on the other hand, is horrible.
Teratogen those two must be java lovers 10:29
FROGGS_ $ perl6 -e 'use v5; sub test($) { scalar @_ }; say test "a", "b"' # gives: 1b 10:33
$ perl6 -e 'use v5; sub test($$) { scalar @_ }; say test "a", "b"' # gives: 2
\o/
tadzik 1b?
oh!
FROGGS_ :o) 10:34
tadzik awesome, FROGGS_!
FROGGS_ it just can do $ and @ though, and I need to stash that prototype somewhere...
and I believe it wont work if the sub is declared after the sub-call is parsed :/ 10:35
tadzik Isn't that the same as in Perl 5?
iirc in p5 you can't omit () in subcall if the sub is not declared yet 10:36
FROGGS_ perl 5 says that the prototype must be known at compile time
tadzik ah
FROGGS_ so I guess it will work if you declare that sub right after its call within the file
$ perl -E 'use v5; say test "a", "b"; sub test { scalar @_ };' # nothing 10:38
$ perl -E 'use v5; sub test { scalar @_ }; say test "a", "b"' # 2
huh
cool
tadzik hm
the first says nothing? 10:39
FROGGS_ yepp
tadzik oh
I see
FROGGS_ same with a $$ prototype
tadzik I'd be surprised :)
FROGGS_ so I don't have to worry about that 10:39
tadzik indeed 10:40
FROGGS_ but it can't be the other way, since the knowledge of the prototype changes the parsing
and even p5 doesnt parse again when it hits a prototype to a previously used sub 10:41
konnjuta hi guys I posted a question on perlmonks regarding a perl 6 implemtation of a perl 5 code snippet: any help would be appreciated! www.perlmonks.org/?node_id=1035374 10:42
FROGGS_ but now, where do I stash the signature? in $*W in class Longname?
masak Teratogen: hi. long time no see. 11:07
Teratogen masak! =) 11:08
moritz www.perlmonks.org/?node_id=1035374 11:15
masak ooh, nice. 11:16
moritz: did you also consider showing off pipes? ;)
I think Perl 5 programmers might enjoy that...
moritz masak: I considered it, but then forgot about it 11:17
masak moritz: I have pipes on my mind right now :P 11:21
(PLPW participants will know why)
timotimo oh, so you can override the Lines class lexically and the lines method will use that class? 11:22
bbkr "~.words.reverse" without brackets looks so automagical :)
tadzik heh, it's raining in Warsaw again :) 11:24
Teratogen will most perl 5 code run without modification under perl 6?
moritz masak: I've added a version with feesd 11:26
*feeds
FROGGS_ Teratogen: basically "no", even when I am working on a perl5 slang for rakudo 11:29
Teratogen: but there is a "maybe" at the horizon 11:30
masak moritz++ 11:36
nwc10 OK, why is IO::Spec::Unix a port of File::Spec::Unix from before Nov 2006?
FROGGS_ nwc10: how do you come to that conclusion? 11:37
nwc10 perl5.git.perl.org/perl.git/blobdif...ec/Unix.pm 11:38
That commit changed //+ to /{2,}
er, /+
so the thing that pmichaud committed last night mirrors a fix made to File::Spec::Unix in Nov 2006
FROGGS_ nwc10: that was the initial commit for that piece of code: github.com/FROGGS/p6-File-Spec/com...a65b447a90 11:40
and I guess that is just my handwriting and not an old copy one F::S::U 11:41
timotimo r: my %f = '()<>[]{}'.comb; say "()" ~~ /@(%f.keys,%f.values)**2/ 11:57
camelia rakudo 25a0b3: OUTPUT«「()」␤␤»
timotimo how can i match "anything that's not in that list"? 11:58
bbkr tadzik: thanks for help with Curl on hackatons. I found later that CURLOPT_WRITEFUNCTION callback is not meant to be used for capturing data directly but rather to pass-through data between pointers. It needs also CURLOPT_WRITEDATA which is actual output buffer and lack of this one might have caused freeing issues. The simplest C flow is here: stackoverflow.com/questions/2376824...variable-c
I'll try to hack it today 11:59
FROGGS_ timotimo: using a cclass like <-[ ... ]> ? 12:00
konnjuta moritz: thanks for the reply to www.perlmonks.org/?node_id=1035374
timotimo i'd like to try that. can i just interpolate inside that? 12:00
<-[ @(%f.keys, %f.values) ]>? 12:01
FROGGS_ I think so, yes
timotimo something's gone horribly wrong :) 12:02
FROGGS_ r: my @a = "c"; say "abc" ~~ /<-[@a]>+/
tadzik oh, d'oh. Will take alook soonish, thanks
camelia rakudo 25a0b3: OUTPUT«「bc」␤␤»
FROGGS_ hmmm
timotimo oops :)
FROGGS_ r: my @a = "c"; say "abc" ~~ /<-[@(@a)]>+/
camelia rakudo 25a0b3: OUTPUT«「bc」␤␤»
FROGGS_ r: my @a = "c"; say "abc" ~~ /<{@a}>+/ 12:03
camelia rakudo 25a0b3: OUTPUT«「c」␤␤»
FROGGS_ r: my @a = "c"; say "abc" ~~ /<-{@a}>+/ # just NYI ?
camelia rakudo 25a0b3: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter < (must be quoted to match literally)␤at /tmp/ZIlKhoCqMv:1␤------> my @a = "c"; say "abc" ~~ /<-⏏{@a}>+/ # just NYI ?␤Unrecognized regex metacharacter - (must be quoted to match lite…
timotimo ask std?
FROGGS_ std: my @a = "c"; say "abc" ~~ /<-{@a}>+/ # just NYI ?
camelia std 0336087: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter < (must be quoted to match literally) at /tmp/MOR1NwSnkK line 1:␤------> my @a = "c"; say "abc" ~~ /<⏏-{@a}>+/ # just NYI ?␤Can't call method "from" on unblessed reference at STD.pm li…
FROGGS_ ó.ò 12:04
masak this is a regular reminder to sign up for the next #masakism, June 19: github.com/perl6/mu/wiki/perl6-wor...-june-2013
I guess as the date approaches, we'll advertise a bit more through blogs and reddit, like last time.
until then, be one of the exclusive first members to sign up! :D
FROGGS_ :o) 12:05
Teratogen masak, is it in Tempe, Arizona? 12:13
=D
tadzik yes, it is 12:19
it's on the irc, so it's going to be everywhere 12:21
timotimo only where people are, i'm afraid :( 12:23
(and sentient bots, but i call those 'people', too, because they deserve respect, too.)
moritz you mean you discriminate against non-sentient bots? sentientist! 12:24
timotimo they don't feel it like sentiens do 12:25
Teratogen I have a megahal bot I could bring in here =)
grondilu rn: say <foo bar>.all.substr(0, 1) 12:33
camelia niecza v24-51-g009f999: OUTPUT«all("f", "b")␤»
..rakudo 25a0b3: OUTPUT«all(f, b)␤»
masak Teratogen: better not. ;)
Teratogen yeah, I would get permabanned =(
grondilu rn: say <foo bar>.all.substr(0, 1) == one(*=
camelia rakudo 25a0b3: OUTPUT«===SORRY!===␤Unable to parse expression in argument list; couldn't find final ')'␤at /tmp/XOHTmmn4tK:1␤------> say <foo bar>.all.substr(0, 1) == one(*=⏏<EOL>␤ expecting any of:␤ postfix␤ infix stopper␤ in…
..niecza v24-51-g009f999: OUTPUT«===SORRY!===␤␤Bogus term at /tmp/Io2ELNiYEo line 1 (EOF):␤------> say <foo bar>.all.substr(0, 1) == one(*=⏏<EOL>␤␤Parse failed␤␤»
grondilu rn: say <foo bar>.all.substr(0, 1) == one(*) 12:34
camelia niecza v24-51-g009f999: OUTPUT«Unhandled exception: Cannot parse number: f␤ at /home/p6eval/niecza/lib/CORE.setting line 1502 (die @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3652 (ANON @ 10) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3654 (NumSyntax.str2num @ 5) ␤ at /h…
..rakudo 25a0b3: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: Mu *%_)␤ in method Numeric at src/gen/CORE.setting:865␤ in sub infix:<==> at src/gen/CORE.setting:3031␤ in sub infix:<==> at src/gen/CORE.setting:3029␤ in sub thread_junction at src/gen/CORE.sett…
grondilu rn: say <foo bar>.all.substr(0, 1) eq one(*)
camelia niecza v24-51-g009f999: OUTPUT«all(one(Bool::False, ), one(Bool::False, ))␤»
..rakudo 25a0b3: OUTPUT«all(one(False), one(False))␤»
masak Teratogen: no, but we would have a grown-up talk with you, in all likelihood.
looks interesting: nikic.github.io/2012/06/15/The-true...sions.html
Teratogen I have a dutch-hating bot
=)
masak Teratogen: ok, *then* I would permaban you. :)
Teratogen: in here, we are very thankful for our Dutch. :D 12:35
masak .oO( both the Dutch and the Duchesses )
grondilu rn: say so <foo bar>.all.substr(0, 1) eq one(*) 12:47
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«False␤»
grondilu rn: say so <foo far>.all.substr(0, 1) eq one(*)
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«False␤»
grondilu was trying a junctive way to write: "all strings start with the same character" 12:48
timotimo no, that won't do 12:49
try it with a bag
<foo bar>>>.substr(0, 1).bag.elems
r: <foo bar>>>.substr(0, 1).bag.elems.say
grondilu oh yeah, bags. I always forget about them.
camelia rakudo 25a0b3: OUTPUT«2␤»
timotimo do i gets a cookie? :D 12:49
grondilu timotimo++ 12:50
though I could have used .uniq as well. But I thought a junctive way would be cool 12:51
timotimo junctions are uber slow, though ;)
also, the >>.substr is kind of like .all.substr i think
grondilu I don't think so. .substr autothreads 12:52
rn: say <foo bar>.all.substr(1).WHAT
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«(Junction)␤»
timotimo kind of like, meaning it serves a sufficiently similar function 12:53
grondilu ah ok
FROGGS_ rn: say [eq] <foo bar>>>.substr(0,1)
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«False␤»
timotimo not bad either 12:54
grondilu yes I ended up using [eq]. But really I was curious if a junctive form could be used
timotimo that could short-circuit even
grondilu rn: say so <foo far>».substr(0, 1) eq one(*) 12:55
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«False␤»
timotimo perl6 is not prolog
grondilu rn: say so <foo far>».substr(0, 1) eq all(*)
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«False␤»
grondilu could be 12:56
isn't perl6 supposed to be able to do whatever other languages do?
colomon errr... no? 12:58
moritz no. 13:00
grondilu was not serious and should have added a smiley 13:00
FROGGS_ sad that goto isnt implemented yet, you could add it otherwise :/ 13:04
timotimo now that i've fleshed out my presentation framework as far as i can think, i believe i'll have to come up with some darn slides :( 13:06
parrot_Util timotimo: What is the title of your talk? (/me can't find you by handle on yapcna.org) 13:12
timotimo i don't go to yapcna, sorry 13:13
it's kind of about 2000 euros outside of my budget
plus minus 50%
entropia.de/GPN13:Fahrplan#Samstag...01.06.2013 - 18:00 o'clock
Util timotimo: Thanks, and good luck! 13:15
timotimo i've got colors, it'll be good
since i won't be having too much horizontal space, i made a coloriser for gists and similar things: t.h8.lv/demonstration_colors.png 13:17
Util Google translates your title as "A squirrel-guided tour of Perl 6". Is that an accurate translation?
timotimo it is 13:18
timotimo since i only have 1 hour and i want to get as many neat features and things in, it'll seem like i'm constantly getting distracted by shiny things, much like a squirrel would 13:18
Util Delightful! 13:19
timotimo i hope it will be equally as delightful to other people; especially those that have never seen perl6
FROGGS_ I guess they will be impressed :o)
timotimo that's an euphemism, no? :) 13:20
i think i'll present my presentation framework in a lightning talk 1.5h earlier
FROGGS_ if they know a bit about hacking they will enjoy it, but if they dont know a bit about hacking they'll probably just raise an eyebrow 13:23
timotimo as long as they don't raise their rotten fruit and vegetables at me ... ;) 13:24
FROGGS_ *g*
yeah, they can throw raw meat though
timotimo yeah, i don't mind that 13:25
say Timo.WHY; <- last line on my first slide. best line in my whole presentation (so far) :D 13:26
FROGGS_ hehe
moritz r: say Timo.WHY 13:32
camelia rakudo 25a0b3: OUTPUT«===SORRY!===␤Undeclared name:␤ Timo used at line 1␤␤»
timotimo just says where i study; is a boring bit of text
masak r: <foo bar>>>.substr(0, 1).bag.elems.say 14:51
camelia rakudo 25a0b3: OUTPUT«2␤»
masak r: <foo bar>>>.substr(0, 1).Bag.elems.say
camelia rakudo 25a0b3: OUTPUT«2␤»
masak waitwait... so we have *both* .Bag and .bag? 14:52
moritz r: <boo far>».substr(0,1).uniq.elems
camelia rakudo 25a0b3: ( no output )
moritz r: say <boo far>».substr(0,1).uniq.elems
camelia rakudo 25a0b3: OUTPUT«2␤»
masak decommutes 14:53
colomon .bag is supposed to go away. 14:55
I originally named it .bag, but was convinced .Bag is better. 14:56
I think I need to finish up working on my set/bag branch of roast and get it to masak...
[Coke] colomon: I wasn't referring to roast. I was referring to this: github.com/coke/rakudo-star-daily, which is testing whether or not star's module choices work. I suspect you're testing git-HEAD of everything, so I think there's room for a little duplication here. 15:05
timotimo r: <foo bar>\ >>.substr(0, 1).say; 15:22
camelia rakudo 25a0b3: OUTPUT«f b␤»
timotimo unspace is cool.
timotimo dude, i'm so tired right now 15:30
i'm in no shape to be making slides >_<
moritz excuses! 15:32
timotimo i even meant to post this in a channel where that kind of talk and emoticon use is more common, but i accidentally wrote it here! still on topic, though
moritz btw #git has 913 nicks at the moment, but I still have the feeling that the overall activity is lower than in here 15:35
[Coke] the fact that rt word wraps code is really nasty for people trying to test tickets. 17:30
FROGGS yepp 17:31
dagurval r: "hello world" ~~ /(hello)/; say $/[0]; 17:57
camelia rakudo 25a0b3: OUTPUT«「hello」␤␤»
dagurval what's with the 「 and 」 in the output?
jnthn That's how Match objects gist.
dagurval ah, ok, so I have to explicitly Str it 17:58
moritz right
or print it instead of say it
which .Str's for you
jnthn Or ~ it 17:59
moritz or join it
FROGGS or quote it 18:20
arnsholt jnthn: Do you know off-hand if setting Parrot's random seed to a fixed value might make the layout of objects the same between two runs (of the same program, obv)? 18:28
jnthn arnsholt: As in, where they get allocated? 18:30
jnthn I don't think that's a Parrot doing; that's more likely to be the OS' address space randomization. 18:30
dagurval r: "asdf" ~~ s:g/s/d/; 18:32
camelia rakudo 25a0b3: OUTPUT«Cannot modify an immutable value␤ in sub infix:<=> at src/gen/CORE.setting:13499␤ in block at /tmp/znfJoKQkxz:1␤␤»
dagurval is that the same as the sub($a) { $a = 5 } optimize-bug in RT? 18:33
arnsholt jnthn: Right, that's probably right. To the Google-mobile, I guess
FROGGS dagurval: no, in this case you are trying to modify an string 18:34
dagurval: the bug you are talking about is missing a containerization afaik 18:35
grondilu rn: say (my % = "foo bar" => 7)<foo bar> 18:48
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«(Any) (Any)␤»
grondilu rn: say (my % = "foo bar" => 7){"foo bar"}
camelia rakudo 25a0b3, niecza v24-51-g009f999: OUTPUT«7␤»
grondilu wishes he could write %h"foo bar" 18:49
jnthn %h<<'foo bar'>> 18:55
dalek kudo/jvm-support: a31ce41 | jnthn++ | src/Perl6/World.nqp:
Mark dyncomp boundaries.
19:21
p/rak-jvm-support: 4b6519a | jnthn++ | src/vm/jvm/QAST/Compiler.nqp:
Fix lexical lookups over dyncomp boundaries.
p/rak-jvm-support: 9ab48a0 | jnthn++ | src/vm/jvm/ (2 files):
Implement nqp::throw.
dagurval r: class A { has $!foo; method new { self.bless(*, foo => "bar") }; method b { say $!foo } }; A.new.b 19:58
camelia rakudo 25a0b3: OUTPUT«(Any)␤»
dagurval Why isn't foo "bar"?
moritz dagurval: because public constructors can't set private attributes by defautl 19:59
*default
that goes against the idea of "private" :-)
dagurval who is supposed to set private attributes, if not the constructor? o_O 20:00
that makes no sense to me, coming from C++
s/set/initialize 20:01
jnthn That's what a BUILD submethod is for
submethod BUILD() { $!foo = "bar" }
But you could have written has $!foo = 'bar'; in that case.
moritz I also don't understand why folks write private attributes, and then want to give the user of the object direct write access to that attribute (but not read access; it's private after all) 20:03
dagurval r: class A { has $!foo; method BUILD($f) { $!foo = $f }; method b { say $!foo } }; A.new("BAR").b()
camelia rakudo 25a0b3: OUTPUT«Default constructor for 'A' only takes named arguments␤ in method new at src/gen/CORE.setting:731␤ in method new at src/gen/CORE.setting:726␤ in block at /tmp/AbEfx9_TC2:1␤␤»
moritz dagurval: doc.perl6.org/language/classtut#Constructors 20:04
perlgeek.de/blog-en/perl-6/object-c...ation.html
dagurval ah, ok, BUILD doesn't like position parameters 20:05
tadzik BUILD is confusing :) 20:08
dagurval so I have to choose between public attribute or forced naming parameter to constructor
moritz not at all. 20:08
dagurval I guess I should rtfm then :) 20:09
moritz method new controls how the constructor receives arguments
method BUILD controls which ones are set
dagurval r: class A { has $!foo; submethod BUILD(:$!foo) { }; method new($p) { self.bless(*, foo => $p) }; method b { say $!foo } }; A.new("BAR").b() 20:12
camelia rakudo 25a0b3: OUTPUT«BAR␤»
dagurval got it!
timotimo i'm having a really hard time getting the japanese delimiters for matches working with urxvt. what font on linux would have that character? i can't seem to find that out 20:23
timotimo 9x15bold seems to have it! great 20:25
timotimo aaaand i messed it up again 20:27
turning autohinting, or hinting really, on breaks it immediately 20:28
geekosaur meaning it's in the bitmap font but not the ttf version, probably 20:34
timotimo weird. 20:38
pmurias got accepted into GSoC ;) 20:59
jnthn \o/
pmurias++
tadzik \o/ 21:00
awesome!
jnthn
.oO( pmurias QASTs JavaScript backend charm )
masak \o/ 21:02
pmurias++
I for one welcome our new Perl 6 browser overlords.
tadzik :) 21:03
splitcells why an our variable cannont have an type constraint in a package? 21:34
masak because a type constraint is not compatible with the way multiple sites can define and redefine 'our' variables. 21:35
splitcells ah 21:36
ty
masak pzh 21:40
sorear there's no reason in principle it couldn't be allowed, but we'd have to enforce a type-compatibility rule for mergers 21:42
nontrivial and low priority, sorry D:
masak aye. 21:43
'night, #perl6 21:44
grondilu pmurias: what will you work on? r u going to talk about it in a blog or something? 22:01
grondilu looks in the GSoC home page and looks for perl 22:05
grondilu finds this:
Rewrite the testing environment for Wget in Python. This is required since although Perl is a powerful language, it's syntax is quite non-intuitive to the C Programmers who write code for Wget.
www.google-melange.com/gsoc/projec...arnir/5001 22:06
:/
diakopter heh heh.
grondilu Yet I think perl is much more C-like than python :/
diakopter chromatic would enjoy writing a blog post about that quote "Python is more intuitive syntax to C programmers than Perl"
I'd enjoy reading it 22:07
grondilu It's actually possible to translate C-code into some perl code that VERY much look like the original C code. 22:08
grondilu I mean come on, isn't that obvious? 22:09
pmurias grondilu: a javascript backend for Perl 6 (nqp but hopefull rakudo in the future) 22:13
btyler cool! asm.js for bonus points :) 22:14
grondilu oh ok I see you project in the list now, pmurias
espadrine btyler: you can't really transpile perl 6 to asm.js. Asm.js doesn't have strings. 22:17
pmichaud pmurias++ # gsoc 22:27
I'm so happy to see that funded. 22:28
dalek rl6-roast-data: c851c90 | coke++ | / (4 files):
today (automated commit)
22:29
kudo-star-daily: 6b047df | coke++ | log/ (5 files):
today (automated commit)
dalek ecs: 415f998 | labster++ | S32-setting-library/IO.pod:
Add IO::Handle methods encoding and open (really!), cleanup slurp
22:45
lizmat is back home and ready to get some shuteye 22:48
sorear cheers 22:49
labster Aww, I was hoping pmichaud++'s patch would fix that heisenbug. 22:54
pmichaud well, so was I. Sort of. 23:10