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. |
|||
00:10
iblechbot left
00:12
arcady joined
00:26
alc joined,
devogon left
00:30
fakename joined
00:36
Auzon left
|
|||
cj | hurm... is the reason that v6-KindaPerl6/src/KindaPerl6/Visitor/Emit/Perl5.pm doesn't declare its namespace using 'package' because mp6 doesn't know how to do that? | 00:40 | |
00:44
pack|eet joined
00:48
fakename left
|
|||
cj | does mp6 know how to do inheritence? | 00:57 | |
01:02
wknight-away is now known as wknight8111
|
|||
cj | s/ence/ance/ :) | 01:02 | |
01:04
cnhackTNT joined
01:14
lyokato_ joined
01:20
alester_ joined
|
|||
cj | does parrot allow you to do anything like perl -c? :) | 01:23 | |
01:28
pack|eet left
|
|||
TimToady | that would be better to ask on #parrot | 01:31 | |
pugs_svnbot | r19964 | lwall++ | [gimme5] random cleanups | ||
diff: dev.pugscode.org/changeset/19964 | |||
lambdabot | Title: Changeset 19964 - Pugs - Trac | ||
01:33
penk left
01:36
penk joined
01:59
Zygo left
02:00
chris2 left,
Zygo joined
|
|||
meppl | good night | 02:05 | |
02:06
meppl left
02:07
demq joined,
[particle1 joined
02:09
demerphq left
02:15
Schwern left,
baest left
02:20
tobeya left
02:22
zakame joined
02:24
[particle] left
|
|||
pugs_svnbot | r19965 | gwern++ | rm some now-useless stuff from the 6.8 patch. I hand-applied most of the changes and couldn't get it to work, which is a bit frustrating. | 02:32 | |
diff: dev.pugscode.org/changeset/19965 | |||
lambdabot | Title: Changeset 19965 - Pugs - Trac | ||
02:43
alester_ left
02:52
cmarcelo joined
02:55
kanru left
02:59
cmarcelo left
03:01
alester_ joined
03:04
cmarcelo joined
03:15
mncharity left
03:32
cmarcelo left
03:35
cmarcelo joined
03:37
Limbic_Region left
03:43
rindolf joined
03:47
dlocaus joined
|
|||
dlocaus | . | 03:47 | |
03:47
dlocaus left
03:50
Lorn left
04:02
wknight8111 is now known as wknight-away
04:04
alc left
04:11
DarkWolf84 left,
DarkWolf84 joined
04:16
Auzon joined
04:17
RayMagini left
04:20
RayMagini joined
04:24
[particle1 left
04:28
[particle] joined
04:31
Sephir0th joined
04:33
heyhey8185 joined,
heyhey1508 joined,
heyhey6091 joined,
heyhey1508 left,
heyhey8185 left,
heyhey6091 left
04:34
heyhey8185 joined
|
|||
heyhey8185 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | 04:34 | |
04:34
heyhey577 joined,
heyhey8185 left,
heyhey577 left
04:35
heyhey8185 joined,
heyhey8185 left
|
|||
allbery_b | juerd / tene : ping | 04:35 | |
Tene | allbery_b: hi | ||
04:35
heyhey8185 joined
|
|||
allbery_b | see above | 04:35 | |
04:36
heyhey2097 joined
|
|||
Tene | Ahh. | 04:36 | |
04:36
Tene sets mode: +b *!*n=heyhey@221.130.185.*,
heyhey2097 was kicked by Tene (Tene)),
Tene sets mode: +b *!*n=heyhey@218.25.39.*,
heyhey8185 was kicked by Tene (Tene)),
heyhey9215 joined,
Tene sets mode: +b heyhey*!*@*,
heyhey9215 was kicked by Tene (Tene))
|
|||
allbery_b | danke schƶn | 04:37 | |
allbery_b has no idea what that was about but it was annoying | |||
04:38
justatheory left
|
|||
allbery_b | Tene++ | 04:38 | |
04:38
youaredead4595 joined,
youaredead4725 joined
|
|||
youaredead4595 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,''(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | 04:38 | |
youaredead4725 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,''(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | ||
youaredead4595 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,''(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | ||
youaredead4725 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,''(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | ||
youaredead4595 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,''(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | ||
youaredead4725 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,''(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | ||
youaredead4595 | '(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,''(y(-((u-nru'-'_,",,'-_,-_-(_"-,_"'-_,"',-_ōæ½xE9"''-"",'"',",'",_-'_(',_'(-_',(_-,'-_,(-_-_,' | ||
04:38
youaredead4725 left,
youaredead4595 left
|
|||
allbery_b | sigh | 04:38 | |
04:38
wknight-away left,
Tene sets mode: +b youaredead*!*@*
04:42
Sephir0th left
|
|||
allbery_b thinks he'll involve opers next time... | 04:43 | ||
04:43
pcbuetow joined
|
|||
Tene | I was just thinking the same. | 04:44 | |
TimToady | Tene can you oper me? seem to have lost it at some point | 04:56 | |
04:56
Tene sets mode: +o TimToady
|
|||
TimToady | thanks | 04:56 | |
Tene | You should be able to say /msg chanserv op #perl6 if you're identified and set with rights on the channel | ||
TimToady | that may be more possible now that I'm not coming from a dynamic IP, which (I was told) was the problem with that earlier... | 04:57 | |
Tene | Looks like you're not set with privs. | 04:58 | |
04:58
pbuetow left
|
|||
allbery_b | chanserv thinks he's not allowed to have rights, it nukes his opr every time it's restarted or rejoins from a netsplit | 04:58 | |
TimToady .oO(that's because I'm a *dangerous* man!) | |||
allbery_b | beware of the keeper of the swiss army tac nuke | 04:59 | |
Tene | looks like only 'autrijus' has privs to modify the access list. | ||
05:01
cmarcelo left
05:28
rindolf left
05:40
monomorph joined
05:45
gwern left
|
|||
rakudo_svn | r25915 | petdance++ | Added tene's patch to Object.pir to do say. Added a perl6 test to test it out. | 05:48 | |
05:53
gwern joined
05:55
njbartlett left
06:02
Auzon left
06:07
kane_ joined,
kane__ left
|
|||
pmichaud | pugs: <ok 4>.say | 06:13 | |
exp_evalbot | OUTPUT[ok4ā¤] | ||
pmichaud | pugs: (~<ok 4>).say | ||
exp_evalbot | OUTPUT[ok 4ā¤] | ||
rakudo_svn | r25922 | pmichaud++ | [perl6]: | 06:14 | |
r25922 | pmichaud++ | * .say method should redispatch to say() function. instead of | |||
r25922 | pmichaud++ | printing directly. | |||
r25923 | petergibbs++ | Set svn properties to keep file_metadata.t happy | |||
06:18
zakame_ joined
06:28
zakame left
06:31
zakame__ joined,
zakame__ is now known as zakame
06:32
zakame_ left,
[particle] left,
Jedai left,
BinGOs left,
marmic left,
pravus left,
agentzh left,
ruoso left,
araujo left
06:33
zakame_ joined,
[particle] joined,
Jedai joined,
BinGOs joined,
marmic joined,
pravus joined,
agentzh joined,
ruoso joined,
araujo joined,
zakame_ left
|
|||
rakudo_svn | r25925 | petdance++ | added some new sneaky ways to invoke say, but ok 4 started failing on me all of a sudden. | 06:33 | |
06:37
zakame_ joined,
zakame left
06:44
baest joined
06:48
zakame_ left,
zakame_ joined
07:24
devogon joined
07:40
zakame__ joined,
zakame_ left
07:43
Schwern joined
07:48
BinGOs left,
BinGOs joined
07:51
meteorjay joined
|
|||
pugs_svnbot | r19966 | lwall++ | [gimme5] can now fallback on normal match if lexer fails | 07:52 | |
diff: dev.pugscode.org/changeset/19966 | |||
lambdabot | Title: Changeset 19966 - Pugs - Trac | ||
07:58
ting joined,
iblechbot joined
07:59
ting left
08:00
ting joined
08:12
DarkWolf84 left
08:17
zakame__ left,
zakame__ joined
08:22
BinGOs left
08:23
BinGOs joined
08:27
BinGOs left
08:31
zakame joined
08:35
BinGOs joined
08:38
GPenguin joined
08:40
zakame__ left
08:41
zakame_ joined
08:45
zakame__ joined,
IllvilJa joined
08:46
razvanm02 joined
08:55
zakame left
|
|||
Juerd | allbery_b: pong | 08:56 | |
09:01
zakame_ left
09:03
zakame_ joined
09:08
zakame__ left
09:11
Schwern left
09:46
zakame_ left
09:54
IRSeekBot left
09:56
IRSeekBot joined
10:10
Auzon joined,
Auzon left
10:20
cnhackTNT left
10:33
finger joined
|
|||
GPenguin | does anybody know whats up with moritz_? | 10:34 | |
10:38
chris2 joined
10:40
nipotan is now known as nipotaway
10:47
SCalimlim left
10:52
mattz left
10:55
mattz joined
11:12
[particle] left
11:13
cmarcelo joined,
[particle] joined
|
|||
ruoso | TimToady, I've read that paper... It's interesting to notice that it is, in theory, very simple to implement that in SMOP. The fact that the SMOP interpreter is an object itself, allows us to implement several interesting features... | 11:18 | |
like STM-like interface using distributed transactions | |||
async IO programmed as sync IO | 11:19 | ||
and I was even thinking about implementing positronic variables | |||
just because I can ;) | |||
one thing I was thinking on the other hand is about syntax (for the async IO programmed as sync IO) | 11:20 | ||
at first I thought that while ($conn.accept()) { ... } could transparently create as much lines of execution as needed | 11:21 | ||
it could have weird side effects if the user don't expect that | 11:22 | ||
maybe it's more reasonable going to a java-like solution... which would be | 11:23 | ||
$conn.handle($handler_object) | 11:24 | ||
where $handler_object.^can("run"), and that code is supposed to have concurrent executions... | |||
11:30
wknight-away joined
11:34
xinming left
11:39
ebassi joined
|
|||
ruoso | POE implemented in SMOP would be able to have a preemptive multitask, that's something that is in my mind since I reached to the current interpreter design | 11:39 | |
11:40
[particle] left
11:41
lyokato_ left,
lyokato_ joined
11:42
backdraft joined,
backdraft left
|
|||
ruoso | in fact... as SMOP is supposedly thread-safe, POE implemented in SMOP could mix green threads and os threads... | 11:42 | |
ruoso still wonder which lesser exotic name could be given to positronic variables, as junctions came for quantum superpositions... | 11:45 | ||
ruoso really believes that positronic variables may create a different and simpler perspective to some algorithms... the bsearch example given by damian at YAPC::EU still impesses me... | 11:47 | ||
11:49
[particle] joined
12:01
riffraff joined
12:06
penk left
12:22
wknight-away left,
xinming joined
12:28
Aankhen`` joined,
GPenguin left
12:31
chris2 left
12:34
masak joined
12:35
lyokato_ left
13:19
snooper joined
13:28
cognominal_ joined
13:31
fridim_ joined,
pcbuetow left
13:49
riffraff left
13:57
alester_ left
14:09
alester_ joined
14:10
andara joined
14:11
GPenguin joined
14:14
macae joined
14:17
Lunchy left
14:31
Lunchy joined
14:44
rdice joined
14:53
alester_ left
|
|||
allbery_b | Juerd: sorry, was looking for a chanop when the channel was being bugged, | 15:01 | |
15:01
rindolf joined
|
|||
GPenguin | 70 hours idle, i hope moritz_ is doing fine | 15:13 | |
15:21
njbartlett joined,
andara left
15:29
mncharity joined
15:35
araujo left
15:37
Zygo left
15:38
Zygo joined,
shlomif joined
|
|||
mncharity goes to try running gimme5... | 15:39 | ||
15:39
gbacon joined
|
|||
pugs_svnbot | r19967 | putter++ | src/perl6/gimme5: switch from #!/usr/local/bin/perl to #!/usr/bin/perl (as ./cheat is already). Hopefully the difference isn't intentional. | 15:45 | |
diff: dev.pugscode.org/changeset/19967 | |||
lambdabot | Title: Changeset 19967 - Pugs - Trac | ||
15:46
alester is now known as Andy
|
|||
ruoso . o O ( the silence on the things I've wrote may mean two things... or I am so offtopic that no one has hope in pointing me the right direction, or it just makes sense and nobody has nothing to add... ) | 15:46 | ||
mncharity backlogs... | 15:47 | ||
[particle] | ruoso: things you've wrote on channel? | ||
15:47
penk joined
|
|||
ruoso | yep | 15:49 | |
[particle] generally doesn't backlog, but does read the mailing list | |||
15:50
shlomif left,
njbartlett left
15:51
cognominal_ left
15:52
masak left
|
|||
allbery_b no clue but suggests that mailing lists are better for tossing such things around; here, it was in a vacuum | 15:53 | ||
15:54
rindolf left
|
|||
mncharity | ruoso: if the topic is your most recent paragraphs, I brief scan suggests they boil down to "SMOP can do it, and other neat stuff too" :), and 'musing on syntax'. does that cover it? The former I took as a status update. I should have said "neat!". :) The latter... syntax musing ends up being mostly tossing ideas into the pool, until things are actually working, at which time it gets pursued with a bit more intent. | 15:55 | |
15:55
gbacon left
|
|||
TimToady | I'm not usually up at 3:00 am... | 15:55 | |
[particle] | slacker. | 15:56 | |
mncharity wonders if I've *ever* done a p6l post... not sure. | |||
TimToady | the reason I had /usr/local/bin/perl is because /usr/bin/perl on fedora isn't 5.10 yet, and I was using // freely :) | ||
ruoso have success in his experiment... ;)... drama works in #perl6 ;) | |||
TimToady | but I should really be using make to run things anyway... | ||
[particle] | why don't you 'use 5.010;' instead of relying on broken shebangs? | 15:57 | |
mncharity | re 5.10, oh, drat. sorry. was just barely below threshold for asking before commiting. reverting. :) | ||
GPenguin | ruoso: you mean #perl and not #perl6 with the drama, right? :-) | ||
TimToady | ruoso: well, of course, that's because the camel is a drama dairy. | ||
ruoso | heh | ||
TimToady | [particle]: if I were going to rely on use 5.010, I'd use 6 instead :) | 15:58 | |
as far as I know, use 5.010 merely fails if the version isn't high enough | 15:59 | ||
[particle] | yes, it fails | ||
pugs_svnbot | r19968 | putter++ | src/perl6/gimme5: reverted r19967. gimme5, unlike cheat, requires 5.010. Added 'use 5.010;'. | 16:00 | |
diff: dev.pugscode.org/changeset/19968 | |||
lambdabot | Title: Changeset 19968 - Pugs - Trac | ||
TimToady | so maybe there should be some mechanism in Perl for looking for the newer version and running that when you say "use 6.1" | 16:01 | |
instead of scattering versions in random locations around the filesystem | |||
if we register all versions of modules in the standard library, and perl 6 registers its version and location... | |||
mncharity | re gimme5 parsing 42, are things set up so I can hand something 42 and get back a match object? reason for asking is | 16:03 | |
TimToady | 'course, my shell can find perl5.10.0 perfectly well, but then #! can't be as smart for some reason | 16:05 | |
.matchify doesn't really work yet, so all you can get back is a Cursor | |||
part of the reason for switching to p5 was that pugs was too flakey to write .matchify | 16:06 | ||
mncharity | it might be nice to set up a full pipeline. gimme5 takes 42, hands back a match object. I write something which takes that match and dumps a yaml version of kp6's ast. which something else picks up and dumps "transliterate to p5" for. and "to ruby". and others can start migrating kp6 backends to use the full STD. and shaking down their runtimes. and | 16:07 | |
STD_red can plug in if needed to provide a complementary but compatible source of ast's. maybe even a quicky from redsix to. so by end of day, a full pipeline is up, even if the current flow is just a trickle. and rather than thinking of it as a pipeline, | 16:08 | ||
it's more a "ok, here is the exposed data. there's more than one person working on it, so it's real, and not going to just evaporate. and you can start doing your thing, whatever that is, right now. integrated with what everyone else is doing". | 16:10 | ||
or something vaguely like that. maybe. the hope is. | |||
hmm. maybe I _should_ of put off presenting that concept until after breakfast, to increase clarity. ah well. | 16:12 | ||
thoughts? | |||
TimToady | .oO(coffee!!!) |
16:13 | |
mncharity | :) | ||
GPenguin | :D | 16:14 | |
TimToady | .oO(!flu would also be nice) |
16:15 | |
mostly I've been doing depth-first programming on longest-token matching because everyone else was taking the breadth-first approach, to the first approx | 16:17 | ||
so nobody was looking at DFA matching | |||
16:18
finger left
|
|||
TimToady | also, is kb6 ast actually documented anywhere? | 16:18 | |
*kp6 | |||
that sounds more snide than I mean it | |||
I just haven't looked | 16:19 | ||
since I've been concentrating elsewhere | |||
mncharity | the basic ideas are "avoid another monolithic system". like pugs (monolithic because it's yaml is incomplete), kp6, redsix. redsix should *not* start emitting say p5 code. if anything, it should start dumping yaml. <pause> | ||
re documented, I'm not sure. that would indeed be a todo. | |||
TimToady | anyhoo, up till now the parts that I felt I had to concentrate on were too far removed from reality to worry about integration | 16:20 | |
but you're right, it seems like we're getting a lot closer to that point | |||
mncharity | basically, it seems like we've gotten away from the concept that "doing a parse requires a complete running p6 hanging off the parser". it may be true ultimately, but not near term. that "not trying to do it near term" means we can decouple implementation and development better. | 16:21 | |
TimToady | well, pugs had the right idea insofar as the bootstrap for a real compiler must be written in another high-level language | 16:22 | |
16:22
ebassi left
16:23
justatheory joined
|
|||
TimToady | it's just that p5 is sufficiently close for an approach like gimme5 to work on STD | 16:23 | |
and haskell isn't so close | |||
spinclad | positronics++ # next: asimovian robots! | ||
TimToady | and doubtless the bottom up approach of parrot would work eventually too | 16:24 | |
but I've always refused to learn PIR :) | |||
spinclad | but what is the damage when variables and antivariables meet? | ||
[particle] | just write non-strict perl without semicolons | ||
it'll probably compile ;) | |||
spinclad | no, keep anti/variables apart with ;'s ! | 16:25 | |
sorry, wrong thread? | 16:26 | ||
TimToady | as long as one [particle] is spinclad up and there is spinclad down, there's no trouble | 16:27 | |
s/there/the other/ | |||
[particle] | or half-spinclad | ||
mncharity | re comments, agreed. i'm more observing that given this moment, what we understand, and how we think we want to approach things, what pieces we have lying around, what we are currently working on... our constraints on development may now be quite different then they have been historically. | ||
16:27
kanru joined
|
|||
spinclad | spinhalfclad | 16:27 | |
mncharity | so different that we might be able to crack things wide open, like, today. | 16:28 | |
TimToady | and add a STDbot to the list? :) | 16:29 | |
mncharity | STDbot? | ||
spinclad | 'keep those uptime and downtime particles apart! don't cross the streams!' | 16:30 | |
TimToady | eval: 42 | ||
perl6: 42 | |||
mncharity | :) | ||
exp_evalbot | kp6: RESULT[42] | ||
..pugs: RESULT[42] | |||
..rakudo: RESULT[Method 'perl' not found for invocant of class 'Integer'ā¤current instr.: '_block10' pc 35 (EVAL_10:16)ā¤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 789 (src/PCT/HLLCompiler.pir:459)ā¤called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1063 (src/PCT/HLLCompiler.pir:586)ā¤called | |||
..from Sub 'parrot;PCT::HLLCompiler;command_line' pc 1246 (... | |||
mncharity | redsix: 42 | ||
snif. | |||
16:30
gbacon joined
|
|||
mncharity | but that would be security headache noone wants. :) | 16:30 | |
16:31
arguile left
|
|||
[particle] | the only thing keeping me in this channel is my magnetic bottle [] | 16:31 | |
spinclad | just don't let it do anything interesting. | ||
TimToady | yes, well, especially since gimme5 scribbles the filesystem currently to keep its cache | ||
so STD5 has to read the filesystem at least | |||
and there goes /etc/passwd to St Petersburg... | |||
well, there's chroot for that, at least, and maybe Safe | 16:32 | ||
spinclad is lost in superposed *ix and w*nd*z security models | 16:33 | ||
mncharity | though what would the STDbot print? match tree, ast, emitted code, or runtime output. :) | ||
16:33
arguile joined
|
|||
TimToady | there's a comment in STD right now | 16:33 | |
# XXX will this please work somehow ??? | |||
16:33
blindfish joined
|
|||
TimToady | it's on the .eval in: | 16:34 | |
token regex_mod_internal:sym<:i( )> { <sym> <regex_mod_arg> { $+insensitive = $<regex_mod_arg>.eval } } | |||
so if that please works somehow, then STDbot should be able to print 42 :) | |||
mncharity | re XXX, ok. expectation management note to self: gimme5 is an exercise in DFA engine research. yes? :) | 16:35 | |
ah, i see | |||
TimToady | primarily, yes | ||
but to do that research I have to have a running version of STD | 16:36 | ||
which happens to also be what you want for a Perl 6 parser eventually :) | |||
mncharity | but said research has the nice side effect of an official grammar getting actively banged on. | ||
TimToady | indeed, any attempt to converge on the grammar improves the grammar, one way or another, as long as there's feedback | 16:37 | |
16:37
snooper left
|
|||
TimToady | I do find myself tweaking a few things to make it easier to gimme5 them over to p5 :) | 16:37 | |
mncharity | re feedback, yes, part of the pipeline idea came from how to keep gimme5 fed with feedback and "other people using it"-ness. | 16:38 | |
16:38
pbuetow joined
|
|||
TimToady | as long as what I start with is still officially p6, that seems okay | 16:38 | |
so like, turning @foo.join, which is hard to translate, into ~@join which is easy | |||
'cause it's not a real generic translator, just a transliterator for a known plaintext | 16:39 | ||
mncharity | re seems okay, oh yeah. and I expect, once we're a bit more bootstrapped, the creep will then go in the other direction. | ||
TimToady | and it's very, very easy to break | ||
mncharity | ("since feature X works on all our backends Y, now the grammar can use X...") | 16:40 | |
TimToady | *nod* | ||
16:40
gbacon left
|
|||
rakudo_svn | r25935 | petdance++ | fix the "say <ok 4>" | 16:41 | |
TimToady | but some nice things have fallen out semi-generically, like the ability to translate any "is context" into localized our vars | ||
by the trick of declaring the our vars in main:: before the first package Perl; | 16:42 | ||
16:42
lichtkind joined
|
|||
TimToady | and the signature mangling has got pretty good generically too | 16:42 | |
mncharity | ah, ok. hmm. perhaps an env:: rather than main::. | 16:43 | |
TimToady | I still have to completely replace the p6 method heredoc though | ||
it just doesn't translate well at all. | |||
Andy is happy to be writing his first Rakudo test. | |||
TimToady | mainly because it's doing too much internal pattern matching on strange data structures | ||
mncharity | Andy++ :) | ||
[particle] is happy at andy | |||
Andy | I might actually learn some syntax. | 16:44 | |
spinclad hurls happiness | |||
16:44
kyrbe joined,
kyrbe left
|
|||
TimToady | is this a test inside or outside of t/spec? | 16:44 | |
mncharity | re heredoc, there's a ruby version in std.rb, but it's never actually been run, so... salt required. | ||
Andy | outside of | 16:45 | |
TimToady | have joy | ||
mncharity: re heredoc, I rewrite it heavily when I had to translate to p5 because I realized the original approach was bogus | |||
*rewrote | 16:46 | ||
so it might have changed in STD since you last saw it | |||
mncharity | ok. np. | ||
TimToady | it now just mangles the Match @<text>s instead of having an out-of-band list of texts | ||
16:47
GPenguin left
|
|||
TimToady | but the tricky thing is it has to allow for texts to be interrupted by interpolations in the middle of the line | 16:47 | |
and not mangle leading whitespace that's really in the middle of the line | |||
so ^^ matching doesn't work | |||
also, flattened out the @<more><text> things in Match so there's now just @<text> | 16:48 | ||
using the newfangled ** <separator> syntax | |||
mncharity | looks like I have the current version of heredoc, though part of it is commented out as a todo. | 16:49 | |
TimToady | if it prepends a "\n" to start with, that's the new version | ||
since it does literal "\n" matching rather than relying on ^^ | |||
then we aren't fooled by gnostic interpolations into believing there's a line start after the interpolation | 16:50 | ||
mncharity | should the ^ (\t+) instead be ^^ (\t+) ? | 16:51 | |
lichtkind | @seen fglock | ||
lambdabot | I haven't seen fglock. | ||
TimToady | should probably be matching literal \n | 16:53 | |
oh, wait, no | 16:54 | ||
it's already the capture after a \n | |||
so ^ really is beginning of string | |||
$white is $0 from after \n | |||
mncharity | ooo, there's a bot I'd like to see. a p6 glossary and pointer bot. ... explain: gnostic interpolations mumble mumble SNN mumble | 16:55 | |
TimToady | you'll note also the careful use of || rather than | matching so that it prefers $ws over \h* | ||
otherwise \h* would be longest token, and almost never match $ws that we want to match | 16:56 | ||
mncharity | oy. I've been avoiding noticing the differences between || and | ... an empowering innocence which probably has to come to an end rsn. | ||
TimToady | also, it's really important to do the s:g in one pass, rather than one s:g for $w, and another for \h* | 16:57 | |
spinclad | gnostic: might refer to any of a-, mono-, bi-, or tritheistic interpolations in the canon, perhaps | ||
as long as they think they *know* | 16:58 | ||
16:58
justatheory left
|
|||
TimToady | mostly gnostic means "I know something you don't know, nyah, nyah, nyah, please join our cult and I'll tell you." | 16:58 | |
mncharity | lol | ||
TimToady | I prefer a theology that doesn't keep secrets for insiders | 16:59 | |
16:59
DarkWolf84 joined
|
|||
TimToady | but people do find the nyah, nyah, nyah part rather attractive from the giving end, sigh | 17:00 | |
mncharity | sigh indeed. off to food i think. i'll write up a strawman "meta-project" proposal after. | 17:01 | |
spinclad | 'we have it from this volume hidden on a mountain from the beginning of time by the Great Seth, son of Adam...' | ||
lichtkind | TimToady: sorry for this rude question most of time i try to follow p6l but was there some significant changes in the lang in last 2 month? | 17:02 | |
TimToady | many people will believe this in 10 years, so you can reap great rewards by getting in on the pyramid now | ||
um, depends on what you mean by significant | 17:03 | ||
spinclad | if you start now you can even help build the pyramid! | ||
17:03
Lunchy left
|
|||
TimToady | if you look at the p6l archive and just look for spec changes, most of the (embedded, alas) checkin messages will tell you whether the changes are major or minor | 17:03 | |
spinclad could use some blood sugar... off to eat & again | 17:04 | ||
TimToady | or just use svn log on the specs repo directly... | ||
that's at svn.perl.org/perl6/doc/trunk/design/syn | 17:05 | ||
lambdabot | Title: Revision 14514: /doc/trunk/design/syn | ||
17:06
jhorwitz joined
|
|||
TimToady | lichtkind: any particular reason for asking? | 17:08 | |
lichtkind | TimToady: because i do a lot of writing about perl 6 and not always understand consequences of the logchanges | ||
TimToady: was'nt ther in 2006 announced a "major feature freeze" ? | |||
TimToady | not by me | 17:10 | |
I don't do freezes, only slushes | 17:11 | ||
lichtkind | but it was somewhere in official looking texts and sounded pretty serious :) | ||
TimToady | we approach stable asymptotically | ||
lichtkind | iknow :) | ||
TimToady | well, people want to say that the design is largely complete, and it is | 17:12 | |
lichtkind | but you cant say that in forehand i understand | ||
TimToady | sometimes they overstate that | ||
I have always said for several years now that the design of the language is now primarily influenced by feedback from implementors | 17:13 | ||
but that doesn't mean we can't simplifiy or generalize when we see the opportunity | |||
[particle] | it's been influenced by teachers and authors, too :) | ||
TimToady | one major recent change is that sub foo ($a) no longer produces a named unary | 17:14 | |
you have to explicitly say prefix:<foo> to get that to happen | |||
the syntax of ** quantification has changed recently to allow separators on the right | 17:15 | ||
not too many changes in the operators, except to split out the precedence of ~ and x | |||
so they're now looser than math ops | |||
lichtkind | TimToady: please what means unary foo($a) ? | 17:16 | |
TimToady: i recently returned from german perl workshop | 17:17 | ||
TimToady | well, foo($a) is just a function call because of the parens in postfix position, so that's not a unary call | ||
lichtkind | the real problem lays that the orga team which is real decent and intelligent | ||
TimToady | but if you say "foo $a" that's an operator | ||
and the question is how to parse "foo $a, $b" | |||
a true unary would parse that as "foo($a),$b" | 17:18 | ||
lichtkind | but the really believe that people who skoke about perl 6 in last years told every time soon its there so its sometimes difficult to comunicate | ||
TimToady | a listop makes it "foo($a,$b)" | ||
lichtkind | ah thanks | 17:19 | |
TimToady | well, maybe some people misunderstand the Christmas joke and then get overexcited | ||
and maybe some people just have a different idea of "soon" | |||
lichtkind | i think its more than that, i think people who are excited were not best comunicators | 17:20 | |
PerlJam | TimToady: most people don't have the long view that some of us do. | 17:21 | |
lichtkind | TimToady: so foo $a, $b now translates to foo ($a, $b) ? | ||
TimToady | and some of it was the rapid progess that pugs was making at the time, but that came to a screeching halt when audreyt got sick | ||
lichtkind | yes kp6 and v6 also seemed to slowd down | ||
TimToady | most of my work lately has been toward getting an executable version of STD.pm with correct semantic | 17:24 | |
s | |||
STD.pm being kind of an executable spec for how the parser should work | |||
17:25
TJCRI joined
|
|||
TimToady | foo ($a, $b) is something else again | 17:26 | |
17:26
razvanm02 left
|
|||
TimToady | you've passed ($a,$b) as the first arg to foo with that | 17:26 | |
foo $a, $b translates to foo($a,$b) | 17:27 | ||
whitespace is significant in distinguishing postfix () from non-postfix () | |||
lichtkind | TimToady: yeah i should know since i written text about :) currently i writing on an update status of the overall project | ||
TimToady | but yes, given "sub foo ($)" p5 makes a unary operator | ||
but p6 makes a list operator | 17:28 | ||
17:28
Psyche^ joined
|
|||
TimToady | and you have to say "sub prefix:<foo> ($a)" to get the p5 behavior | 17:28 | |
17:29
ebassi joined
|
|||
lichtkind | TimToady: thanks i copy that into a file and understand it later fully :) no most of it i think i got | 17:32 | |
17:32
Lunchy joined
|
|||
lichtkind | TimToady: something alse.. i maintain the p6doc module, currently i add further material to it like perl.com articles some doce from patrick, what you think should p6doc contain? | 17:33 | |
its not that drastic since bible docs are evolving and also the officialp5 docs sontains some gut infos | 17:34 | ||
i just scream around if someone has further usefull material | 17:35 | ||
TimToady | I don't have a strong opinion about documentation, other than that there's a lot of obsolete documents that people refer to without realizing how old they are | 17:36 | |
Juerd | Is that an opinion? | 17:37 | |
TimToady | I prefer to have opionions that are also facts. :) | ||
*opinions | |||
.oO(what's an opi-onion?) |
17:38 | ||
maybe it's more of an opinion if you s/a lot of/far too many/ | 17:39 | ||
Juerd | Ah, then I agree :) | ||
lichtkind | TimToady: i tkae care of that all things i included are mared as old or draft that are so | 17:42 | |
marked | |||
17:43
nnunley joined
17:46
Patterner left,
Psyche^ is now known as Patterner
17:47
eternaleye left
|
|||
rakudo_svn | r25938 | petdance++ | "6.say" | 17:54 | |
r25938 | petdance++ | now works | |||
lichtkind | TimToady: thanks for answers | 17:55 | |
17:58
rdice left
17:59
rdice joined
18:08
Waleee joined
18:09
njbartlett joined
18:13
Aankhen`` left
|
|||
[particle] | Andy: my method for converting spec tests goes something like this: | 18:13 | |
visit perlcabal.org/syn/, and pick a synopsis (eg. S12) | |||
lambdabot | Title: Official Perl 6 Documentation | ||
18:13
njbartlett left
|
|||
[particle] | look for smartlinks (eg. - Hide t/oo/class/basic.t lines 13ā38 (9 ā, 0 Ć) -) | 18:14 | |
open the file named there, and a file named appropriately for the spec tests (eg. t/spec/S12-classes/basic.t) | 18:15 | ||
move the tests, svn add the file, svn ci. | 18:16 | ||
if you don't have a commit bit, let me know and i'll fix it asap | |||
TimToady | there are no andys or petdances in the commiter list | 18:17 | |
also, consider adding your conversion recipe to t/spec/README | 18:19 | ||
18:19
meppl joined
|
|||
TimToady | shower & | 18:19 | |
[particle] | good ideas, all three. | ||
TimToady | we could probably semi-automate the movement of pugs specific :todo into fudge format | 18:21 | |
pugs_svnbot | r19969 | ruoso++ | [smop] starting to write a lowlevel implementation of method that resolves to a C function call. | ||
diff: dev.pugscode.org/changeset/19969 | |||
lambdabot | Title: Changeset 19969 - Pugs - Trac | ||
TimToady | that can actually be done in-place since pugs runs fudge over all .t files | ||
really & | |||
18:21
ebassi left
18:22
justatheory joined
|
|||
pugs_svnbot | r19970 | particle++ | [spec] convert basic S12 class tests | 18:27 | |
r19971 | particle++ | [spec] convert pod to pod6 | |||
diff: dev.pugscode.org/changeset/19971 | |||
lambdabot | Title: Changeset 19971 - Pugs - Trac | ||
Andy | I don't understand the spec test stuff, Particle. | ||
18:28
eternaleye joined
|
|||
[particle] | ok, want a commit bit anyway? | 18:28 | |
18:30
justatheory left
|
|||
Andy | yes. | 18:33 | |
I'm not able to think about it. | 18:34 | ||
My question: Is there a common t/spec repo we're building? | |||
[particle] | yes. it's in the pugs repo. | 18:35 | |
just like STD.pm is in the pugs repo. | |||
Andy | I didn't see a t/spec | ||
[particle] | eventually, they may move somewhere more "official," but this way it's optimized for development. anyone can find and fix bugs in the spec | ||
Andy | oh wait, it's there. | 18:36 | |
ok, and so "make spectest" should work under languages/perl6? | |||
I see. | |||
I hpoe that Audrey doesn't kick your ass for giving me commit access! | 18:37 | ||
PerlJam | Andy: I think we're almost to the point where the number of people who have commit access exceeds those that do not. :-) | 18:38 | |
Andy | PJ: I know, I kid. | ||
18:39
chris2 joined
18:40
njbartlett joined
|
|||
rakudo_svn | r25939 | particle++ | [rakudo perl6doc]capture pod bodies, and process pod options | 18:45 | |
18:54
macae left
|
|||
TimToady | 6u | 18:59 | |
er, 6metoo | |||
19:02
aindilis left
19:03
pbuetow left,
aindilis joined,
pbuetow joined
19:06
tobeya joined
19:07
smtms left
19:13
smtms joined
|
|||
pugs_svnbot | r19972 | gwern++ | I found a nicer workaround for the cabal/hsc2hs problem. Mention it. | 19:13 | |
diff: dev.pugscode.org/changeset/19972 | |||
lambdabot | Title: Changeset 19972 - Pugs - Trac | ||
19:24
drrho joined
19:34
drrho left
19:42
qmole left,
qmole joined
19:43
rff_ joined
|
|||
rff_ | hi | 19:43 | |
TimToady | howdy doo | 19:45 | |
20:02
Coke joined
|
|||
Coke | I have a perl5 guy who is wondering if perl6 will have some way to say '[complicated expression] && return it for [some list]' # return the value of the expression the first time it is true. Is there such a beast? (or a better way to get a similar effect?) | 20:04 | |
TimToady | well, first {expr}, @list is supposed to do that eventually | 20:06 | |
hmm, but that's returning the first element of the list, not the computed value | 20:08 | ||
PerlJam | "return the value the first time it's true"? | ||
Coke | TimToady: ah, perfect. | ||
PerlJam | that sounds like an until to me. | ||
TimToady | until is kinda imperative... | ||
20:09
jferrero joined
|
|||
TimToady | but I guess you could do "first True, map {expr}, @list if you want the other semantics | 20:09 | |
first {.true} in the worst case | 20:10 | ||
mncharity: I am rather amazed to discover that .matchify actually seems to be working more or less correctly without any tweakage from the pugs version (other than translation to p5) | 20:12 | ||
Coke | ~ | ||
20:14
rff_ left
20:24
meppl left
|
|||
mncharity | re .matchify, ! :) | 20:27 | |
TimToady | well, there are still a few extra levels in there, but the ->{prior} mechanism seems to be working | 20:31 | |
to get the integer node out of noun, I have to say | 20:32 | ||
print Dump(@r[0]->{prior}{number}[0]{integer}); | |||
where it should just be $r{number}{integer} | |||
that's mainly a side effect of using list context to hold alternatives and quantifier backtracks | 20:33 | ||
er, $r->{number}{integer} | |||
I forget this is Perl 5 :) | |||
wolverian | what's the -> in perl 6? ;) | 20:34 | |
TimToady | lambda | ||
-> $a, $b {...} | |||
or do you mean the other way? | |||
$r<number><integer> | 20:35 | ||
wolverian | just remarking on the @r[0]->; if you thought it was perl 6, what's the -> doing there? | ||
TimToady | or just $<number><integer> if $r is really $/ | ||
wolverian | I need to come up with something constructive | ||
in the near future, hopefully :/ | 20:36 | ||
(sorry :) | 20:37 | ||
TimToady | this is irc; remarking is perfectly okay :) | ||
wolverian | it doesn't make me feel less of an ass :) | 20:39 | |
Juerd | I haven't done much Perl 6 recently but I do find myself typing Perl 6 syntax when I'm working on Perl 5 code. | 20:41 | |
20:41
mofino left
|
|||
TimToady | you think you've got problems--I go straight from STD.pm to STD5.pm and back, and I'm always in the wrong file typing the wrong code. :) | 20:43 | |
you'd think I'd be able to tell them apart by now... :) | |||
Tene | TimToady: perhaps you should jus tmake a p6->p5 compiler so that you can just type only p6 code. ;) | ||
TimToady | um, great idea, why didn't I think of it earlier... :) | 20:44 | |
Tene | I suspect that someday I'll stop finding myself so funny. | ||
That day is not today, though. | |||
20:46
rindolf joined
|
|||
Juerd | TimToady: Haha | 20:47 | |
20:47
araujo joined
|
|||
Juerd | TimToady: Try alternating background colors in your editor. I did that when configuring two nearly identical new email servers and it worked well. I had a blue server and a red server, and used similarly colored labels on the actual machines. | 20:47 | |
It doesn't fix the problem, but it can reduce it | 20:48 | ||
mncharity | ooo, background colors, neat idea. | ||
TimToady | well, obviously I can't use red... | ||
Juerd | Maybe it should be obvious, but I don't see it... :) | ||
TimToady | mncharity has been working on the ruby version of STD | 20:49 | |
Juerd | Oh, heh | ||
wolverian | quick, pick green.. | ||
TimToady | green is my favorite color, but I like purple better... | ||
[particle] | grue and bleen make a good combination | 20:50 | |
Juerd | In PC BASIC, 5 was purple, 6 was brownish :) | 20:51 | |
TimToady | I'll bet they got their backslashes backwards as well... | 20:52 | |
Juerd | In ANSCI, 5 is purple, 6 is teal | ||
ANSCI? ANSI! | |||
Well, of course it wasn't just BASIC that did this. It was 80x25 text thing that had this... Somewhere at &HB800 :) | 20:53 | ||
TimToady | 25!?!? real terminals only have 24 lines!!! | 20:54 | |
Juerd | *PC* BASIC :) | ||
In BASIC, the 25th line was the status line. It didn't participate in scrolling :) | |||
TimToady | I blame DEC | 20:55 | |
Juerd | I don't know who to blame :) | ||
[particle] | D|I|G|I|T|A|L | ||
TimToady | if they'd just stuck and 72x20 when they had it so good with the VT05 | ||
Juerd | I like that terminals are all more or less the same nowadays: xterm! :) | ||
TimToady | *at | ||
course, the VT05 was uppercase only | 20:56 | ||
and Japanese was right out | |||
Juerd | ļ¼µļ¼°ļ¼°ļ¼„ļ¼²ļ¼£ļ¼”ļ¼³ļ¼„ ļ¼©ļ¼³ ļ¼®ļ¼Æļ¼“ ļ¼” ļ¼°ļ¼²ļ¼Æļ¼¢ļ¼¬ļ¼„ļ¼ ļ¼”ļ¼³ ļ¼¬ļ¼Æļ¼®ļ¼§ ļ¼”ļ¼³ ļ¼¹ļ¼Æļ¼µ ļ¼Øļ¼”ļ¼¶ļ¼„ ļ¼µļ¼®ļ¼©ļ¼£ļ¼Æļ¼¤ļ¼„ | ||
TimToady | I guess it could type U+263A just fine | 20:57 | |
and everyone knows what that means anyway | |||
Juerd | Racial unicode :) | ||
Coke | TimToady: it just takes so long to fire up character map. | 20:58 | |
Juerd | Though it's not entirely accurate. On my terminal, the WHITE SMILING FACE is black, and the BLACK SMILING FACE is white. :) | ||
[particle] | how well does that work with EBCDIC | ||
TimToady | yes, only whites are allowed to frown | ||
Juerd | TimToady: That's blacks on my white-on-black terminals :) | ||
TimToady | Juerd: mine too | ||
which is why purple would work better than green--closer to black | 20:59 | ||
Juerd | But then, the BLACK HEART SUIT is white too. | ||
TimToady | no!?! | ||
I detect a conspiracy | |||
Juerd | ā„ | ||
21:00
arguile left
|
|||
TimToady | it's really confusing to read the irc logs with the colors reversed from what they should be :) | 21:00 | |
Juerd | Given the de factor standard for four color playing cards, green is ā£ | ||
wolverian | FILLED would make more sense.. | ||
PerlJam | Juerd: clover | ||
Juerd | PerlJam: Clubs | ||
PerlJam | well, when it's green it's a clover or a shamrock | 21:01 | |
Juerd | And diamonds are blue. ā¦ | ||
Hearts are red, spades are black. | 21:02 | ||
TimToady | well, everyone's gonna be running white-on-black screens when we have active OLED displays that run twice as long as black-on-white | 21:03 | |
wolverian | OLED++ | ||
TimToady | unless they can find a way to make the dark pixels use more power than the light ones... ;) | 21:04 | |
21:05
Andy is now known as AndyAway
|
|||
TimToady | maybe light up our screens indirectly with burning US embassies... | 21:06 | |
sigh | |||
PerlJam | future displays will stimulate rods and cones directly. No need for a "screen" | 21:07 | |
TimToady | will still take more power for the light pixels :) | ||
[particle] | we'll be using cheap, renewable, nuculur power by then | 21:08 | |
TimToady | maybe we should rename smop to kosovo, then go burn down the microsoft embassy in parrotland | ||
PerlJam | [particle]: portable nuclear power plants like from Asimov's Foundation series. | 21:10 | |
21:10
lichtkind left
21:15
devogon left
21:18
rindolf left,
blindfish left
21:19
devogon joined
21:20
mofino joined
21:28
Waleee left
21:30
cognominal_ joined
21:31
meppl joined
|
|||
mncharity | lol # /me backlogs | 21:44 | |
My impression is kp6's ast is the most recent and best attempt at designing a Right Thing ast/il. anyone disagree? any interesting runner-ups worth looking at? | 21:53 | ||
[particle] | mncharity: i think parrot's ast is at least equally good, but i'm biased | 21:54 | |
mncharity: www.parrotcode.org/docs/pdd/pdd26_ast.html | 21:55 | ||
lambdabot | Title: Parrot Abstract Syntax Tree - parrotcode | ||
mncharity looks... | |||
thx !:) | |||
21:56
wknight-away joined
|
|||
[particle] is currently working on a yaml dump format and dumper for parrot's ast | 21:57 | ||
21:58
buchetc joined
|
|||
mncharity | kp6 ast: svn.pugscode.org/pugs/v6/v6-KindaPe...rl6/Ast.pm | 21:59 | |
lambdabot | tinyurl.com/2f66ak | ||
mncharity | re working on a yaml dump format, ooo... | ||
note www.kuwata-lab.com/kwalify/ | |||
lambdabot | Title: Kwalify: schema validator and data binding for YAML/JSON | ||
[particle] | it's not incredibly important the the ASTs be the same between implementations, but it is important for them to be quickly and easily converted | 22:00 | |
22:00
tobeya left
|
|||
[particle] | re kwalify: thanks! | 22:02 | |
22:03
jferrero left
22:06
jferrero joined
|
|||
pugs_svnbot | r19973 | lwall++ | [Cursor5] .matchify produces a better behaved Match object | 22:08 | |
diff: dev.pugscode.org/changeset/19973 | |||
lambdabot | Title: Changeset 19973 - Pugs - Trac | ||
TimToady | this now works: | 22:12 | |
my $r = Perl->new(orig => '42')->noun([]); print Dump($r->{value}{number}{integer}); | 22:13 | ||
and prints a yaml AST(ish) | |||
now we just have to get the rest of it to work :) | 22:14 | ||
mncharity | ! :) | ||
22:19
TJCRI left,
justatheory joined
22:24
buchetc left
|
|||
mncharity | oky. here's where i'd really like a whiteboard. I don't suppose anyone is in the boston area and would like to get together in the next couple of days to talk through "a project architecture for the next few weeks"? | 22:32 | |
but basically: | |||
TimToady | obra lives near boston | 22:34 | |
obra | mncharity: I'm happy to _listen_ if that would help | ||
And comment. | |||
but I can't commit to being a useful design contributor ;) | |||
also, I have large whiteboards | 22:35 | ||
22:42
tobeya joined
22:43
IllvilJa left
|
|||
mncharity | obra: that would be helpful. i find simply discussing and answering questions often yields new insights and better design. | 22:45 | |
obra | ok. | ||
could do tomorrow from 6-7 if that's good for you | 22:46 | ||
mncharity | that would be great. see you at 6 (pm I assume? am would be fine too). | ||
obra | pm is better for me ;) | 22:48 | |
wanna pop by the bps office? | |||
mncharity | ok. yes. see you 6 pm at bps. | 22:49 | |
obra | lovely | ||
obra has no idea if there's an easy way to use this nice macbook to broadcast the whiteboard and discussion in the room but we could try if other folks wanna | 22:50 | ||
22:51
justatheory left
|
|||
mncharity | basic idea is: a kp6/ast-like yaml format. kwalify-ed. with a p5 wrapper lib. (also rb and p6 - all metaprogrammed from p5 - they are basically just class names and vars). | 22:52 | |
a lot like kp6 -Cast, and in fact there would be a kp6 -Cast | kp6ast-to-kp6ast-like-yaml > foo.yaml, but the key difference is | 22:53 | ||
the backends can be written in p5 (or rb:), rather than in the kp6 subset-dialect of p6. so development is easy, and they run fast. | 22:54 | ||
obra | talked to fglock about this? | 22:55 | |
mncharity | two p5 backends are of particular interest - a very simple transliterator - which simply converts from p6 syntax to p5 syntax, and doesn't try to emulate p6 semantics. you simply have to avoid writing p6 things which will be broken by that process. it's a way to write in p6, instead of p5/rb/whatever, while having a zero-performance hit. so backends can | 22:57 | |
start being written in p6 now, rather than needing to be mostly in native language. | |||
re fglock, no, hasn't been around, and the current form of the argument is just gelling now. | 22:58 | ||
obra | nod | ||
mncharity | the other p5 backend is the current effort. hmm... there might be a third, but later on that. | 22:59 | |
the... for now "yail", yet-another-intermediate-language, also provides a target for three, maybe four other pipes. | 23:00 | ||
redsix, STD5, and STD_red (as backup to STD5). maybe pugs. | 23:01 | ||
23:02
rdice left
|
|||
mncharity | STD5 flow is STD5 .matchify -> match tree (dump as yaml... simply because I'd find it easier to cleanly massage in ruby than in p5) -> gast (more in a moment) -> yail. | 23:02 | |
gast(ly) is just an oo ast which closely matches the STD grammar. Basically to insulate the parser from yail, provide a place to do any non-local analysis needed, etc. If it ends up being a no-op, well, then it ends up being very simple. | 23:04 | ||
23:04
[particle1 joined
|
|||
mncharity | STD_red generates a match tree vaguely similar to STD5's, but sufficiently different that it gets its own -> gast converter. | 23:05 | |
23:05
charsbar_ joined
23:06
tobeya left,
qmole left,
Lunchy left,
kanru left,
[particle] left,
iblechbot left,
meteorjay left,
arcady left,
silug left,
tewk left,
rakudo_svn left,
AndyAway left,
kolibrie left,
charsbar left,
ilbot2 left,
allbery_b left,
falesca left
|
|||
mncharity | gast is again yaml-ified, dtd'ed (though less stably). basically so someone wanting to | 23:06 | |
drat, net partition. :( | |||
wanting to generate an alternative to yail can do so. | 23:07 | ||
insulated from the STD parsers. | |||
23:08
meteorjay joined,
Lunchy joined
|
|||
mncharity | again, each node is likely only a line or few long, basically to massage away oddities in the match tree (like the ones mentioned this morning). plus whatever analysis proves needed. | 23:08 | |
hmm... ok, I havent thought where to put "compilation", distinct from "any analysis needed to generate yail" and "things the backends do when emitting". sigh. ok, todo. | 23:10 | ||
I'm not sure whether a hacked redsix should generate gast or yail. | 23:11 | ||
23:11
rakudo_svn joined,
ilbot2 joined
23:12
alester joined
|
|||
mncharity | development path might be: the kp6 -Cast -> yail postprocessor, plus yail dtd and lib and unit tests. and the simple yail to bare p5. that get's yail designed, implemented, tested. folks interested in doing backends, such as already have done kp6 backends, can then bang on it. | 23:13 | |
23:13
Limbic_Region joined
23:14
qmole joined
|
|||
mncharity | a person day or three, unless kp6 -Cast turns out to have problems. | 23:14 | |
then STD5 .matchify to gast, and gast itself, but it a more exploratory mode. eg, get 42 working through gast to yail and thus p5, before worrying to hard about the rest of gast and gast->yail conversion. | 23:16 | ||
23:16
kolibrie joined
|
|||
mncharity | do the same for the bit of STD_red which is working. | 23:17 | |
23:17
tobeya joined,
kanru joined,
[particle] joined,
iblechbot joined,
arcady joined,
silug joined,
tewk joined,
falesca joined,
allbery_b joined,
charsbar joined,
AndyAway joined
|
|||
mncharity | maybe. | 23:17 | |
23:17
tewk left
23:18
charsbar left,
nipotaway is now known as nipotan
|
|||
mncharity | then redsix to gast, hopefully making redsix sort of a kp6 alternative (trading kp6's bootstrap concept for better performance). | 23:18 | |
23:18
AndyAway left
23:19
tewk joined,
tobeya left
|
|||
mncharity | i believe, with some uncertainty, that last bit will let us start writing p5-style p6, which gets compiled to real bare p5. | 23:19 | |
23:20
arcady left,
[particle] left,
allbery_b left,
falesca left,
silug left,
iblechbot left,
kanru left,
silug_ joined,
arcady joined,
falesca joined
|
|||
mncharity | so folks writing backends can, for the most part, work in p6. | 23:20 | |
23:20
kanru joined
|
|||
mncharity | and folks creating runtimes. | 23:21 | |
eg, i could take the p5 yet-another-regex-engine, which does p6 rx on top of a p5 re, translate it into p5-like p6, and then any platform with a pcre library would have p6 rx. as well as being bootstrap. | 23:22 | ||
23:27
pbuetow left,
pbuetow joined
|
|||
mncharity | i think those are all the pieces. it's sortof generalizing the observation that STD5 is easier than STD/pugs. and exposing yail so | 23:28 | |
23:28
pbuetow left
|
|||
mncharity | 'permitting' p5/rb use doesn't preclude p6/other use. | 23:29 | |
23:29
pbuetow joined
|
|||
mncharity | gets us out of "the only way to use pugs's parser is to write in haskell in pugs", "kp6's in kp6 in kp6", and "redsix in ruby in redsix". | 23:30 | |
23:30
ruz left,
ruz joined
|
|||
mncharity | <handwaving ends> | 23:30 | |
hah | |||
thoughts? | 23:31 | ||
questions? | |||
eep. that was 40 min. :/ in retrospect, perhaps writing it up and nopasting it would have been better.(?) | 23:33 | ||
23:33
cmarcelo left
23:34
eternaleye left
|
|||
mncharity | 60 min. | 23:34 | |
[particle1 | email is a much better medium for monologues | 23:35 | |
23:36
[particle1 is now known as [particle]
|
|||
mncharity | hadn't envisioned it as a monologue :) | 23:36 | |
[particle] | :) | 23:40 | |
Juerd | Hi. Who could send me a test email? #####@juerd.nl - thanks! | 23:43 | |
wolverian | sure | 23:44 | |
Juerd | Thanks | ||
wolverian | you can yell at me again for misconfiguring my mta :) | ||
Juerd | Haha :) | ||
I'll yell at my own MTA configuration first :) | |||
wolverian | oh, my network is having problems | 23:45 | |
hmm. | |||
it might have left now | |||
[particle] | i sent one | ||
23:45
chris2 left
|
|||
Juerd | So far, greylisting seems to work well | 23:45 | |
wolverian | yes, it did. | ||
tell me if it reaches you -- I'm kind of curious too | |||
this is a brand new laptop :) | |||
(mutt + msmtp) | |||
Juerd | I got it :) | ||
Juerd uses his feather user administration for nick <-> realname mapping :) | 23:46 | ||
wolverian | I also have it in my /whois | 23:47 | |
wolverian is nice that way | |||
mncharity | not a single comment or question? ^.^ | 23:51 | |
/me listens to 5.10 make test go by, on an unshielded audio wire which picks up disk and display activity... very neat. a gnome "ambient system sound" utility. | 23:54 | ||
23:55
pbuetow left
|
|||
wolverian | whoa, that's cool | 23:57 | |
I want it too :) | |||
meppl | good night | ||
mncharity | any thoughts on a name for the kp6 ast -like ast... | ||
g'night meppl | |||
meppl | ;) | ||
mncharity | ... package. yail. nail. fail. ... | 23:58 | |
[particle] | kast | ||
23:59
meppl left
|