Pugs t-shirts www.cafepress.com/pugscode | Pugs 6.2.9 released | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | www.geeksunite.net Set by stevan on 15 August 2005. |
|||
buu | erxz.com/log.pl | 08:00 | |
or something | |||
Can't make the first day work, but is that what you had in mind? | 08:02 | ||
spinclad | good enuf in a flood | 08:03 | |
^F is my friend | 08:04 | ||
nothingmuch forgot what ^F is | |||
form feed? | |||
buu | Find in firefox? | ||
nothingmuch | oh | ||
geoffb | Mozilla "find in page" | ||
spinclad | yeh, that | ||
buu | Ahah, fixy first page. | ||
nothingmuch thought terminal | |||
buu | s/page/day/ | ||
nothingmuch | colabti.de/irclogger/irclogger_log_search/perl6 | ||
buu | Interesting | 08:05 | |
autrijus | rehi | ||
nothingmuch | hi ho | ||
autrijus | so I was hacking here in the hallways | ||
and brendon just showed up suddenly | 08:06 | ||
and I gave him a T-shirt and talked for half an hour :-)) | |||
nothingmuch | brendon? | ||
autrijus | the one guilty for javascript and spidermonkey | ||
nothingmuch | ah | ||
spinclad | hi autrijus-san | 08:07 | |
autrijus | he mentioned they are investigating the Rhino continuations class for spidermonkey | ||
which would be lovely | |||
nothingmuch | woot | ||
autrijus | and also toying with the idea of having firefox work with system perl python ruby etc as XUL scripting | ||
...and I updated him on parrot -- turns out their impression was still two yearsD ago | 08:08 | ||
nothingmuch | that is local UI bindings, e.g. GTK, but based on the FF implementation | ||
autrijus | nothingmuch: right | ||
nothingmuch | s/$/?/ | ||
ā $parrot.at(Time::Piece->new("two years ago")), $parrot.now | 08:09 | ||
geoffb | hi, autrijus, nothingmuch | ||
nothingmuch | hi ho geoffb | ||
there's a unicode char called 'n-ary circled dot operator' | 08:10 | ||
perhaps that's hyper method call on boxed types? | |||
geoffb | nothingmuch, I'd be interested in that delta as well | ||
autrijus, what did you tell them? | |||
coral | ooo, XUL scripting :) autrijus++ | 08:11 | |
spinclad | (brendon++?) | ||
nothingmuch was actually wrong, i inserted "Increment" instead of "Delta" because i found the triangle under " | 08:12 | ||
Mathematical Symbols" instead of the greek script | |||
geoffb | looked close enough in my window . . . . | ||
spinclad | i think you got it right by accident then | 08:13 | |
difference == increment in a way | |||
nothingmuch | really? why is it "increment"? I would have expected it to be named otherwise | ||
nothingmuch should have gone with |$parrot.now - $parrot.then| | 08:14 | ||
buu | Hrm. Can we have a 'then' operator? | ||
spinclad | x1-x0 is what you increment x0 by to get the next | ||
nothingmuch | btw, do we have circumfix:<| |> | ||
woh | |||
oh | |||
buu: please explain what it does | |||
buu | nothingmuch: scalar comma operator | 08:15 | |
nothingmuch | ? | ||
buu | || is to 'or' as , is to 'then' | ||
nothingmuch | sub &infix:<then> ($lhs, $rhs) { ... } | ||
buu | Excellent | 08:16 | |
nothingmuch | is this a cause and effect then, or a this after that then? | ||
buu | 'this after that' | ||
nothingmuch | oh, i see why i got confused =) | ||
?eval my $x = 1, 2, 3; $x | |||
evalbot_7198 | [1, 2, 3] | ||
spinclad | i was thinking if..then, and thinking either ?? or !! | ||
nothingmuch | errm | ||
?eval my $x = scalar 1, 2, 3; $x | |||
evalbot_7198 | Error: No compatible subroutine found: "&scalar" | ||
buu | Dear god. | 08:17 | |
nothingmuch | ?eval my $x = +(1, 2, 3); $x | ||
evalbot_7198 | \3 | ||
buu | ?eval $x=42,$y=53; | ||
nothingmuch | why is it useful, btw? | ||
evalbot_7198 | Error: Undeclared variable: "$x" | ||
buu | nothingmuch: The same places we use scalar commas | ||
nothingmuch | i don't know where we use scalar commas | ||
geoffb | nothingmuch, '$broken++, next if /broken/;' | 08:18 | |
nothingmuch | that's void comma | ||
buu | Same difference. | ||
nothingmuch | does it behave the same? | ||
spinclad | if do this then do that then do theother else do something else | ||
nothingmuch | list and scalar comma behave the same in void context, don't they? | ||
spinclad | EAMBIG | 08:19 | |
nothingmuch | ?eval sub &infix:<then> ($lhs, $rhs) { $rhs }; my $x = 4 then 2; $x | ||
evalbot_7198 | Error: unexpected "&" expecting subroutine parameters, trait or block | ||
geoffb | Um, I think it's not so much that they behave the same but rather there would be no way to tell the difference | ||
nothingmuch | ?eval sub infix:<then> ($lhs, $rhs) { $rhs }; my $x = 4 then 2; $x | ||
evalbot_7198 | \2 | ||
geoffb | (so same by default) | ||
nothingmuch | brb | 08:20 | |
buu | Apparently scalar commas behave differently now | ||
The main difference was the return values. | |||
geoffb | (count of items v. last item, yes?) | 08:21 | |
buu | Er, no? | 08:23 | |
I'm not sure what commas are doing in p6, apparently they create annonymous arrays | |||
nothingmuch | buu: no | 08:26 | |
it's that arrayish things, when assigned to a scalar become an array ref | 08:27 | ||
i think | |||
wait | |||
?eval my $x = +(5, 6, 7); $x | |||
evalbot_7198 | \3 | ||
nothingmuch | okay | ||
quick answer: there is no scalar comma | |||
maybe it's a pugs bug | |||
maybe not | |||
The scalar comma , now constructs a list reference of its operands. You have to use a [-1] subscript to get the last one. | 08:28 | ||
dev.perl.org/perl6/doc/design/syn/S03.html | |||
first hit for "comma" | |||
you were right | |||
?eval my $x = (5, 6, 7)[-1]; $x | |||
evalbot_7198 | \7 | ||
nothingmuch | anyway, for 99% of the cases it doesn't really matter | ||
I don't know of any use of the scalar comma as something you want to get a void out of | |||
for sequencing operations you can still use it (scalar or list comma - it doesn't matter) in void context (maybe there's even the void context comma, implemented exactly like the then operator i just gave above) | 08:29 | ||
but mose '$foo++, next if cond' can be redone as given/when | 08:30 | ||
for @list -> $x { given $x { when cond { $counter++ } } } | |||
svnbot6 | r7199 | Darren_Duncan++ | /ext/Locale-KeyedText : resync with final Perl 5 version 1.6.2, which is now on CPAN ... the next anticipated edits to this perl 6 version is to ensure it still compiles/executes correctly under the current Pugs | 08:34 | |
nothingmuch | amazing: www.perlmonks.org/?node_id=494663 | 08:35 | |
buu | Perlmonks is powered by the souls of damned orphans. | 08:50 | |
geoffb | OK, I've been up way too damn long | 08:52 | |
time to attempt sleep again | |||
g'night | 08:53 | ||
spinclad | night geoff | ||
me too, soon | |||
autrijus | geoffb: g'nite! | 08:55 | |
sorry I was abducted by aliens | |||
or at least an earthling with an alien mind :) | |||
spinclad | that tends to happen at some of these conferences | 08:56 | |
autrijus | geoffb: I told brendon, quite truthfully, about Dans' absence and the recent revival attempts | ||
spinclad | but only the best ones | ||
autrijus | shared runtime is still a win and they are still not at all comfortable with mono | ||
and python is not targetting spidermonkey2 any time soon | 08:57 | ||
so still a chance for parrot if pirate can somehow show concrete results. | |||
nothingmuch somehow doubts parrot will get stuff soon | 09:13 | ||
it seems like it's doing maintenance jobs | |||
not really developing | |||
spinclad | leo's branch has finally made trunk. does that mean pugs could start targeting it again? | 09:17 | |
(as if nobody had enough work already) | |||
broquaint | Will parrot ever be finished? | 09:19 | |
pdcawley | Not if it keeps chasing performance before correctness. | 09:20 | |
Oops, hit return. | |||
autrijus | spinclad: yes, it means we can restart targetting. | ||
broquaint | Hrm, then it might be some time ... | ||
autrijus | before then it was impossible -- the function calling convention keeps changing in a hourly basis | ||
nothingmuch | TSa is silly | 09:25 | |
"i would call intentional exceptions terrorism" | |||
pdcawley | No! | ||
WTF! | |||
nothingmuch | me doesn't understand why he insists on calling errors exceptions | ||
pdcawley | I'm not sure 'silly' begins to cover that. | ||
nothingmuch | when the two, taken most literally, mean what they mean and not wha the wants them to mean | 09:26 | |
pdcawley | Thomas "Humpty Dumpty" Sandlass | ||
Words mean precisely what he wants them to mean. | |||
nothingmuch | heh | ||
so, have you forgiven me yet? | |||
pdcawley | Nah. You're unforgiveable. | 09:27 | |
; grins. | |||
nothingmuch | is that the name of a pop song or something like that? | ||
pdcawley | Oops, irc is not a mud. Muds are not irc. | ||
Unbelievable. | |||
nothingmuch | ttp://dictionary.reference.com/search?q=exception | 09:28 | |
spinclad | unforgetable | ||
nothingmuch | One that is excepted, especially a case that does not conform to a rule or generalization. | ||
pdcawley | Someone should do Unforgiveable as well. | ||
nothingmuch | dictionary.reference.com/search?q=error | ||
The condition of having incorrect or false knowledge. | 09:29 | ||
when an error happens, an exception in the normal control flow is used to notify code which can make the decision of what to do next | |||
scook0 | so an erroneous situation causes an exception to normal control flow... | 09:30 | |
nothingmuch | yep | 09:33 | |
there | 09:39 | ||
nothingmuch hopes he's formalized it | |||
scook0: i've expanded a lot on that | |||
www.nntp.perl.org/group/perl.perl6....uage/23276 | 09:40 | ||
spinclad happily backjournals amid the backlogging | 11:03 | ||
nothingmuch | bah | 11:08 | |
scook0 | huh? | ||
nothingmuch | i wonder if TSa has actually used exceptions in code or not | ||
he seems to be very confused not about how they work, but how they save programmer time | 11:09 | ||
scook0 | to be honest, I rarely even try to understand what he's talking about any more | 11:11 | |
nothingmuch | in the use fatal err fail thread, he | 11:12 | |
's making some point | |||
which i think is wrong | |||
but come to think of it, i have no clue why he reached that point | |||
wolverian | I agree that culturally, exceptions are more like errors than events | ||
I also agree that that is wrong. :) | 11:13 | ||
(so I agree with both of you, I think) | |||
nothingmuch | wolverian: i'm not contradicting that | 11:14 | |
all I'm saying is that till now exceptions have only been dealing with errors | 11:15 | ||
but exceptions are just a way of leaping up to known sanity, as a reaction to an event | |||
wolverian | right. | ||
nothingmuch | and the only events we're used to reacting to, with an exception, are errors | 11:16 | |
scook0 | I still don't understand what point TSa is trying to make | 11:17 | |
nothingmuch | wrt 'return is two orthogonal things?'? | ||
err, take one ? out of there | |||
scook0 | not so much that bit | 11:19 | |
more the 'least thing that *defines* an exception' | |||
nothingmuch | i think he's really confusing return value things | 11:20 | |
perhaps I should explain the Either monad | 11:21 | ||
and fail | |||
vs return | |||
hi gaal | |||
cognominal | hum, what is this Blondie thing? What the difference of purpose with PIL? | 11:33 | |
is this a PIL new generation? | 11:34 | ||
wolverian | I think autrijus talked about it in a recent journal | ||
scook0 | I believe Blondie is its own little independent experiment | ||
ask nothingmuch | 11:35 | ||
wolverian | it is not PIL2 | ||
right; it's nothingmuch's project | |||
scook0 | it's a sandbox for testing certain compilation techniques | ||
cognominal | thunking, among other thing I have gathered... | 11:36 | |
wolverian | I just love how ./configure just has to check for Fortran support when I'm compiling a C IRC client | ||
we.hates-software.com, I guess, although it's an old hate. | |||
cognominal | yea, the world of pure ideas is so confortable | 11:37 | |
and code is so disgusting | |||
I hope Perl6 will mitigate that | |||
gaal | hi nothingmuch | 11:42 | |
i want my brain back | 11:43 | ||
nothingmuch | what happenned to it? | ||
gaal | $work has been sucking it away, i feel depleted | ||
spinclad | geoffb++ # good article, expresses much of my own happiness with how things are moving lately | 11:53 | |
nothingmuch actually has a comment on that, now that i'm thinking about it | 11:59 | ||
perl isn't taking all those features and assimilating the, | |||
it's doing something deeper | |||
the features are evaluated for usefulness | |||
and distilled | |||
such that perl is a very simple language | |||
with which we can implement a vast, useful core library | 12:00 | ||
with a cool language based on all the langauges listed in the article | |||
so that the result feels like the next perl, WRT perl 5 | |||
spinclad | i'm beginning to see perl6 and haskell sharing much core mechanism... | 12:02 | |
these language cores are becoming community property | 12:04 | ||
nothingmuch | oh, and i forgot: the result makes sure that it not only assimilates perl 5, but that it assimilates the practical features of the other languages too | ||
spinclad | or especially the ideas and structures that make them up | ||
nothingmuch | aye | ||
kgftr|konobi | theorbtwo: oioi | 12:27 | |
cognominal | spinclad: "I'm beginning to see perl6 and haskell sharing much core mechanism..." I don't think there is a expliicit pattern matching system a la haskell in Perl6. Too bad, the more I learn haskell the more I like pattern matching | 12:35 | |
spinclad | well, not yet anyway, at least in the surface language. i was actually thinking of the implementations; | 12:39 | |
draget | $new =~ s/\$number\n//; | 12:40 | |
i've done something wrong, but can't work out what | |||
anyone know why that doesn't work? | |||
spinclad | draget: perl5 or perl6? | ||
draget | perl5, is their a channel for 5, I didn't see it in the list | 12:41 | |
cognominal | anyway, I find there is a similarity between regex and pattern matching. regex deals with chars, amd pattern matching with types. I am note sure what to think about that parallelism | 12:42 | |
draget | basically i need a variables contents to be searched for and replaced with nothing | 12:43 | |
spinclad | draget: several, among them #perl, #perlhelp, #perlcafe, ##perl... | ||
draget | hmmm Gaim didn't list them | 12:44 | |
QtPlatypus | cognominal: It is possable to make strings of things other then chars. I wonder if its possable to make strings of types and use the regex engion to do pattern matching. | 12:45 | |
spinclad | draget: #perl6 is about perl6 development, which bears only somewhat more than a historical resemblance to perl5 these days | 12:46 | |
draget | oh, sorry, i'll find a different channel | ||
cognominal | QtPlatypus: indeed | 12:47 | |
perl6 regexing is very much the explicit building of a tree | 12:48 | ||
spinclad | cognominal: i expect pattern matching, type inference and such to be of great interest in p6l and implementation work | ||
cognominal | and this potentially branches (no pu intended) on attribute grammars and so many things | ||
spinclad | (and considering we have a goal of migrating the implementation to perl6, that calls for them in the language...) | ||
cognominal | the apocalypse on regexen convinces me that Perl6 would be great. | 12:49 | |
spinclad | yeah, them too | ||
(AGs) | |||
cognominal | but with these new insighst, may be we will see it only scratches the surface | 12:50 | |
spinclad | in any case it must pass @Larry, and seeing it at work will make a significant difference with that | 12:51 | |
nothingmuch | luqui: ping | 13:01 | |
Limbic_Region | I am sure everyone has already seen and read autrijus and luke's journal entries at use.perl - but if you haven't, do so - exciting stuff | 13:20 | |
cognominal | thx, Limbic_Region | 13:24 | |
autrijus | :) | 13:51 | |
autrijus is soaking in mad techniques from GHC | |||
PerlJam | nothingmuch++ (nice analogy :) | 14:00 | |
integral | hmm, is luqui's blog on one of the planets? doesn't seem to be on planetsix | 14:21 | |
svnbot6 | r7200 | fglock++ | * pil-run - Junction constructor accepts either Array or ARRAY | 14:30 | |
fglock | integral: use.perl.org/~luqui/journal | ||
autrijus | integral: I just suggested to obra to add it | 14:36 | |
integral | thanks autrijus ! | 14:47 | |
Limbic_Region | integral - planetsix? | 14:48 | |
if there is a planetsix, where is it and why isn't it listed in the planetarium at planetperl? | 14:50 | ||
integral | Limbic_Region: there's: planet.perl.org, planetsix.perl.org and planet.parrotcode.org | 14:52 | |
Limbic_Region | I knew about 2 of the 3 | ||
autrijus | it should be more prominiently displayed. | ||
Limbic_Region | and the middle one doesn't make sense - it should be planet.perl6.org | 14:53 | |
but I couldn't find it in the planetarium | |||
autrijus | www.perl6.org is owned by pair networks, Daniel Wright | 14:54 | |
Limbic_Region | so planet.perlsix.org | ||
*shrug* - It doesn't look like it aggragates from any sources I am not already reading so | 14:55 | ||
autrijus | er no, I mean writing daniel wright and/or pair to re-dns it | 14:56 | |
*nod* | |||
gaal | hi, need some more help with ast hacking | ||
autrijus | gaal: yo | ||
gaal | hey :) | ||
re mergeStmts | |||
autrijus | aye | 14:57 | |
gaal | remember the Label thingie? i don't see how it should go in | ||
autrijus | mm perlsix.(org|net|com) is entirely unregistered | 14:58 | |
okay...? | |||
we had two options; annotate Stmts with another field | |||
or invent a Label node to annotate stuff | |||
gaal | we have ruleBlockBody, wher wanted to apply the Labels | 14:59 | |
yeah | |||
first option: | |||
so we have Stmts !Label !Exp !Exp | |||
but then mergeStmts has to carry the current Label over to the next Exp | 15:00 | ||
mergeStmts (Stmts x1 x2) y = mergeStmts x1 (mergeStmts x2 y) | |||
that would lose Labe information, no? | 15:01 | ||
unless something like | |||
autrijus | mergeStmts (Stmts l1 x1 x2) y = mergeStmts x1 (mergeStmts l1 x2 y) | 15:02 | |
is the form | |||
assuming y is not itself a Stmts | |||
which will be a separate case nayways | |||
gaal | right, but ont the rhs, where does the label go? | ||
for x1 that is | |||
autrijus | I see. | 15:04 | |
that suggests mergeStmts wants to be threading a Label with it | |||
:: Exp -> Exp -> Reader Label Exp | |||
or simply | |||
:: Label -> Exp -> Exp -> Exp | |||
the label argument would be the enclosing environment | 15:05 | ||
the pragmas in effect, so to speak | |||
and then some primitives to merge them. | |||
it's a bit hairy. | |||
I'll go back to my hotel now; be back in 30 mins; I've been havking all day and I'll hack some more after dinner :) | 15:06 | ||
gaal | enjoy dinner :) | 15:07 | |
autrijus | :) | ||
gaal | (funny being in the same timezone as you :) | ||
does some thing like mergeStmts (Stmts l1 x1 x2) y = do { env <- getRuleEnv ; local (const env{ Label = l1 }) (mergeStmts l1 x1 (mergeStmts l1 x2 y)) | 15:15 | ||
make any sense? | |||
.oO(it will when this is a Reader?) |
15:17 | ||
16:50
ods15_ is now known as ods15
|
|||
putter | fglock: ping/pong? | 17:11 | |
autarch | seen clkao | 17:23 | |
jabbot | autarch: clkao was seen 6 minutes 25 seconds ago | ||
wolverian | btw, is anyone planning a haskell implementation on perl6? :) | 17:28 | |
another thought: do grammars have default parse rules, or so? grammar Foo { ... } Foo.parse(...); | 17:33 | ||
17:34
ods15_ is now known as ods15
|
|||
fglock | putter: pong | 17:40 | |
putter | hi fglock. hmm, deep recursion in chaos. how poetic. :) running smoke... | 17:48 | |
how goes? | 17:50 | ||
fglock_ | putter: sorry for the delay | 18:01 | |
putter | np | ||
:) | |||
fglock_ | I implemented Junctions yesterday - I don't know if this is related to the smoke problem | 18:02 | |
I only ran small tests | |||
putter | fglock++ # Junctions!! :) | ||
test/smoke had lots an lots of increment on undef errors. they went away when I if(0)'ed the new versions of ++ in PrimP5. | 18:04 | ||
sorry :/ | 18:05 | ||
fglock_ | I messed a bit with ++ and -- (may be my fault then) | ||
I was trying to fix String++ | |||
putter | did it break with mm2? | 18:07 | |
fglock_ | it should not break - the problem may be elsewhere. OTOH - array slices is broken | 18:08 | |
putter | map too. and... lots. | 18:09 | |
fglock_ | it is nice that the Prim subs didn't have to reimplemented for Junction to work | ||
putter | anything which explicity does a ref($x) eq 'Foo' needs $x->isa('Foo') | 18:10 | |
:) | |||
fglock_ | ok - I've already fixed some of those isa() | 18:11 | |
putter | hi nm | 18:13 | |
fglock_++ | |||
I love smokes which are already out of date by the time they finish. :) | 18:14 | ||
sense of rapid progress | 18:15 | ||
is misc_junctions.t supposed to run a long time (4+ minutes)? lots of tests are currently non-terminating, so I'm wondering whether to kill it. I don't know whether the non-terminations are due to the transition, or changes made since then. | 18:18 | ||
ah, it finished. | 18:19 | ||
perhaps I'm being too quick on the kill button. perhaps things are just slower. ?? | 18:20 | ||
fglock_ | Junctions are slow - they need to call each sub multiple times | 18:22 | |
putter | ok | ||
np | |||
stevan: ping? | 18:26 | ||
fglock_ | it is possible to use threads, but it could be even slower, because the threads would be very short-lived | 18:27 | |
nothingmuch | evening | ||
putter | evening nm | ||
Limbic_Region | I haven't been paying attention, but are the junctions slow because of a recursive implementation? | ||
Q::S changed to an iterative implementation some time ago fwiw | 18:28 | ||
though Q::S is quite limited in functionality compared to junctions | |||
putter | fglock_: threads in p5, eeep! p5 threads are still the "clone the universe" monsters, yes? | ||
nothingmuch wonders why his smokes suck so much | 18:29 | ||
Limbic_Region | putter - COW is still in the works last I heard | ||
putter | ;) | 18:31 | |
fglock_ | Limbic_Region: I'm not sure if it qualifies as iterative or recursive | 18:32 | |
Limbic_Region | putter - see yapc.mongueurs.net/yapc/talk/?tid=85 for relavent information | ||
fglock_ - well, unless it is in p5 I doubt I would be much help. Was just noting that Q::S has an iterative implementation if necessary/interested | 18:33 | ||
putter | Limbic_Region: tnx for link | ||
Limbic_Region | it isn't the one I was looking for btw | 18:34 | |
the one I was thinking of was more recent and focused specifically on the threading model | |||
*shrug* | |||
putter | fglock, LR: so what is a short characterization of junctions (whatever their current state is) vs Quantum::Superpositions? | 18:35 | |
fglock_ | Limbic_Region: yes, we are talking about the p5 implementation - perl5/Perl6-Value/lib/Perl6/Code.pm | 18:36 | |
Limbic_Region | dunno cause I don't know that the current state is | ||
I have spent a fair amount of time under the hood of Q::S though | 18:37 | ||
too bad binding isn't overloadable in p5 | |||
you can't do if any( @foo ) =~ /bar/ in Q::S | |||
fglock_ | the problem is, (1|2)==3 expands to (1==3)||(2==3) and takes twice the execution time - bigger Junctions take even longer, and if you have Junctions in both sides, the times multiply | 18:38 | |
Limbic_Region | fglock - I doubt seriously my understanding of Q::S is going to be much of a help to you without knowing more about the p6 junction specifications | 18:39 | |
and I stopped following that when I found out that | |||
all( any(@foo) eq any(@bar)) wouldn't do what I wanted (out of the box) | 18:40 | ||
and I know even less about MM1/2 then I do about p6 junctions | 18:41 | ||
unless a lot more DWIMery has been added to the p6 junction specifications - I find them less then useful | 18:42 | ||
s/then// | |||
fglock_ | just in case - Code.pm line 223 - the implementation takes just 20 lines (called from lines 252 and 367) | 18:43 | |
Limbic_Region | looking now | 18:44 | |
fglock_ | it wraps the normal function call (the Code->do() function) | ||
s/function/method/ | |||
Limbic_Region | it isn't recursive but that doesn't mean it is necessarily optimized either | 18:45 | |
oh wait | 18:46 | ||
it is recursive | |||
I didn't see that exand_junctions calls do which calls expand_junctions | 18:47 | ||
fglock_ | yes - that's when you have 2 parameters that are junctions, for example | ||
it needs to call the subroutine (n * m) times | 18:48 | ||
stevan | putter:pong | ||
Limbic_Region | fglock_ - then Q::S should be able to help | 18:49 | |
it uses Class::Multimethods btw | |||
hmmm - or maybe not | 18:51 | ||
putter | stevan: are there any mm construction methods which can't be chained? | ||
stevan | putter: not that I know of,.... but I have never tried it so hard to say | ||
can you given an example? | |||
putter | ie, ->new()->superclasses()->roles()->add_foo()->add_bar()... | ||
stevan | k | 18:52 | |
lemme see whats up | |||
putter | oh, no | ||
no known problem. just checking on intent as I design something | |||
stevan | ah | ||
well lets see | |||
new() will return a new thing of what you want | 18:53 | ||
if it is Class, then one of these methods will work | |||
kgftr|konobi | theorbtwo: moo? | ||
stevan | but they do not allow further chaining becuase they accessor/mutators | ||
superclasses returns the array of superclasses, etc | 18:54 | ||
putter | ah. ok. tnx. | ||
stevan | putter: BTW - endless recursion in chaos usually means that your method is recursing | 18:55 | |
it would say where it really is, except all method calls must pass through there | |||
fglock_ | Limbic_Region: there is also Perl6::Junction | 18:56 | |
nothingmuch | hola pdcawley | 18:58 | |
putter | stevan: re recursion. ok, tnx. I have to run a smoke before the recent junction changes to see if it's the mm2 transition or a new problem. | 18:59 | |
pdcawley | hola. | ||
Limbic_Region | fglock_ oh yeah, that is likely to be closer to the p6 junction specification then Q::S anyday | 19:00 | |
nothingmuch | hola gaal | 19:01 | |
fglock__ | putter: did the Junctions cause the recursion error? | 19:13 | |
putter | fglock__: no idea. the smoke of current state is still running, and I haven't done any specific tests. the test which recursed was... | 19:17 | |
19:18
constant is now known as integral
|
|||
putter | well, the first one was t/builtins/arrays/splice.t . but several failed, blowing memory or time limits. | 19:22 | |
fglock__ | splice isn't working in pil-run - that's MM2 related, I think (it was working before that) - I'll take a look in the code | 19:27 | |
putter: Array.pm line 356 (slice method) - 'if ( ref($list) ne 'Array' )' - this may be a problem | 19:31 | ||
putter | yep. !($list->isa('Array')) | 19:32 | |
would you like to grep for all instances of ref( or shall I? :) | 19:33 | ||
fglock__ | please do | ||
putter | k | ||
fglock__ | !( ref($list) && $list->isa('Array') ) -- because $list may be a p5 thing | 19:35 | |
bbiab | |||
back | 19:47 | ||
putter | ok, let's see, ref's... | 20:08 | |
20:15
autrijus_tw is now known as autrijus
|
|||
fglock__ | putter: UNIVERSAL::isa() doesn't work for MM2 too | 20:20 | |
putter | ok, that's next | 20:35 | |
nothingmuch | stevan: ping | ||
those germans don't seem to understand control flow at all ;-) | 20:36 | ||
fglock__ is trying to find out how Quantum::Superpositions is different from Junctions | 20:37 | ||
nothingmuch | i forgot how, but the answer is "subtly" | 20:38 | |
please note: search.cpan.org/~cfranks/Perl6-Junc...unction.pm | |||
fglock__ | Limbic_Regions said there are optimizations in Q::S that make it non-recursive | ||
s/Regions/Region/ | 20:39 | ||
svnbot6 | r7201 | putter++ | Perl6::Value, Perl6::Container, PIL-Run - fix uses of ref() for mm2. P6::Value and ApiX use separate p6v_isa and p6_isa because their requirements are different, and P6::V does not yet depend on ApiX. | 20:41 | |
fglock__ | Perl6::Junction and Q::S implementations are much more complex than pil-run, because they have to overload p5 primitives. I think it is not very hard to apply Q::S optimizations to pil-run. | 20:46 | |
I wonder what's the meaning of 'qbop' and 'qblop' method names | 20:48 | ||
'quantize binary operation' and 'quantize binary logical operation' ? | 20:50 | ||
stevan | nothingmuch: poing | 20:51 | |
fglock__ | $self->poing() is a reflexive op | 20:53 | |
svnbot6 | r7202 | putter++ | Perl6::Value, Perl6::Container, PIL-Run - fix uses of isa() for mm2. fglock++ | ||
r7203 | putter++ | Perl6::Value, Perl6::Container, PIL-Run - p6v_isa() bugfix. 'p6v_isa' -> 'Perl6::Value::p6v_isa'. | 20:59 | ||
fglock__ | putter: slices are working! putter++ | 21:04 | |
is @a[3|4] supposed to work? | 21:05 | ||
svnbot6 | r7204 | putter++ | PIL-Run/lib6/Test.pm: revert use of p6_isa. Test.pm is p6, not p5. | ||
putter | fglock_: sanity looks sane for the first time since mm2. do you know of any unresolved mm2 problems, or shall I smoke to look for them, | 21:07 | |
fglock__ | it looks fine to me so far | ||
putter | ok. smoking... | ||
fglock__ | pugs too doesn't accept @a[3|4] | 21:08 | |
putter: do the tests expect true and false to stringify as 'bool::false' and 'bool::true'? I think the correct is '' and '1', but I don't remember where I saw this | 21:10 | ||
putter | ? | 21:11 | |
fglock__ | just in case you saw some failure related to this | ||
putter | pugs behaves as you describe ('' '1') | 21:12 | |
fglock__ | hey, that's right - if I type ~(1==1) it works | 21:13 | |
putter | and so does pugs -Bperl5. :) | ||
fglock__ | but (1==1) prints bool::true | ||
I guess that's (1==1).perl | 21:14 | ||
:) | |||
geoffb fades in | |||
putter | the pugs repl shows .perl. the pugs -Bperl5 repl is still showing .str. which will change, but not until after mm2 transition. hopefully today? | ||
geoffb | spinclad, thanks for the kind words; nothingmuch, feel free to comment in the blog comments. :-) | ||
fglock__ | geoffb: nice article | 21:15 | |
geoffb | fglock__, thanks | ||
putter | fglock: re ->increment, is that speced somewhere? there seem to be a lot of method names ->foo which seem like they should be ->FOO or ->_foo_ or something. then again, ->id() is spec :(. | 21:18 | |
anyone want to email p6l suggesting ->id() should be ->object_id() (ala ruby), as "id" is too useful to users to waste on such a little written method? | 21:20 | ||
fglock__ | these methods can be uppercased; increment is not specced | ||
putter | k | ||
fglock__ | increment is used by $x++ | ||
putter | increment only came to mind because I had seen it recently. which triggered a general "namespace clutter?" thought. | 21:22 | |
fglock__ | yes, many things could actually be multisubs in prelude now | 21:25 | |
putter | hmm... $x=3; undefine($x); isn't working. complains undefine() is ... undefined. | ||
fglock__ | checking | ||
nothingmuch | oh my, what a long post | 21:26 | |
putter: yes, I agree | |||
i like $foo.id for e.g. primary key in a object relational mapper, or a domain specific attribute in my domain specific use for IDs | 21:27 | ||
fglock__ | $a.undefine works - I think it doesn't undertand that undefine is a method | 21:28 | |
geoffb joined p6l to be a Good List Citizen when posting, but already regretting it | |||
nothingmuch | geoffb: it's addicting ;-) | 21:29 | |
the first week i was like "fun! perl 6!" | |||
then i said to myself "uggh.. this is too much" | |||
now it is the only list that I really read almost fully | |||
geoffb | wow, good for you I guess. | ||
I skipped #1, and now sit square at #2. | 21:30 | ||
I no longer read lists much, except for very low traffic (like 1-2/day), and even then only a couple of those | |||
putter | fglock: tnx... that suggests a bigger problem (in ApiX)... | ||
nothingmuch | i am subscribed to several lists | ||
but i mark-read-thread almost all | |||
the reason I read is that I like to keep watch for things that interest me | 21:31 | ||
for example the catalyst mailing list | |||
p6i | |||
darcs-users and darcs-devel | |||
geoffb | I am beginning to make peace with the fact (albeit slowly) that too much interests me | ||
nothingmuch | i don't post or even read those, and I am by no means a developer, but I still like to watch the subjects | ||
i think everyone here has that problem | |||
nothingmuch is completely unable to cope with it | 21:32 | ||
look at harrorth | |||
i have so much I want to do with it | |||
but I feel that it's just ever so slightly lost the trend at which i learned from it | |||
so I naturally moved on, even though I really want to work on i | |||
t | |||
geoffb | nodnod | 21:33 | |
putter | hmm. (\@a).isa('Array') is false? | ||
geoffb | at least you had an open repo | ||
s/had/have/ | |||
nothingmuch | yes | ||
i'm all up for that now | |||
if i'm going to have these 60% projects I might as well share the unfinished work | |||
and not hide it waiting for the never reached release date ;-) | 21:34 | ||
putter | fglock__: pugs says (\@a).isa('Array') is true. pilrun says not. ? | ||
geoffb finally just made a /dev/urandom section of his site to hold that stuff | |||
nothingmuch | pdcawley_: do you have a paypal account? | ||
ah yes, I have a project that is supposed to make /dev/random into a tree automatically for my website | 21:35 | ||
fglock__ | putter: that's a problem in Ref.isa - Code.pm 325 | ||
nothingmuch | i know how it'll work, but it's too much to implement it right now | ||
nothingmuch needs to quit his job, and be a student | |||
fglock__ | it should "auto-deref" Array and Hash | ||
just like it does with other methods | |||
putter | can you fix? | 21:36 | |
fglock__ | sure | ||
nothingmuch | pdcawley_: anyway, at the rate I'm posting I guess I should support you & matt with $2 a month subscription payments... That way you can pay for the coffee it should take you to read through my mails ;-) | ||
shit, rindolf has a new project | 21:37 | ||
putter | tnx :) | ||
nothingmuch | perlmeme.org/ | 21:38 | |
"creating a simple cgi script" has the dillemas: "object oriented or not", makes you create a CGI object without knowing what it represents, talks about output without telling you what the CGI environment actually looks like, and encourages using the HTML generation features of CGI | 21:40 | ||
fglock__ | putter: done | ||
nothingmuch | what an aweful example | ||
fglock__ | putter: there is a bug - tied Array and Hashes should not auto-deref - I'll fix this later | ||
nothingmuch | there is absolutely no value, it's only merit is scaring the n00bs away so that they will go and do PHP | ||
fglock__ | bbiab | 21:42 | |
putter | ok. thanks fglock. | 21:43 | |
nothingmuch goes to read and sleep | |||
svnbot6 | r7205 | fglock++ | * perl5/Ref - Ref to Array isa('Array') | 21:46 | |
putter | hmm. so if an object has AUTOMETH, does that mean one can userandomstringhere($o) to call it? | 21:48 | |
21:49
flgr_ is now known as flgr
|
|||
Juerd | Does anyone happen to know why feather is down, or since when it has been down? | 23:20 | |
rafl | The last time I was logged in was yesterday, IIRC. | 23:21 | |
Juerd: AFAIK evalbot ran on it. Maybe its part time can help | 23:28 | ||
Juerd | Oh, heh, indeed it can | ||
And not just its | |||
21:19 -!- chip [n=chip@194.145.200.126] has quit [Read error: 113 (No route to host)] | |||
21:19 -!- Limbic_Region [n=81217719@p3m/member/Limbic-Region] has quit [Read error: 113 (No route to host)] | |||
21:19 -!- fglock_ [n=c8115922@feather.perl6.nl] has quit [Read error: 113 (No route to host)] | |||
21:19 -!- autrijus [n=autrijus@feather.perl6.nl] has quit [Read error: 113 (No route to host)] | |||
21:21 -!- broquaint [n=broquain@ts3-126.twistspace.com] has quit [Read error: 113 (No route to host)] | |||
21:21 -!- fglock [n=c8b690e6@feather.perl6.nl] has quit [Read error: 113 (No route to host)] | |||
21:22 -!- evalbot_7200 [n=evalbot_@feather.perl6.nl] has quit [Read error: 113 (No route to host)] | |||
That's all feather, in different stages of reverse (wow, some people have been online for a long time!) | 23:29 | ||
Or rather, had been. | |||
rafl | Yes. Any Idea what's wrong with feather? | ||
Juerd | No | ||
All I know is that it's unreachable. | |||
I got an email from chip | 23:30 | ||
I can't stand though that I just got home from a place very nearby feather | |||
I briefly considered checking my email there | |||
And didn't | |||
Fuck. | |||
But - it'll have to wait until I've slept | |||
It's 0132 am here | |||
rafl | Here as well. | ||
Juerd | And as this box isn't making money, it can wait ;) | 23:31 | |
meppl | gute nacht | 23:34 |