»ö« | 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.
sorear what is the full spec rule? 00:00
00:03 Schwern joined
TimToady S05:2913 00:04
sorear and now, I've managed to make STD.pmc not store the RHS of = *at all* 00:07
TimToady /o\ 00:09
00:09 Schwern left
sorear hmm, actually, gimme5 *does* implement {'binding'} = [] 00:09
but only if you actually put the binding inside the quantifier
[ <foo> ]?
er
[ $<foo> = a ]?
TimToady ah
I'd say that's a buglet 00:10
is it worth fixing in gimme5?
sjohnson buglets are cuter than regular bugs 00:12
sorear TimToady: I'd say not 00:13
TimToady buglet: wall.org/~larry/cameliafav.ico 00:15
sjohnson that's cuet 00:16
sorear xli-- "cameliafav.ico is a 576x720 MacPaint image" 00:17
00:17 azert0x left
TimToady 32x32: wall.org/~larry/camelia32.ico 00:18
those might not be the most recent ones though 00:19
they look like some of the earlier prototypes that didn't do transparency right
sjohnson TimToady: did you draw that in The Gimp? 00:21
TimToady nod
sjohnson TimToady: you can get a decent sized 64x64 png or something with transparancies, and upload it to one of those online png -> .ico converters 00:22
and then they alloledge all the new resolution settings that windows has brought to the table, ater the 766 byte win3.1 icon days
TimToady the better version of 16x16: wall.org/~larry/camelia16.ico 00:24
(and the one from pugs repo)
sjohnson the 16x16 ones look cuter because the eyes look like pixel diamonds
TimToady the 32x32 is the same
yes, well, it's hard to get all the features in without a bit of distortion
sjohnson TimToady: members.shaw.ca/smujohnson/img/4cha...llface.png 00:25
TimToady: the distortion makes it cute though, so it worked out well.
00:26 kensanata left
sorear TimToady: what is the point of _PAREN? 00:30
and why does it differ so much from _BRACKET?
TimToady it knows that it is going to be _SUBSUMED, so it doesn't have to worry about preserving the original Cursory type 00:31
sorear why does it exist at all? 00:32
00:32 justatheory left
sorear instead of just clling the inner stuff directly? 00:32
TimToady um, logging entry and exit? yes, it's pretty useless other than that
sorear ah 00:33
00:33 masonkramer joined
TimToady but optimizing it won't get you much in STD itself, since parens are pretty rare 00:34
pugssvn r31037 | sorear++ | [viv] Hack - emulate gimme5's binding-to-quantified-atoms bug
TimToady for a long time it parens didn't even work in STD
sorear why does STD 5031 use parens at all?
why not brackets? 00:35
TimToady it might have originally been a $0, and got rebound when I discovered $0 didn't work, or decided it needed a better name in the parse tree :)
just guessing 00:36
sorear ah
TimToady actually, we could probably optimize away the BRACKET if it's going to be SUBSUMEd 00:37
ants & 00:38
sjohnson bust out the raid
TimToady did 00:41
fortunately, window ants, so could spray outside
since SUBSUME calls cursor_bind which reblesses into the parent, which dups what BRACKET does 00:42
sorear stage3 STD.pmc is now only 1500 lines different from stage2 00:43
with 19 errors 00:44
since stage2 now handles asserion:var correctly 00:45
00:45 masonkramer left
TimToady convergence is good 00:46
sorear the next order of business: backslash escapes in strings
TimToady that's always kinda fiddly 00:47
sounds like we'll be translating Cursor back to P6 pretty soon :) 00:48
sorear "back"?
TimToady the original Cursor ran under pugs
sorear I see.
TimToady but it was just too flakey
sorear Too slow?
ah
TimToady pretty slow too
but it would randomly crash 50% of the time 00:49
I'm sure it would be much more solid under newer Haskells
sorear well... I don't think /all/ of the stuff in Cursor can be mapped to Perl6
TimToady unless the problem was in the pugscode itself
well, we can piecemeal it 00:50
sorear what I was going to do was to split off Cursor.pm6 from CursorBase.pmc
TimToady especially if I ever finish STD_P5 well enough to parse 'use v5;' blocks :)
sorear Cursor.pm6 starts empty and sucks code in from CursorBase and STD
TimToady that's what I mean by piecemeal it
sorear e.g. EXPR, panic, lineof
sjohnson the ants wanted to look at camelia 00:51
TimToady is a perfectly valid way to develop it
00:51 Util left
sorear as a fringe benefit, it will become possible to use viv with other grammars but STD 00:51
TimToady you can use other grammers under gimme5, but you usually have to work at it :)
sorear yeah, but you have to name them STD and include FAILGOAL and lineof methods 00:52
possibly others
TimToady you only need FAILGOAL and lineof if you fail :)
00:52 masonkramer joined
TimToady but yeah 00:53
sjohnson: looking at pretty girls through windows is generally considered a bit antisocial 00:54
00:54 colomon joined
sjohnson they've probably had more luck with girls than i have had 00:54
at least aunts have gone in people's pants before
ants* 00:55
jnthn Oh gosh, 3am. 00:56
On the upside, I now has travel tickets and places to stay for the Perl workshops next month. \o/
sjohnson once rakudo is a bit more ready for production value, i'll be the first to program a female AI to talk to. how sad is that
TimToady jnthn++ # dealing with "Real Life" 00:57
jnthn :-)
sorear sjohnson: you've been beaten to the punch by about 50 years
TimToady Why do you say that once rakudo is a bit more ready for production value, you'll be the first to program a female AI to talk to. how sad is that
jnthn TimToady: Happily, one of the conferences even has a river trip as a part of it. :-) 00:58
TimToady How does this make you feel?
jnthn I have this sinking feeling...
TimToady Why do you say that you have this sinking feeling...? 00:59
sjohnson well, i was actually seriously considering doing a regular chat bot to prank some friends on ir
irc
but it might take too long... and i think it's also been done before
would be kinda fun though
TimToady /invite elizabot 01:00
sjohnson TimToady: reason i said it, is because most girls i meet don't really care about computer stuff :(
TimToady Is this something about your father?
TimToady wishes he could remember more of eliza's snappy comebacks... 01:01
jnthn
.oO( freudbot )
araujo sjohnson, that doesn't happen only to you hehehe
sjohnson well my dad did show my brother and i how to program in basic on an apple //e back when we were really young, maybe it does have something to do with it
sjohnson is 28 years old now 01:02
TimToady Does this bother you?
sjohnson heh, this reminds me of Dr. Sbaitso
TimToady I suppose I could switch to Perry... 01:03
araujo sjohnson, you depressed because you don't find gf?
sjohnson can haz gf with perl knowledge
TimToady it's the voices again...
01:04 colomon left
sorear does anyone here remember lambdabot's "eliza" module? 01:04
(else)
sjohnson araujo: i think it is just desire bothering me, not so much a lack of a gf... 01:05
araujo sjohnson, got my first gf after 27 years (been with her for 4 months) .. I really wanted to get one very badly back in the days ... to be honest with you ... now I see i wasn't missing much ... women are too hard for me to understand 01:06
if you say A, they say B,if you say B, they say A, if you say A & B, they say C
....
sjohnson perl6 can address those issues 01:07
sorear diff -y is my new favorite command
jnthn never quite managed to convince a girl to be his gf yet, but experiences gained through failure so far suggest...writing a Perl 6 compiler is easier. :-)
sjohnson araujo: thanks for the help. i should remember this. my cousin said that all his desires of girls have led to misery, whether or not he "succeeded" with them 01:08
jnthn guesses the debugging tools are just more advanced. :-)
araujo writing a Perl 6 compiler is kinder garden homework compared with closely understanding a girl
sorear is 19 and in no hurry.
araujo sjohnson, my recommendation is .. go and try .. that is what life is all about, I just tell you my personal experience ... 01:09
01:10 pausenclown left
[Coke] crazy kids need to get off my lawn is what. 01:11
sjohnson ahh, i kinda tried and failed many times, but my brain is too stupid to stop desiring. 01:12
TimToady one can never fail to truly love someone, whether or not they love you back 01:13
01:14 pausenclown joined
TimToady you can never fail at wanting what is best for another person 01:15
and one cannot acquire a true girlfriend without understanding the "friend" part 01:16
araujo love is good ..... now, if we talk about relationships ...
sjohnson pretty much all my desires have been selfish now that you mention it 01:17
... oopsies
[Coke] wonders if his 21 year relationship is on the high side for this discussion. kids. :P
01:17 rgrau left
sjohnson [Coke]: i was just gonna ask about kids actually 01:17
TimToady is sitting next to his youngest kid, who is 21 :) 01:18
kids change your life even more than a spouse, because you get to pick your spouse
but with kids, you just get what you get
sjohnson sounds like a good surprise with kids
TimToady not always :) 01:19
araujo I am sure kids would say the same at some point about parents :P
TimToady but they're good practice on that 'unconditional love' thing
sjohnson i kinda wish my dad watched anime with me
araujo well, you can love without a spouse or kids in this world
sjohnson an "anime dad" is hard to find
araujo hehehe
TimToady I kinda wish my dad was still alive 01:20
I periodically dream that he is, and it was all a big mistake :)
araujo we all will face that in life :(
sjohnson natural causes?
TimToady otoh, he'd be 90 now... 01:21
well, if congestive heart failure plus metastisized prostate cancer is "natural"... :)
he made it to 66
01:22 masonkramer_ joined
TimToady my mom will be 86 this year though 01:22
so there's some hope on that side
[Coke] TimToady: mine only to 45.
araujo going beyond 70 is already hard enough for this generation
TimToady she's still pretty sharp too
01:22 colomon joined
sjohnson i watch tv shows as often as i can with my dad, as i worry that he could go at any moment, and he's got a rare dry wit. *sniff* 01:23
TimToady ah well, I try to stay young at heart, at least in some of the good ways
colomon is there a log for #phasers?
jnthn colomon: aye but not much happened.
colomon 'k 01:24
jnthn I didn't even make any awful puns.
TimToady colomon: it's even mentioned in the /topic
nice to have a /topic now :)
jnthn "IR clogs.." :-D
colomon TimToady++ # was no topic there last time I remember looking.
sjohnson @karma
(´ー` ) 01:25
TimToady lambdabot was functionally exiled
jnthn realizes that he could find a pair of clogs and tell people they were infrared, but since you can't see that spectrum nobody would be able to tell they weren't. :-)
TimToady well, almost everything is infrared already
sjohnson TimToady, are you much of git guy? 01:26
TimToady not really 01:31
01:32 whiteknight left 01:33 atomicstack joined
sjohnson its kinda making my life easy at work, but there's a ton i have yet to learn about it 01:36
sorear the great thing about git is how little there is to learn about it 01:37
git - the stupid content tracker 01:38
araujo hehehe 01:39
sjohnson for me it's the content tracker that makes one feel stupid 01:43
if there is one thing i dont understand, it's what "git potty" means. it's in the man page. but googling only brings up the man page 01:46
maybe sorear knows
sjohnson crosses fingers
whatever it is, it sounds cute
araujo a perl 6 CVS , that is what we need 01:50
[Coke] no it isn't.
araujo Yet Another CVS 01:59
02:00 [mark] joined
jnthn Ho hum. Maybe I should try sleep. 02:00
sorear git: 'potty' is not a git-command. See 'git --help'. 02:04
snarkyboojum the 'potty' is a term they use to refer to the 'porcelain' or wrapper git commands which lead to the 'plumbing', i.e the core git programs 02:07
02:10 Chillance left 02:14 snarkyboojum left, agentzh joined 02:15 bluescreen joined, bluescreen is now known as Guest97772 02:16 Guest97772 left, Guest97772 joined 02:17 Guest97772 is now known as mariano 02:29 Guest35747 left 02:30 snarkyboojum joined 02:44 colomon left 02:48 plobsing joined 02:52 skids left 02:53 skids joined 02:55 justatheory joined 03:01 sorear left 03:03 sorear joined 03:06 meppl left
snarkyboojum is there currently any Rakudo LHF for the month? :) 03:07
the advent calendar test suite is pretty much complete - looking for something else to chew on :)
I know.. "if you have to ask"... :) 03:10
03:39 gfx joined
TimToady <sorear> TimToady: How does ./std precompile modules? Looking at it it seems to just be a thin wrapper over STD->parsefile 03:47
look at Cursor's you_were_here function
03:50 TiMBuS joined
sjohnson snarkyboojum: thank you 03:52
03:53 snarkyboojum left, mariano left, saaki joined 04:01 snarkyboojum joined 04:03 skids left 04:06 molaf joined, patspam left
TimToady eternaleye: your when's won't work because, in the absense of a declarator, binding to :() doesn't declare any variables 04:14
you want something more like:
rakudo: given a => 3 { when * -> Pair ( Str $key, $value ) { say $key } } 04:15
p6eval rakudo 18d996: OUTPUT«Nominal type check failed for parameter ''; expected Pair but got Bool instead␤ in main program body at line 11:/tmp/ugNYBju6pg␤»
TimToady see S03:3472 04:16
04:16 eternaleye left
TimToady and S03:3581 04:17
04:23 Wolfman2000 left
snarkyboojum rakudo: 2 <<+<< 1,2,3 04:27
p6eval rakudo 18d996: ( no output )
snarkyboojum rakudo: 1,2,3 >>+>> 2
p6eval rakudo 18d996: ( no output )
snarkyboojum rakudo: say 2 <<+<< 1,2,3
p6eval rakudo 18d996: OUTPUT«323␤»
snarkyboojum rakudo: say 2 <<+<< (1,2,3) 04:28
p6eval rakudo 18d996: OUTPUT«345␤»
snarkyboojum rakudo: say 2 <<**<< (1,2,3)
p6eval rakudo 18d996: OUTPUT«248␤»
04:28 eternaleye joined
TimToady hyperops aren't list infixes 04:30
eternaleye: see irclog.perlgeek.de/perl6/2010-06-02#i_2392634 04:31
snarkyboojum aren't list infixes?
TimToady no, so they only take a "scalar" argument on either side, which is typically an array 04:32
which is why you got the results above 04:33
whereas things like Z and X are designed to work on lazy lists
so take a list on either side
rakudo: say 2 X+ 1,2,3 04:34
p6eval rakudo 18d996: OUTPUT«345␤»
TimToady note, no parens needed
snarkyboojum right, but << will "extend" the "list" in the right?
or is that unspecced
TimToady since hypers are run-to-completion, they're more for singular objects that happens to be complex inside
*happen
snarkyboojum not sure what run-to-completion mean 04:35
means
TimToady spec says deficient dimensions will be extended, not deficient lists
snarkyboojum ah ok
TimToady so 2 can change to (2,2,2,2,2,2)
but (2,2,2,2) can't change to (2,2,2,2,2,2,2)
snarkyboojum yeah
ok
thanks :) 04:36
TimToady arguably, if we did something like that, (1,2,3,4) should extend to (1,2,3,4,1,2,3,4,1,2,3,4) rather than (1,2,3,4,4,4,4,4,4,4,4)
snarkyboojum sure 04:37
TimToady but since there are already ways to express either of those in terms of (1,2,3,4,*) or (1,2,3,4) xx *, it's not terribly important
eternaleye TimToady: Note that I only used $_ in the givens, not the vars in the signatures - :key($) would be clearer as I'm only using them for the name of the appropriate chunk of the pair 04:38
w/givens/whens/
snarkyboojum the temptation is there to create mamoth perl one liners with chaining hypers etc 04:39
mammoth
TimToady eternaleye: I was explaining your first result at irclog.perlgeek.de/perl6/2010-06-01#i_2389173 04:40
std: given a => 3 { when :( Pair ( Str $key, $value ) ) { say $key } }
eternaleye TimToady: Oh, that was just a trying something I wasn't actually using, but I wanted to know what happened
p6eval std 31037: OUTPUT«===SORRY!===␤Variable $key is not predeclared at /tmp/XcJtA61In5 line 1:␤------> ( Pair ( Str $key, $value ) ) { say $key⏏ } }␤Check failed␤FAILED 00:01 117m␤»
TimToady which std agrees with
eternaleye s/a/me/
TimToady whereas: 04:41
std: given a => 3 { when * -> Pair ( Str $key, $value ) { say $key } }
p6eval std 31037: OUTPUT«ok 00:01 114m␤»
eternaleye I was trying to make moritz_' example work, but I forgot to change that
TimToady that does declare $key over the block
but I don't think rakudo implements the * binding yet 04:42
sorear * <pointy> is legal?
what production?
oh, (when) (*) (pointy) 04:43
how does * differ from True?
TimToady xblock calls pblock, which is either with or without ->
it's less misleading :) 04:44
and doesn't get you a warning
std: given a => 3 { when True -> Pair ( Str $key, $value ) { say $key } }
p6eval std 31037: OUTPUT«Potential difficulties:␤ Smartmatch against True always matches; if you mean to test the topic for␤ truthiness, please use :so or *.so or ?* instead at /tmp/Wr91YRO81B line 1:␤------> given a => 3 { when True⏏ -> Pair ( Str $key, $value ) { say $key␤ok 00:01
..…
TimToady std: given a => 3 { default -> Pair ( Str $key, $value ) { say $key } } 04:45
p6eval std 31037: OUTPUT«===SORRY!===␤Missing block at /tmp/ohN3NdRwKY line 1:␤------> given a => 3 { default ⏏-> Pair ( Str $key, $value ) { say $key ␤Parse failed␤FAILED 00:01 111m␤» 04:46
TimToady heh
I guess default isn't quite the same as 'when *'
sorear TimToady: if you have a "local" deep inside a P5 expression, how does the local scope?
TimToady to the surrounding curlies, same as lexicals, more or less 04:47
sorear so the local is in scope but undef earlier in the block?
TimToady modulo the strange hidden blocks that sneak into p5 around certain constructs
"local" is not a noun 04:48
local is a verb that applies to a global var
so whether it's undefined earlier or not depends on its previous value
local itself undefines, by default, so you have to assign the previous value in p5 to keep the value 04:49
"temp" in p6 is supposed to default the other way, and preserve the outer value
which is why, in Cursor.pmc you see things like local $::HIGHWATER = $::HIGHWATER; 04:53
sorear yes
TimToady in p6 that'll just be temp $*HIGHWATER;
'course, temporizing dynamic vars in "real" p6 will be different from temporizing globals and ordinary lexicals 04:54
sorear so basically local $::FOO = 3 is SAVESV($::FOO); $::FOO = 3
TimToady and with real dynvars temp $*HIGHWATER turns into my $*HIGHWATER = $OUTER::HIGHWATER or something like that 04:55
sorear not a scoping construct at all
just save-stacked assignment
TimToady yes
which is not very thread-friendly
05:00 yinyin joined 05:02 Schwern joined 05:08 kaare joined 05:09 kaare is now known as Guest41943 05:14 BinGOs left, BinGOs joined 05:19 molaf left 05:35 lue left
pugssvn r31038 | sorear++ | [viv] Improve handling of non-subrule captures again 05:49
sorear STD.pm6 contains a line of the form <item=.sym> 05:50
this gets unfolded to $<item> = foo
gimme5 ignored the binding in this case
viv doesn't
so I neeeded to improve the AST processors 05:51
(actually, I changed Actions, not viv.)
I BELEIVE IT NOT. stage 3 == stage 2 !!! !!! !!! 05:58
05:59 cognominal left 06:05 snarkyboojum left, uniejo joined 06:09 justatheory left
sorear runs a make snaptest to establish a baseline 06:12
06:15 envi^home joined
mberends sorear++ 06:17
06:18 cognominal joined 06:19 Su-Shee joined
moritz_ good morning 06:22
sorear good morning moritz 06:23
I just successfully bootstrapped STD.pm6 and viv
moritz_ \o/
sorear will commit the needed Makefile changes after a double snaptest
06:25 snarkyboojum joined
eternaleye sorear++ # You rock so hard 06:25
sjohnson cool 06:27
sorear TimToady: How does lex/STD.pm6.store work? 06:44
06:45 s1n left 06:47 s1n joined
sorear I see 06:50
pugssvn r31039 | sorear++ | [Cursor] Allow lex/ and syml/ directories to be overridden
mathw Morning 06:51
pugssvn r31040 | sorear++ | [std] Add prototype node classes to silence errors from Actions 06:58
TimToady \ö/ 07:09
sorear++ sorear++ sorear++ sorear++ sorear++ sorear++ 07:10
sjohnson heh 07:14
TimToady but zzz & # will play with it in the morning 07:16
sorear in the morning, it will be installed as default
gimme5 may or may not be gone, depending on snaptest results
sleep well
07:17 mikehh left 07:22 snarkyboojum left 07:29 ejs joined 07:32 dalek left, hugme left, mathw left, pugssvn left, ajs left, clsn left, bkeeler left, jiing left, obra left, c1sung left, IRSeekBot left 07:33 ejs left 07:38 ejs joined, dalek joined, hugme joined, mathw joined, pugssvn joined, ajs joined, tootroot joined, clsn joined, bkeeler joined, jiing joined, obra joined, c1sung joined, IRSeekBot joined, card.freenode.net sets mode: +vvov hugme pugssvn bkeeler IRSeekBot 07:49 s1n left, dju joined
sorear snaptest ends at 94.36% 07:49
moritz_ is that the same as normal STD+gimme5 snaptest? 07:50
07:50 pmurias joined, dju left
sorear moritz_: that was the STD+gimme5 snaptest; I was establishing a baseline 07:50
moritz_ ah 07:51
did you also time it?
07:51 dju joined 07:52 s1n joined
sorear no 07:55
07:57 dju left 07:59 pmurias left
sorear Is it considered bad form to set PERL5LIB in Makefiles? 07:59
mathw I would think so 08:01
moritz_ rakudo: say "Perl 6 Advent".comb(/<alpha>/).join('|');
p6eval rakudo 18d996: OUTPUT«Cannot take substr outside string␤ in <anon> at line 11:/tmp/8a1sSMRqEw␤ in 'Cool::match' at line 2103:CORE.setting␤ in 'Any::join' at line 1898:CORE.setting␤ in main program body at line 11:/tmp/8a1sSMRqEw␤»
eternaleye Recent Camelia discussion prompted me to search the clogged infrared for this: www.perlportal.com/logo/camelia.html (originally posted by LylePerl). I particularly liked (and still do) #7 08:03
mathw If it doesn't get exported into the user's environment it's probably okay, but you would I think be better off passing include paths to perl
sorear mathw: I want it to affect subprocesses too 08:06
pugssvn r31041 | sorear++ | [STD-ecosystem] Change Makefile to use viv by default instead of gimme5. Check in a bootstrap copy of STD.pmc. 08:08
08:08 viklund joined
sorear next, I need to get snaptest to run at all 08:08
08:18 plobsing left 08:22 dakkar joined 08:38 clintongormley joined
pugssvn r31042 | sorear++ | [viv,STD_P5] Fix STD_P5 for viv, which is rather stricter about valid P6 08:47
08:52 BrowserUk left 08:59 cli_ joined
moritz_ www.modernperlbooks.com/mt/2010/06/...ation.html "If you've worked with macros in C or C++ or source filters in Perl 5, note that they have file scope" 09:06
I thought C/C++ macros are pretty much global
arnsholt They're only accessible in the files where they're either #defined or #included 09:09
But global at file level, yes
moritz_ I meant that more in the sense of: I write an include file, that uses a macro internally
but if I don't care, it's available globally, ie in any file that includes my file too 09:10
arnsholt Yeah, in that sense it's global
moritz_ in that sense it has larger scope than file
rakudo: '1 ' ~~ /.*/; say +$/ 09:15
p6eval rakudo 18d996: OUTPUT«1␤»
arnsholt The problem is that C has a messed-up view of how to include libraries, and what is file-scope 09:21
Seeing how #include just pastes a file into your file
moritz_ right
mathw of course you can #undef a macro when you're done with it so it doesn't leak 09:24
moritz_ but the fact that you have to take extra care is bad 09:25
and what if that macro existed (but with different contents) before the #include line?
09:27 yinyin left
arnsholt I can't remember what happens then 09:27
Might be implementation-dependent
mberends grammar hai { rule TOP { ^ <.ws> HI } }; class hai::act { method TOP($m) { say "YO!" } }; hai.parse("HI", :actions(hai::act)); # works 09:28
rakudo: grammar hai { rule TOP { ^ <.ws> HI } }; class hai::act { method TOP($m) { say "YO!" } }; hai.parse("HI", :actions(hai::act)); # works
p6eval rakudo 18d996: OUTPUT«YO!␤»
mberends rakudo: grammar hai { rule TOP { ^ <.ws> HI } }; class hai::act { method TOP($m) { say "YO!" } }; hai.parse(" HI", :actions(hai::act)); # inserting a space fails. HALP! 09:29
p6eval rakudo 18d996: ( no output )
moritz_ rakudo: grammar hai { token TOP { ^ <.ws> HI } }; class hai::act { method TOP($m) { say "YO!" } }; hai.parse(" HI", :actions(hai::act)); 09:30
p6eval rakudo 18d996: OUTPUT«YO!␤»
mberends oh, token. thanks moritz_++ 09:31
mathw moritz_: well in the normal case that macro wouldn't exist afterwards. you can detect it, save it and restore it, but to do that for every macro... this is why macros cause pain :)
moritz_ I guess that the implict <.ws> from 'rule' and the explicit one interact badly... but I don't know why
mathw: but don't you need another macro for storing the old contents?
which you'd have to clean up again, recursively?
mathw yes 09:32
there's a good guideline, it says 'don't use macros in header files', and it's paired with one that says 'if you do use macros in header files, give them names very likely to be unique' 09:33
moritz_ "we built you this cool language; but pulease don't actually use its features; they are harmful for your dog" 09:34
09:34 masak joined
masak oh hai, #perl6! 09:35
moritz_ good (late) morning, masak
mberends oh hai, masak!
moritz_ how are those bufs coming along?
mathw moritz_: well the thing is that it's not cool, it's merely ubiquitous 09:36
moritz_ right :-)
mathw moritz_: and I like C++, but that's also not cool, it's a tangled mess of things which are cool, things which are supposed to be cool but aren't really implemented properly, and things which are enough to send you screaming for a mental hospital (usually those are the bits inherited from C) 09:37
but it pays the bills :)
so I can't hate it too much
masak moritz_: the road ahead for the week is clear. now post-Yapsi-release, I'll take a session or two with them.
mathw lolitsmasak!
masak lol!
mberends masak: did an answer to the proto rename question come to you in your sleep?
mathw masak: mi ŝatis vian Yapsi-anoncon. 09:38
masak mberends: dunno. haven't quite woken up yet... :)
mathw: dankon!
mberends the pls suggestion has appeal (feeble pun intended) 09:39
moritz_ want to rename proto to 'pls'? 09:40
./pls gimme FakeDBI ?
masak probably 'install' rather than 'gimme'; but yes :) 09:42
it's being considered.
for a while I also considered throwing away the current proto, with all its cruft, and doing pls as a new, light-weight project with lessons incorporated and with a testable core, etc. but that's probably too risky. :/ 09:43
don't want to end up in limbo like those Perl 6 people.
er, I mean
moritz_ second systems, anybody? 09:44
masak ...yes, but I would do it right!
moritz_ :-)
masak about Buf: the other week, jnthn looked slightly taken aback with the propensity of Buf.new to take its values slurpily, rather than contained in an array in the first argument. so Buf.new(1, 2, 3) rather than Buf.new([1, 2, 3]). 09:52
apparently the former is expensive from a signature-construction viewpoint.
would it be a good idea to change the spec to the latter? 09:53
moritz_ wfm
(but please leave a comment in the spec explaining the reason)
masak IMO, changing the spec to the latter would also make it look a bit more like a cast from an array to Buf, which might be a good mnemonic.
will do. 09:54
mberends it also mirrors the reverse conversion more symmetrically 09:55
masak aye. mberends++
by the way, what the heck is Blob? S02 says it's an 'undifferentiated mass of bits' -- isn't that what Buf is? or does 'undifferentiated' here mean 'without ordering'? that sounds singularly useless. 09:56
mberends the intent was probably similar to Buf 09:57
masak are there any conversion rules for converstions between Buf and Blob?
why isn't Blob in S32?
masak checks the blame
moritz_ masak: I'd guess it's a bit like a Buf, but not indexable
mberends take "undifferentiated" to mean "opaque"
masak moritz_: I'm getting a "don't do that, then" feeling about that. 09:58
moritz_ really depends on the efficiency of the Buf implementation
masak "it hurts when I index the Buf!" -- "well, here's an identical type, which you can't index"
seems some guy named lwall has added Blob. anyone know if he hangs around here sometime? 09:59
moritz_ can you append to or delete from a Buf?
masak depends if it's mutable or not, I guess. 10:00
but yeah, I've been thinking of it as mostly a special kind of Array type, so...
mathw I thoguth a Buf was just a 'string-like' and maybe 'array-like' load of bytes in some order, so I would hope you can append new bytes to it 10:01
moritz_ so you need to do internal book-keeping, possibly reallocate memory etc
whereas I guess a Blob just stores a pointer and a length
nothing more
mathw sounds plausible 10:03
masak well, Blob is unusable if you can't interact with it somehow, like say convert it to something more mutable. and the spec doesn't say yet. 10:04
moritz_ probably supports coercion to Buf, and maybe unpacking
mathw I would hope that you could convert it to a Buf if you wanted to play with it
although I'm sure in Blob form you could look at it 10:05
mberends do you think the name Blob was chosen to resemble the database usage of blob, which is binary large object (such as a file image) 10:06
moritz_ I'm pretty sure it was, yes
mathw analogises converting a Blob to a Buf to taking the Mona Lisa out of the protective glass in order to flick paint at it
mberends: yes, I do
10:07 orafu left
mathw It suggests that it's a lump of binary data that has no intrinsic meaning perhaps 10:07
mberends then a Buf could usefully be a subrange of all the bytes
mathw you have to do something to it to make it understandable
like, feed it to a grue (or a JPEG decoder)
10:08 orafu joined
moritz_ rakudo: say %(1, 2) 10:09
p6eval rakudo 18d996: ( no output )
pugssvn r31043 | masak++ | [S32/Containers] Buf does Stringy, too 10:10
r31044 | masak++ | [S32/Containers] Buf.new parameter no longer slurpy
r31044 |
r31044 | Feedback from implementors suggests that this would be too inefficient.
r31044 | Also, might be good to highlight that the array is an array in the
r31044 | constructor. Also, this makes conversion back and forth Buf<->Array look
r31044 | more symmetrical.
10:11 synth left, synth joined
pugssvn r31045 | masak++ | [S32/Containers] oh, and let's bump the version, too 10:11
moritz_ rakudo: use MONKEY_TYPING; augment class Str { method postcircumfix:<( )>($x) { ~$x } }; say Str(42).perl 10:12
p6eval rakudo 18d996: OUTPUT«Could not find sub &Str␤ in main program body at line 11:/tmp/CFuAuCIpuE␤»
10:12 satyavvd joined
moritz_ rakudo: use MONKEY_TYPING; augment class Str { method postcircumfix:<( )>($x) { ~$x } }; say (Str 42).perl 10:12
p6eval rakudo 18d996: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 11␤»
masak moritz_: postcircumfix:<( )> takes a Signature nowadays.
moritz_ rakudo's parsing is too robust to be cheated that way 10:13
10:13 ive joined
satyavvd how can I know method signature from within program? 10:13
for example Str.subst? 10:14
10:14 Trashlord left
moritz_ rakudo: say Str.^methods.grep({.name eq 'subst'})>>.signature>>.perl 10:15
p6eval rakudo 18d996: OUTPUT«get_attr_str() not implemented in class 'Perl6MultiSub'␤ in main program body at line 1␤»
moritz_ rakudo: say Str.^methods.grep({.name eq 'subst'})>>.WHAT
10:15 Trashlord joined
p6eval rakudo 18d996: OUTPUT«Multi()␤» 10:15
10:15 ive left
masak submits rakudobug 10:15
moritz_ rakudo: say Str.^methods.grep({.name eq 'subst'})>>.signature
p6eval rakudo 18d996: OUTPUT«get_attr_str() not implemented in class 'Perl6MultiSub'␤ in main program body at line 1␤»
mathw I'm sure that used to work 10:16
maybe that was in alpha though
moritz_ rakudo: my $multi = Str.^methods.grep({.name eq 'subst'}); say $multi.candidates>>.signature>>>.perl
p6eval rakudo 18d996: OUTPUT«===SORRY!===␤Missing << or >> at line 11, near ".perl"␤»
masak alpha: say Str.^methods.grep({.name eq 'subst'})>>.signature.perl
p6eval alpha 30e0ed: OUTPUT«[undef]␤»
masak :D
satyavvd ok
moritz_ rakudo: my $multi = Str.^methods.grep({.name eq 'subst'}); say $multi.candidates
p6eval rakudo 18d996: OUTPUT«Method 'candidates' not found for invocant of class 'GatherIterator'␤ in main program body at line 11:/tmp/GRO6BQpcKC␤»
moritz_ rakudo: my $multi = Str.^methods.grep({.name eq 'subst'})[0]; say $multi.candidates 10:17
p6eval rakudo 18d996: OUTPUT«subst␤»
moritz_ rakudo: my $multi = Str.^methods.grep({.name eq 'subst'})[0]; say $multi.candidates[0].signature.perl
p6eval rakudo 18d996: OUTPUT«:(Mu : Any $matcher, Any $replacement, Any :samecase($samecase), *%options)␤»
masak \o/
moritz_ hah, beat it into submission!
mathw interesting
10:18 gbacon joined
mathw rakudo: say Str.^methods.grep({.name eq 'subst'})>>.candidates>>.signature.perl; 10:18
masak is sorely tempted to patch it to report :$samecase instead...
p6eval rakudo 18d996: ( no output )
mathw aaww
10:18 pnate joined 10:26 gbacon left 10:28 ejs left
pugssvn r31046 | masak++ | [spec/S32-str/encode.t] un-flattened Buf.new arguments 10:29
r31046 |
r31046 | The old constructor with a slurpy array is no longer in the spec; using
r31046 | the new one with a positional array instead.
10:34 ejs joined 10:43 skangas joined
masak hm; Parrot has more problems than I thought with handling string encoding. :/ 10:47
pugssvn r31047 | masak++ | [encode.t] removed a few fudgings 10:48
jnthn o/ 10:49
masak: +1 on the non-slurpy constructor :-) 10:50
10:52 fda314925 left 10:55 fda314925 joined, lichtkind joined
lichtkind moritz_: vielen dank nochmal 11:19
moritz_ lichtkind: context? 11:23
lichtkind moritz_: your correction of my rakudo article, in 2 spots you missed my point but the rest is very valuable 11:24
moritz_ ah. (I barely remember it)
11:31 colomon joined 11:35 proller left, proller joined, gfx left 11:39 colomon left 11:47 colomon joined 11:48 snarkyboojum joined 11:49 ejs left
lichtkind moritz_: yes its been a while but due rakudo delay i also delayed the article 11:49
masak hey, people! only two projects on proto.perl6.org/ have icons. why aren't more people using this excellent opportunity to put a face on their project? 11:50
lichtkind: what delay? the goal was Q2 from the start.
lichtkind: April was just an internal, optimistic estimate.
lichtkind masak: i took that for real 11:51
jnthn masak: Can't draw. ;-)
moritz_ masak: like jnthn++, plus lack of ideas 11:52
also I haven't read any documentation about what to do to make it display on that web page
jnthn isn't sure what he'd do for Zavolaj
masak I can't draw either, but that hasn't stopped me.
jnthn Maybe a classy stickman calling out something 11:53
moritz_ there are different levels of not being able to draw :-)
masak moritz_: just put a 32x32 png at logotype/logo_32x32.pmg :) where should I put that info so that people will notice it?
arnsholt jnthn: A dialog bubble perhaps?
Might be more distinctive at 32x32 11:54
masak 32x32 doesn't allow for very much detail.
jnthn arnsholt: Yeah, that could be even simpler.
The name literally means "Call!"
moritz_ masak: www.goerlitz-webdesign.de/uploads/p...schung.gif for SVG?
or something similar
jnthn (though it nearly ended up as "Call me! ;-)"
)
moritz_ masak: in proto, and on the website
11:54 ejs joined
masak moritz_: that's not half-bad as an icon... 11:55
moritz_: I can put it in proto. for the website, I would like to see a link to a site with "here's what you do to win all the medals" stuff.
moritz_ proto.perl6.org/about ? 11:56
11:56 satyavvd left
moritz_ or /candy, /badges, /cuteness 11:57
masak or /howtowin
hm, /how-to-win, maybe 11:58
moritz_ 'win' sounds more like there's a goal, and once you reach that, you're done 12:00
I'm afraid that that's not how Perl 6 works :-)
12:00 ejs left, atomicstack left
jnthn /how-to-fail-less ;-) 12:01
masak /how-to-score 12:02
jnthn lol
masak hastens to point out that he's not a native and might not understand all the subtleties of the English tongue 12:03
jnthn masak: It's...a completely innocent phrase!
masak oh phew. :)
jnthn ;-)
moritz_ how disappointing :-)
masak /some-notes-on-scoring 12:04
I'll stop now. :)
name it whatever you like. I can supply the contents.
jnthn chuckles and wonders what the page will actually end up as
12:05 ejs joined
snarkyboojum /fame-and-profit 12:05
moritz_ likes that one :-) 12:06
masak likes
snarkyboojum heh
hejki wot
i like the shorthand of that .. fap
masak dang. not again!
jnthn ohnoes.
12:07 JimmyZ joined
hejki also this subject brings eric clapton into my mind.. 12:07
hejki wonders is the dude is actually a slowhand
if*
moritz_ can you play guitar with a slow hand?
takadonet morning all 12:08
hejki moritz_: ofc you can
masak takadonet: \o
hejki moritz_: that's called playing 'dynamically' or 'with feeling'
moritz_: a stupid excuse for less technical guitarists to not learn playing their instruments properly :>
(at this point it should be obv. i'm into shredding and sweeping :) 12:09
moritz_ :-) 12:10
12:10 bluescreen joined
moritz_ masak: I've enabled Option MultiViews for proto.perl6.org. So if you add a file fame-and-profit.html you'll be able to use the URL without the .html suffix 12:10
12:10 bluescreen is now known as Guest23820
masak \o/ 12:10
mathw Surely 'dynamic' guitar playing would involve a variation in speed of hand movements, as well as other things. 12:13
moritz_ (mostly off-topic) two or three years ago I experimented with multiviews to offer SVG files for svg capable browsers 12:14
snarkyboojum or not knowing the speed and variation at composition time :)
hejki mathw: sure, but slowhands call bending and hammeronpulloffs 'dynamic' :)
moritz_ ie instead of /image/foo.png I'd use the URL /image/foo, and let the browser decide if they prefer svg or png
hejki snarkyboojum: no.. that's improvisation.. i think it could be analogued into 'prototype' programming ;> 12:15
mathw hejki: pah. Bending notes is melodic or decorative, not a dynamic change.
moritz_ turned out most browsers would display no image at all from an <img src=...
but most worked when pointed to the URL directly
masak something like this? gist.github.com/422289
hejki mathw: ofc.. but slowhands think otherwise ;>
moritz_ browsers--
mathw hejki: In that case, I will stop thinking about them. 12:16
hejki :)
nice
moritz_ masak: something like that
masak moritz_: that's been my experience too with SVG.
12:16 agentzh left
moritz_ SVG has some super awesome concepts 12:16
like inlining in xhtml, and then inlining xhtml in SVG again 12:17
12:17 ruoso joined
moritz_ you could make *beautiful*, standard conform and accessible web pages with that 12:17
mathw yes
masak when we get Emmentaler up-and-running, we'll even be able to test for 'super awesome'! \o/
moritz_ but... browser support is neglectable
and even those that do support it have huge gaps in their rendering engines 12:18
reminds me a bit on Perl 6 compiler support :/ 12:19
jnthn looks forward to Emmentaler being real, rather than just all this Emmen-talar ;-)
(sorry, multi-language pun...)
12:20 IllvilJa joined
ruoso phenny, tell pmurias we're failing to meet in IRC a lot... please send me an email so we can communicate better... 12:20
phenny ruoso: I'll pass that on when pmurias is around.
moritz_ talar = talking or so?
jnthn moritz_: Yeah
moritz_ feels like Hero of Foreign Language Pun Guessing
speaking of guitars... I'm listening to some music by Mark Knopfler at the moment 12:22
fascinating how many different sounds such a guitar can produce :-) 12:23
snarkyboojum moritz_: agreed - Knopfler is a legend
IllvilJa runs 'make spectest' for latest rakudo from github, just for the excitement
moritz_ and I'll be at an open air concert of his next month \o/ 12:24
masak jnthn: nice pun. :P
jnthn also likes Dominic Frasca, who manages to sound like a group of people playing rather than just one guy
moritz_ btw I've also got some really nice music recommendations from the perlmonks chatterbox :-) 12:25
masak jnthn: "Emmen" translates as "the M's". that would be me, moritz_ and mathw right now.
moritz_ well, jnthn++ is right, we're doing too much talking 12:26
:-)
masak :)
moritz_ I've been wanting to implement that Runge Kutta algorithm in Perl 6 for ages now
masak what's stopping you? 12:27
mathw do it!
whatever it is
do it
moritz_ the talking is stopping me :(
mathw /kick moritz_
moritz_ good thing you're not an op :-) 12:28
mathw I am somtimes :)
nah the talking's good
snarkyboojum let's talk about Runge Kutta then :P
mathw it's providing me with something to look at that isn't a brain-meltingly strange deadlock
IllvilJa looks up Runge Kutta on Wikipedia 12:29
jnthn masak: Heh, bonus. :-)
jnthn should really write some more Perl 6 modules
masak jnthn: would probably write it as "M-en" or something, but it was clear what you (accidentally) meant :)
IllvilJa Ah, numerical analysis methods. Nice stuff. ++ for that moritz_ 12:30
cognominal jnthn, or more to the point some american dude, because english men only play crickets, about "how to score", I heard in some movie, "he only reached second base". What are the said bases?
jnthn Yeah, crickets are way underrated by the Americans for their potential as instruments. 12:31
;-)
cognominal I must go for a few hours, so I will read the backlog.
jnthn cognominal: I've...never quite figured it out but xkcd has a helpful guide, iirc.
cognominal: xkcd.com/540/ 12:32
cognominal I must say this is not really about baseball
jnthn++
moritz_ ALL YOUR BASE ARE BELONG TO US or so?
cognominal xkcd++
moritz_++
12:33 BrowserUk joined
cognominal anyway I will never understand these american games, in the states, I never reached second base. :) 12:34
cultural misunderstandings, probably. 12:35
afk&
jnthn
.oO( :2<...> # you can haz second base in Perl 6... )
12:38
masak warning! pun density is reaching critical levels. 12:39
jnthn lunch &
12:40 perlNewbie joined
masak perlNewbie: \o 12:41
12:43 ejs left 12:47 perlNewbie left
masak helped perlNewbie over privmsg :) 12:47
12:48 Jedai left, ejs joined
mathw masak++ 12:51
masak he really wanted #dancer on irc.perl.org
moritz_ not quite Perl 6 :-)
12:51 ejs left
masak I wonder which project is older, Dancer or Astaire? 12:52
same question with Plack and Web.pm.
regardless, I don't doubt for a second that the Perl 5 versions are further along in development :) 12:53
12:59 SmokeMachine joined, rgrau joined
masak aww, #dancer didn't get a chance to help perlNewbie. :( he left after only two minutes. 13:01
moritz_: I patched proto, so now the page should show up in the next update. 13:03
13:04 rv2733 joined
moritz_ \o/ 13:05
the Runge-Kutta code in Perl 6 is somewahat both scary and beautiful at the same time 13:06
13:06 viklund left
moritz_ nopaste.snit.ch/20830 13:09
warning, only sparsely tested
it's nice that these vector additions work without loops 13:12
13:14 [mark] left 13:16 Guest41943 left 13:20 wallberg joined, BrowserUk_ joined 13:21 masonkramer_ left, masonkramer__ joined
colomon moritz_: you shouldn't need the parens to get the hyper precedence in there.... 13:22
13:22 BrowserUk left
moritz_ right 13:22
works without 'em too 13:23
I don't understand the output though
13:24 skids joined
moritz_ it's supposed to be y(t) = t**2 13:24
+1
so dydt(t) = 2 t
and it says y(t = 1) = 10
should be 1**1 + 1 = 2 13:25
... slight mismatch :-)
I'm not properly scaling the step size somewhere
13:34 BrowserUk_ is now known as BrowserUk
masak moritz_: link is up at the bottom of proto.perl6.org/ -- but it didn't work. do you have time to check what's up on the server end? 13:34
moritz_ masak: trailing slash in URL 13:37
masak oh.
masak fixes
moritz_ Could not get a description for http-daemon from gitorious.org/http-daemon/, that's BAD! 13:38
masak I did the minimal possible with the new page, by the way. it's hardly even HTML. if someone wants to give it a proper layout and/or hook it up with the templating engine, feel free.
wallberg hi all! I'm playing with files and filehandles in rakudo using this guide: www.programmersheaven.com/2/Perl6-FAQ-Files#env and keep having troubles. Is the file IO not at all in place in rakudo, or has the syntax changed. For instance, when trying to do: "my $line = $fh.readline();" is this error expected: "Method 'readline' not found for invocant of class 'IO'" in the console? 13:40
moritz_ wallberg: that's now called $fh.get
masak wallberg: it's not all in place. the syntax has changed.
someone should update that FAQ... 13:41
wallberg ok. and what about file tests? ~~ :e and such?
13:42 uniejo left 13:44 ejs joined
jnthn rakudo: say "README" ~~ :e 13:44
p6eval rakudo 18d996: OUTPUT«1␤»
jnthn rakudo: say "READMEEEEEEEEEEEEEEEEEEEEEEEEe" ~~ :e 13:45
p6eval rakudo 18d996: OUTPUT«0␤»
masak we decided that such a file name might seem a tad desperate.
jnthn Seems to work.
masak: If you want anyone to actually read it, you have to call it IGNOREME :-) 13:46
masak then evereyone except Alice in Wonderland will read it :P
wallberg masak: we should really get that Uppsala.pm going and get together to do some documentation. I mean the stuff at programmersheaven is good content, the kind of info you need to get going, but outdated it seems.
masak wallberg: I'm all for that. 13:47
wallberg: oh, it's you! now I remember :P
wallberg haha
jnthn probably has an edit bit for the PH stuff
Used to at least. 13:48
wallberg masak: need to fetch the kids. see ya.
masak o/
jnthn ooh, yay, I still do 13:50
13:50 SmokeMachine left
masak jnthn++ 13:51
moritz_ note to self: don't confuse + and * in mathematical operations, or the output will make no sense
especially 1/3 + $small_number is much larger than 1/3 * $small_number 13:52
13:52 kaare joined 13:53 wallberg left, kaare is now known as Guest78488
moritz_ \o/ rk4 now works for the simple cases I've tested it with 13:53
(that is, solve dy/dt = 2t and dy/dt = 3 t**2) 13:54
13:57 lichtkind left 13:58 plobsing joined, gbacon joined 14:04 ejs left 14:08 ejs joined 14:09 plainhao joined 14:10 JimmyZ left 14:14 SmokeMachine joined 14:26 BrowserUk left, BrowserUk joined
masak having now backlogged, I can only agree that sorear++ rocks so hard. 14:28
also, this gf business is indeed very opaque. 14:29
moritz_ gf business?
jnthn moritz_: Last night's backlog was full of angst. ;-)
moritz_ ah
[particle] let's leave that in backscrollland
masak agree. but I kinda liked the conversation. :) 14:30
14:33 rv2733 left
masak when do we get heredocs in Rakudo? :) 14:35
it should be possible with the new cool parser tech, right?
jnthn "when somebody implements them" ;-)
masak no duh. :) 14:36
jnthn Apparently, they're just generally non-trivial even with the cool parser tech.
Su-Shee ah. and yet again it's we are difficult to understand - not the geek plainly lacking knowledge. ;) ah well..
[Coke] jnthn: surely if PIR can do them, you can. :P 14:37
moritz_ PIR is inherently line based
Perl 6 not
that makes the 'starts from the next line' thing a bit harder
or was it 'starts after the end of the current statement'?
jnthn moritz_: I think part of it is that you can, iirc, specify a regex to decide where the heredoc ends too. 14:38
[Coke]: I wonder who implemented the heredocs in IMCC... ;-)
moritz_ do we habe .nibble in Rakudo yet? 14:39
it's how STD.pm does the heredocs 14:40
masak Su-Shee: I thought that amounted to the same thing. also, I just promised not to bring this topic up again, so I didn't say this.
jnthn moritz_: I think the Regex grammar we use has some nibbler thingy. 14:41
moritz_ from reading STD.pm, getting the nibbler (whatever that is) right is much harder than actually parsing heredocs, once the nibbler is in place 14:42
masak moritz_: the nibbler (IIRC) is the thing that parses quote-like things. 14:43
maybe it does more than that. but it's actually not that long or hard to grok.
I've understood it briefly at least twice. :)
14:43 xomas_ is now known as xomas 14:45 plobsing left, wallberg joined, patspam joined
mathw masak: that doesn't sound like you actually grokked it though 14:47
masak maybe not. maybe grokking the nibbler implies grokking STD.pm6, which I don't. 14:48
14:49 wallberg left, wallberg joined
masak rakudo: exit 14:54
p6eval rakudo 18d996: OUTPUT«␤ in main program body at line 1␤»
mathw depends how it's structured
masak submits rakudobug
mathw but it could be either way round
I don't even vaguely comprehend STD.pm6
jnthn masak: oh heh, *that* bug. 14:55
colomon moritz_: do you have the new code for rk somewhere we can get to it? ;)
14:58 colomon left 15:04 meppl joined 15:07 justatheory joined
jnthn I updated that file reading examples in the PH Perl 6 FAQ. :-) 15:09
*those
masak \o/ jnthn++
15:09 justatheory left
moritz_ phenny tell colomon I plan to put the rk code on github in a few hours 15:12
phenny: tell colomon that I plan to put the rk code on github in a few hours 15:13
phenny moritz_: I'll pass that on when colomon is around.
Su-Shee money. food. home. writing test.
15:14 Schwern left 15:16 ejs left
jnthn Time for a break :-) 15:17
moritz_ indeed; decommute into holiday-prolonged weekend &
15:19 perlygatekeeper left
masak rakudo: my @a = 1, 2, 3; my %h = @a X=> "value"; say %h.perl 15:19
p6eval rakudo 18d996: OUTPUT«{"3" => "value", "1" => "value", "2" => "value"}␤»
15:20 ejs joined 15:30 [bjoern] joined 15:33 alester left
[bjoern] .w dispair 15:34
phenny Couldn't get any definitions for dispair.
[bjoern] You should get phenny in here...
Hi, I have a grammar in some non-perl6-rules format, and I want to parse it into a Perl6 grammar object; is there some simple example somewhere how to go about that? 15:35
15:36 perlygatekeeper joined
masak [bjoern]: so, you're looking for a short primer on Perl 6 rules? 15:37
[bjoern]: we have phenny in here... 15:38
[bjoern] Ah, I thought so! She's not voicing her opinion though...
No, think about how you'd write a parser for a new programming language for use in parrot, you'd use various functions to add your loops and variables and declarations and so on to a tree 15:39
masak sounds like you're really looking for PCT or something.
[bjoern] Or for that matter, how you'd write a parser for Perl6 rules to begin with, though I doubt that's a good entry level example
masak docs.parrot.org/parrot/latest/html/...orial.html 15:40
[bjoern] Yeah I am somewhat familiar with that, my question comes down more to, is there some convenient API to manipulate grammar objects? 15:41
15:43 isBEKaml joined
masak I'm tempted to reply 'no' without knowing more exactly what you're asking for. :) 15:44
I also think I recognize the feeling you're having now: that there should be something more convenient than what's already there.
if you find it -- or if you have a good idea for something that would improve things -- let me know.
isBEKaml hello, #perl6! Is there anything I can sit with today? :) 15:45
masak isBEKaml: you could raise proto.perl6.org/fame-and-profit to the layour standards of the main page.
isBEKaml masak: fame-and-profit? I haven't seen it, or did I miss the subtle pun? ;) 15:46
pugssvn r31048 | Util++ | [u4x] Fixed minor typo 15:47
isBEKaml ah. lynxed it. :D
15:48 alester joined
[bjoern] Well let's say I have a simple grammar format that has symbols, literals and alternations like, "RuleName = 'string' or 'other-string'"; I want the equivalent of, say, `grammar G { regex RuleName { ... } }`. How would I go about getting that into the PAST, if I use the PCT approach here? 15:49
masak it works especially well in lynx right now :)
isBEKaml masak: I'd still retain that! I'm kinda fond of the console than X. :) 15:50
15:50 sylware joined
sylware Hi, how to do C lib bindings for perl6 15:50
?
masak [bjoern]: there's something called action methods which is used in this case. and the &make sub on Match objects in the syntax tree. 15:51
15:51 ejs left
masak sylware: have you looked at zavolaj? 15:51
sylware: it's at the bottom of this list: proto.perl6.org/
[bjoern] knows action methods, will check out the make method of Match objects... Google willing 15:52
15:52 pmurias joined
pmurias ruoso: ping 15:52
phenny pmurias: 12:20Z <ruoso> tell pmurias we're failing to meet in IRC a lot... please send me an email so we can communicate better...
masak [bjoern]: S05:2747 15:53
sylware masak:having a look...
15:58 bjarneh joined 15:59 isBEKaml_ joined
sylware masak: may I abuse asking for the libperl6 C lib? 16:00
masak you may, but I know of no such lib. :/
pugssvn r31049 | Util++ | [u4x] Added spaces around operators for visual clarity 16:01
16:01 ejs joined
diakopter phenny: tell sorear awesome progress. please advise as to whether the p6eval bot here should use one of the new stage2/stage3 instead of the stage1......? 16:02
phenny diakopter: I'll pass that on when sorear is around.
16:03 rdesfo joined
sylware masak: unable to embed perl6?? impossible 16:04
masak if you say so. 16:05
[bjoern] Wouldn't you be embedding Parrot if you are looking to use Rakudo?
jnthn Yes.
16:06 ejs left, Schwern joined
sylware ok then libraduko 16:06
jnthn slavik: In the case of Rakudo, you'd embed Parrot and get to Rakudo through that embedding interface, most probably. 16:07
gah
sylware: ^^
16:09 cdarroch joined, cdarroch left, cdarroch joined
sylware all right 16:09
going to have a lot at the C API
[bjoern] docs.parrot.org/parrot/latest/html/...d.pod.html would be the documentation 16:10
sylware thx
16:11 ejs joined
sylware hum... sexy... hope perl6 dynamic data exchange won't be that hard with raduko/parrot 16:13
16:16 rdesfo left 16:21 TiMBuS left, bjarneh left, Ross joined 16:23 justatheory joined
masak rakudo: my $x = "foo "; $x.=chomp; say $x, "bar" 16:23
p6eval rakudo 18d996: OUTPUT«foo bar␤»
masak submits rakudobug
oh wait. 16:24
no bug. :)
chomp doesn't trim, trim does.
16:24 sylware left
jnthn :-) 16:24
rakudo: my $x = "foo\n"; $x.=chomp; say $x, "bar" 16:25
p6eval rakudo 18d996: OUTPUT«foobar␤»
isBEKaml_ rakudo: sub try { say "hello, this can't be!"; } try;
p6eval rakudo 18d996: OUTPUT«===SORRY!===␤Confused at line 11, near "sub try { "␤»
jnthn (just checking) :-)
masak by the way, I see trim-leading and trim-trailing in Rakudo, but not in the spec. whoz op with that?
16:25 jnthn sets mode: +o masak
moritz_ needs speccing 16:25
jnthn ur op!
isBEKaml_ rakudo: sub try() { "hello, this can't be!"; } say try; 16:26
masak \:D/
p6eval rakudo 18d996: OUTPUT«===SORRY!===␤Confused at line 11, near "sub try() "␤»
jnthn rakudo: sub try() { "hello, this can't be!"; } say try();
p6eval rakudo 18d996: OUTPUT«===SORRY!===␤Confused at line 11, near "sub try() "␤»
jnthn That last one is a bug.
Oh, maybe they all are.
isBEKaml_ jnthn: more than that. isn't try a p6keyword?
masak I think they are.
jnthn rakudo: sub try { say "hello, this can't be!"; }
p6eval rakudo 18d996: ( no output )
jnthn No, you can define it.
You just can't call it.
masak isBEKaml_: Perl 6 doesn't have keywords in that sense.
I bet you can.
if you prefix it with & 16:27
that usually does the trick.
jnthn masak: I meant, the bug is that you...
masak oh, right.
jnthn I'd expect try() to have worked.
moritz_ rakudo: sub try { say "hello, this can't be!"; }; try()
p6eval rakudo 18d996: OUTPUT«hello, this can't be!␤»
16:27 Lorn left
isBEKaml_ masak: oh, wait. I was bitten by this when trying to make stuff in pugs to work in rakudo. 16:27
jnthn moritz_: huh, why'd it not work for me?
oh!
Missed a ;
masak oh!
isBEKaml_ D'oh!
jnthn OK, rakudo++
moritz_ U R DOIN IT WRONG
16:27 Lorn joined
masak still doesn't work for a sub called 'regex', though :) 16:28
jnthn *RONG ;-)
isBEKaml_ V WER BOTH DUING IT RONG! ;-)
16:29 ejs left, [bjoern] left
isBEKaml_ goes searching for that program in pugs repo where it failed... =) 16:30
16:32 rhr left
isBEKaml_ ah, yes. examples/games/animals.pl ## perlmonk's animal game! :) 16:33
16:34 ejs joined 16:35 rhr joined 16:37 Ross left
isBEKaml_ gist.github.com/422641. Seemingly, this fails with sub method name try. Change that to something else and that works! 16:41
isBEKaml_ is confused.
masak isBEKaml_: I see no methods, but line 9 looks suspect.
moritz_ aye, should use parens 16:42
try(..)
masak std: sub try() {}; try 42
p6eval std 31040: OUTPUT«ok 00:01 115m␤»
isBEKaml_ erm, by "works", I mean that it passes through the flow.
masak er.
moritz_ std: try 35;
p6eval std 31040: OUTPUT«ok 00:01 111m␤»
moritz_ it's also a statement prefix in STD
16:43 spinclad left
isBEKaml_ moritz_: yeah. I didn't know it was a statement prefix. My first (knee-jerk) thinking was, is "try" a keyword ? 16:44
masak++ pointed out otherwise that p6keywords are not defined as defined keywords. Still, can we reuse them elsewhere in the program? 16:45
masak yes.
moritz_ yes. Just put parens after the function name
masak indentifier(...) is *always* a sub call in Perl 6. 16:46
moritz_ there are a whole lot of languages where every function call needs parens :-)
masak: ... unless in quotes, regexes, ... :-)
sub declarations
masak er. :)
moritz_ s/sub/routine/
every "always" sentence should end with "unless when not" 16:47
isBEKaml_ maybe, we should try to be more oriented towards spec language! ;) 16:48
this is always that, unless otherwise here goes someother condition.
:P
16:49 pmurias left
isBEKaml_ s/otherwise// 16:49
pugssvn r31050 | lwall++ | [S03] refine hyper dwimminess to be more like APL, with modular semantics 16:51
TimToady snarkyboojum++ for prodding that spec change
16:53 ejs left
moritz_ and TimToady++ for doing it 16:53
[Coke] APL++ 17:01
17:03 dakkar left, rv2733 joined 17:04 macdaddy joined
moritz_ now we need somebody to test it :( 17:04
and implement it
17:04 macdaddy is now known as Guest29860
[Coke] moritz_: hey, I heard there's this guy who tests everything! 17:04
moritz_ [Coke]: like, KyleHa?
[Coke]: or did you mean colomon++? 17:05
[Coke] =-)
TimToady we have many victi^Wheroes here 17:06
17:14 azert0x joined 17:15 azert0x left, azert0x joined
isBEKaml_ thinks that the camelia logo can look like a bookmark label on a webpage. 17:29
but I'm bad with imaging and visualisation. :(
masak nom & 17:30
17:30 masak left
pugssvn r31051 | lwall++ | [S02] refine Blobs to simply be immutable Bufs, with similar generic characteristics 17:30
17:31 SmokeMachine left, envi^home left 17:38 colomon joined
colomon bah, TimToady is busy making big changes to hyper, and I'm stuck on an iris farm in the middle of nowhere with no power to my laptop. 17:41
phenny colomon: 15:13Z <moritz_> tell colomon that I plan to put the rk code on github in a few hours
moritz_ actually I'm just preparing the README
colomon moritz_++
I actually started on mixed 17:43
array / hash hypers just before I ran out of juice.
17:44 chitragupt joined
colomon could use ssh to log into his home machine and start editing spectests with his phone, but that sounds like work. 17:47
isBEKaml_ could use some help in identifying nice visual fonts.. :| 17:48
pmichaud good afternoon, #perl6 17:52
takadonet pmichaud: hey 17:53
moritz_ oh hai pmichaud
moritz_ just pushed Math::RungeKutta to github
pugssvn r31052 | lwall++ | [S02] add native blob types 17:54
17:55 Wolfman2000 joined
pmichaud reads backlogs 17:55
TimToady std: 42 17:56
p6eval std 31040: OUTPUT«ok 00:01 111m␤»
TimToady I think sorear++ broke the std build :)
moritz_ hugme: reload 17:57
hugme moritz_: reloaded successfully
moritz_ hugme: add colomon to Math-RungeKutta 17:58
hugme hugs colomon. Welcome to Math-RungeKutta!
moritz_ colomon: just in case... :-)
Wolfman2000 ...I always forget what each of these bots do.
I have to wonder...what is the Math-RungeKutta project?
17:58 sorear left, TimToady sets mode: +vvv buubot dalek hugme, TimToady sets mode: +vv ilogger2 IRSeekBot, TimToady sets mode: +vv p6eval phenny, TimToady sets mode: +v pugssvn
moritz_ Wolfman2000: Runge Kutta integration of systems of ODEs in Perl 6 17:58
s/<?before integration>/numerical / 17:59
Wolfman2000 ...I forgot what the O is, but...that sounds like Difference Equations
Differential*
moritz_ O = ordinary
ie not partial
Wolfman2000 just dealing with one term, not two terms in parts. I recall now. 18:00
What other math projects are there?
moritz_ lue++ investigated implementing quaternions
Wolfman2000 Don't recall learning of those unfortunately 18:01
moritz_ neither did I
www.perlmonks.org/?node_id=645771 # another idea for a math module I want to implement at some point
that project idea is the reason for attacking RungeKutta in the first place
18:02 spinclad joined
pugssvn r31053 | lwall++ | [S03] copy-o spotted by Smylers++ 18:02
18:02 colomon left 18:04 sorear joined
Wolfman2000 ...given an object and mass...the rest can be calculated. At least, if I'm seeing that linked perlmonks module correctly. 18:04
pmichaud
.oO( nqp is "hopelessly byzantine" compared to PIR? )
18:06
moritz_ Wolfman2000: right
Wolfman2000: the goal of that module is to turn a human comprehensible data structure of some form into a system of differential equations 18:07
[Coke] pmichaud: it's certainly more perl6-y than PIR.
moritz_ and integrate that with M::RK
18:07 Ross joined, Ross left
pmichaud [Coke]: yeah, I just find that comment to be almost completely at odds with what I've heard from other hackers, including/especially non-Perl6 ones. 18:07
18:07 Ross joined
pmichaud oh well. 18:07
Wolfman2000 ...I can recall how to solve the basic differential equations using numbers. I don't recall how to use the terms like gravity and acceleration with it unfortunately. 18:08
pmichaud I think it just illustrates how much allison++ and I differ in our vision of a vm.
isBEKaml_ phenny: tell masak, I pushed a rough cut of the fame page. Added a few mods, would like help on how to improve the feel of the text (looks bland to me, needs more calligraphy) 18:09
phenny isBEKaml_: I'll pass that on when masak is around.
18:12 jaldhar left 18:14 isBEKaml_ left 18:15 rv2733 left 18:18 SmokeMachine joined, isBEKaml left
pugssvn r31054 | lwall++ | [S03] suggestions from dataweaver++ 18:20
r31054 | more refinements to the description of the dwim semantics
18:24 Ross left 18:27 SmokeMachine left
sorear STD-on-gimme5: 94.36% 18:28
phenny sorear: 16:02Z <diakopter> tell sorear awesome progress. please advise as to whether the p6eval bot here should use one of the new stage2/stage3 instead of the stage1......?
sorear STD-on-viv: 93.99%
moritz_ so maybe 3 files difference?
less, probably
1 or 2
TimToady sorear: it looks like you've borken the std build :) 18:29
I can't make from clean
maybe there's something not checked in?
but I'd say that 1 or 2 files is close to Good Enough 18:30
18:30 ShaneC joined 18:32 patrickas joined
patrickas saba7o perlsixers 18:32
moritz_ \o/ it's patrickas
patrickas hello moritz ... 18:33
I have been working on the
rakudo: say "Perl 6 Advent".comb(/<alpha>/).join('|');
p6eval rakudo 18d996: OUTPUT«Cannot take substr outside string␤ in <anon> at line 11:/tmp/1hvcU55UBG␤ in 'Cool::match' at line 2103:CORE.setting␤ in 'Any::join' at line 1898:CORE.setting␤ in main program body at line 11:/tmp/1hvcU55UBG␤»
patrickas and I tracjed it down to
rakudo: say "Perl Advent".match(/<alpha>/ , :c(12)) ; 18:34
p6eval rakudo 18d996: OUTPUT«Cannot take substr outside string␤ in <anon> at line 11:/tmp/bhydixN6Ep␤ in 'Cool::match' at line 2103:CORE.setting␤ in main program body at line 11:/tmp/bhydixN6Ep␤»
moritz_ rakudo: ''.comb/<alpha>/
p6eval rakudo 18d996: OUTPUT«===SORRY!===␤Confused at line 11, near "''.comb/<a"␤»
moritz_ rakudo: ''.comb: /<alpha>/
p6eval rakudo 18d996: ( no output )
patrickas rakudo: say "Perl Advent".match(/\w/ , :c(12)) ;
p6eval rakudo 18d996: OUTPUT«␤»
moritz_ rakudo: 'a'.comb: /<alpha>/, :c(1)
p6eval rakudo 18d996: ( no output )
moritz_ rakudo: 'a'.comb: /<alpha>/, :p(1)
p6eval rakudo 18d996: ( no output )
PerlJam greetings
moritz_ rakudo: say "Perl Advent".chars 18:35
p6eval rakudo 18d996: OUTPUT«11␤»
patrickas in .comb, when the :c reaches the end of the string, .match should just not find anything, with <alpha> is explodes instead :-)
PerlJam do the :c and :p adverbs start counting from 0 or 1? :-)
moritz_ yes
TimToady sorear: the error I get is
Can't call method "tweak" on an undefined value at boot/STD.pm line 8687.
std FAILED 00:00 37m CORE.setting
patrickas so locally I fixed it in .match by just notmatching if :c is >= self.chars
moritz_ patrickas: it's an nqp-rx error. Better fix it there than work around it in Rakudo 18:36
that way others will profit from it too
patrickas but I know you don't like special cases :-)
yes that's why I didn't send a patch ... just thought I'd tell you where it lead me.
pmichaud patrickas: what does the explosion look like?
moritz_ rakudo: 'a'.comb: /<alpha>/, :p(2) 18:37
p6eval rakudo 18d996: ( no output )
moritz_ rakudo: 'a'.comb: /<alpha>/, :p(3)
p6eval rakudo 18d996: ( no output )
pmichaud ("Can't take substr beyond end of string, perhaps")
moritz_ yes
pmichaud that particular Parrot exception is often annoying.
patrickas rakudo: 'a'.comb: /<alpha>/, :c(1);
moritz_ rakudo: say "Perl 6 Advent".comb(/<alpha>/).join('|'); # example by patrickas++
p6eval rakudo 18d996: ( no output )
rakudo 18d996: OUTPUT«Cannot take substr outside string␤ in <anon> at line 11:/tmp/dl7KMbvNRs␤ in 'Cool::match' at line 2103:CORE.setting␤ in 'Any::join' at line 1898:CORE.setting␤ in main program body at line 11:/tmp/dl7KMbvNRs␤»
pmichaud okay, I may be able to quickly fix. One moment.
TimToady I don't see much use for a :p modifier on a comb 18:38
moritz_ right 18:39
rakudo: 'a'.match: /<alpha>/, :p(2)
p6eval rakudo 18d996: OUTPUT«Cannot take substr outside string␤ in <anon> at line 11:/tmp/gcY5KxE64Z␤ in 'Cool::match' at line 2103:CORE.setting␤ in main program body at line 11:/tmp/gcY5KxE64Z␤»
patrickas the bug in .comb is due to a bug in .match
pmichaud actually, it's a bug in <alpha>
18:40 ashleydev joined
[Coke] hey, pmichaud, can you check out nopaste.snit.ch/20849 ? I suspect you've already worked around this for nqp or rakudo. =-) 18:40
pmichaud rakudo: '3'.match: /<digit>/, :p(2)
p6eval rakudo 18d996: ( no output )
pmichaud it's a bug in <alpha>
[Coke]: looking 18:41
patrickas yes i noticed \w and \d worked, but <alpha> did not ... but I didn't know how to go deeper since it went to parrot territory :-( 18:42
or at least so it seemed
to my untrained mind :-) 18:43
pmichaud no, it's in nqp-rx
src/Regex/Cursor-builtins line 126
sorear moritz_: snaptest took 90 minutes for me; it's marginally faster than rakudo spectest 18:44
pmichaud have to check that pos <= eos before checking for the underscore
moritz_ where eos = length tgt ? 18:45
pmichaud moritz_: yes.
sorear diakopter: p6eval operation should be unchanged. cd src/perl6; make; ./tryfile
moritz_ make snap akshually 18:46
pmichaud also better might be to use $I1 = ord tgt, pos and check for $I1 != 95
(avoids creating the extra substr)
18:46 BrowserUk left
pmichaud (but still have to check for eos first) 18:47
this is another place where having a substr comparison op could be beneficial
TimToady can anyone else make STD? 18:48
pmichaud TimToady: I can give it a shot.
moritz_ TimToady: trying now
nope
Can't call method "tweak" on an undefined value at boot/STD.pm line 8687.
pmichaud (gotta svn up first)
TimToady sorear: you must have an unchecked-in file
or something that got made that doesn't remake after 'make clean' 18:49
sorear TimToady: Broke the build? How so?
TimToady I said about 10 minutes ago
pmichaud oops, looks like I need to install Moose, too :)
moritz_ pmichaud: any reaon not to put the pos > eos check before the is_cclass test?
TimToady 14 minutes ago, actually
pmichaud moritz_: is_cclass doesn't throw the exception
only substr and chr do.
moritz_ pmichaud: yes, but if we need to check it, we can just as well do it early 18:50
pmichaud we only need to check it if is_cclass fails, though
otherwise we're adding an extra check to all instances of <alpha>
TimToady sorear: and it appears that moritz_++ gets the same error
std: 40
p6eval std 31040: OUTPUT«ok 00:01 111m␤»
pmichaud where we really only need the check if it's an underscore
TimToady and stdbot is stuck at 31040 18:51
18:51 bbkr left
pmichaud moritz_: put another way, the 'length' opcode is expensive. 18:51
moritz_ pmichaud: ah, I didn't know that
pmichaud so it's best avoided when we don't need it.
moritz_ ok, then it makes sense to ... right
ok, I have a patch which I'll test in rakudo in a minute 18:52
pmichaud excellent, moritz_++
moritz_ pmichaud: which test file should I put a test in?
patrickas moritz_++
moritz_ (nqp-rx level, that is)
we don't seem to have many regex tests run by default
18:52 Ross joined
pmichaud they're not run by default at the moment, no 18:52
18:53 Ross left
pmichaud and afaik there's not really a way to test it via the p6regex/ tests 18:53
moritz_ right
t/nqp/50-regex.t # newly created ? 18:54
pmichaud a very useful outcome might be to rewrite t/nqp/01-regex.t into NQP :-)
sorry, t/p6regex/01-regex.t
moritz_: I'm fine with 50-regex.t for now.
rgrau hi perl6-ers, do you know where can I find the latest version of perl6.vim syntax highlight file? 18:55
moritz_ rgrau: github.com/petdance/vim-perl
18:56 Ross joined
rgrau thanks moritz_ ! 18:56
alester rgrau: You can run "Make install" on it and you'll install all the Perl-related vim files into your ~/.vim
rgrau great :)
alester They should all be in the next vim. I sent them to Bram a little while agao.
pmichaud that's probably worth a mention in the rakudo README
moritz_ alester++ 18:57
alester Well, I wouldn't put the install instructions in there.
because at some point it'll be nicer.
pmichaud no, but the "where to find it" belongs.
moritz_ alester: just the repo location
alester but certainly a pointer to the repo
pmichaud might belong on perl6.org, also
moritz_ pmichaud: it's already on there
perl6.org/whatever/
alester Might also be worth mentioning on Perlbuzz.
jnthn back from noms
cognominal pmichaud, sent you a mail about a proposed patch because it takes forever to appear on p6c. 18:58
rgrau vim 7.3 is going to be released soon, so maybe we'll have perl6.vim bundled into vim in few months
pmichaud cognominal: okay, will review when I've got my head above water again (sometime later tonight or early tomorrow)
cognominal no hurry. 18:59
jnthn++ # better binary puns than binary munitions.
PerlJam wouldn't those be punitions? 19:00
sorear TimToady: I can make from 0 line svn st --no-ignore; What is the failure for you? 19:01
jnthn PerlJam: That's such a longer word...I prefer puny words.
pmichaud
.oO( takes a while to install Moose )
19:03
19:03 tedv_ left
cognominal jnthn, this one is for you : paste.lisp.org/display/110983 19:04
wordy puns? 19:05
TimToady sorear: STD5PREFIX=boot/ PERL5LIB=boot perl std 19:06
Can't call method "tweak" on an undefined value at boot/STD.pm line 8687.
std FAILED 00:00 37m CORE.setting
19:06 PenThrive joined
TimToady maybe make clean doesn't clean something it needs to? 19:07
sorear TimToady: that is a strange error... 19:08
moritz_ I get the same error
TimToady trying fresh co of perl6 19:09
sorear TimToady: yes, I'm still backlogging.
done now
TimToady same error
jnthn cognominal: Thanks, I'll apply it this evening
cognominal: Going to be writing another PMC tonight anyways.
PerlJam make realclean # perhaps? 19:10
sorear PerlJam: it works for me in a clean co; not for TimToady and moritz_
TimToady PerlJam: if a fresh co doesn't fix it, it's broke
sorear all I can think of is that, somehow, it depends on 5.12
TimToady so maybe an architecture issue
hmm, could be; I'm runing 5.10 19:11
PerlJam oh. Sorry for the noise. I'm barely paying attention.
moritz_ too
cognominal jnthn, a PMC for what? just curious
TimToady sorear: which OS? 19:12
I'm ubuntu latest
sorear: do you have a 5.10 to try it with?
sorear is on i386 debian sid with a custom installed perl 19:13
moritz_ www.perlmonks.org/?node_id=842792 # perl 6 grammar question
sorear TimToady, moritz_: perl -MMoose -E 'say $Moose::VERSION' ? 19:14
moritz_ 0.94
TimToady Moose does not export its sugar to the 'main' package.
19:14 rindolf joined
TimToady 0.9 19:14
jnthn cognominal: Giving a byte view of a string.
moritz_ pmichaud: nopaste.snit.ch/20851 unfortunately it doesn't fix the error (not even after re-gen bootstrap files) - the last of the new tests still fails 19:16
19:16 justatheory left 19:21 Schwern left 19:22 rindolf left 19:23 macdaddy joined, macdaddy is now known as Guest76418 19:27 Guest29860 left, cli_ left 19:31 patrickas left 19:32 Guest23820 left
pmichaud moritz_: okay, checking. 19:37
TimToady installed 5.12.1, now fetching Moose et al 19:38
pmichaud (confirm) Yes, I also get the "Can't call method 'tweak'" error when trying to build STD on my system. (Kubuntu 10.04) 19:39
19:39 Schwern joined 19:41 masak joined
TimToady sorear: yes, it seems to do much better under 5.12.1 19:42
though there are gobs of warnings
masak time to have a look at Web.pm, I believe.
phenny masak: 18:09Z <isBEKaml_> tell masak I pushed a rough cut of the fame page. Added a few mods, would like help on how to improve the feel of the text (looks bland to me, needs more calligraphy)
masak looks 19:43
19:43 plainhao left
TimToady so I guess someone needs to upgrade p6eval machine to 5.12? 19:43
moritz_ OH NOEZ 19:44
19:44 ash__ left
moritz_ the cron job that updates proto.perl6.org throws an error 19:45
YAML Error: Invalid element in map Code: YAML_LOAD_ERR_BAD_MAP_ELEMENT
masak ah, that's why the page didn't update.
moritz_ did I break it by changing projects.list?
masak looks 19:46
yes.
fixing.
19:46 Guest23820 joined
masak that should do it. 19:47
pmichaud fwiw, requiring 5.12 might keep a number of devels (incl me) from playing with STD
moritz_ oh
that was embarrasing
pmichaud or I'd likely want to find another machine to do that with
masak isBEKaml_: it's a good start. :) I think we actually want a table this time. maybe we even wanted it last time.
19:48 cli_ joined
masak tinkers 19:48
TimToady I guess the question is what new feature of 5.12 did sorear++ use? :)
or possibly it's the Moose 1.06 19:49
moritz_: perhaps you could just try upgrading your Moose and see if that fixes it? 19:50
19:50 azert0x_ joined
pmichaud I just downloaded the latest Moose (or whatever "cpan Moose" gave me) 19:50
sorear If I had to guess, it has to do with the new handling of 'tweak'
pmichaud so I suspect that's not it.
19:51 gbacon left
moritz_ good, then I don't have to compile a new perl (Moose is installed as a debian package, and a whole lot of stuff depends on it) 19:51
pmichaud looks like I got Moose 1.06 19:52
sorear has Moose 1.01 19:53
pmichaud moritz_: looks like also a bigger bug in regex engine. fixing. 19:55
actually, looks like the bug isn't in <alpha> at all. Or, at least, it's not tickled by these tests. 19:57
moritz_ not tickled, but triggered :-) 19:58
pmichaud I mean the <alpha> bug isn't tickled by these tests.
there's a bug, but it's not in alpha.
sorry
there's a bug in alpha, but these tests don't expose it. There's another bug that these tests expose.
(i.e., I get the same results on patched and unpatched nqp) 19:59
sorear pmichaud: does STD work for you?
pmichaud sorear: no, I get the same problem moritz and TimToady have 20:00
TimToady phone
pmichaud Can't call method "tweak" on an undefined value at boot/STD.pm line 8687.
TimToady so probably 5.12, not Moose 20:02
20:02 Psyche^ joined
pugssvn r31055 | sorear++ | [viv] Fail if a parameterized role instantiation doesn't compile 20:03
r31055 | [STD-ecosystem] Add 'reboot' target; update bootstrap
pmichaud that's my guess.
20:05 pmurias joined, BrowserUk joined 20:06 Patterner left, Psyche^ is now known as Patterner
moritz_ pmichaud: btw with my nqp-rx the Rakudobug with $str.comb(/<alpha>/) is gone 20:06
with the patch, I meant to say 20:08
sorear pmichaud, TimToady, moritz_: I have a hunch that that change will make the error obvious
20:09 Jedai joined
pmichaud moritz_: okay, looks like there are two bugs here. 20:09
moritz_ right
pmichaud okay, my patch (not to alpha) solves all of t/nqp/50-regex.t, so I don't know where the <alpha> bug gets exposed. 20:14
moritz_ pmichaud: just commit it, and if it doesn't solve the rakudobug, we can commit my patch too
pmichaud testing now.
sorear attempts to build 5.10.1 20:15
20:15 justatheory joined
pmichaud moritz_: pushed fix. 20:16
oops, forgot to add test though.
added, pushed.
sorear: even with r31055 I get the same error. 20:17
(if that helps)
dalek p-rx: 8483d1f | pmichaud++ | src/PAST/Compiler-Regex.pir:
Avoid "Can't substr beyond end of string" errors -- if we're already
20:18
p-rx: 55d87b8 | pmichaud++ | t/nqp/50-regex.t:
Add test for "match beyond end of target" bug.
20:19 Ross left, Ross joined
masak what do people think about proto.perl6.org/fame-and-profit ? 20:20
20:20 eternaleye left
moritz_ likes it 20:21
sorear pmichaud: :( So much for improved debugging
masak it's not been updated yet, but I also added the badges and an actual cool logotype to the left column.
moritz_ sorear: with 5.12.1 I get lots of warnings, but itseems to build
masak maybe Camelia 32x32 should be under 'super awesome' :) 20:22
pmichaud moritz_: can I leave it to you to update bootstraps and test under Rakudo? 20:24
moritz_ pmichaud: sure
pmichaud moritz_++ # thanks -- still a little on the busy side here 20:25
masak pmichaud++ # delegates
moritz_ sorear: ... and finally dies with Can't call method "tweak" during ./tryfile STD.pm6
TimToady is your Moose still .94? 20:26
moritz_ that's a perl 5.12.1 with latest moose 20:28
TimToady huh, that succeed for me
*ed
sorear is installing 5.10.1 with Moose 0.94 for debugging...
moritz_ no clean checkout though; just a 'make clean'
TimToady though my snaptest only got 93.99% 20:29
20:29 BrowserUk left
pugssvn r31056 | sorear++ | [STD-ecosystem] Make 'make clean' work again 20:31
20:31 justatheory left
sorear are there any nice easy to use BackPAN clients? 20:31
moritz_ easier than wget? don't know of any 20:32
20:32 patrickas joined
patrickas back 20:32
sorear dreams of cpanm -S --contemporary='Moose 0.94' Moose
pmichaud just to verify -- I'm running 5.10.1 with Moose 1.06 :) 20:33
20:33 Schwern left
sorear ok, that makes things easier 20:33
20:33 justatheory joined 20:34 eternaleye joined
patrickas I see my bug has been fixed \o/ Thanks pmichaud++ and moritz_++ 20:35
pmurias ruoso: ping
sjohnson how often does the irc rakudo: thing get recompiled ? 20:36
moritz_ sjohnson: rakudo every 2 hours
sjohnson cool
rakudo: my $a = 0; $a += 0.1 for 10^; say $a == 1 20:37
p6eval rakudo 18d996: OUTPUT«===SORRY!===␤Confused at line 11, near "for 10^; s"␤»
sjohnson rakudo: my $a = 0; $a += 0.1 for ^10; say $a == 1
TimToady I think the tests badge should have a red stick of dynamite, and the fresh badge should have a green leaf/branch
p6eval rakudo 18d996: OUTPUT«1␤»
TimToady the yellow flower just kinda looks like mush to me
sjohnson wow... looks like the bug i found that masak nicely reported is fixed
jnthn proto.perl6.org/fame-and-profit - looks nice; could we perhaps make the badges line up one underneath the other?
But otherwise it's great. :-) 20:38
sjohnson masak++
TimToady and I had to zoom way in to the tests badge to figure out what it was
sjohnson and programmers++
masak jnthn: yeah, they probably deserve their own table column.
pmichaud yes, the badge icons could use just a little work.
slavik TimToady: that looks like an orange to me
patrickas i thought it is a lemmon 20:39
masak makes it so
TimToady: the tests badge could use some work. or be replaced.
pmurias yes
the rest of the site looks great
masak I'm not a graphics artist. I just play one on IRC.
TimToady I've been known to do a bit of graphic work now and then :) 20:40
moritz_ pmichaud: nqp-rx still needs my patch too - with yours still the same error
pmichaud moritz_: can we find a test that exposes the bug in nqp, then?
masak TimToady: is Camelia 32x32 available somewhere non-temporary? I'd like to put her in the last row :)
TimToady pugs/misc
pmichaud (currently all tests pass in my local copy) 20:41
sorear huh.
looking at the snaptest logs, it seems viv STD consistently uses 5-10% less memory?
masak ah, there it is. thanks.
moritz_ ./perl6 -e '"t".match(/<alpha>/, :c(1))' 20:42
Cannot take substr outside string
that's the closest I get in Rakudo
patrickas moritz_ what about ./perl6 -e '"t".match(/<alpha>/, :c(2))' ? 20:43
moritz_ patrickas: doesn't throw 20:44
pmichaud: ok(!Regex::Cursor.parse('a', :rule(/<alpha>/), :c(1)), 'Can parse "a" with <alpha> :c(off-range)');
patrickas cause I noticed the patch said gt when I would have expected ge
moritz_ pmichaud: same test as before, but with :c instead of :p
patrickas not that I would know
moritz_ pmichaud: exposes it in pure nqp
pmichaud moritz_: okay, good.
moritz_ patrickas: testing with ge now... 20:45
(good catch, my local patch also had a ge, not a gt)
20:46 justatheory left
pmichaud actually, gt is fine. 20:46
Parrot doesn't complain if you try to substr at the very end of the string
just if you go one beyond
but ge is probably a better test :-)
moritz_: I'll let you apply your patch to nqp-rx :) 20:47
moritz_ ge fails many tests
patrickas oops !
pmichaud in alpha?
I mean, in <alpha>?
moritz_ it even fails to build 20:48
pmichaud wait
are you talking about the patch I made?
It *has* to be gt.
ge will definitely fail.
moritz_ right
patrickas backs away slowly, told ya I wouldn't know. 20:49
moritz_ that's what I'm talking about
pmichaud (it's possible to succeed when we're at the end of the string if we have zero-width matches)
moritz's nopaste is already correctly using >= for fixing the <alpha> subrule.
patrickas but I thought that part was only being applied to <alpha> whcih cannot be zero width !
moritz_ patrickas: but pmichaud's patch is more general 20:50
pmichaud patrickas: no, that was being applied to the core setup of all regexes
patrickas oh ok sorry I missed that... the discussion was around <alpha> before I had left the channel.
pugssvn r31057 | moritz++ | [t/spec] be more liberal with case of detected error message 20:51
20:52 colomon joined 20:53 patspam1 joined 20:55 ruoso left 20:57 Su-Shee left
sorear ok, 5.10.1 installed 21:01
21:03 ash__ joined
dalek p-rx: 69506cb | moritz++ | src/stage0/ (4 files):
update stage0 files
21:04
p-rx: f65cbf3 | moritz++ | (2 files):
second shot at the substr-out-of-range error in <alpha> rule; with test
p-rx: b338c2b | moritz++ | src/stage0/ (4 files):
update stage0 files, again
21:05 justatheory joined 21:07 Guest78488 left 21:08 justatheory left, skids left
jnthn moritz_: I know about the { ; } one but...well...I find it hard to say that's "nasty" as such... 21:09
pmichaud rakudobugs with hash blocks...?
(from #parrot)
moritz_ jnthn: let me find the ticket...
jnthn pmichaud: There's one I know of that is where we mistakenly consider { ; } to be a hash block
pmichaud: 'cus it gets taken as if it were { } 21:10
Which would be.
21:10 gbacon joined
jnthn I struggle to imagine anyone is often writing { ; } though :-) 21:10
21:10 Schwern joined
pmichaud jnthn: that one seems very fixable. 21:10
21:10 Schwern left
jnthn pmichaud: Aye, I think it would be. 21:10
moritz_ by recent spec I think that everything involving $_ automatically makes it a block too
jnthn Oh
21:10 Schwern joined
jnthn That's news to me. 21:10
pmichaud well, someone might write { ; } if they explicitly wanted an empty block instead of a hash
...everything involving $_ makes it a block? huh? 21:11
moritz_ RT #74586 is the one jnthn++ mentioned (with ; )
pmichaud is confused.
sorear stefan@stefans:/usr/local/src/pugs/src/perl6$ STD5PREFIX=boot/ PERL5LIB=boot /opt/perl-5.10.1/bin/perl std
Can't call method "tweak" on an undefined value at boot/STD.pm line 8690.
std FAILED 00:04 38m CORE.setting
\o/
moritz_ the second bug is actually a duplicated of that...
RT #74050, if anybody wants to merge
21:12 ruoso joined
pmichaud In RT #74050, I'd say that any block that has placeholders should not be treated as a hash constructor. 21:12
(the semi is still a bug, yes, but without the semi I think we should get a block and not a hash constructor) 21:13
21:13 eternaleye left
moritz_ r28727 21:13
21:13 justatheory joined
jnthn rakudo: say { $^a => $^b }.WHAT 21:14
moritz_ "Explain how this means map always works right even if it's map { $_ => 1 }" # from the commit message
p6eval rakudo 18d996: OUTPUT«Lexical '$a' not found␤ in main program body at line 1:/tmp/Qy7wYW5zXK␤»
moritz_ so $_ is also a placeholder in this context, I think
jnthn Heh
moritz_ +Anywhere a term is expected, a block is taken to be a closure 21:15
+definition (an anonymous subroutine). If a closure has arguments,
+it is always taken as a normal closure. (In addition to standard
+formal parameters, placeholder arguments also count, as do the
+underscore variables. Implicit use of C<$_> with C<.method> also
jnthn Maybe the answer is "if when we made this block it ended up with some kinda non-empty signature, it shouldn't be a hash"
moritz_ +counts as an argument.)
that's what this commit said, among other things
pmichaud okay.
moritz_ haven't checked if it has been removed since, but I don't think so
jnthn That's easy compared to the $_ though.
The $_ could be a pain.
pmichaud so, that means that my %hash = { b => $_ * 3 }; won't dwim, but that's okay.
masak icons are in place at proto.perl6.org/fame-and-profit now.
moritz_ you can't have everything *and* a ponie 21:16
jnthn Icons: know your place!
masak++ # looks nice :-)
.oO( so ponies are outside of everything? :-) )
moritz_ seems like 21:17
masak no. that's why you can't have them twice.
patrickas masak do you think we shoul have some icon/badge/way of showing new pojects ? 21:18
jnthn Ah! And thus the expresison "OMG PONIES", since plurality of ponies would be impossible.
masak patrickas: instinctively, no. it's also not a trait one needs to encourage. 21:19
patrickas writing new perl6 modules ?
I thought it was :-(
masak right. writing new perl 6 modules for the sake of getting badges. :) 21:20
we need to think about the failure modes of the badges...
jnthn Well, not in the sense that a new module that does the same as an existing one doesn't mean the newer one should be flagged up more.
masak patrickas: ideally, it should be possible to unlock all badges if you just put yourself to it. with 'new', that doesn't hold.
jnthn *nod*
We could seperately have a "what's new" page that lists the latest modules, a bit like the CPAN latest page. 21:21
patrickas that's why I said icon/badge/way of showing ...
I just want a way to look at the page and say humm a new module let's try it out
masak patrickas: ah; well, as a non-badge the idea sounds slightly better. 21:22
still, I'm not 100% convinced people scour the site for new modules. not sure that's a use case.
jnthn rakudo: say (2, 4, 4) ~~ (2, 4, 4)
p6eval rakudo 18d996: OUTPUT«1␤»
jnthn colomon: ^^
(re p6l 6mail)
patrickas Maybe i am the only way to do it :-O 21:23
sorear TimToady: Back when Cursor ran on pugs, did we unstill have gimme5?
patrickas I think I could always add the data to the json list only and parse it locally .... 21:24
[Coke] has someone written a p6 ircbot yet? 21:25
21:25 Schwern left
masak re the 'does A, B, C' suggestion, I think that sounds like a fine job for a language-modifying module. 21:25
[Coke]: I think several have been written already, both during the Golden Age and the current era. but I don't think any of them is in active use.
some of them suffered from leaks and forced reboots. but that was a while ago. 21:26
moritz_ masak: we've discussed precedence of infix:<does> before
jnthn Client::IRC may be a tad bitrotten but given sockets ain't much different in master than in alpha I suspect not.
masak moritz_: oh? what did we conclude? :)
moritz_ masak: people expect @a = 0, 1 but False, 3, 0 but True to mean something sensible
jnthn masak: People can also, if they're always pulling in the same bunch of roles to lots of classes, just compose a crony role.
moritz_ masak: also remember that traits are based on multi dispatch... 21:27
masak: ie if you have to support a list of things, type annotations/selections get much harder
jnthn moritz_: Indeed. 21:28
moritz_ so "rejected"
masak nod.
moritz_ should I comment on p6l?
masak I think so.
moritz_ will do
jnthn moritz_++
masak it's good to sometimes leak wisdom back to p6l :P
keeps them hooked. :P
jnthn :P 21:29
21:30 Ross left, Schwern joined
colomon rakudo: say (2, 4, 4) ~~ (2, 4, 5) 21:31
p6eval rakudo 18d996: OUTPUT«0␤»
colomon crazy
masak not at all.
colomon there are huge swathes of tests that would be easier to read in that format.
patrickas rakudo: 1 but False;
masak but what moritz_ wrote on p6l.
p6eval rakudo 18d996: 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)␤:(Mu $do-it-to-me, (Parcel) $roles)␤␤ in 'infix:<but>' at line 485:CORE.setting␤ in main program body at line
..11:/tmp/VGad7E…
masak jnthn: $do-it-to-me? 21:32
patrickas ;_)
masak jnthn: why do I suspect you wrote that siggy? :P
moritz_ sent mail and now goes to bed
jnthn er, erm... :-)
masak -Opun 21:33
jnthn colomon: You know it dwims too?
21:33 SmokeMachine joined
colomon jnthn: ? 21:33
jnthn rakudo: say (1,2,3,4) ~~ (*,2,*)
p6eval rakudo 18d996: OUTPUT«1␤» 21:34
jnthn rakudo: say (1,2,3,4) ~~ (*,5,*)
p6eval rakudo 18d996: OUTPUT«0␤»
jnthn That's "is there a 2/5 in it somewhere?"
say (1,2,3,4) ~~ (*,4) # does it end in 4
21:34 justatheory left
jnthn etc 21:34
:-)
masak rakudo: say (1, 2, 3) ~~ (*, *, 3)
p6eval rakudo 18d996: OUTPUT«1␤»
masak rakudo: say (1, 2, 3) ~~ (*, *, *, 3)
p6eval rakudo 18d996: OUTPUT«1␤»
masak hm.
jnthn masak: * works like in a regex
0 or more elements here 21:35
masak right.
colomon insanely awesome.
jnthn So consecutive stars have no more meaning than one.
But you can do like
rakudo: say (1,2,3,4) ~~ (*,2,*,4,*)
p6eval rakudo 18d996: OUTPUT«1␤»
masak I submitted a ticket about this once. I don't remember what it said.
jnthn Like, is there somewhere a 2 and later somewhere a 4.
I couldn't be bothered to make it backtrack and try really hard to match though. :-) 21:36
masak rakudo:say (1, 2, 3) ~~ (1, 2, *, 3)
sorear masak: there was a Golden Age of p6?
masak rakudo: say (1, 2, 3) ~~ (1, 2, *, 3)
p6eval rakudo 18d996: OUTPUT«1␤»
masak sorear: 2005-2007.
jnthn masak: It did get re-done in master (writte in Perl 6 rather than PIR)
sorear [Coke]: My current Overarching Project is a p6 irssi replacement
jnthn masak: So it's concievable old bugs got killed.
masak sorear: whoa! release early and often! 21:37
jnthn: found it! rt.perl.org/rt3/Ticket/Display.html?id=61452
it's been resolved. jnthn++
21:37 justatheory joined
jnthn oh nice 21:38
:-)
masak ooh! and in the comments to that ticket, I *deduce* that the star has to be zero-width. I'd totally forgotten that. :P
masak 's brain lives partially on RT nowadays 21:39
21:39 justatheory left
masak a sort of a symbiont. 21:39
jnthn masak: I think iirc I originally thought so too, but had made a bug when implementing. 21:41
21:43 Schwern left, Guest23820 left 21:45 tedv joined 21:46 Guest76418 left
jnthn masak: Which branch are you actively Buf-ing in at the moment? 21:48
masak buf
jnthn kthnx
masak np
jnthn git chekcout's it
21:50 eternaleye joined
jnthn glances at github.com/illvilja/Perl6-Term--ANS...SIColor.pm and realizes we could make our ===SORRY=== have red bits :-) 21:50
21:54 clintongormley left 21:57 whiteknight joined
masak mberends: ping 21:57
mberends masak: pong 21:58
masak I'm trying to get a smallish revolution started. I thought I'd tell you first. :)
sorear hmm. 21:59
masak mberends: github.com/masak/ufo/
mberends <sharp intake of breath>
sorear it looks as though 5.10.1 is mishandling do or something
mberends masak++: sweet! 22:02
masak I should have done that ages ago. it's such a simple idea.
jnthn masak++!
masak \o/
jnthn Wow...that's the kind of README that's *worth* reading!
masak :)
22:03 justatheory joined 22:04 pmurias left
masak as far as I know, ufo is the first Perl 6 program which can be installed with 'make install'. correct me if I'm wrong. 22:04
I should probably restore pun to its former glory and make those installable too. 22:05
22:05 jakk joined, jakk left
sorear \o/ I've golfed the STD.pm 5.10 bug to a single module which doesn't use Cursor 22:06
22:09 ruoso left
Wolfman2000 ...why couldn't you just "find" the bug? golfing to me means "a big convoluted mess" 22:12
masak er. 22:13
the idea of golfing bugs is to resolve the convoluted mess to its minimal possible holding size.
a 'minimal mess', if you will.
s/resolve/reduce/ 22:14
Wolfman2000 so a simple test case
slavik what does 'golfing' mean?
Wolfman2000 slavik: making the shortest program for a task
masak slavik: here, it means using as few characters/keystrokes as possible to do something.
jnthn It's one of the important things to do to help the developers when submitting a Rakudo bug. 22:15
masak Wolfman2000: yes, but 'test case' in a wide sense. it can also be used as a one-liner to show others, or as the basis of an RT ticket.
jnthn Get down to a small example that shows the bug.
In isolation for other issues.
masak++ is very good at this. :-)
masak it's one of my favorite pastimes. which, if you think about it, is kinda fortunate.
Wolfman2000 agreed 22:16
masak "Eliminate all other factors, and the one which remains must be the truth." -- Sherlock Holmes 22:17
sleep &
22:17 masak left
jnthn o/ 22:17
sorear it's at this point very obvious that I'm dealing with a Perl bug 22:19
removing unreachable code changes the behavior 22:20
Wolfman2000 ...then perhaps the code is being reached?
sorear If it were being reached, then changing it would have an effect. 22:21
Adding 'die "la la la"' doesn't cause it to die, but changes the result
(and no, there's no exception catching statements)
Wolfman2000 ...I think your phrasing is just confusing me in this case
22:22 ive joined
mberends Rakudo had several such Heisenbugs last year, but none recently :) 22:22
sorear Wolfman2000: pastie.org/989737
that prints '1' on Perl 5.12 and '' on Perl 5.10
deleting the die makes it print '1' on both 22:23
22:23 ive left
Wolfman2000 ...I don't get how, but...gah, best to not overthink 22:23
22:24 Schwern joined
sorear it's obviously a Perl 5.10 bug 22:24
think about it - if 5.10 didn't have bugs, why would they release 5.12? ;)
[Coke] that doesn't necessarily follow, there.
Wolfman2000 what if it's more...new features? 22:25
...what new features were added anyway?
m6locks to make the already existing features even more advanced
[Coke] did that work prior to 5.10.1 ?
22:25 wallberg left
sorear [Coke]: also '' on 5.8.0 22:26
IllvilJa rejoices as the work with Term::ANSIColor for Perl6 might be of some actual use :-) 22:30
22:30 patrickas left
sorear IllvilJa: howso? 22:33
IllvilJa jnthn seemed above to consider using it to highlight some apologizing error message in red. Don't know for what but I expect it's something that makes the world a generally better place, something like a compiler or so 22:36
22:37 hercynium joined
sorear Ah, I thought you might have been referring to std-hilite 22:38
sorear asks #p5p abound the perl5.10.x bug 22:39
jnthn IllvilJa: When you do std: blah and it gives an error, it uses color. It looks nice. :-)
22:39 gbacon left 22:43 skids joined, justatheory left
sorear thanks to the wonderful #p5p, I now have a RT# and two commit ids for that bug 22:46
it's a context propagation bug 22:48
sjohnson i use ANSIColor quite often 22:51
22:56 SmokeMachine left 22:58 bacek left 23:05 orafu left 23:06 orafu joined
pugssvn r31058 | sorear++ | [viv] Work around perl 5.10 bug RT#38809 23:13
sorear pmichaud, TimToady, moritz_: std runs on 5.10.1 locally now
23:14 patspam1 left
TimToady sorear: www.wall.org/~larry/Cursor.pm is a snapshot of the pugs-targeted Cursor from early 2008 23:14
sorear Uhm 23:15
What is the + twigil
TimToady used to be contextual before it was combined with *
which used to only be global
sorear interesting 23:16
TimToady interesting is about all it is 23:17
sorear it's amazing how much p6 has changed in the last two years
TimToady it will be much more useful to backtranslate the modern Cursor.pmc than to try to fix the old Cursor.pm
sorear I figured 23:18
TimToady at that time there was also a gimme5 precursor called 'metholate' that translated STD.pm to Pugs
since pugs didn't support all of p6 yet either :)
sorear what does? 23:19
TimToady and there are peculiarities in that Cursor.pm that are only explainable as workarounds
sorear yeah
oh, that reminds me 23:20
TimToady plus, pugs didn't really do p6 regexen at all
sorear how does BEGIN fit into a STD-based pipeline compiler?
TimToady and relied on p5 for what regexen it did
the parser has to be able to take bits of AST, such as that from BEGIN, the args to use, trait arguments and such 23:21
and have some way to run them immediately
which requires the proto symbol tables all be in place already
also, constant folding presumably uses the same mechanism when we know there are no side effects 23:22
23:22 plainhao joined
TimToady though that can be deferred for code that doesn't run immediately 23:22
(p5 always does them immediately though) 23:23
sorear that sounds hard, I'll let you worry about it 23:28
jnthn phenny: tell masak I did hack up something for you that should be enough for encode, see example code at gist.github.com/423175
phenny jnthn: I'll pass that on when masak is around.
jnthn Tack, phenny.
phenny: tell masak it's in ya buf branch, btw. 23:29
phenny jnthn: I'll pass that on when masak is around.
sorear TimToady: can you run std now? 23:30
TimToady yes, but that's because I upgraded to 5.12 23:31
sorear moritz_? pmichaud? 23:33
23:33 cdarroch left
pugssvn r31059 | sorear++ | [viv] Make --keep-going optional for better make failures 23:34
23:43 Schwern left, justatheory joined 23:49 lestrrat is now known as lest_away
pugssvn r31060 | sorear++ | [viv] Add a -o option; remove Makefile's fragile use of redirection 23:54
r31061 | lwall++ | [STD] undo non-sensical $<sym> that makes warnings 23:59