|
svn switch --relocate svn.openfoundry.org/pugs svn.pugscode.org/pugs/ | run.pugscode.org | spec.pugscode.org | paste: sial.org/pbot/perl6 | pugs.blogs.com | dev.pugscode.org/ Set by putter on 11 February 2007. |
|||
|
00:06
ludwig- joined
00:14
bonesss joined
00:45
zev joined
01:04
explorer is now known as JoaquinFerrero
01:12
shay joined
01:19
gnuvince left
01:25
avarab joined
01:28
drupek12 joined
01:40
penk joined
01:41
Psyche^ joined
01:47
avarab is now known as avar
01:52
Psyche^ is now known as Patterner
02:04
Schwern joined
02:18
weinig is now known as weinig|zZz
03:03
lisppaste3 joined
03:25
REPLeffect_ joined,
REPLeffect_ is now known as REPLeffect
03:31
esstone joined
|
|||
| Aankhen`` | ?eval any(<a b c>) | 03:38 | |
| evalbot_r15765 | ("a" | "b" | "c") | 03:39 | |
| Aankhen`` | ?eval $x = any(1..10); $y = all(1..10); $x <= $y | ||
| evalbot_r15765 | ((Bool::False | Bool::True) & (Bool::True)) | ||
| Aankhen`` | Oh, good. That explains everything. | 03:40 | |
| ?eval $x = any(1..10); $y = all(1..10); ($x <= $y) ?? 1 :: 0 | |||
| evalbot_r15765 | Error: Unexpected ":: 0"expecting operator or "!!" | ||
| Aankhen`` | ?eval $x = any(1..10); $y = all(1..10); ($x <= $y) ?? 1 !! 0 | ||
| evalbot_r15765 | 1 | ||
| Aankhen`` | Yay. | ||
| ?eval any(1..Inf) < 10 | 03:42 | ||
| evalbot_r15765 | pugs: out of memory (requested 1048576 bytes) | 03:43 | |
|
03:51
RHainsworth joined
03:54
RHainsworth left
04:13
justatheory joined
04:46
geoffb_ joined
05:09
Schwern joined
|
|||
| dmpk2k | Pugs doesn't do any form of dead code elimination at the moment, does it? | 05:23 | |
|
05:40
kattana_ joined
05:44
lisppaste3 joined
05:59
mjk joined
06:14
BooK_ joined
06:28
kanru joined
06:34
RHainsworth joined
06:37
iblechbot joined
07:04
geoffb joined
07:29
xinming_ joined
07:40
xinming joined
07:51
Schwern joined
08:25
dolmans joined
08:51
rindolf joined
08:55
krivenok2 joined
|
|||
| krivenok2 | Hello guys! | 08:55 | |
| I have a trouble with multi-line regexp | 08:56 | ||
| tene | Post it! Maybe we can help! | ||
| krivenok2 | Why this code prints "NO"? | ||
| my $string = "Hello\nworld"; | |||
| if ( $string =~ /\A(^\w$)+\Z/m ) { print "YES\n";} else { print "NO\n";} | |||
| tene | Oh, a perl5 regex | 08:57 | |
| krivenok2 | if ( $string =~ /\A(^\w+$)+\Z/m ) { print "YES\n";} else { print "NO\n";} | ||
| tene | Have you asked in #perl? | ||
| rindolf | krivenok2: #perl | 08:58 | |
| krivenok2 | I can't find #perl room in rooms list | ||
| just perl6 | 08:59 | ||
| tene | krivenok2: type /join #perl | ||
| krivenok2 | /join #perl | ||
| Thanks! | |||
|
09:00
krivenok2 left
09:11
penk joined
09:14
the_dormant joined
09:27
ofer0 joined
09:32
Jedai joined
09:33
miyagawa joined
09:40
RHainsworth joined,
RHainsworth left
09:49
yts joined
10:11
yuteh joined
10:12
yuteh left
10:16
kanru joined
10:17
yuteh joined
10:32
Jedai666 joined
10:46
yhsuan_ joined
10:48
mjk joined
11:22
fglock joined
11:27
theorbtwo joined
11:29
lichtkind joined
11:58
charsbar_ joined,
buetow joined
12:02
sunnavy joined
12:31
jisom joined
12:44
sunnavy joined
12:49
weinig|zZz is now known as weinig
12:51
weinig is now known as weinig|bbl
|
|||
| svnbot6 | r15766 | fglock++ | Sub::Multi - minor fix in dispatch(); passes v6.pm t/01-sanity/07-simple-multisubs.t | 12:51 | |
| r15766 | fglock++ | - version 0.003 | |||
|
12:56
iblechbot joined
13:00
the_dormant joined
|
|||
| svnbot6 | r15767 | fglock++ | v6.pm - bare 'Str' is an object | 13:06 | |
| r15767 | fglock++ | - added syntax: 'term.meth: list' | |||
| r15767 | fglock++ | - added syntax: 'meth(term: list)' | |||
| r15767 | fglock++ | - requires Sub::Multi 0.003 | |||
|
13:19
Debolaz2 joined
13:35
rodi joined
|
|||
| rodi | Anyone else going to the emerging techology conference next week? | 13:35 | |
|
13:40
mr_ank joined
|
|||
| fglock | would it be possible to allow (?<0>.) in the new p5 regex (named capture with number-only name) ? | 13:49 | |
| this would make it much easier to translate p6->p5 (though I can work around it) | |||
| s/much// | 13:55 | ||
|
13:59
forsaken joined,
ProperNoun joined
14:09
ruz joined
14:12
vel joined
14:20
xern joined
14:26
scw joined
14:28
arguile joined
14:29
devogon joined
14:33
VanilleBert joined
15:14
vel joined
15:19
RHainsworth joined
15:24
amnesiac joined
15:49
[particle] joined
15:55
GabrielVieira joined
16:04
Jedai joined
16:08
IllvilJa joined
16:11
chris2 joined
16:17
diakopter joined
16:19
VanilleBert left
16:23
drupek12 joined
|
|||
| gaal boings | 16:27 | ||
| audreyt | @tell TimToady in "{ sub f { 1 } }; f()", &f is not visible lexically -- should the &-variable fixup fallback to &Main::g before &*g? Or is this a legitimate change from perl5? | 16:28 | |
| lambdabot | Consider it noted. | ||
| audreyt | @tell TimToady also, spec claims that $! $/ $_ are always "implicitly lexical." are they declared for each Routine, or for each Block? That is, does "sub f { { $! } }" mean "sub f { { $OUTER::! } }" or not? | ||
| lambdabot | Consider it noted. | ||
| TimToady | @messages | 16:29 | |
| lambdabot | audreyt said 3d 20h 31m 26s ago: S06:1711 is contradicting S02:1542 badly :) | ||
| audreyt said 3d 20h 30m 27s ago: "our multi f (){...}; { &f(1); our multi f($x){...} }" is fine, right? "our multi f(){...}; { &f(1); my multi f($x){...} }" explodes, correct? | |||
| audreyt said 1m 16s ago: in "{ sub f { 1 } }; f()", &f is not visible lexically -- should the &-variable fixup fallback to &Main::g before &*g? Or is this a legitimate change from perl5? | |||
| audreyt said 17s ago: also, spec claims that $! $/ $_ are always "implicitly lexical." are they declared for each Routine, or for each Block? That is, does "sub f { { $! } }" mean "sub f { { $OUTER:: | |||
| ! } }" or not? | |||
| audreyt | gaal: params are part of the pad now :) | ||
| lambdabot | audreyt: You have 2 new messages. '/msg lambdabot @messages' to read them. | ||
| audreyt | @massages | ||
| lambdabot | Limbic_Region said 1d 15h 41m 33s ago: WOW. r15726 = 87 minutes, r15751 = 148 minutes but r15761 = 30 minutes. It may have even been a few minutes faster than that. Each time pugs compiles my | ||
| firewall sees it as a new program and asks if it is ok to let it open a socket (one of the http tests). I wasn't paying attention since it never asks that quickly. | |||
| allbery_b said 20h 3m 41s ago: 6.7 build fixed, and is much faster (and leaves my machine more usable) both building and running | |||
| gaal | audreyt: do you think that if we had a scheme to annotate positions from without the main ast structure, we could get better compression? Ann MkPos{} RealNode spoils identity | ||
| eg consider Ann MkPos{} bar@{......Ann MkPos{} foo@{}} | 16:31 | ||
| now, since positions do not recur, the best we can do is memoize foo, where foo does not contain position annotations | |||
| while in principle bar could have been a duplicate, too | 16:32 | ||
| audreyt | gaal: well, GHC's way is to have | ||
| TimToady | up till now a bare "sub" declaration would default to "our", so the outer f() would find f via the current package. | ||
| audreyt | type AnnExpr bndr annot = (annot, AnnExpr' bndr annot) | ||
| data AnnExpr' bndr annot | |||
| | AnnLam bndr (AnnExpr bndr annot) | |||
| | AnnApp (AnnExpr bndr annot) (AnnExpr bndr annot) | |||
| etc etc | |||
|
16:32
fglock joined
|
|||
| gaal | *nod* | 16:32 | |
| audreyt | i.e. another data type that separates annotated vs unannotated | ||
| so we have | 16:33 | ||
| deAnnotate :: AnnExpr bndr annot -> Expr bndr | |||
| etc | |||
| gaal | hmm that doesn't solve compressibility, because the problem lies in the recursion | ||
| audreyt | TimToady: but I thought pkgvar has to be qualified, i.e. | ||
| "{ our $f }; say $f" | |||
| is illegal | |||
| under default stricture | |||
| gaal | we need a xanaduish nonexplicit anchor | 16:34 | |
| audreyt | or is the rule somehow different for &f? | ||
| TimToady | not to get to your own package! | ||
| audreyt | oh? | ||
| "sub f {our $f}; say $f" | |||
| "sub somesub {our $f}; say $f" | |||
| this is legal? | |||
| I thought you need to say | |||
| "sub somesub { our $f }; say our $f" | |||
| instead | |||
|
16:35
Southen joined
|
|||
| audreyt | I'm fine with saying that &f fallsback to &CurPkg::f if not found in lexical scope, but $f does not... | 16:35 | |
| which is closest to p5 | |||
| TimToady | but in P5 even $f looks in package under use strict | 16:36 | |
| audreyt | $ perl -Mstrict -e 'sub somesub { our $f }; $f' | ||
| Variable "$f" is not imported at -e line 1. | |||
| Global symbol "$f" requires explicit package name at -e line 1. | |||
| Execution of -e aborted due to compilation errors. | |||
| TimToady | interesting | 16:37 | |
|
16:38
kanru joined
|
|||
| audreyt | also S02: | 16:38 | |
| The postdeclaration may be in any lexical or package scope that | |||
| could have made the declaration visible to the provisional call had the | |||
| declaration occurred before rather than after the provisional | |||
| call. | |||
| which seems to justify the &f-special treatment | |||
| but again that paragraph was just dealing with | 16:39 | ||
| f() | |||
| instea of &f() | |||
| so maybe f() is translated to Main::f() if at end of compunit, no lexical f is fount but pkg f is found | |||
| but if you had said | |||
| &f() | |||
| then it fails, the same way $f() fails. that seems consistent, yet a bit surprising. | |||
| PerlJam | people are already going to be surprised at many other things. | 16:40 | |
| consistency over surprise! :-) | |||
| audreyt | that too is true :) | ||
| well if the p5 idiom | |||
| TimToady | hmm, well, your package is your public interface, so you ought to be able to call it yourself. But it's not so important to have variables visible through the public interface | ||
| PerlJam | (though, I have to admit that the p5er in me expects the &f special case) | 16:41 | |
| audreyt | "{ my $shared_lex; sub f () {...}; sub g () {...} }; f(); g();" | ||
| is to be preserved | |||
| then f() needs to be resolvable back to $Pkg::f | |||
| er &Pkg::f() | |||
| but whether &f() should work or not is another question | |||
| and I _think_ I'd like a bit more consistency here... maybe | |||
| TimToady | so I think I can agree with that consistency | ||
| audreyt | ok, cool | 16:42 | |
| gaal: re the Pos question -- I don't actually have a good answer to that except the p5 way | |||
| i.e. generate unique numbers to associate with each node | |||
| and then have a map from cop_seq to annotations | 16:43 | ||
| gaal | but the unique numbers can't be explicit in the serialized structure either... | 16:44 | |
| audreyt | the incrementing counter can be part of parser state | ||
| TimToady | I think people will expect $_ $/ $! to scope to the current block | ||
| audreyt | gaal: why not? | ||
| gaal | because then it won't memoize, again :) | ||
| audreyt | TimToady: "{ $_ = 3; if True { $_ = 4 }; say $_ }" | ||
| would print 3 then? | |||
| TimToady | I think people will expect inconsistent things. :) | 16:45 | |
| audreyt | hrmph. | 16:46 | |
| fglock | I'd prefer to write 'my $_=4' | ||
| PerlJam | I currently expect $_ to be a "super-global" as the PHP folks say but that it can be auto-scoped sometimes. | ||
| (in absense of some other declarator that is) | |||
| s/other// | |||
| TimToady | the way we originally designed it, $_ would be bound to the OUTER::_ unless the caller of the block supplied it as an argument. | 16:47 | |
| so it would print 4 | 16:48 | ||
| because "if" doesn't supply a new $_ | |||
| gaal | consider the repetitive code "if 42 say <moose>; if 42 say <moose>". Ideally we want that serialized as [&1 [{{{if 42 say <moose>}}}], *1] (handwaving yamly syntax here) | ||
| TimToady | but "for 1..10 {...}" does | ||
| audreyt | TimToady: so that means | 16:49 | |
| "my $_ = 123; sub f { say $_ }; f(); " | |||
| prints 123? | |||
| TimToady | no, routines always get a fresh $_ | 16:50 | |
| it's only blocks that fudge it. | |||
| gaal | the best we can do now is something like [&1 [Pos X &2 Cond Pos Y &3 42 Pos Z &4 {{{say <moose>}}}], [Pos X2 Cond Pos Y2 *3 Pos Z2 *4] | ||
| which is much less efficient | |||
| audreyt | so why not say routines always get $_ $! $/ | ||
| TimToady | they do | 16:51 | |
| audreyt | and blocks explicitly topicalize if they want to? | ||
| it seems silly to say | |||
| oh ok, good :) | |||
| gaal | if instead of a pos node you have a counter, you still have to have a different value in each occurrence of the *1 if statement, so memoization still breaks | ||
| if we had a structure (that would only make sense if you looked at its entirety, but that's okay) that had *every* node implicity assigned a running number, then we could append a sparse map with positions | 16:53 | ||
| of course, that would cost runtime transformation both ways... | 16:54 | ||
|
16:54
Limbic_Region joined
|
|||
| gaal | and I'm not sure I know how to implement it... | 16:54 | |
| avar pokes the pugs people with sial.org/pbot/23601 :) | 16:55 | ||
| lambdabot | Title: Paste #23601 from Someone at 85.197.228.236 | ||
| avar | perl5.9.5 -Mblib -Mre::engine::PCR -lE 'if ("aoeu" =~ /((.).)./) { say $1 }' | 16:57 | |
| ao | |||
| :) | |||
| audreyt | avar: oooooh | ||
| fglock | avar: nice! are you publishing it? | ||
| avar | audreyt: comments on the API? | ||
| gaal | there are perl -lne '$x = () = $_ =~ /(MkPos)/g; print $x' blib6/lib/Prelude.pm.yml => 550 | ||
| pos nodes | 16:58 | ||
| avar | yeah, when I finally get re::engine::Plugin v0.02 on CPAN | ||
| gaal | in prelude | ||
| (and as many associated Ann nodes, of course) | |||
| audreyt | gaal: can you strip those nodes and see how much startup we buy? | ||
| it's only worthwhile if it's.. worthwhile :) | 16:59 | ||
| gaal | sure. :) | ||
| avar | wrt Pugs::Compiler::Rule, would it be possible to supply pos => *after* ->compile for multiple ->matches? | ||
| fglock | avar: btw, I'm trying to find out how to package 5.9.5 named captures into a match object; ideas welcome | ||
| avar | this is required for re::engines that implement m//g | ||
| it's either that or compiling the pattern all over again with ->compile, can-do, but more expensive:) | 17:00 | ||
|
17:00
diotalevi joined
|
|||
| avar | I note that I haven't understood Pugs::CR internals:) | 17:00 | |
| fglock | avar: it supports a 'continue' flag; I think there is an example somewhere (looking) | ||
|
17:00
forsaken joined
|
|||
| avar | fglock: You want $+{eek} to be a match object? | 17:00 | |
| perl5.9.5 -Mblib -Mre::engine::PCR -lE 'if ("aoeu" =~ /((.).)./) { say ref $& }' | 17:01 | ||
| Pugs::Runtime::Match | |||
| same for $1 et al | |||
| ingy got his passport finally. looks like I'll be able to go to yapc after all... | |||
| fglock | avar: I only need to know the 'from' and 'to' | ||
| avar | fglock: mm, lost you there, where do you need that? | ||
| fglock | one sec | ||
| avar | oh, and I'm also thinking of how to wrap grammar => in engine::PCR and supporting ::Regex and ::Token as well as ::Rule | 17:03 | |
| fglock | avar: svn.pugscode.org/pugs/perl5/Pugs-Co...exPerl5.pm | ||
| lambdabot | tinyurl.com/2d3mqm | ||
| avar | if ("aa" =~ /rx: pattern/ perhaps? | ||
| there aren't a whole lot of ways to pass options around, all you get are /msixp and the pattern | 17:04 | ||
| fglock | local @PCR::options = qw(ratchet); | 17:05 | |
| mm - no | |||
| avar | me likes his implementation of $1, $2, et al | 17:06 | |
| $re->captures( sub { my ($re, $n) = @_; $match->[$n - 1] } ); # :)) | |||
| $1 implemented with closures:) | |||
|
17:07
RHainsworth joined
17:08
RHainsworth left
17:09
justatheory joined,
lichtkind joined
17:10
prly_ joined
|
|||
| fglock | avar: re /g, supplying { continue=>1 } at runtime should return the next match | 17:10 | |
| this is not much tested | |||
| avar | to ->match? | 17:11 | |
| fglock | see PCR t/10-regex_perl5.t | ||
| yes | 17:12 | ||
| avar | with "1" being a POS offset? | ||
| avar looks | |||
| maybe use re::engine::Pugs::Compiler 'Rule'; is the best way? | 17:13 | ||
| hrmp | |||
| lichtkind | unbelievable in the wp perl article was written that perl uses pcre | ||
| avar | fglock: rm, RTFS:) | 17:14 | |
| the german one? | |||
| lichtkind | avar of course | ||
| avar i seldom check the english even when its on my wishlist to translate the german perl article | |||
| avar | audreyt: do you have co-maint to give out for re::engine::PCRE? Have I asked you this before?;) | 17:15 | |
| The geman one is usually better though | |||
| more succinct, en. is so full of redundant crap that fails to explain the simplest of concepts | 17:16 | ||
| lichtkind | avar because its maintainem by me :) | ||
| german like logical structures a lot | |||
| TimToady | I wonder if it makes sense to be able to declare resource limits on any dynamic scope? | ||
| lichtkind | even MJD was pro a translation | ||
| avar | germans++ | ||
|
17:16
prly__ joined
|
|||
| fglock | TimToady: it would be a nice thing to have | 17:17 | |
| lichtkind | audreyt im not yet finished there was more than i thought to revamp but its not much left | ||
| avar your to kind, whats your interest in this expedition? | 17:18 | ||
| ajs_ | TimToady: you mean, something like, "within this scope, memory usage may not grow more than X?" | ||
| TimToady | was coming at it more from the time perspective, but that would be a logical generalization | 17:19 | |
| avar | lichtkind: expedition? | ||
| TimToady | TheDamain gave me feedback about the conjecture in S05 that :exhaustive should have a time limit, and he thought it should be generalize to a :timeout option, but I'm thinking it wants to generalize further than that. | 17:20 | |
| lichtkind | avar: yes this exploration where no man has thrown a leg before called perl6 | ||
| TimToady | I'm not sure about the performance implications though. | ||
| ajs_ | Interesting. I think the problem would be: how would execution time constraints play with an existing SIGALRM handler if any? | 17:21 | |
| under POSIX systems | |||
| TimToady | I think it would be advisory more than mandatory: "If and when you notice this scope using more than X units, make it throw an exception" | ||
| so it'd be okay to check every now and then | 17:22 | ||
| ajs_ | Ah, ok. So not a replacement for timeouts in general, then. Cool. | ||
| TimToady | but I don't know how you account for which dynamic scopes would own which memory resources | 17:23 | |
| and presumably you'd have to have a story for not counting time spent by another thread against your thread. | |||
|
17:24
bonesss joined
|
|||
| ajs_ | That's an interesting problem. As is the play between continuations and resource control. | 17:24 | |
| TimToady | and it's really only mostly for sanity from the human perspective, so just wall clock time limits would be a good start | 17:25 | |
| as long as we keep the API open to other resources | |||
|
17:25
bonesss joined
|
|||
| ajs_ goes back to work, sadly | 17:25 | ||
|
17:28
wilx` joined
|
|||
| gaal | audreyt: got a min for generics help? | 17:28 | |
| pasteling | "gaal" at 192.115.25.249 pasted "type error" (10 lines, 922B) at sial.org/pbot/23602 | 17:29 | |
| lichtkind | avar: do i get an answer? | 17:31 | |
| fglock | limits are probably implementable at the compiler level, adding some extra code | ||
| avar | lichtkind: I have no idea what you're going on about:) | 17:32 | |
| lichtkind | avar: i asked about your interest and actions acording to perl6/ i simply dont know you | 17:33 | |
| fglock | problem is how to timeout external libs, such as the regex engine | ||
| gaal | svk cat -r11738 src/Pugs/AST/CapInternals.hs | grep -15 doExtractPlaceholderVars suggests this is the right direction... | ||
| (orig r11644) | 17:34 | ||
| audreyt | a sec | ||
| avar | lichtkind: interested in various stuff;) | ||
| gaal | sure :) | ||
| avar | lichtkind: Mainly in getting it used "in the real world", which is partly why I'm playing with re plugins in 5.10:) | ||
| avar is going to make re::engine::PGE :) | |||
| lichtkind | avar: that are full perl6 rules in perl5? | 17:35 | |
| avar | yeah, using the parrot grammar engine | 17:36 | |
| lichtkind | avar: first i thought your alvar a german guy | ||
| audreyt | gaal: you need mkT | ||
| avar | PGE is probably more viable than Pugs::Complier::Rule which makes my perl script as slow as pugs code:) | ||
| gaal | oh! | ||
| lichtkind | avar: but pge produces parse tree | ||
| audreyt | there's a example in src/Text/Parser/Rule.hs | ||
| gaal | right | ||
| thanks : | 17:37 | ||
| ) | |||
| avar | lichtkind: yeah | ||
| audreyt | :) | ||
| [particle] | avar++ | ||
| lichtkind | but how to squeese a parse tree into perl5? | ||
| avar | I need to learn how to embed parrot though | ||
| gaal | I thought gmapT was = everywhere . mkT... | ||
| avar | you wouldn't expose the parse tree, just match objects | ||
| [particle] | cd ext/Parrot-Embed && Makefile.PL && make | ||
| audreyt | avar: there's also a faster one in misc/pX/Common/yet_another_regex_engine if you're interested :) but Parrot::Embed sounds like fun too | ||
| avar | [particle]: mm, cool | 17:38 | |
| lichtkind | avar: i dont grok that yet | 17:40 | |
| gaal | not having P.A.Internals will be such a relief :) | ||
| audreyt | working on it :) | ||
| (now passing slightly more tests) | |||
| gaal | :))) | ||
| audreyt | both Sym and Pad nodes are gone now | ||
| avar | I wonder if that wraps all the datatypes pge needs.. | ||
| gaal | how are proto decls expresed? | 17:41 | |
|
17:41
fglock joined
|
|||
| gaal | proto values that is, my $x = 8 | 17:41 | |
| (that's what Exp.Pad was used for, right?) | 17:42 | ||
| fglock | is there profiling results for yet_another_regex_engine? | 17:43 | |
|
17:44
nxu7-wrk joined,
dmpk2k joined
|
|||
| lichtkind | avar: so its pure magic how pge works inside perl? | 17:46 | |
| audreyt | fglock: time make test or something like that... putter has posted some numbers before iirc | 17:54 | |
| geoffb | audreyt: are you still planning that your pad branch will drop "tonight"? | ||
| gaal | hmm. everywhere requires Exp to instantiate Data. ouch. | 17:55 | |
| but hey, looks like it can be derived | 17:57 | ||
| whee. I was sure it'll failed on some subordinate datatype.... | 17:58 | ||
| hahaha yes indeed it does, only far away from the derivation :( | 17:59 | ||
| which actually makes sense come to think of it | |||
| because of open instances etc. hmmmmm.... | |||
| that'll require Data (Eval Val), which I can fake :/ | 18:00 | ||
| remind me why there's separate Data and Typeable classes? :( | |||
| audreyt | gaal: it's a PadEntry with _proto | 18:01 | |
| geoffb: I don't know yet :) in the next 24 hours though. | 18:02 | ||
| the #1 problem is that Prelude.pm doesn't like the new pad code | |||
| fglock | oops - Data::Bind->sub_signature should bind @_ to @{$_[0]} in v6.pm ? | ||
| audreyt | which was just clarified by TimToady | ||
| but that requires a restructure | |||
| gaal | argh, I remember now that we actaully removed the data derives from Exp ages ago... it'll be painful to remoose them. ideas? | ||
| audreyt | (previously f() and &f() are the same thing) | ||
| fglock | does @_ in perl6 only contain the positional arguments? | 18:03 | |
| audreyt | fglock: correct | ||
| fglock | k | ||
| audreyt | (but now f() and &f() requires two nodes, which I'm still trying to devise a clever representation for) | ||
|
18:04
chris2 joined
18:05
buetow joined
18:06
vel joined
18:07
penk joined
|
|||
| gaal | bbiab & | 18:11 | |
|
18:11
Limbic_Region joined
18:16
offby1 joined
18:31
[particle] joined
18:34
VanilleBert joined
18:37
Kinbote joined
18:42
Kattana joined
18:45
bonesss is now known as bonesss`out
|
|||
| offby1 | ping? | 18:48 | |
| allbery_b | hm? | ||
| offby1 | just checkin' to see if my IRC client had flaked out. It has not. That is all :-) | 18:49 | |
|
18:51
xerox joined
18:57
drupek12 joined,
Caelum joined
|
|||
| svnbot6 | r15768 | fglock++ | v6.pm - @_ is now aliased to the list of positional arguments | 19:02 | |
|
19:03
ozo_ joined
|
|||
| ajs_ | Does that imply $_ and %_ get aliased to invocant and named parameters as well? | 19:03 | |
| audreyt | no... | 19:04 | |
| though for methods %_ does gets named by default | |||
|
19:04
marmic joined
|
|||
| ajs_ | It just seemed an obvious extension of the capture concept if @_ was aliases to positionals. | 19:05 | |
| audreyt | yeah it was like that before | 19:06 | |
| but then confusion between .foo and $.foo is a bit too much | 19:07 | ||
| so Juerd invented this .foo vs ./foo syntax | |||
| but then ./foo was changed to $.foo | |||
| and there was much general happiness. | |||
| wolverian | heh, I wonder if the html version of S26 is valid in any html spec | 19:09 | |
| gaal | rehi | 19:10 | |
| I wonder if for the sake of the test it's worth de-possing the yaml from outside pugs | |||
|
19:11
forsaken joined
|
|||
| gaal | but would YAML::Syck roundtrip prelude.yml? prolly not :/ | 19:11 | |
|
19:12
bonesss`out is now known as bonesss
|
|||
| gaal | heh, x8 size | 19:13 | |
| and way bogus tags | |||
| avar | (./foo)-- | 19:15 | |
| gaal | why? | ||
| avar | looks lame:) | ||
| [particle] | relative pathing | ||
| gaal | terribly cute iyam | ||
| but that's one flogged horse | 19:16 | ||
| avar | aren't has() vars inherited? | ||
|
19:17
gnuvince joined
|
|||
| TimToady | vars are never inherited, only accessors. | 19:20 | |
| but $.foo is an accessor, not a var | 19:21 | ||
| the real var is named $!foo | |||
|
19:23
rashakil__ joined
|
|||
| gaal | or, hmm, I can just not do it with generics... | 19:23 | |
| kolibrie | speaking of accessors, | 19:24 | |
| fglock: is there a way to call a method from an object returned from a match? | |||
| in pcr | |||
| fglock | kolibrie: just call it? | 19:25 | |
| kolibrie | I have been using $$match->{$key} to get to the values | ||
| fglock | $$match->{$key}->meth should work | 19:26 | |
| kolibrie has been trying $$match->$key() | |||
| [particle] | $$match->{$key}->() ?? | 19:27 | |
| fglock | ${$match->{$key}}->meth if $key is a capture that contains a return object | ||
| gaal patches matterns | 19:28 | ||
| kolibrie | fglock: Can't locate object method ... | 19:31 | |
| fglock | does ref( ${$match->{$key}} ) returns the right class name? | 19:33 | |
| nopaste a sample program? | |||
|
19:36
forsaken joined
|
|||
| kolibrie | fglock: looks like my $match is the $m->{$key}, so ref($$match) gives me my object name | 19:37 | |
| $$match->$method() gives me Can't locate object method "$method" | 19:38 | ||
| I can put together a small sample program | 19:39 | ||
|
19:47
jisom left
|
|||
| fglock | kolibrie: you mean you are using ${$match->{$key}}->$method(), right? | 19:50 | |
| kolibrie | $match = $match->{$key}; # match is now object; $match->{$accessor}; # ok; $match->$accessor(); # Can't locate object method ... | 19:52 | |
| so far I've only needed 'has' accessors in perl 5 land, but now I need to read from a method, and cannot seem to call it | 19:54 | ||
| my grammar and emitter are native perl 6, compiled with v6.pm, the script is native perl 5 | 19:55 | ||
| if that matters | |||
| fglock | maybe take a look at the generated .pmc files; you might be seeing a v6 compiler bug? | 19:58 | |
| kolibrie still trying to build a sample script | |||
| offby1 | the one nice thing about a language that's still being hacked on: when you blame a bug on the compiler, there's a chance you're actually right | 19:59 | |
| fglock | for some value of 'nice' :) | 20:00 | |
| offby1 | yeah | 20:01 | |
|
20:10
amnesiac joined
|
|||
| gaal | so, I ended up just whacking MkPos' asYAML instance :) | 20:11 | |
| -rw-r--r-- 1 gaal gaal 76365 2007-03-19 16:11 blib6/lib/Prelude.pm.yml | |||
| -rw-r--r-- 1 gaal gaal 38474 2007-03-19 16:11 blib6/lib/Test.pm.yml | |||
| as opposed to: | |||
| -rw-r--r-- 1 gaal gaal 107033 2007-03-19 13:22 Prelude.pm.yml | |||
| -rw-r--r-- 1 gaal gaal 58046 2007-03-19 13:22 Test.pm.yml | |||
| the speed difference (not entirely reliably measured) is about 4-8% | 20:12 | ||
| so, possibly not worth the effort, especially if newVal/newAST isn't going to derive Data. | |||
| audreyt | ok. | 20:13 | |
| audreyt meanwhile is adding circularity support to DrIFT.YAML | |||
| once it's done I'll checkin padbranch. | |||
| gaal | (if we do do this, the files will also have to have the Pos fixup table appended, but that can be much more compact than MkPos serialization | ||
|
20:13
bernhard joined
|
|||
| gaal | yay! | 20:14 | |
| brb | |||
|
20:15
penk joined
|
|||
| gaal | (back) | 20:16 | |
| kolibrie | fglock: ok, the sample script clarified some things | 20:17 | |
| it is the 'has' accessors that are behaving strangely | |||
| pasteling | "kolibrie" at 66.239.158.2 pasted "fglock: sample script showing accessor as method problems" (45 lines, 1.1K) at sial.org/pbot/23605 | ||
| fglock | looking | 20:18 | |
| lichtkind | avar: would you be interestet in proofreading an de -> en tranlation of the perl article? | 20:19 | |
| audreyt | gaal: I'm too sleepy to get the circularity thing right :-/ | 20:20 | |
| gaal | ok :) | 20:21 | |
| audreyt | gaal: if you have some cycles, can you try getting DrIFT.YAML serialize two TVars, each pointing to a singleton list containing each other, correclty? | ||
| once it's there, Prelude.pm.yml won't take infinite time to generate | |||
| fglock | it may be a problem with Moose.pm (still looking) | ||
| gaal | what's the yaml look like for that? | ||
| audreyt | - &1 [*2] | 20:22 | |
| - &2 [*1] | |||
| or something like that? | |||
| gaal | ok | ||
| kolibrie has Moose 0.12 | |||
| audreyt | I'll post the branch diff | ||
| and finish it tomorrow | |||
| gaal | HsSyck does do that right, right? | ||
| audreyt | right | 20:23 | |
| gaal | the plan is handing it over anchor-annotated nodes? | ||
| audreyt | perlcabal.org/~audreyt/tmp/YAML.hs | ||
| gaal | thanks | ||
| audreyt | restores it for tvar | 20:24 | |
| fglock | kolibrie: same problem here; the p5 code is " has 'url' => ( ); " | ||
|
20:24
rashakil joined
|
|||
| audreyt | but then the compression doesn't jive well | 20:24 | |
| with that | |||
| gaal | hmm right. I see the version you put up reverts part of the comression stuff? | 20:25 | |
| (-IntMap +IntSet again) | |||
| audreyt | er that is irrelevant | 20:26 | |
| not compression | |||
| fglock | hmm - " has 'url' => ( is => 'ro' ); " works - fixing... | ||
| audreyt | we switched to IntMap to try if it's stableptr earlygc | ||
| it's not it | |||
| kolibrie | fglock: what is it supposed to be? looks like Moose is just expecting traits (rw, isa) to go in there | ||
| audreyt | so intset == intmap | ||
| gaal | ok | ||
| audreyt | Huge diff: perlcabal.org/~audreyt/tmp/pad-branch.diff | 20:27 | |
| compiles; runs; passes sanity | |||
| but Prelude.pm.yml gen is broken | |||
| works fine when recomp prelude | |||
| I mean, resource prelude | |||
| but too slow to meaningfully run smoke with | |||
| so tomorrow. | |||
| sorry for late :) | |||
| *wave* & | |||
| kolibrie | fglock: oh, just saw your 'is => 'ro'' comment | ||
| gaal | moose :) | ||
|
20:31
mathlord joined
|
|||
| kolibrie | fglock: changing my 'has' lines to 'rw' seems to emit correct p5 code, as well | 20:32 | |
|
20:32
VanilleBert left
20:36
Loro joined
|
|||
| avar | lichtkind: sure, I don't know german though;) | 20:37 | |
| fglock | kolibrie: fixed | ||
| lichtkind | avar: nono check the english and you knoe perl a littl ei suppose | ||
| kolibrie pulls | 20:39 | ||
| svnbot6 | r15769 | fglock++ | v6.pm - Moose requires that attributes have an 'is ro' declaration; noticed by kolibrie++ | ||
| kolibrie | fglock: thank you! | 20:40 | |
|
20:40
integral joined
|
|||
| fglock | np :) | 20:43 | |
| lichtkind | avar: k have to gow i remember you see you later | ||
|
20:51
rlb3_work joined,
sri_ joined
20:52
cj joined,
masak joined,
polettix joined
|
|||
| svnbot6 | r15770 | fglock++ | v6.pm - ChangeLog update | 20:52 | |
|
20:56
devogon joined
21:01
diotalevi joined,
Limbic_Region joined
21:06
fglock joined
|
|||
| fglock | @tell clkao please sanity check r15766 (Sub::Multi); maybe upload to cpan? | 21:06 | |
| lambdabot | Consider it noted. | ||
| fglock | home & | 21:07 | |
|
21:09
Psyche^ joined
21:21
Psyche^ is now known as Patterner
|
|||
| [particle] | smash: compilers\imcc\imclexer.c(4357) : warning C4018: '<' : signed/unsigned mismatch | 21:25 | |
| compilers\imcc\imcc.l(666) : warning C4090: 'function' : different 'const' quali | |||
| fiers | |||
|
21:26
the_dormant joined
21:32
rod1 joined
21:35
BooK joined
21:39
weinig|bbl is now known as weinig
21:48
autark joined
|
|||
| Loro | ? | 21:53 | |
| Kinbote | would anyone happen to know where the "official" parrot channel is? nobody's on #parrot. | 21:56 | |
| Loro | tuna is gay. | 21:57 | |
|
justatheory joined
|
|||
| Limbic_Region | ircc.perl.org | 21:57 | |
| er | |||
| irc.perl.org | |||
| Kinbote - and if that was as clear as mud. The channel is #parrot but the network is irc.perl.org (not freenode) | 21:58 | ||
| avar | Man, I should peek at the regex plugins now:) | 22:04 | |
| <- been lazy | |||
| Kinbote | thanks | 22:05 | |
| gaal | Kinbote: it's in Zembla :-p | 22:07 | |
|
22:12
Aankhen`` joined
22:18
malpertuis joined
|
|||
| gaal | pugscode.org | sial.org/pbot/perl6 | ?eval "m" ~ "oo" ~ "se" | > reverse (show (scanl (*) 1 [1..] !! 4)) | 22:23 | |
|
22:28
malpertuis left
22:30
malpertuis joined,
malpertuis left
|
|||
| meppl | good night | 22:45 | |
|
22:50
moshik joined
22:54
ruoso joined
22:56
mathlord is now known as mathlord[sleepin,
mathlord[sleepin is now known as math[sleeping]
23:02
TimToady_ joined
|
|||
| avar | . | 23:11 | |
|
23:14
gnuvince_ joined
|
|||
| gnuvince_ | ?eval reverse (show (scanl (*) 1 [1..] !! 4)) | 23:14 | |
|
23:14
evalbot_r15765 is now known as evalbot_r15770
|
|||
| evalbot_r15770 | Error: Unexpected "1"expecting operator, ":", "," or ")" | 23:14 | |
| moritz | gnuvince_: try @eval ;-) | 23:15 | |
| gnuvince_ | @eval reverse (show (scanl (*) 1 [1..] !! 4)) | ||
| Did I kill Larry Wall? | |||
| moritz | @help | ||
| lambdabot | help <command>. Ask for help for <command>. Try 'list' for all commands | ||
| moritz | @help eval | ||
| lambdabot | eval. Do nothing (perversely) | ||
| moritz | @help list | 23:16 | |
| lambdabot | list [module|command] | ||
| show all commands or command for [module]. www.cse.unsw.edu.au/~dons/lambdabot/COMMANDS | |||
| geoffb | TimToady_ appeared a bit ago (note trailing underscore), I think he must have just had timeout issues. | ||
| [particle] | larry's not dead, he's just reached his recursion limit | ||
|
23:22
diakopter joined
23:33
diakopter joined
23:35
explorer joined
23:45
jferrero joined
23:50
explorer joined
23:57
TimToady_ is now known as TimToady
|
|||