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
|