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. |
|||
cj | mncharity: hmm? | 00:00 | |
ingy: got any work for a perl hack? I'm unmotivated to continue grinding out code that we throw away the next day, and my bosses are getting grumpy. | |||
mncharity | cj: re hmm?, it's a Emit::Generic-like task coming up rsn | ||
cj | mncharity: ah! | 00:01 | |
mncharity: very cool | |||
mncharity: which list is discussing it? | |||
mncharity | no list (that i know of). just the obvious path of "parrot provides yaml ast", "create things to use that ast", profit. | 00:02 | |
ingy | cj: I got a ton of work | ||
I suppose you want some $$ in return though :\ | |||
cj: are you still at @m@z0n? | 00:03 | ||
mncharity | less tongue in cheek, the core idea is that having parrot provide parsing will let backend development take off. | 00:04 | |
optimized for doing p6 implementation development (eg, multimethods and macros, which are a lower priority focus for the parrot backend). | 00:05 | ||
ingy is up for meeting cj and [particle] this weekend to write some code... | |||
mncharity | what part of planet? | 00:06 | |
ingy | SEA | ||
mncharity | a weekly couple of hour p6 hackathon might be a useful social dynamic? | ||
virtual hackathon | |||
ingy | s/p6// :) | ||
guess I'm on the wrong channel for that attitude | 00:07 | ||
mncharity | indeed | 00:08 | |
the confused people channel is over there | |||
:P | |||
ingy | heh | 00:09 | |
I *could* be sucked into the p6 blackhole I suppose... | |||
mncharity | or wait a few weeks. between parrot and redsix and STD, we'll have no excuse to not have a parse tree for something at least p6-like. at which point, there's a lot of p6 to be written. | 00:13 | |
the yaml decoupling means that is backend foo can't do x at the moment, well, you develop that part with backend bar. rather than wandering off for a few months. | 00:14 | ||
s/is/if | |||
meppl | good night | 00:25 | |
mncharity | g'night | ||
meppl | ;) | ||
mncharity | looks interesting: buildfarm.st.ewi.tudelft.nl/release...guage.html | ||
lambdabot | Title: Part III. The Stratego Language, tinyurl.com/yvoc9q | ||
00:34
devogon left,
IllvilJa left
00:36
meppl left
00:38
IllvilJa joined
00:39
IllvilJa left
01:00
mncharit1 joined
01:01
mncharity left
01:03
BinGOs_ joined
01:10
BinGOs left
01:44
mncharit1 left
02:03
penk joined
02:44
xinming left
03:29
wknight8111 left
03:55
stevan_ left
04:04
silug left
04:15
xinming joined
04:18
RayMagini left
04:21
RayMagini joined
04:39
penk left
04:42
diotalevi joined
04:44
diotalevi left
05:03
jjore left
05:04
jjore joined,
jjore is now known as zz_jjore
05:05
zz_jjore is now known as jjore
05:19
Limbic_Region left
05:32
cmarcelo left,
kolibrie left,
r0bby left,
turrepurre left,
sordith left,
bloonix left,
zev left,
bphillip1 left,
bbkr_ left,
cognominal left,
GeJ left,
nothingmuch left,
simcop2387 left,
chinsans left,
pravus left
05:34
turrepurre joined
05:36
r0bby joined
05:40
nothingmuch joined,
bbkr__ joined,
cmarcelo joined,
kolibrie joined,
sordith joined,
pravus joined,
chinsans joined,
GeJ joined,
bphillip1 joined,
simcop2387 joined,
cognominal joined,
bloonix joined,
zev joined,
zev left,
bloonix left,
bphillip1 left,
sordith left,
kolibrie left,
bbkr__ left,
cmarcelo left,
cognominal left,
GeJ left
05:41
simcop2387 left,
chinsans left,
pravus left,
nothingmuch left,
zev joined,
GeJ_ joined,
bbkr__ joined,
nothingmuch joined
05:42
araujo left
05:43
cmarcelo joined
06:01
silug joined
06:09
jql joined
06:13
cj left
06:14
cmarcelo left
06:39
Schwern left
06:42
Schwern joined
|
|||
pugs_svnbot | r20029 | lwall++ | [Cursor5] cleaner split of immutable Cursor from mutable Match object | 06:42 | |
diff: dev.pugscode.org/changeset/20029 | |||
lambdabot | Title: Changeset 20029 - Pugs - Trac | ||
06:50
jjore is now known as zz_jjore,
zz_jjore is now known as jjore
07:06
Zygo left,
justatheory left,
Zygo joined
07:08
silug left
07:22
sordith joined
07:24
cj joined
07:32
blindfish joined
07:53
tobeya left
07:56
Aankhen`` joined
08:10
fridim_ joined
08:38
BinGOs_ is now known as BinGOs
08:45
pmurias joined,
pmurias left
08:46
DarkWolf84 left
08:56
devogon joined
09:06
silug joined
09:10
cognominal_ joined,
cognominal_ left
09:11
cognominal_ joined
09:35
penk joined
10:15
kanru joined
10:18
barney joined
10:19
smtms joined
10:22
drrho joined
10:32
GeJ_ is now known as GeJ
10:42
iblechbot joined
10:58
kanru left
11:08
meppl joined
11:22
kanru joined
11:31
pjcj joined
11:40
araujo joined
11:56
meteorjay left
12:17
rfordinal joined
12:19
rfordinal left
12:26
rfordinal_mobile joined
12:34
rfordinal_mobile left
12:40
blindfish left
12:45
rfordinal_mobile joined
12:53
rfordinal_athome joined
12:54
rfordinal_mobile left
12:58
lichtkind joined
13:01
mncharity joined
13:16
sordith left,
sordith joined
13:22
rindolf joined
13:30
njbartlett left
13:42
gilimanjaro joined
13:43
gilimanjaro left
13:48
rindolf left
13:55
rindolf joined
|
|||
pasteling | "pugsbot_r17185" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at sial.org/pbot/30391 | 14:04 | |
14:05
pugsbot_r17185 joined
|
|||
diakopter | that's a new one | 14:07 | |
14:11
chris2 joined
14:17
rindolf left
14:19
rfordinal_athome left
14:21
RayMagini left
14:30
pmurias joined
|
|||
pmurias | mncharity: hi | 14:30 | |
14:34
hugues23 joined,
simcop2387 joined
14:38
RayMagini joined
14:42
blindfish joined
|
|||
pmurias | mncharity: the motivation behind MiniPerl6Like is too bootstrap kp6 ASAP, hoping someone will attach a better parser to kp6 | 14:45 | |
14:46
rindolf joined
|
|||
pugs_svnbot | r20030 | pmurias++ | [kp6-mp6like] | 14:50 | |
r20030 | pmurias++ | Lit::NamedArgument, Lit::Pair and Val::Char | |||
r20030 | pmurias++ | added a test for hashes and a hashbang to script/mp6.pl | |||
diff: dev.pugscode.org/changeset/20030 | |||
lambdabot | Title: Changeset 20030 - Pugs - Trac | ||
14:54
__Ace__ joined
|
|||
pmurias | emitters in mp6 could also be written is a style similiar to emit_from_kp6.pl | 15:00 | |
15:00
wknight8111 joined
15:04
kanru left
15:12
peepsalot left
|
|||
moritz_ greets all Perl 6 Monks ;) | 15:13 | ||
... and monkeys, if there are any ;) | 15:14 | ||
pmurias | moritz_: hi | ||
15:15
peepsalot joined
|
|||
pmurias | what is a proper monky greeting? | 15:16 | |
moritz_ | ugga agga? | ||
diakopter | moritz_: eeaaakk eeaaakk | 15:19 | |
moritz_ | *g* | ||
pugs_svnbot | r20031 | pmurias++ | [kp6-mp6like] -Bmp6,-Cmp6,hashes | 15:24 | |
diff: dev.pugscode.org/changeset/20031 | |||
lambdabot | Title: Changeset 20031 - Pugs - Trac | ||
15:25
iblechbot left
|
|||
moritz_ | pmurias: what's [kp6-mp6like], and why do we need it? | 15:25 | |
pmurias | moritz_: it's a kp6 backend duplicating mp6 | 15:26 | |
so that we don't need mp6 | 15:27 | ||
moritz_ | and what does it emit? | ||
pmurias | the same sort of code mp6 does | 15:28 | |
it's a port of the mp6 perl5 backend | |||
moritz_ | ok | 15:29 | |
pmurias | i think it's the fastest way to achive bootstrap | 15:30 | |
(simplest also) | |||
moritz_ | so instead of writing a bootstrapping emitter and doing all the runtime in Perl 6, you make mp6 more like kp6, until they are the same | 15:31 | |
did I get that right? | 15:32 | ||
TimToady | at which point you have a bootstrapped kp6 compiler, but not necessarily a bootstrapped p6 compiler... :) | ||
moritz_ | aye | ||
pmurias | moritz_: i think you are wrong | 15:34 | |
it's more making kp6 more like mp6 | |||
15:37
wknight8111 left
|
|||
pmurias | TimToady: it would be a bootstrapped mp6 compiler with kp6 in BEGIN | 15:38 | |
15:39
peeps[work] joined
15:40
rindolf left
|
|||
TimToady | I'm just pointing out that there's not much meaning in saying "a bootstrap" without saying a bootstrap of what | 15:42 | |
pmurias | well self-hosting is a better word | 15:44 | |
TimToady | okay, same question, self-hosting of what? ;) | ||
15:49
rindolf joined
|
|||
pmurias | of what? you mean self-hosting what? | 15:50 | |
TimToady | that would probably be better English | 15:52 | |
diakopter | TimToady was using "self-hosting" as a gerundive, not a participle | ||
TimToady | well, my point is that I'm not sure what self-hosting buys us if the thing that is self-hosted isn't p6 | 15:53 | |
after all, there are a lot of self-hosted languages in the world already that aren't p6 :) | 15:54 | ||
diakopter | er, scratch my last comment; my memory fails me | ||
TimToady | well, I'm just grumpy this morning, mostly because gimme5 is making me think too hard about the differences between cursor objects and match objects, when I want to think about longest tokens... | 15:58 | |
and I don't think any of the other parsers have solved those problems yet | 16:01 | ||
16:05
sordith left
16:07
stevan_ joined
|
|||
Juerd | re longest tokens: Has nobody ever told you that size doesn't matter? ;) | 16:09 | |
TimToady | and more basically, I'm not sure it's a good idea to let users say things like $<foo> = 42 when what's really going on is something more like $¢ = $¢.clone_and_add_property(:foo(42)) | 16:10 | |
and I'd really prefer not to use tie in p6 to emulate delegation of pseudo hash subscripting to the cursor object | 16:11 | ||
s/p6/p5/ | 16:12 | ||
lichtkind | who is gimme? | 16:16 | |
TimToady | gimme5 is a program that translates STD.pm to STD5.pm, which runs the standard grammar in p5 | 16:17 | |
and is currently stuck at parsing things about as complex as -42+1 | |||
lichtkind | ah :) so you mean STD5 defines the grammar of perl 5 with perl 6 rules? | ||
TimToady | no, grammar of perl 6 with perl6 rules implemented in perl 5 | 16:18 | |
lichtkind | yea my feelings told me that but my brain parsed your sentence different :) | 16:19 | |
thanks | |||
so its a was to use perl with small p to bootstrap Perl 6 | |||
16:20
rindolf left
|
|||
lichtkind | sounds like it is something flavio is working on, has anybody seen flavia lately? | 16:20 | |
TimToady | yes, gimme5 is a very ad hoc translation of STD.pm to a version in p5 that uses p5 methods to implement STD parsing semantics | 16:21 | |
well, gimme5 is the translator, not the translation | |||
lichtkind | of course i understood | ||
TimToady | gimme5 is actually a version of metholate, that used to translate to pugs | 16:22 | |
but pugs was to slow and buggy to support it | |||
STD5.pm and Cursor5.pm actually run quite fast, and reproduce the bugs in a stable way :) | |||
lichtkind | haha | ||
what the heck is metholate please | 16:23 | ||
TimToady | translation of rules to method calls that emulate a regex engine | ||
lichtkind | its your invention or something specced? | 16:24 | |
TimToady | because you can do backtracking with gather/take on lazy lists | ||
that was what was translating STD.pm to pugs code | |||
nothing to do with spec | |||
lichtkind | yay the bibleupdater works and produses flaweless UTF synopses :) | ||
__Ace__ | is it gonna be possible to have files in memory and parse them from there in perl6? (thinking of now when embedding perl files into say a .zip with PAR, they have to be exatacted first) | 16:25 | |
TimToady | metholate and gimme5 are basically the same program with a different target engine | ||
__Ace__ | or Im way off? | ||
lichtkind | ah now it becomes clearer i thought its a tool somebody else wrote | ||
TimToady | __Ace__: it's prety much mandatory to parse from memory | ||
__Ace__ | aha.. | 16:26 | |
TimToady | currently the p6 parsers mostly assume you've just handed them a string | ||
and to make it work little-by-little from disk would be harder :) | |||
__Ace__ | thing is, I dont remember exactly how it is in perl5, but I recall it was something like that | ||
16:26
rindolf joined
|
|||
TimToady | p5 can read from a file on the fly, but I think we have big enough memories now that that is suboptimal | 16:26 | |
and it's better to always slurp in the whole file as a string and then parser | 16:27 | ||
*parse | |||
__Ace__ | and how about many files? (like modules etc9 | ||
and how about many files? (like modules etc) | |||
TimToady | those are compiled separately | ||
there's no such thing as "include" | 16:28 | ||
__Ace__ | basicly, Im wondering if its gonna be possible to embedd all files into one, and NOT having to extract them | ||
TimToady | oh, likely, but given most of the platforms we're targetting, you'd probably just compile down to some kind of object code and send that | ||
__Ace__ | ah | 16:29 | |
almost better | |||
:) | |||
TimToady | or send a bunch of half-compiled ASTs and just emit the right code on the other end | 16:30 | |
lots of ways to dice it | |||
__Ace__ | how about those modules that uses external libs? | ||
TimToady | what about 'em? | 16:31 | |
lichtkind | TimToady: to something completely different, when i publish the synopses with p6doc, i change the POD formation of the header a bit so its nicer to read from CPAN, youd be changed that in the originals too? | ||
s/youd/could/ | 16:32 | ||
__Ace__ | they are put in the same folder as the object code so they are found? | ||
TimToady | lichtkind: sure, everything is negotiable :) | 16:33 | |
16:35
sordith joined
|
|||
TimToady | __Ace__: you could put a subset of the official library either in the same directory or even in the same distribution file; we've defined versioning in S11 such that, once you know the full name of a module you can be sure it's the official one | 16:35 | |
P6 is agnostic about the storage format of the official library | 16:36 | ||
you can also have personal modules that aren't "official" yet | |||
but I wouldn't use that mechanism for your personal copy of official modules | |||
lichtkind | TimToady: the biggest thing is s|=head1 TITLE /n/n Synopsis 3: Perl 6 Operators|=head1 NAME \n\n Synopsis_02 - Bits and Pieces| | 16:37 | |
for some obscure reasons only Name Tags are indexed in CPAN overview maybe should fix it there | |||
TimToady | maybe--making documents act like modules seems like a square peg in a round hole | 16:40 | |
but I'm actually more worried about the _ than the TITLE/NAME | 16:41 | ||
Most documents in the world are not required to have names that are a single identifier :) | |||
and the CPAN namespace is rather limited even for p5 | 16:42 | ||
lichtkind | TimToady: sure _This__sucks_ but it would be ruin the 2 row layout in the cpan overview | 16:43 | |
TimToady | would it work to have both a NAME and a TITLE? | ||
lichtkind | allright so will reformat it in future too, its made by an regex enywway :) | ||
dunno | 16:44 | ||
TimToady | feel free to experiment on S29 in the pugs repo | ||
I can change the rest of them if you find something we can agree on | 16:45 | ||
well, it's called Functions.pod in the repo | |||
yet another "title" :/ | |||
16:46
__Ace__ left,
Chillance joined
|
|||
rhr | speaking of which, could we get feather.perl6.nl/syn/ to list the pod file names? some of them are hard to find... | 16:46 | |
lambdabot | Title: Official Perl 6 Documentation | ||
lichtkind | i thing i changes the s29 little bit | ||
err no i did not | 16:47 | ||
TimToady | rhr: "The page you're currently looking at lives in the Pugs repo as docs/feather/syn_index.html, and is resync'd every few minutes." | 16:48 | |
have at it :) | |||
16:51
Chillance left,
Chillance joined
16:53
Chillance left,
Chillance joined
|
|||
rhr | where are the synopsis files that end up in svn.pugscode.org/pugs/docs/Perl6/Spec/ (other than the ones in pugs)? | 16:55 | |
lambdabot | Title: Revision 20031: /docs/Perl6/Spec | ||
mncharity | lol reading descriptions of what STD et al are | 16:56 | |
pmurias: hi :) | |||
rhr | I see, nevermind. the update script goes out of its way to give them the weird names | 16:57 | |
mncharity | to recap, src/perl6/STD.pm is a grammar for p6, written in p6, which nothing can run. ./cheat STD.pm > something easier to run. ./cheat STD.pm | ./metholate > p6 pugs can run. ./cheat STD.pm | ./gimme5 > STD5.pm, which p5 can run. (with Cursor5.pm to help out). ./STD5_run runs STD5.pm against p6 code, and gives back a yaml match tree. tada! :) | 17:02 | |
17:05
arcady joined
|
|||
mncharity | pmurias: re 'the motivation behind MiniPerl6Like is too bootstrap kp6 ASAP', ah, ok. feel free to prototype/develop it in emit_from_kp6.pl, and then backport to kp6. the p5-ness, and ability to run the backend off of cached parser yaml (so parse isn't part of the edit-test loop), might make it easier. | 17:08 | |
17:13
iblechbot joined
|
|||
mncharity | [particle]: how goes yaml-ness? :) | 17:15 | |
pmurias | mncharity: i don't think speeding the compile-edit-test loop would be worth porting the code to and thro | 17:16 | |
as there aren't much hacks left to add to the emitter | 17:18 | ||
kp6 grammar is ~2 x slower, so a new faster one is needed to make mp6like usefull | 17:21 | ||
PerlJam | mncharity: "which nothing can run *yet*" :) | 17:23 | |
pmurias | mp6(like) generates code which is close to hand written one so hand editing is also an option | 17:26 | |
pugs_svnbot | r20032 | putter++ | [misc/pX/Common/redsix] better t/ support; permit capitalized methods (eg, HOW); +README. | 17:33 | |
diff: dev.pugscode.org/changeset/20032 | |||
lambdabot | Title: Changeset 20032 - Pugs - Trac | ||
mncharity | pmurias: ah, ok. re 'new faster one', that would be [particle]'s parrot->yaml. or as a fallback, redsix->yaml. | 17:34 | |
PerlJam: re '*yet*', indeed. hopefully rsn, at least with some cheating. | 17:36 | ||
pugs_svnbot | r20033 | rhr++ | [syn_index.html] Add .pod links (with the funny names) | ||
r20033 | rhr++ | Also add links to draft S17 and S22 | |||
diff: dev.pugscode.org/changeset/20033 | |||
lambdabot | Title: Changeset 20033 - Pugs - Trac | ||
mncharity | re 'hand editing', eep. | 17:37 | |
pmurias | that's why i prefere to wait a few seconds | 17:41 | |
pugs_svnbot | r20034 | pmurias++ | [kp6-mp6like] new tests,all exept 07-constructor fail | ||
diff: dev.pugscode.org/changeset/20034 | |||
lambdabot | Title: Changeset 20034 - Pugs - Trac | ||
17:43
drrho left
17:50
Psyche^ joined
17:52
njbartlett joined
|
|||
pugs_svnbot | r20035 | rhr++ | [syn_index.html] mark drafts as [DRAFT], fix up spacing | 17:53 | |
diff: dev.pugscode.org/changeset/20035 | |||
lambdabot | Title: Changeset 20035 - Pugs - Trac | ||
17:55
jwest-- joined
|
|||
rhr | I'm not sure feather is actually grabbing that file. there are a couple spelling fixes from july that aren't on feather | 17:57 | |
here's the new version: airen.bcm.umontreal.ca/syn_index.html | 18:02 | ||
lambdabot | Title: Official Perl 6 Documentation | ||
18:05
Patterner left,
Psyche^ is now known as Patterner
|
|||
pugs_svnbot | r20036 | putter++ | [redsix] Added --yaml. Currently, it simply dumps the raw ast tree, which is rather large. ./redsix --yaml -e '3' is 250 KB and 11 klines. | 18:12 | |
diff: dev.pugscode.org/changeset/20036 | |||
lambdabot | Title: Changeset 20036 - Pugs - Trac | ||
mncharity | oh, that's cute. ./redsix --yaml -e 'say(3)' > /dev/null makes ruby 1.9.0 go boom. | ||
the reason for the enormous size is the entire grammar is getting sucked in. | 18:13 | ||
TimToady | one wishes one could instruct yaml not to follow certain links... | 18:14 | |
trying to dump out a Match object without the associated cursors (including all prior cursors) is a problem for me | |||
and I don't even have links back into the matching rule yet, which I suppose is your problem | 18:15 | ||
mncharity | yep, that's it. | ||
TimToady | maybe writing a custom yaml visitor is the solution | 18:16 | |
mncharity | hmm... | ||
18:17
cls_bsd left
|
|||
mncharity | ruby yaml is actually pretty flexible. www.ruby-doc.org/core-1.9/index.html let's see what p5 provides first... | 18:17 | |
lambdabot | Title: RDoc Documentation | ||
18:22
Aankhen`` left
|
|||
pugs_svnbot | r20037 | putter++ | [redsix] --yaml ast is now small. Its copy of the Match parse tree is discarded before dumping. Which discards line numbers, etc, but is a better first attempt than the previous, unusably large version. | 18:30 | |
diff: dev.pugscode.org/changeset/20037 | |||
lambdabot | Title: Changeset 20037 - Pugs - Trac | ||
18:30
jjore is now known as zz_jjore,
zz_jjore is now known as jjore
18:36
blindfish left
18:42
blindfish joined
19:06
iblechbot left
19:09
barney left
|
|||
mncharity | re redsix problem, it's basically ast nodes linked to their associated Match trees (which one might want, or want flattened, or want gone, but are always gone for now), and those Match nodes link to rules which have some ugly clutter. RightThing is probably to declutter, and have a knob on how much Match do you want in your ast. | 19:19 | |
For STD, it's just a clutter issue. | 19:20 | ||
so walk the tree (either smashing clutter or cloning the tree), or try to do it yaml side. the latter seems to mean "don't use syck". not attractive alternatives. | 19:22 | ||
TimToady | I've been fiddling with putting matches inside of cursors, and cursors inside of matches, and I'm not happy with either approach... | ||
mncharity | bigger picture, you might be happier looking at cleaner Match descriptions than yaml. something like | ||
TimToady | basic problem is that p5 doesn't really have any data type suitable to represent match+cursor objects, and any approach that separates them makes for circular references sooner or later | 19:26 | |
and p5 doesn't handle circular refs well... | 19:27 | ||
but there's enough difference between the match interface and the cursor interface that they're hard to combine into one object too under p5 | 19:28 | ||
I'll probably end up translating $/<foo> to $¢->{HASH}->{ | |||
FOO} | |||
$¢->{HASH}->{foo} that is | 19:29 | ||
$¢->{ARRAY}->[1] for $1 | |||
if I could poke a glob into $foo and then do $foo{HASH} I could use globs, but that doesn't work either | 19:30 | ||
and because tie is done on individual values, not types, it's not really suitable for defining an immutable type that has to clone rapidly | 19:31 | ||
mncharity | hmm,both Regexp::Common and yare get lots of "Variable "$sub_id" is not available" warnings under 5.10. wonder what that means. | 19:32 | |
TimToady | (a cursor containing a match object isn't immutable from the user's point of view, but one can view the mutable match bits as a mere cache of "prior" cursor history) | ||
so I think I'm just going to have to make $/ dereferencing non-transparent at the p5 level, sigh | 19:34 | ||
at least that should make it pretty easy to prettyprint the match bits without the cursor bits | 19:35 | ||
pugs_svnbot | r20038 | putter++ | misc/pX/Common/yet_another_regex_engine/Regexp_ModuleA.pm: Made executable. Tweaked to work with 5.8.8. Many warnings, and untested, on 5.10. | ||
diff: dev.pugscode.org/changeset/20038 | |||
lambdabot | Title: Changeset 20038 - Pugs - Trac | ||
TimToady | (where when I say match I mean something more like ast...) | 19:36 | |
pugs_svnbot | r20039 | putter++ | [yet_another_regex_engine] Clarify a puzzling error message. | 19:38 | |
diff: dev.pugscode.org/changeset/20039 | |||
lambdabot | Title: Changeset 20039 - Pugs - Trac | ||
19:40
chris2 left
|
|||
mncharity | anyway, long ago I started the sentence "something like", and now continue the yare repl output, or the representation used by redsix -v (*not* --yaml). | 19:40 | |
mncharity backlogs | 19:41 | ||
TimToady | sure, just using yaml because it's quick and dirty, for some definition of dirty | 19:42 | |
mncharity | lol. sigh, I think I'm basically understanding... and then hit "(where when I say match I mean something more like ast...)" :) | 19:43 | |
TimToady | how astish it is depends on how you write your {*} reductions | ||
pmurias | TimToady: p5 doesn't really have any data type suitable to represent match+cursor objects | ||
does p6 has one? | 19:44 | ||
19:44
FurnaceBoy joined
|
|||
TimToady | arguably Capture, if you don't look too hard at immutability issues | 19:44 | |
Capture doesn't natively have .from and .to, but those can presumably be mixed in to produce a Match | 19:45 | ||
mncharity | Match is Capture but mutable; :) | 19:46 | |
TimToady | well, and Capture is just an immutable list of mutable containers, really | ||
or you wouldn't be able to bind to a rw parameter... | 19:47 | ||
in my regex engine I'm treating Cursor as immutable, though of course p5 doesn't care | 19:48 | ||
but by cloning cursors as we progress, I can resume matches anywhere at any time without having to restore any values in the match state | 19:49 | ||
presumably it'd even be thread safe | |||
but as soon as I call into a user's {...} I have to make it mutable according to current S05 | |||
the eventual $/ returned by a match is not necessarily mutable though | 19:50 | ||
maybe it's just wrong to allow $<foo> = 42 inside user closure, I dunno... | |||
make them generate a new $¢ every time like I do :) | 19:51 | ||
on the other hand, maybe it's safe to allow mutability in that limited scope without confusing the regex matcher, as long as it doesn't go reentrant | |||
(but how would I guarantee *that*?) | 19:52 | ||
mncharity | being non-reentrant again would seem must unfortunate | ||
*most | |||
TimToady | maybe $/ is really tracking the current $¢ inside the {...}, and when you say $<foo> = 42 it generates a new $¢ which is used for any submatches and is also returned at the end of the {...} for continuing | 19:53 | |
mncharity | back re 'trying to dump out a Match object without the associated cursors (including all prior cursors) is a problem for me', STD5_run could certainly optionally do some postprocessing on the yaml. | 19:54 | |
(not meaning to interrupt;) bbiab | |||
TimToady | need to go buy my cat some food, likewise bbl & | 19:55 | |
FurnaceBoy | ah the natural pecking order in action | 19:57 | |
spinclad | *minions!* *I need food!* *I need food naow!* | 20:05 | |
20:08
rindolf left
20:11
rindolf joined
20:44
ruoso joined
21:08
hugues23 left
21:16
silug left
21:17
rindolf left
21:24
lambdabot left,
integral left
21:25
lambdabot joined
|
|||
pugs_svnbot | r20040 | pmurias++ | [kp6-mp6like] Arrays and namespaces | 21:27 | |
diff: dev.pugscode.org/changeset/20040 | |||
lambdabot | Title: Changeset 20040 - Pugs - Trac | ||
21:28
integral joined
|
|||
pmurias | pugs: [1,2,3] | 21:40 | |
exp_evalbot | RESULT[[1, 2, 3]] | ||
pmurias | pugs: @([1,2,3]) | ||
exp_evalbot | RESULT[[1, 2, 3]] | ||
pmurias | pugs: 1 | ||
exp_evalbot | RESULT[1] | ||
rakudo_svn | r26167 | chromatic++ | [Rakudo] Minor formatting cleanup in the comments. | ||
pmurias | pugs: my @a=(1,2,3);@(@a) | ||
exp_evalbot | RESULT[[1, 2, 3]] | 21:41 | |
pmurias | pugs: @(2) | ||
exp_evalbot | RESULT[[2,]] | ||
pmurias | pugs: @(2,3) | ||
exp_evalbot | RESULT[[2, 3]] | ||
pmurias | pugs: @([2],3) | ||
exp_evalbot | RESULT[[[2,], 3]] | ||
pmurias | pugs: @([2]) | 21:42 | |
exp_evalbot | RESULT[[2,]] | ||
pmurias | does pugs handle @() correctly? (should it me done the same way in mp6like?) | ||
21:54
iblechbot joined
22:08
njbartlett left
|
|||
pugs_svnbot | r20041 | putter++ | yet_another_regex_engine/Regexp_ModuleA.pm: made 5.10 happier by our()ifying a package lexical, but two similar complaints remain. And the '$x' one, is puzzling. There is also a t/rx.t regression - 22 failing tests are not appearing in the stats at all. | 22:08 | |
diff: dev.pugscode.org/changeset/20041 | |||
lambdabot | Title: Changeset 20041 - Pugs - Trac | ||
mncharity | re pugs @(), it looks plausible, turning non-@ things into arrays. but then, lists are a corner I've never really groked. | 22:13 | |
pmurias | mncharity: thanks | 22:16 | |
22:21
DaGo joined
22:25
smtms left
22:29
FurnaceBoy left
22:30
Schwern left
22:32
buchetc joined
22:33
njbartlett joined
22:47
pmurias left
22:51
peeps[work] left
22:53
njbartlett left
|
|||
pugs_svnbot | r20042 | putter++ | [redsix] Begin exporting aterm-format ASTs, to experiment with Stratego. | 22:53 | |
diff: dev.pugscode.org/changeset/20042 | |||
lambdabot | Title: Changeset 20042 - Pugs - Trac | ||
buchetc | pugs_svnbot: sub dbl{ $_ * 2}; say ~((1..2).map:{ dbl() }); | 22:55 | |
22:59
buchetc left
23:00
zamolxes joined
23:04
Schwern joined
|
|||
mncharity | pugs: sub dbl{ $_ * 2}; say ~((1..2).map:{ dbl() }); | 23:05 | |
exp_evalbot | OUTPUT[0 0] | ||
Tene | pugs: sub dbl{ $^a * 2 }; say ~((1..2).map:{ dbl }); | 23:06 | |
exp_evalbot | OUTPUT[*** Undeclared variable: ("$^a",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xb67b4a98>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xb67b91cc>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:0xb67b7f78>, pe_flags = | ||
..MkEntryFlags {ef_isContext = False}, pe_store = ... | |||
Tene | Huh, I thought pugs supported placeholder vars. | ||
23:14
silug joined
|
|||
mncharity | I'm getting build failures (make clean; ./configure; make) with both ghc 6.6.1 and 6.8.2. What is our current build story? | 23:16 | |
23:18
zamolxes_ joined
23:19
zamolxes_ left
|
|||
mncharity | If we don't have one, we should probably revert pugs back to when we did. Sticking with 6.6.1 was a pain, but it beats not compiling. | 23:23 | |
23:26
Limbic_Region joined
23:28
zamolxes left
|
|||
mncharity | good night & | 23:28 | |
23:28
mncharity left
|
|||
rhr | pugs: my &dbl := { $^a * 2 }; say ~((1..2).map: &dbl) | 23:30 | |
exp_evalbot | OUTPUT[2 4] | ||
rhr | can't use $^a in a sub | ||
23:38
BinGOs_ joined
23:40
BinGOs left
23:43
njbartlett joined
23:46
iblechbot left
|