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:06
r0bby joined
00:11
armagad left
00:17
Eevee joined
00:58
pbuetow left
01:02
mncharity joined
|
|||
pugs_svnbot | r20371 | lwall++ | [STD] now does double quotes under new quoting regime | 01:05 | |
r20371 | lwall++ | [STD] with debugging turned off can now parse about 2000 chars/sec | |||
diff: dev.pugscode.org/changeset/20371 | |||
01:08
justatheory left
|
|||
mncharity | re ruby to python compiler, and "He must have lost a bet, I can think of no other reason", perhaps the same reason there may be a EmitDirectToPython.pm as soon as elf is passing lots-of t/. Sometimes you have a python platform or a python shop, but wish to use a different language/compiler/libraries. | 01:11 | |
TimToady | I wonder if it can translate Rails to Python :) | ||
mncharity | my fuzzy recollection is rubinius's experience suggests Rails is a rather high hurdle. | 01:12 | |
TimToady | ah well, as soon as I get bored with STD, I can start writing all the OtherLang-to-Perl6 translators, since P6 is a superset of everythign else... :) | ||
did you see I'm parsing about 2000c/s now? | 01:13 | ||
Auzon | including Perl 6, apparently ;) | ||
TimToady | I base that on parsing the first 3000 chars of radix.t in about 1.5 seconds | 01:14 | |
mncharity | for all(@languages) { implement("real implementation","translator for porting","p6 backend","p6 backend where your still working in $_") } | ||
01:15
[particle]ventus left
|
|||
Auzon | What does that "benchmark" mean? | 01:15 | |
mncharity | 2kc/s :) nifty! | ||
TimToady | means I could theoretically parse STD.pm in about 50 seconds now | 01:16 | |
except it blows up on the first :foo<bar> | |||
Auzon | parse it with Rakudo? | ||
TimToady | no, with STD5 | ||
Auzon | Oh. | ||
Cool. | |||
TimToady | I've been refactoring the quoting sublanguages, but only have '' and "" so far, so the <> of adverbials blows up still | 01:17 | |
I need to figure out a better way of invoking a subrule of another language though, where that other language may be anonymous | 01:18 | ||
mncharity | re '',"", ah, I was just wondering about my evening. sync EXPR, punt name() since that's going to be refactored(?), and... sync ''/"" or wait? | ||
ah, ok. that sounds like a wait. | |||
TimToady | <.cursor_fresh($lang).rule> is a bit long, but that's basically what happens underneath | 01:19 | |
cursor_fresh is an internal name, but a lousy one if it's to be outward facing | 01:20 | ||
basically any subrule <foo> calls .cursor_fresh, it's just that if it's a sublanguage, .cursor_fresh takes that language as an optional argument | |||
so I probably just need some syntactic relief | 01:21 | ||
mncharity | hmm. interesting. I was also wondering if being able to switch between compilers might be a desirable near-term feature. so "featureful but slow" could be mixed with "critical path must be fast" code. | ||
TimToady | but <$lang.foo> isn't quite right | ||
well, that's what I'm finally trying to figure out the linkage for | 01:22 | ||
mncharity | compiler != parser, but... looks like tweakability might be important earlier than one might think. might use such a mechanism for sublangs. | ||
TimToady | I have to generate a subcursor for a subrule anyway, so that's the logical place to rebless the cursor into a different language for the following lexical scope | ||
mncharity | hmm... | 01:23 | |
TimToady | well, I'm definitely trying to eat my own dogfood here with respect to '' "" rx// etc. | ||
those are all derived grammars now | |||
mncharity | <OtherLanguage::foo> ... | ||
TimToady | has to be able to take it from $lang | ||
mncharity | <$($lang)::foo> | 01:24 | |
TimToady | which could have several other mixed in languages since the last time it was named anything in particular | ||
I also have to officially keep track of what is a language so I know the granulatity of my lexer cache | 01:25 | ||
*granularity | |||
mncharity | <$($lang.WHAT)::foo> ? | ||
TimToady | that doesn't spell "relief" | ||
mncharity | lol | ||
TimToady | It's something more like the recursive <!...> and <foo=...> syntax | 01:26 | |
so <mumble/foo> | |||
mncharity | so <Foo::bar> for a grammar "class" Foo, and <$foo/bar> for an instance $foo of a grammar? | 01:27 | |
TimToady | mumble/ is a placehoder | 01:28 | |
mncharity | nod | ||
TimToady | s:nth//l/ | ||
01:30
Ched- left
|
|||
mncharity | why does $lang need to be kept track of? | 01:30 | |
01:30
Ched- joined
|
|||
mncharity | it doesn't seem like remembering it could affect dispatch. so that leaves | 01:30 | |
TimToady | certainly it affects dispatch | ||
mncharity | passing information between rules/actions, which would suggest a context var. | ||
some rule's subrule<hee> can't depend on the $lang which was used to reach that rule, no? | 01:31 | ||
TimToady | certainly it can | 01:32 | |
mncharity | ???!??? | ||
TimToady | THAT'S WHAT PERL6 IS ALL ABOUT!!!!! | ||
mncharity | hmm, let me rephrase... | ||
TimToady | when you say <infix> you don't know what language's set of infixes you're getting | 01:33 | |
it all depends on what class the cursor is blessed into | |||
mncharity | the identity of the rule hee invoked by a rule a's saying <hee> is uniquely determined by the grammar to which hee and a belong. it cannot be affected by a grammar or other variable $lang. no? | ||
s/belong/ļ»æ class the cursor is blessed into/ | 01:34 | ||
err, no! | |||
um, ļ»æs/belong/belong (the grammar instance)/ | 01:35 | ||
it's not yet clear to me why the cursor would need blessing. | |||
TimToady | to switch to an instance of a different grammar | ||
by default cursor_fresh just propagates the current grammar | |||
mncharity | grammar B {...} grammar A { rule aa{<B::foo>} } <-- switching to a different grammar. (though not necessarily an _instance_ of a different grammar?) | 01:37 | |
I've never been clear on regex's handling of classes/grammars versus instances of same. | 01:39 | ||
TimToady | that doesn't rebless the cursor, so B::foo will end up running with A's dispatch instead of B's, if it calls any subrules of its own | ||
it's like saying $object->B::meth in Perl 5 | 01:40 | ||
all it does is tell it where to look for meth, but the object is still an A object | |||
to really switch parsers it must be fed $object->mutate_to_B->meth | 01:41 | ||
which is what .cursor_fresh is doing | |||
which, interestingly, is not the original purpose of .cursor_fresh | |||
it was rather to isolate the parsing of the submatch object so we don't confuse it with the current matcher's Match object | 01:42 | ||
mncharity | apparently I still fundamentally don't understand regex. | ||
TimToady | (and _SUBSUME re-incorporates the sub-object's match as a capture into the current outer cursor) | 01:43 | |
well, I only just came to this a few days ago, so I'm not surprised. :) | |||
mncharity | lol | ||
TimToady | you'll notice all the funky .prior stuff is gone from Cursor5 now | ||
that was all just bogus thinking | |||
and why I could never get submatches to install themselves correctly into the parent Match | 01:44 | ||
it's amazing how much refactoring can be triggered by trying to Get It To Actually Work Right | 01:45 | ||
mncharity | indeed | ||
the discipline of the real | |||
so... | |||
TimToady | yes, and that's why I've had to write my own regex engine again, after all | 01:46 | |
it's punishment for cargo-culting Henry's regexes into Perl in the first place | |||
mncharity | :) I've stopped making myself "I will never, ever, write another regex engine" commitments. Broken too many times. :/ | 01:47 | |
re Henry's regexp, lol | |||
TimToady | one issue I haven't resolved yet is backtracking control | 01:48 | |
at the moment I'm using "lazy" lists | |||
which would be okay if I were actually implementing this in P6 | |||
but the lists aren't really lazy in P5 | |||
they're just out there somewhere on the stack | 01:49 | ||
which makes it really hard to wipe out a bunch of options that you decide you never want to use | |||
mncharity | hmm. generator with out-of-band tweaking? | 01:50 | |
TimToady | so I may end up having to switch back from list context everywhere to scalar, and just have lazy list objects, just so I can address backtracking control of :: and ::: | ||
mncharity doesn't understand the current execution model well enough to usefully comment | |||
TimToady | the current model doesn't actually backtrack anywhere in the sense of "returning to a previous stack frame" | 01:51 | |
all previous decision points are represented by cursors in a list | |||
and failure to match is just throwing away parts of some list | 01:52 | ||
mncharity | so then why is :: and ::: hard? | ||
TimToady | some of the lists I want to throw away are off in other stack frames | ||
mncharity | ah... | 01:53 | |
TimToady | so I may need to have some mechanism to invalidate cursors in the abstract | ||
and then when the cursor finally gets activated, it wakes up and says, "oops, got trimmed, fail" | |||
mncharity | so options are exceptions, or returning a "please discard cursors until you find X" flag value. | 01:54 | |
TimToady | but in that case, I need a naming scheme to keep track of active/forgotten cursors | ||
something like that, but how do you name X? | 01:55 | ||
probably can just deal with it in terms of match depth, I think | 01:56 | ||
mncharity | oh, or "oops, trimmed, fail"... though does it really need to wake up. re X, let's see, been here before, what did yare do... | ||
TimToady | and the difference between ::, :::, and <commit> is just what depth/shallowness to aim for | ||
assuming I don't have multiple cursors in flight that are triming to different depths at the same time... | 01:57 | ||
so now I get to write an exception engine from scratch as well :/ | 01:58 | ||
mncharity | re as well, LOL :) | ||
sorry | |||
re name X, | 01:59 | ||
TimToady | well, it's probably just the rule name, "if you aren't ._BRACKET (for ::) or .thisrule (:::) or .outerrule (for <commit>), peel back" | 02:01 | |
well, it's not .BRACKET, but whatever contains alternatives... | 02:02 | ||
mncharity | looks like yare just skips up through groups by prepending/removing "jump " prefixes to the exception. | ||
btw, do regex have "code to execute we backtracking past here"? | 02:04 | ||
*have a "..." construct? | |||
TimToady | well, that would be a generalization of this | 02:05 | |
I think it suffices to return some kind of "I failed successfully" cursor on the end of the list | 02:07 | ||
as long as every scope knows to deal with it when it tries to use it to continue | |||
at some level might actually involve trapping with eval {...} in p5, if I don't want to have an explicit test everywhere | 02:08 | ||
well, ratchet quantifiers turn out to be fairly trivial under this model. it's just taking .[0] on the list of cursors :) | 02:10 | ||
mncharity | oy | ||
TimToady | and the difference between greedy and parsimonious is simply whether you do a reverse on the list frist | 02:11 | |
*first | |||
where the non-laziness of p5 shows through is that if you use .*? it wants to build cursors for all possibilities to the end of the file before examining the short ones for successful continuation | 02:13 | ||
with real gather/take it would only generate those extra cursors lazily | |||
mncharity | 'list to be reversed' all in one stack frame? | ||
is it possible to generate them shortest first? | 02:14 | ||
TimToady | not only is it possible, it's a requirement | 02:15 | |
_PLUSg is defined as reverse $self->_PLUSf($block, @_); | |||
you have to do the _PLUSf algorithm to find out the maximum possible greediness before you can start there | 02:16 | ||
in essence .* has to always do .*? internally first | |||
that becomes more obvious with <random>* has to do multiple <random>*? first because you don't know how long each random will be | 02:17 | ||
mncharity | ah, ok. hmm. | ||
TimToady | with . you can theoretically cheat because you know how each . is going to match without scanning left-to-right | 02:18 | |
and, in fact, Henry's package cheats just that way | |||
mncharity | nod | 02:19 | |
TimToady | ah, was trying to remember what the 'f' was for--it was "frugal" | 02:21 | |
easier to type than parsimonious | |||
02:23
yewenbin joined
|
|||
TimToady | gotta go take kid to karate... | 02:23 | |
mncharity | cheers. /me hacks on STD_red... | 02:24 | |
02:25
eternaleye left
02:27
eternaleye joined
02:30
nipotan is now known as nipotaway
02:40
azure joined
02:42
azure is now known as azure1st
02:43
wknight8111 is now known as wknight-away
|
|||
azure1st | a | 02:46 | |
02:49
azure1st left
02:50
azure1st joined,
azure1st is now known as azure
|
|||
azure | a | 02:51 | |
a | 02:56 | ||
a | 02:57 | ||
02:58
azure is now known as aaa,
aaa is now known as azure1st
02:59
azure1st left
03:00
rindolf joined,
azure1st joined
|
|||
azure1st | a | 03:01 | |
03:01
azure1st left
03:02
wknight-away left
03:04
azure1st joined
|
|||
azure1st | a | 03:04 | |
Auzon | azure1st: What are you doing? | 03:05 | |
03:06
SamB left
|
|||
mncharity | TimToady: (1) in EXPR/reduce/chain, perhaps should check for $<sym> in addition to $<prec>? and cease to push the op on chain? then '3 eq 4 ne 5' parses as eq(3,ne(4,5)) | 03:06 | |
azure1st | change my nick | ||
03:07
azure1st left
03:08
rdice left,
tobeya left
03:09
azure1st joined
|
|||
TimToady | mncharity: that's not what you want | 03:12 | |
yo uwant it to mean 3 eq 4 and 4 ne 5 | 03:13 | ||
it's just a variant of 1 < $x == $y < 42 | 03:14 | ||
03:14
alanhaggai joined
|
|||
azure1st | i want to join the perl6 dev but i don't know what to do , I know perl just a little. | 03:21 | |
Tene | azure1st: what do you know? | 03:23 | |
azure1st | I used perl process some txt changed, txt trans mysql or sqlite. | 03:26 | |
at the most time i use php | 03:27 | ||
Tene | azure1st: some work that needs to be done right now is reorganizing and categorizing and cleaning up the pugs test suite into the official perl 6 test suite | ||
azure1st | ok, how to do it. my english is not very well,so i speak slowly. | 03:30 | |
Tene | azure1st: I think there should be some files talking about it in t/spec in the pugs repo. I'm not entirely sure what needs to be done or what to tell you to do right now. | 03:32 | |
I can probably find out tomorrow, if someone hasn't already answered before then. | |||
mncharity | re ļ»æ'3 eq 4 and 4 ne 5', ah, ok. but is currently ne(3,eq,4,ne,5) or some such. | 03:35 | |
azure1st | oh | 03:39 | |
it's the time to the lunch i will back in one hour! | 03:40 | ||
03:43
alanhaggai_ joined
03:55
drbean left,
drbean joined
03:57
alanhaggai left
|
|||
mncharity | TimToady: when expect_term is at pos 1 in " {}", stdstopper is true (before { and after \s). should expect_term succeed or fail? | 04:08 | |
mncharity struggles with 'do {}' | |||
04:11
SamB joined
|
|||
TimToady | do is not parsed with EXPR at that point | 04:11 | |
mncharity | statement_prefix:do -> statement -> EXPR. at least that's what a std.rb draft is doing with 'do 3;' | 04:13 | |
TimToady | but I think we're missing a statement_control:block | 04:14 | |
mncharity | blocks currently show up as circumfix pblock | ||
TimToady | or maybe not | ||
but the whitespace should already be eaten | 04:15 | ||
so EXPR should only see "{...}" | |||
so shouldn't be treated as a terminator | |||
gotta go pick up kid from karate now... | 04:16 | ||
mncharity | if EXPR sees "{}", then stdstopper called from expect_term in loop is true. thus the question of | ||
whether that should be deadly or no. | |||
re karate, ok. just about end of day. | 04:17 | ||
sigh. a slow process. | |||
epiphany: all this parser stuff is too difficult, we should just use s-expressions. | 04:19 | ||
just kidding. | |||
spinclad | combinators! SKI \o/ | 04:23 | |
mncharity | *weary grin* | 04:24 | |
spinclad | and feed it trees, not strings -- no parsing at all then | 04:25 | |
mncharity | down with monads! up with arrows! | ||
spinclad | rah rah rah | ||
mncharity | it could make that grinding noise as you feed it trees and it spews out sawdust | 04:26 | |
spinclad | ah, that would be the K combinator, aka the chipper | 04:27 | |
mncharity | p6, the new particleboard | ||
lol | |||
thanks ļ»æspinclad :) | 04:29 | ||
spinclad | glad to provide some chaos on my way to bed | ||
g'night, all | 04:30 | ||
mncharity | indeed. | ||
ditto & :) | |||
04:31
mncharity left
04:35
peepsalot joined
04:48
rindolf left
04:56
meteorjay left
04:57
Psyche^ joined
05:09
Patterner left,
Psyche^ is now known as Patterner
05:14
peepsalot left
05:16
rindolf joined
05:17
syle left
05:33
vaughn left
06:04
IllvilJa left
06:06
Psyche^ joined
|
|||
pugs_svnbot | r20372 | lwall++ | [STD] more progress in handling :qq etc. as mixins | 06:19 | |
diff: dev.pugscode.org/changeset/20372 | |||
06:23
Patterner left,
Psyche^ is now known as Patterner
06:50
iblechbot joined
07:10
azure1st left
07:13
azure1st joined
07:18
elmex joined
07:29
alanhaggai_ is now known as alanhaggai
07:41
lambdabot left,
lambdabot joined
|
|||
pugs_svnbot | r20373 | moritz++ | [svn-search] catch errors in indexer | 08:13 | |
diff: dev.pugscode.org/changeset/20373 | |||
08:15
charsbar left
08:18
riffraff joined
08:21
charsbar joined
08:23
meteorjay joined
08:38
charsbar left
08:40
masak joined
08:41
charsbar joined
08:46
rindolf left
09:01
Schwern joined
09:14
masak left
09:17
masak joined
09:32
IllvilJa joined
11:09
lisppaste3 left
11:25
lisppaste3 joined
11:32
wknight8111 joined
11:34
zamolxes_ is now known as zamolxes
11:42
rdice joined
12:25
stevan_ left
12:33
pbuetow joined
12:37
rdice left
|
|||
obra | TimToady: feeds.feedburner.com/~r/boingboing/...ili-m.html | 12:39 | |
lambdabot | Title: HOWTO make a chili mister - Boing Boing, tinyurl.com/3o4qad | ||
12:46
IllvilJa left
12:50
alanhaggai left
12:57
meppl joined
13:00
iblechbot left
13:09
kanru joined
13:10
alanhaggai joined
13:30
TJCRI joined
13:31
ispy_ joined
13:36
rdice joined
13:43
alanhaggai_ joined
13:45
Lorn joined
13:47
eternaleye left
13:58
alanhaggai left,
Lorn_ left
14:04
zostay_ is now known as zostay
14:09
mncharity joined
|
|||
mncharity | could someone who knows how please kick dev.pugscode.org? the svn changesets are all Internal Server Error. thanks! | 14:13 | |
TimToady: so what is the "RightThing" story on 'do {}'? should expect_term be successfully matching at the { despite stdstopper returning true there? | 14:15 | ||
It looks like the same issue occurs with "\n{3;}\n". | 14:20 | ||
pugs_svnbot | r20374 | jnthn++ | [spectest] Fudge S12-class/basic.t for Rakudo, and add an extra instantiation test. | 14:28 | |
diff: dev.pugscode.org/changeset/20374 | |||
mncharity | re "fudge", curious... "To perform in an incomplete but marginally acceptable way,"[FOLDOC] vs "1 present in a vague way, especially to mislead. 2 manipulate (facts or figures) so as to present a desired picture."[OED(c)]. And my default binding is "faking scientific data". | 14:36 | |
14:39
alester joined
14:46
chris2 joined
14:48
iblechbot joined
14:51
cls_bsd joined
15:00
cmarcelo joined
15:01
IllvilJa joined
15:03
ilbot2 left
15:04
moritz joined
|
|||
moritz | if somebody misses the irc logs - the server is down :( | 15:05 | |
TimToady | then I won't say anything quotable. :) | ||
mncharity | irclog.perlgeek.de/perl6/today down | ||
colabti.org/irclogger/irclogger_logs/perl6 up | |||
lambdabot | Title: #perl6 irc log | ||
TimToady | mncharity: I think " {}" should probably only be checked by expect_infix | 15:06 | |
mncharity | ah, ok. I'll try that. | ||
after disabling the (?<!\s)(?={) stdstopper clause, the next issue i hit is | 15:07 | ||
TimToady | the next issue you hit is total silence? :) | 15:08 | |
mncharity | given "do 3; 4", do's statement eats the ';', but we got to :do via an (pause, :) | 15:09 | |
expect_term, which then continues eating into the next statement. | |||
STD5_run does the right thing however. | 15:10 | ||
TimToady | it does? | ||
mncharity | s/ļ»æļ»ædoes the right thing/parses it correctly/ | ||
well, it's a little hard to read, but I think so? | 15:11 | ||
./STD5_run statementlist -e 'do 15; 16;' | |||
oh, nm | 15:12 | ||
TimToady | my guess is that we'll have to force it like we do with }\n | 15:13 | |
mncharity | parsing it as 'zo 15; 16'. maybe. | ||
15:13
masak left
15:15
alanhaggai__ joined
|
|||
TimToady | statement prefixes are intentionally asymmetric, like listops. they both function as a kind of opening paren without a closing paren, and are automatically closed out at the appropriate spot | 15:16 | |
listops quit at a terminator, and statement prefixes terminate at end of statement | 15:17 | ||
they're a bit like ] in some Lisp dialects | |||
or rather, that ; at the end of one is | 15:18 | ||
do do do do do do do say "hi"; # <--- terminates all the do statements | |||
not sure how to tell STD that though. :) | 15:19 | ||
"if you've seen one statement terminator, you've seen them all..." | |||
it's almost like statement_prefix wants to uneat the terminator | 15:21 | ||
but it would be better not to eat it in the first place | |||
so perhaps statement needs to be split | |||
or maybe make statementlist/semilist eat the terminator instead | 15:22 | ||
then nested calls to statement could use the same terminator | 15:23 | ||
mncharity | re 'ļ»ædo do do do do do do say "hi";', :) | 15:26 | |
15:27
jhorwitz joined
|
|||
pugs_svnbot | r20375 | lwall++ | [STD] like this maybe | 15:27 | |
diff: dev.pugscode.org/changeset/20375 | |||
mncharity | would be so nice to have dev.pugscode.org back... :/ | 15:28 | |
moritz | aye :/ | ||
I have root access to feather, but really now idea what to do | 15:29 | ||
obra | moritz: anything in apache's error log? | ||
15:29
alanhaggai_ left
|
|||
moritz | looking... | 15:29 | |
[Tue May 06 17:24:44 2008] [error] an unknown filter was not added: includes | |||
lots of times | |||
and sometimes a few pages of syntax errors | 15:30 | ||
in python, I guess | |||
mncharity | TimToady: re moving eat_terminator, does that cause problems for the || in statement? at least in std.rb, I use the e_t to determine whether I have the right || branch. | 15:32 | |
moritz: googling... "It sounds like the SSI module mod_include isn't enabled - do so with sudo a2enmod include." ubuntuforums.org/showthread.php?t=586469 | 15:33 | ||
moritz | mncharity: but that seems to be a a different problem than the dev.pugscode.org one | ||
[particle] | TimToady: you should have a look at rakudo's grammar wrt statement_end | ||
## Here we deviate from STD.pm a fair bit on the handling of | |||
## statementlist and statement_end, if only because this | |||
## version (first prototyped in NQP) seems a bit more | |||
## straightforward. We may discover that it won't work. | |||
svn.perl.org/parrot/trunk/languages/perl 6/src/parser/grammar.pg | 15:34 | ||
[particle] fixes his client's auto-correct feature that keeps breaking perl6 into perl 6 | |||
mncharity | there's www.mail-archive.com/debian-apache@...08494.html | 15:35 | |
lambdabot | Title: Bug#407307: Apache2 - missing mod_includes causes unknown filter errors, tinyurl.com/6pos2r | ||
mncharity | which debian thinks is fixed in the latest apache www.mail-archive.com/debian-apache@...09023.html | 15:36 | |
lambdabot | Title: Bug#407307: marked as done (Apache2 - missing mod_includes causes unknow, tinyurl.com/65sb9l | ||
moritz | mncharity: I enabled the module, but dev.pugscode.org still doesn't work | ||
mncharity | :( | ||
moritz | mncharity: there are some syntax errors reported in python scripts | 15:37 | |
and I don't know how to fix those :/ | |||
mncharity | re ļ»æļ»æurl "svn.perl.org/parrot/trunk/languages/perl" <-- why space is a bad idea in file names. | ||
[particle] | svn.perl.org/parrot/trunk/languages...grammar.pg | ||
lambdabot | tinyurl.com/5jh29s | ||
mncharity | svn.perl.org/parrot/trunk/languages...grammar.pg | ||
lambdabot | tinyurl.com/5jh29s | ||
[particle] | my irc client inserted the space | ||
mncharity | ah, got it :) | 15:38 | |
moritz | should I apt-get dist-upgrade feather and hope that it unbreaks things? ;-) | 15:39 | |
TimToady | mncharity: I don't understand the problem you propose with || | ||
mncharity | ļ»æmoritz: curious. for a (few) days, the problem was intermittent. you could refresh the page a time or few, and get the change set. | 15:40 | |
TimToady | why would expect_term have anything to do with whether the next thing is "if" or "for"? | 15:42 | |
pugs_svnbot | r20376 | lwall++ | [STD] split infixstopper out from stdstopper | ||
diff: dev.pugscode.org/changeset/20376 | |||
TimToady | oh, wait, not that e_t | 15:43 | |
duh | |||
but still, the || can't proceed unless it sees a modifier of some sort | 15:44 | ||
mncharity | ļ»æTimToady: re ||, ah, token statment's [...||...] <e_t> becomes [...||...]: <e_t>, so I'm being incorrect in using e_t as part of the || "do we have the right branch" check. i think. | 15:45 | |
pugs_svnbot | r20377 | moritz++ | [irclog] ignore mncharities BOMs | 15:48 | |
diff: dev.pugscode.org/changeset/20377 | |||
TimToady | seems like it's only likely to fail if someone defines a terminator that can be confused with a statement modifier | ||
though there's something going on here with LTM of terminator sets that I haven't quite got as transitive as I like | 15:49 | ||
in regex, when you match <foo> ** '||', it should tell foo that '||' is a valid terminator somehow | |||
mncharity | hmm. /me puzzles over grammer.pg | 15:51 | |
rakudo: do 5; 6 | |||
exp_evalbot | RESULT[Method 'print' not found for invocant of class 'String'ā¤current instr.: '_block10' pc 44 (EVAL_11:17)ā¤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 785 (src/PCT/HLLCompiler.pir:458)ā¤called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1067 (src/PCT/HLLCompiler.pir:587)ā¤called from Sub | ||
..'parrot;PCT::HLLCompiler;command_line' pc 1246 (... | |||
TimToady | it would be convenient if the LTM matcher could mix in such dynamic terminators with the more static ones | ||
mncharity | 6 | 15:52 | |
moritz | rakudo: do 5; 6; print 1 | ||
exp_evalbot | OUTPUT[1] | ||
moritz | rakudo: print do 5; 6 | ||
exp_evalbot | OUTPUT[5] | ||
pmichaud | rakudo doesn't yet have a .print method | ||
15:53
CMA joined
|
|||
TimToady | rakudo: print do do do 5; 6 | 15:53 | |
exp_evalbot | OUTPUT[5] | ||
mncharity | ļ»æmoritz: re BOM, :) tnx | ||
pmichaud | I can add .print | ||
moritz | exp_evalbot does some evil hackery with do and print if a statement didn't produce output | 15:55 | |
pmichaud | although I'm not sure why it was reporting "Method 'print' not found for invocant of class 'String'", since 6 is an Int | ||
moritz | (I didn't implement it, I don't know the details :/) | 15:56 | |
pmichaud | do 5; 6 looks like two statements to me. Perhaps I'm parsing it wrong. | ||
15:56
andresambrois joined
|
|||
pmichaud | rakudo: 6 | 15:56 | |
exp_evalbot | RESULT[Method 'print' not found for invocant of class 'String'ā¤current instr.: '_block10' pc 44 (EVAL_11:17)ā¤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 785 (src/PCT/HLLCompiler.pir:458)ā¤called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1067 (src/PCT/HLLCompiler.pir:587)ā¤called from Sub | ||
..'parrot;PCT::HLLCompiler;command_line' pc 1246 (... | |||
mncharity | re looks like, is. | ||
pmichaud | rakudo: say 6.WHAT | 15:57 | |
exp_evalbot | OUTPUT[Intā¤] | ||
mncharity | the issue is getting multiple expect_term's to end in the same place. currently one eats the ';', and the enclosing one then chews onward rather than also stopping there. | 15:58 | |
TimToady | it would appear that STD5 now correctly parses 'do do do 5; 6' | ||
mncharity | looks like grammar.pg is handling it with endstmt. not sure. | ||
pmichaud | .print added in r27345 | ||
grammar.pg handles it with endstmt, yes. | |||
moritz | if (!length $response){ $program = '( ( do { ' . $program . "\n} ).perl ).print"; | ||
mncharity | svn.pugscode.org pings, but svn can't connect. | 15:59 | |
moritz | wait a second, the update is currently running | 16:00 | |
pmichaud | (and we get ".print" not available for String because that's what .perl is returning. Which is also wrong, as it needs to be a Str.) | 16:01 | |
TimToady | but STD5 seems to be doing it right without using endstmt; not that I've tested it exhaustively or anything... | ||
moritz | wohoo, trac is back! | ||
mncharity | re 'ļ»æcorrectly parses', at least as of ļ»æ20375, I get identical parses for ./STD5_run statementlist -e 'do do 5; 6;' and 'xo xo 5; 6;' | 16:02 | |
pmichaud | actually | ||
rakudo doesn't implement 'do' yet. | |||
Auzon | rakudo: my Int $i; $i | ||
exp_evalbot | RESULT[Method 'perl' not found for invocant of class ''ā¤current instr.: '_block10' pc 35 (EVAL_11:16)ā¤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 785 (src/PCT/HLLCompiler.pir:458)ā¤called from Sub 'parrot;PCT::HLLCompiler;evalfiles' pc 1067 (src/PCT/HLLCompiler.pir:587)ā¤called from Sub | ||
..'parrot;PCT::HLLCompiler;command_line' pc 1246 (src/PCT... | |||
Auzon | rakudo: my Int $i; say $i | ||
exp_evalbot | OUTPUT[Intā¤] | ||
moritz | that's wrong, isn't it? | ||
shouldn't it be undef? | |||
Auzon | I hope so. | ||
pugs: my Int $i; say $i | |||
exp_evalbot | OUTPUT[Intā¤] | ||
TimToady | Int is one of the names of undef | ||
Auzon | Oh | ||
So it's Int, not "Int" | 16:03 | ||
TimToady | there is no undef in the p5 sense anymore | ||
moritz | pugs: my Int $i; say $i ~~ undef | ||
exp_evalbot | OUTPUT[ā¤] | ||
moritz | pugs: my Int $i; say $i ~~ Undef | ||
exp_evalbot | OUTPUT[*** No such subroutine: "&Undef"ā¤ at /tmp/Lf0pubEwa5 line 1, column 16 - line 2, column 1ā¤] | ||
TimToady | the most general undef is something like Object | ||
moritz | pugs: my Int $i; say $i ~~ Object | ||
exp_evalbot | OUTPUT[1ā¤] | ||
mncharity | re "ļ»æInt is one of the names of undef", :) Someday I have to learn p6. :) | ||
moritz | pugs: my Int $i; say defined $i | ||
exp_evalbot | OUTPUT[ā¤] | ||
Auzon | Oh, so it's just the generic object name. Makes sense | ||
moritz | pugs: my Int $i; say defined $i ?? 1 !! 0; | 16:04 | |
exp_evalbot | OUTPUT[0ā¤] | ||
[particle] | all protoobjects are undefined | ||
moritz | debian++ # apt-get upgrade fixes things in unstable ;-) | ||
[particle] | when you see Int, you're seeing the stringified protoobject | ||
mncharity | stringifies as .WHAT ? | 16:05 | |
moritz | isn't it confusing that an integer stringifies to something which isn't a Int? | ||
[particle] | .WHAT returns the protoobject | ||
TimToady | .WHAT isn't supposed to stringify | ||
[particle] | which stringifies as 'Int' when it's printed | ||
TimToady | stringification is very lazy in P6 :) | 16:06 | |
16:06
armagad joined
|
|||
TimToady | unlike in p5, where you almost can't even think about a type except in the stringified form | 16:06 | |
mncharity | re trac, changeset works, !!! ļ»æmoritz++ | 16:07 | |
ļ»æmoritz+=2 | |||
TimToady | which is why STD5's .mixin method actually generates a longer package name for the new type | ||
mncharity | yay. having broken infrastructure is so disturbing. my thanks. | ||
TimToady | currently, when you mix Q_w into Q_qq, you end up with Q_qq_w as a package name, which is a cool/vile hack | 16:08 | |
mncharity | re "ļ»æcool/vile hack", :) | ||
TimToady | and probably doesn't generalize right to Regex etc. | ||
but I repeat myself | |||
16:15
yewenbin left
|
|||
mncharity ponders what to do. was on a "get STD_red parsing t/kp6 and pugs's t/" dev path. "do {}" and "n{3;}n" unresolved. could look for other parsefails, but better to wait. so seem blocked on that. hmm... | 16:15 | ||
lunch & | 16:16 | ||
[particle] | i was under the impression that "manhattan dispatch" wasn't hardwired, but was default for MMD | 16:23 | |
...i still am under that impression. am i wrong? | 16:24 | ||
16:24
CMA left
|
|||
TimToady | no, we abandoned manhattan years ago | 16:29 | |
[particle] | ah. ok. | ||
glad to be wrong. | |||
TimToady | we don't try to compute distance in type space at all | 16:30 | |
either one type encompasses another, or it doesn't | |||
16:32
moritz left
16:34
moritz_ joined
|
|||
TimToady | afk & #errands | 16:37 | |
16:40
irclogbot_backup joined
16:41
moritz_ left,
irclogbot_backup left
16:45
moritz_ joined
16:53
iblechbot left
16:54
eternaleye joined,
ilbot2 joined,
ilbot2 left
16:55
ilbot2 joined
17:07
nipotaway is now known as nipotan
17:27
d4l3k_ joined,
wolv_ joined,
Juerd left,
cjfields joined,
PerlPilot joined
17:28
dalek left,
wolverian left,
PerlJam left,
wolv_ is now known as wolverian,
pmichaud left
|
|||
meppl | good night | 17:28 | |
17:28
eternaleye left
17:29
d4l3k_ is now known as dalek,
andresambrois left
17:32
meppl left
17:35
pmichaud_ joined
17:38
eternaleye joined
17:47
cjfields left
17:49
cjfields joined
18:29
lidden left
18:35
jhorwitz left
18:48
CMA joined
18:50
cotto joined
18:51
lambdabot left
18:52
lambdabot joined
19:05
iblechbot joined
19:09
syle joined
19:11
alanhaggai__ left
19:16
sscaffidi left
|
|||
moritz_ | [particle]: ping | 19:18 | |
19:19
armagad left
19:20
armagad joined,
rhr left
|
|||
[particle] | hi-o moritz_ | 19:22 | |
ooh, a goldfinch 1m away :) | |||
moritz_ | [particle]: do you have some thoughts regarding GSoC and SVN branches? | ||
[particle] | spring++ | 19:23 | |
moritz_: you mean for collecting Auzon's commits? | |||
moritz_ | aye | ||
Auzon is here in case that helps | |||
moritz_ | it seems to be the recommended way | ||
[particle] | we *could* stick a branch in the pugs repo | ||
however, i believe judicious use of commit message tags will suffice | |||
moritz_ | but would that be useful? | 19:24 | |
I mean a branch | |||
[particle] | well, for example, we could add a makefile target to rakudo for 'gsoctest' that pulls from the branch instead of the trunk | ||
moritz_ | so, assuming we take the commit message tags... | ||
how do we deliver the deliverable (aka patches) to google? | 19:25 | ||
[particle] | i like tagging messages better. | ||
we can use svn diff tools | |||
Auzon | Same here. If we were to branch, it'd make reorganizing a pain. | ||
moritz_ | we can't assume that Auzon's patches alone will be make up a clean diff | ||
[particle] | right, so we submit a series of diffs | 19:26 | |
moritz_ | so should we just make a complete diff of t/ and tell google "90% was Auzon's work, see $list for details"? | ||
[particle] | we can get a list via svn log of each commit auzon did, and produce diffs of each | 19:28 | |
i'm looking for specific info on what google expects | 19:29 | ||
do you have a link handy? | |||
moritz_ | no | ||
I just read eric's mail | |||
[particle] | here in terms of service:code.google.com/opensource/gsoc/2008/tos.html | ||
lambdabot | Title: Google Summer of Code - Google Code | ||
moritz_ | "Google expects us to deliver "your code" | 19:30 | |
at program completion, which might mean that you need your own branch | |||
(depending on whether your project is new code or not) to make it easy | |||
to create a nicely-bounded changeset." | |||
[particle] | i see "To provide Google with a copy of the finished project code which may be publicly hosted by Google." | ||
to me, i think a set of diffs qualifies. i'll ask leslie, though. | 19:31 | ||
moritz_ | the "finished project code" is the result in my eyes, not the diff | ||
[particle] | sure, could be that, too | 19:32 | |
19:32
kyrbe joined,
kyrbe left
|
|||
[particle] | Auzon: have you submitted the TPF CLA yet? | 19:32 | |
Auzon | No, I have not. | 19:33 | |
Auzon puts that on his todo list | 19:34 | ||
[particle] | thx | ||
19:37
REPLeffect joined
|
|||
[particle] | i suppose auzon could develop in a private branch and synchronize with trunk frequently | 19:40 | |
then his work would be in one place. | 19:41 | ||
still, there would by synchronization commits interspersed | |||
moritz_ | aye, it doesn't solve the problem | ||
19:42
pmurias joined
19:43
meteorjay left
|
|||
[particle] | message sent to google mentors list | 19:43 | |
moritz_ | did you CC me? | 19:46 | |
[particle] | ah, no. are you subscribed to google-summer-of-code-mentors-list@ ? | 19:47 | |
moritz_ | no | 19:48 | |
[particle] | ah. you should be :) | ||
@googlegroups.com | |||
lambdabot | Unknown command, try @list | ||
[particle] | time to reboot my xp vm into sp3 | 19:49 | |
let's see if it makes me happy or sad | |||
pmurias | mncharity: re blocked: if you are blocked and can't add any features the other way forward would be to remove a cludge/hack ;) | 19:50 | |
20:06
sscaffidi joined
20:10
[particle]ventus joined
20:30
meppl joined
20:32
mj41 joined
20:40
rhr joined
|
|||
[particle]ventus | moritz_: Auzon: groups.google.com/group/google-summ...bb7878e16f | 20:40 | |
lambdabot | Title: Google Summer of Code Mentors List | Google Groups, tinyurl.com/6xeffu | ||
Auzon | I can't see that :-/ | 20:41 | |
20:41
aindilis left,
aindilis joined
|
|||
moritz_ | only open for members :( | 20:43 | |
[particle]ventus | ok, i'll forward the mail to you after lunch & | ||
moritz_ | no hurry ;) | ||
Auzon | thanks | ||
21:08
ispy_ left
21:18
stevan__ joined,
[particle]ventus left
21:20
TJCRI left
21:26
larsen_ joined
21:27
xerohg joined
21:36
[particle]ventus joined
21:39
rdice left
21:41
cjfields left
21:44
barney joined
21:50
Eidolos left
|
|||
meppl | good night | 21:56 | |
moritz_ | meppl: didn't you say that some 4 hours ago already? ;-) | 21:57 | |
21:57
cjfields joined
21:58
Eidolos joined
|
|||
meppl | moritz_, yea, but i couldnt sleep | 21:58 | |
21:58
meppl left
|
|||
moritz_ | d'oh | 21:59 | |
good luck this time ;) | |||
22:12
barney left,
cjfields left
22:13
larsen_ left
22:14
pmurias left
|
|||
CMA esta ausente: at high scholl | 22:15 | ||
22:20
cmarcelo left
22:21
luqui joined
22:22
alester left
22:24
lidden joined
22:29
c0nspiracy joined
22:31
sscaffidi left
22:32
gbacon left,
gbacon joined
22:38
iblechbot left
22:49
Schwern left,
[particle]ventus left
22:51
eternaleye left
23:07
chris2 left
23:21
eternaleye joined
23:45
c0nspiracy left
|