»ö« | 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 failedFAILED 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 $keyok 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 failedFAILED 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 |