pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, smop: etc.) || We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/
Set by TimToady on 25 January 2008.
mncharity Had a power outage all day. :/ So nothing done. Back at it tomorrow. 00:41
&
pugs_svnbot r20092 | ruoso++ | [smop] updating the sm0p canonical grammar (not the KP6 implementation), so maybe it can be tested with other implementation. 11:27
diff: dev.pugscode.org/changeset/20092
lambdabot Title: Changeset 20092 - Pugs - Trac
ruoso [particle], sm0p has been implemented in KP6 to make the preprocessing of the sm0p blocks... but I'm facing some troubles with KP6 and I wonder if nqp or rakudo already support writing that grammar.. 11:28
lambdabot ruoso: You have 1 new message. '/msg lambdabot @messages' to read it.
ruoso [particle], the grammar is svn.pugscode.org/pugs/v6/smop/sm0p/Grammar.pm 11:32
[particle] ruoso: seems to me that grammar is easily translatable to rakudo or nqp 13:41
ruoso: we'd likely take the closures out of the rules, though 13:42
ruoso [particle], even if the closures are simply string substitution? 14:25
[particle1 we don't have a return statement yet 14:27
hrmm, perhaps implicit return of last statement would be good enough
ruoso hmm... I'm not sure if that's ok for that matter
"make" must set the return to be that instead of the match
in theory, implicit return don't change the return value of the match 14:28
[particle1 we do have a make statement, just not return
ruoso I'm only using 'make'
(except for one place I'm misusing return
)
[particle1 right :) 14:29
ruoso fixed that 14:30
[particle] aha
pugs_svnbot r20093 | ruoso++ | [smop] sm0p/Grammar.pm use make instead of return...
diff: dev.pugscode.org/changeset/20093
lambdabot Title: Changeset 20093 - Pugs - Trac
ruoso [particle], so, what changes would be needed to get the Grammar working in nqp or rakudo? 14:32
if you like, you can svn cp Grammar.pm Rakudosm0p.p6 and make the changes ;)
[particle] simple things, s/<identifier>/<ident>/g
i wonder, can you support <.ws> ? 14:33
there's no reason to capture the whitespace
ruoso but you do realise that identifier in my grammar is not Perl 6 identifier....
it's sm0p identifier
[particle] ah, sorry
ruoso the grammar is in theory a completely self-contained string substitution
[particle] yes, now i see 14:34
ok, i get it, no inheriting other grammars
ruoso a macro expander
[particle] fine, it should work
ruoso (except for \d, \s and the like...)
[particle] sure
ruoso svn.pugscode.org/pugs/v6/smop/sm0p/sample.sm0p 14:35
that's a sample sm0p code...
[particle] i'd like to have a sm0p compiler step, so you can do source -> parse -> sm0p
ruoso ahm?
[particle] sorry, a PCT::HllCompiler step 14:36
ruoso ok... that's probably what I'm calling s1p
which compiles Perl 6 code to a set of sm0p blocks
www.perlfoundation.org/perl6/index....p_language
lambdabot Title: SMOP s1p Language / Perl 6
ruoso see the example in the end 14:37
and the sm0p grammar should turn the sm0p blocks into bare C code...
(actually a single really long line)
(for each block) 14:38
btw... s1p is not implemented yet...
and I would really appreciate any implementation :)
[particle] yes, i see that, even from timtoady :) 14:42
ruoso heh
[particle], but getting back to the sm0p grammar... do you think it would just work? or would it need adjustments? 14:45
[particle] yes, i think it'll work 14:51
do you have a recent parrot trunk?
ruoso updatign right now 14:52
ruoso running make... 14:53
[particle] tools/dev/mk_language_shell.pl 14:54
ruoso but, do I need to create a language for that? 14:55
Can't I just run it as a standalone script (which in fact the Grammar.pm file already is) 14:56
?
[particle] ah, you mean as a perl 6 script 14:57
i'm not sure we've implemented 'grammar' yet 14:58
ruoso I mean... I just need to run that grammar taking some input and producing some output 14:59
using whatever means needed.
[particle] sure, ok. i'm rebuilding parrot now
first thing to do would be to make sure the file parses
ruoso Ok, should I try it with rakudo or nqp? 15:00
[particle] cd languages/perl6 && make perl6 && perl6 --target=parse <filename> 15:01
ruoso [particle], hmmm... it stopped at line 3... 15:04
it doesn't seems to recognize grammar and token 15:05
[particle] updates pugs
[particle] ruoso: 15:27
[particle] ruoso: i think it's the bare semicolon on line three 15:27
ruoso wonders if pugs can be compiled with 6.6.1-2 15:29
[particle], could you try it with ';' instead?
[particle] c:\usr\local\parrot\clean\languages\perl6>..\..\parrot perl6.pbc -e "grammar sm0p { token frame { <ws> <identifier> <ws> '=' <ws> 'q:sm0p' <ws> '{' <ws> <nodes> <ws> '}' <ws> ';' } }; say 1;"
1
ok, here's one difference 15:31
rakudo requires {{ }} around closures
rather than { } 15:32
ruoso hmm
[particle] it's not to spec
ruoso hmm... I can't get the closure to be parsed... even with the double { 15:33
h,, 15:34
ok... {{ without spaces...
it parsed
[particle] {{ make $<identifier> ~
parses fine here
ruoso yeah... I think i'm getting closer... 15:35
[particle], nice... rakudo parses the grammar 15:41
pugs_svnbot r20094 | ruoso++ | [smop] adding a rakudo implementation of the sm0p grammar... it parses already... but fails when trying to execute...
diff: dev.pugscode.org/changeset/20094
lambdabot Title: Changeset 20094 - Pugs - Trac
ruoso svn.pugscode.org/pugs/v6/smop/sm0p/...Grammar.pm
[particle], it still fails when trying to execute... 15:42
[particle] yep, probably fails when running 'module main'
ruoso should I try to remove the "module" thing entirely?
[particle] give it a shot 15:43
ruoso well it didn't express a linked-list corruption anymore
[particle] c:\usr\local\parrot\clean\languages\perl6>..\..\parrot perl6.pbc -e "module main
{ say 1 }"
1
ruoso it now just failed
Null PMC access in invoke()
[particle] yep, i see that
i'm trying to track it down 15:44
funny, --target=pir isn't working
hrmm
ruoso I need to go to the doctor now... I should be back in a couple hours or so...
[particle] ~~ 15:45
ruoso ah... how can I call the match then 15:46
?
ruoso doc & 15:47
ruoso [particle2, I'm back... so... if I got right, the problem is in the calling convention for the match... so... how is it supposed to be called in rakudo? 18:07
[particle2 we need to examine the pir 18:08
ruoso [particle], hmm... it seems to be stopping in the first block.. it gives me the PC, but how do I know which statement is that? 18:13
ruoso rakudo: grammar foo { token bar { 'baz' }; my $a = "baz"; say bar($a) }; 18:16
exp_evalbot OUTPUT[baz␤]
ruoso rakudo: grammar foo { token bar { 'baz' }; my $a = slurp; say bar($a) };
exp_evalbot OUTPUT[Null PMC access in invoke()␤current instr.: 'parrot;foo;_block15' pc 48 (EVAL_12:29)␤called from Sub 'parrot;PCT::HLLCompiler;evalpmc' pc 723 (src/PCT/HLLCompiler.pir:425)␤called from Sub 'parrot;PCT::HLLCompiler;compile' pc 440 (src/PCT/HLLCompiler.pir:291)␤called from Sub
..'parrot;PCT::HLLCompiler;eval' pc 755 (src/PCT/HLLCompiler.pir:45...
ruoso hmmm
the problem is with slurp :)
[particle] ah. there is no slurp. 18:17
ruoso it seems that slurp is not defined
any way to achieve the same effect?
[particle] hrmm 18:18
i suppose we could implement it
...in pir
[particle] gimme a minute to finish my lunch, and i'll start coding 18:25
ruoso :) 18:26
pugs_svnbot r20095 | ruoso++ | [smop] as slurp is not yet implemented in rakudo, I am using a sample code inline, but the parser still seems to be failing... 18:27
diff: dev.pugscode.org/changeset/20095
lambdabot Title: Changeset 20095 - Pugs - Trac
ruoso [particle], anyway... I've set the string inline, but the match still seems to be failing...
is there some easy way to debug the match?
[particle] hrmm, i wonder if module main knows about the grammar 18:28
try adding token testing { {{ say "testing" }} }
and call that
'' ~~ <smop::testing> 18:29
or whatever
ruoso I've already added the code inside the grammar package, and called the token by name
rakudo: grammar foo { token bar { 'baz' }; my $a = slurp; say bar($a) };
exp_evalbot OUTPUT[Null PMC access in invoke()␤current instr.: 'parrot;foo;_block15' pc 48 (EVAL_12:29)␤called from Sub 'parrot;PCT::HLLCompiler;evalpmc' pc 723 (src/PCT/HLLCompiler.pir:425)␤called from Sub 'parrot;PCT::HLLCompiler;compile' pc 440 (src/PCT/HLLCompiler.pir:291)␤called from Sub
..'parrot;PCT::HLLCompiler;eval' pc 755 (src/PCT/HLLCompiler.pir:45...
ruoso like that
rakudo: grammar foo { token bar { 'baz' }; my $a = 'baz'; say bar($a) };
exp_evalbot OUTPUT[baz␤]
ruoso hmm... 18:32
there seems to be another harder issue....
rakudo: grammar foo { token bar { 'baz' {{ make 'foo' }} }; my $a = 'baz'; say bar($a) };
ouch
[particle] ah. crud 18:33
ruoso and it seems that exp_evalbot won't ressurect itself 18:35
rakudo: say 1
[particle] i'm tracking down the error code 18:46
it's *not* a GC bug
buchetc TimToady, audreyt, since a few weeks I try to reanimate S17. Could you please review my attempt and stop/correct me if I'm walking the run way. Concurrency.pod and some t/spec tests are checked in. I also update smoke server frequently. 20:50
TimToady buchetc: okay, thanks, I'll try to get to that soonish, though some kind of anemia is making it rather difficult for me at the moment. will know more by the end of the week 21:51
buchetc TimToady: Don't hurry. I'll be afk at least one week starting at friday. Hope you will defeat this anemia soon... 21:57
TimToady I was just at a concurrency summit on friday, so that will help. well, not the anemia...
which is consistent with B12 deficiency, but could also have other reasons 21:58
(I'm at risk for B12 deficiency in any case, since I am missing part of my stomach...) 21:59
ought to have occurred to me sooner, but hypoxia makes one stupid... 22:00
[particle] monthly injections are an easy cure for that
TimToady yeah, regardless of the actual mechanism
but could be internal bleeding too, which I also have a history of, so we'll see... 22:01
I just feel like I am at 10000' altitude when I'm really at sea level.
[particle] i hope you don't get vertigo, too 22:02
TimToady well, I have that too, off and on, and the blood pressure medication certainly doesn't help that...
eventually you just get to where all the doctors tell you contradictory advice, at which point it's time to shuffle off... 22:03
:)
speaking of which, I'd better go get my wife's oil changed :) 22:05
[particle] sheesh, you two and your maintenance!
pugs_svnbot r20096 | Darren_Duncan++ | ext/Muldis-DB/ : for now, the Perl 5 v of Muldis DB is the only main version, not the Perl 6 v 22:08
diff: dev.pugscode.org/changeset/20096
lambdabot Title: Changeset 20096 - Pugs - Trac
pugs_svnbot r20097 | buchetc++ | [t\spec] smartlink issues 22:32
diff: dev.pugscode.org/changeset/20097
lambdabot Title: Changeset 20097 - Pugs - Trac
lichtkind is there anywhere a current precompiled parrot? 22:41
for win32
buchetc do you already have checked sourceforge.net/projects/parrotwin32/ 22:47
lichtkind buchetc: no thanks 22:54
its great 22:55
buchetc: whats your interest in perl6 ? 22:58
buchetc lichtkind: I love perl :-) 23:03
lichtkind buchetc: thats always a very god reason :) 23:04
buchetc perl6 will be a big step for modern programming languages
lichtkind ähm good
buchetc: yeah there is no languange nearly as shiny as perl 6
perl 5 is on 5 or 6 for me 23:05
buchetc: and your also just a lurker or?
buchetc lichtkind: lurker?? 23:06
lichtkind buchetc: someone who just looks
or i ask the other way would you ne interested to help out with an perl 6 tutorial 23:08
buchetc lichtkind: Tutorials are not my favourite task :/. I currently work at S17 and concurrency issues for perl6 23:09
lichtkind ah you are that i heard it on channel today 23:11
ther perl6.exe doesnt seems to work 23:13
gives a shitload on error for an simple say statement
buchetc bad news. I've had build pugs yesterday at win32. I'll try it tomorrow for parrot and let you know 23:15
at home I've had no win running
s/had// 23:16
lichtkind thanks a lot
buchetc sorry, time to sleep now&
lichtkind nop & good night 23:17