Summer of Perl | 6.2.12 released! | paste: sial.org/pbot/perl6 | pugs.blogs.com | pugscode.org | pugs.kwiki.org Set by ingy on 4 July 2006. |
|||
clkao | audreyt: ping | 00:03 | |
audreyt: dinner-p? | |||
audreyt | oh you're bac | ||
k | |||
myif.net can't produce that quickly | |||
so I called off | |||
sure, going down for dinner now | |||
TimToady | enjoy! | ||
audreyt | thanks :) | 00:04 | |
putter | hmm... | 00:05 | |
clkao | audreyt: ok. see you | ||
putter | audreyt: re "lost Perl 5 lores", I thought the conclusion was that a social mechanism, a broadcast email plus a recursive pursuit of likely people, was the way to go. And that it was on your todo list, not mine... ;) | 00:09 | |
audreyt | putter: yes, but maybe you can chart the known space? | ||
i.e. things we know that we are using | 00:10 | ||
and simply is missing docs or less than supported in perl5 | |||
putter | context, so #perl6 is less unintelligable: the objective is to collect "reach into perl5 guts" hackish things that people have found useful to do, to be examined and potentially made into real supported features. | ||
nothingmuch | wrt MIT license: if anyone cares | 00:11 | |
i prefer it | |||
audreyt | and indeed lost lores is social and I'll do it | ||
but identifying known lores | |||
nothingmuch | but i think it's FUD to not have artistic/gpl on the module's page | ||
was that the question? | |||
audreyt | the ones used in re::override, Data::Bind, autobox, PadWalker, etc | ||
and have a writeup similar to the one you had for re::override | 00:12 | ||
is I think educational and enlightening and good for talking with porters | |||
putter | audreyt: task-person mismatch I think. I can certainly do re:override. I'm probably the right person for that. But on anything else I'd be starting from scratch. | ||
audreyt | putter: do re::override then, and try to build a template that, say, clkao can fill in for Data::Bind | 00:13 | |
putter | sounds plausible | ||
clkao: are you going to be around sometime in the next few days? to give my a brief sketch of your thoughts/experiences with Data::Bind. a template is easier to write when one has at least seen two instances ;) | 00:15 | ||
s/my/me | |||
clkao | putter: i am going bcak to london tomororw, but i should be onlein | 00:17 | |
putter | ok | ||
thanks | 00:18 | ||
everyone: yes, you! svn.openfoundry.org/pugs/misc/pX/Co...-draft.txt is an early draft synopsis section on multi dispatch. How p6 decides which variant of a multi handles any particular call. Feedback would be great. If it isnt clear, or might not be what you anticipated, pipe right up. :) thanks. | 00:24 | ||
svnbot6 | r11274 | clkao++ | from rgs: | ||
r11274 | clkao++ | Data::Bind refuses to compile with blead. | |||
r11274 | clkao++ | The patch below solves it. However, I think we have broken | |||
r11274 | clkao++ | something we shouldn't have. I'm not sure why... | |||
00:34
stephanepayrard_ joined
|
|||
svnbot6 | r11275 | lwall++ | continue renaming .p6 to .pl to unregress tests that use examples/ files. | 00:45 | |
r11276 | lwall++ | edit examples files that refer to other filenames as *.p6 | 00:57 | ||
TimToady | audreyt: note, this last checkin probably has broken evalbot, since its name has changed from evalbot.p6 to evalbot.pl | ||
on the bright side, t/pugsrun/09-dash-uppercase-c.t and t/examples/examples.t are back to passing. | 01:00 | ||
svnbot6 | r11277 | lwall++ | one more examples rename that collided earlier. | ||
TimToady | seems to me that perl5/Pugs-Compiler-Rule/lib/Pugs/Grammar/Rule/Rule.pmc shouldn't be under revision control. | 01:02 | |
?eval 1+1 | 01:06 | ||
evalbot_11168 | 2 | ||
TimToady | clkao: re Data::Bind, the call to the function is before the use Carp. I don't know why the use Carp is that far down in the file. | 01:10 | |
it's not like it's trying to defer "require Carp" till first use, like some other modules do... | 01:11 | ||
the internet is dead. you'd think it was friday night or something... | 01:14 | ||
szbalint | Reminds me that it's already saturday night here. | 01:16 | |
szbalint is off to sleep & | |||
TimToady will now make like a ęØ and čć& | |||
putter | www.logos.it/ is kind of neat. | 01:24 | |
lambdabot | Title: "LOGOS - Multilingual E-Translation Portal" | ||
putter | good night & | 01:25 | |
01:40
markstos joined
|
|||
markstos | I'm beginning to to experiment with the p6-on-p5 implementation. Fun! | 01:41 | |
However, I think I've run into a simple case where a hash definition that I think is valid in p5 and p6 is not being recognized. | 01:42 | ||
I could submit a failing test case, but I imagine there are already plenty of those in the pugs test suite. | |||
(that can be re-used for p6-on-p5). | 01:43 | ||
So what's a good way to help or get involved to improve p6 on p5? | |||
Oh. It seems really basic things still aren't there yet, like: my %H = ( a => 'b' ); | 01:52 | ||
dduncan | I notice that a few .p6 files still remain following my and TimToady's renaming of them .pl, so I'll try addressing those ... | 02:04 | |
svnbot6 | r11278 | Darren_Duncan++ | more moving from .p6 to .pl | 02:36 | |
nothingmuch | .win11 | 02:43 | |
TimToady: you mentioned that I won something, what was it? | 02:44 | ||
spinclad | (A Scanner Darkly)++: saw it last night. Dick and Linklater seem to know their drugged-out crazes. | 02:50 | |
evalbot_11168 is so three-days-ago | 02:51 | ||
putter: svn up'ing to look | 02:52 | ||
dduncan | fyi, I'm doing more renaming yet which may affect that | 02:54 | |
svnbot6 | r11279 | audreyt++ | * Restore lazily-evaluated lists: | ||
r11279 | audreyt++ | for 1..Inf { .say } | |||
r11279 | audreyt++ | actually works. | |||
r11280 | Darren_Duncan++ | more .p6 to .pl renaming | 02:57 | ||
r11281 | audreyt++ | * trivial typo fix. | 03:00 | ||
ivanfrey | When I do a svn up A is archive, D is Directory and U is update? | ||
spinclad | A is add, D is delete, U is update | 03:01 | |
dduncan | but if a file is renamed, like I was doing a bunch with "svn rename foo bar", it shows up as an A+ and a D | ||
ivanfrey | dduncan: D on the old name and A+ on the new name? | 03:02 | |
spinclad | and if changes are too big, it may decide to A (transmit the whole thing fresh) rather than U (send a diff) | ||
dduncan | ivanfrey, yes | 03:03 | |
spinclad | ivanfrey: D the old, A the new (not A+) | ||
dduncan | all my renames are .p6 to .pl, or occasionally .p5 to -p5.pl | ||
it shows up as A+ to me | |||
spinclad | the second column refers to file properties updated | ||
dduncan | the idea is that svn/svk can attach the old file's history to the new one | ||
spinclad | ah.. hadn't seen that. my bad | 03:04 | |
dduncan | that's one reason why you don't copy the file manually and do a straight add plus delete | ||
having svk does it lets the file maintain its revision history across renames, afaik | |||
but moreover | |||
I would expect it to be a minor diff, as only the file name changed, not its content | |||
ivanfrey | dduncan | spinclad : I was mucking about with a subversion Mac OS X Finder integration. Bad Idea. | 03:05 | |
dduncan | or just bad implementation? | ||
spinclad | since i'm still using only svn, maybe that accounts for my never seeing it. | ||
ivanfrey | dduncan: bad implementation. gotta go. | 03:06 | |
dduncan | it is possible that the smarts only happen in the main server, but clients that pull just get copies ... not sure | ||
spinclad | i'd think a Good Idea, when done right | 03:07 | |
(different Ideas tho) | |||
dduncan: could be either my client or svn/svk... for the .p6 -> .pl renamings i see D/A pairs, but history is maintained. since with svn i'm going to the server for that history, it makes sense. | 03:14 | ||
dduncan | yes ... I may only see the + on my side when I say 'svk status' anyway | ||
prior to commit | |||
I also get R+ instead of A+ a few times, besides files where I renamed bar to baz and then foo to bar | 03:15 | ||
the R+ is by bar | |||
spinclad | R for replace | ||
dduncan | specifically that happens in a few places where there is a foo.pl and a foo.p6, and I rename them to foo-p5.pl and foo.pl | 03:16 | |
spinclad | ok, i see that svn st is the same. makes sense there too. | 03:17 | |
nothingmuch declares clkao an official mountain ninja | 03:22 | ||
PerlJam just wishes that "svk diff -rprev:head" worked | 03:23 | ||
(the last time I wished for svk to do something it turned out that I only needed to upgrade :) | |||
svnbot6 | r11282 | Darren_Duncan++ | seemingly renamed the last of the .p6 files to .pl ... but refs to them in file contents still to do | 03:27 | |
dduncan | given what I know about renames or copies, I make a point of never modifying files in the same commit that they are being renamed or copied | 03:28 | |
PerlJam | wait ... you're renaming foo.p6 to foo.pl for all foo.p6? | 03:29 | |
why? | |||
dduncan | so they work better with multiple runtimes | ||
PerlJam | how does the filename affect that? | ||
dduncan | eg, when you 'use v6' and run the Perl 6 syntax as a Perl 5 program | ||
there is no reason to have different file names to say what version of perl it is | 03:30 | ||
especially since its application so far was only done part of the time | |||
eg, the .pm and .t weren't renamed to have a 6 in them | |||
this change was already approved by audrey et al | 03:31 | ||
see yesterday | |||
PerlJam | dduncan: Just like there was no reason to mutate Perl Library files (.pl in perl4) to mean perl executables in perl5. ;-) | 03:32 | |
dduncan | yes | ||
we used the same .pl for perl 4 and perl 5 | |||
PerlJam | Anyway, I'm not objecting, just curious | ||
dduncan | and as I said, thanks to v6.pm, the line between what is valid perl 6 and perl 5, running on perl 5, is blurred | 03:33 | |
going along with this change, all pugs shebang lines were removed, and any 'use v6-pugs' became 'use v6-alpha' | |||
PerlJam | dduncan: awesome | ||
dduncan | afaik, the decision to use .p6 in the first place was just done on a whim and had no particular need | 03:34 | |
like it was cutsey | |||
cutesy | |||
spinclad | Build failure, r11281: | 03:39 | |
Compiling Pugs.AST.Internals ( src/Pugs/AST/Internals.hs, dist/build/Pugs/AST/Internals.o ) | |||
src/Pugs/AST/../Types/Array.hs:272:4: Not in scope: `runInvokePerl5' | |||
Build failed: 256 at util/build_pugs.pl line 126. | |||
dduncan | I get the same failure, fyi | 03:40 | |
not sure if its something I did ... wait for the next commit | |||
spinclad | don't see how it could be | ||
dduncan | utils may be affected if some file names don't match expected file names | 03:41 | |
spinclad | i have PUGS_EMBED="perl5 parrot", btw | ||
you didn't touch these .hs files | 03:42 | ||
dduncan | no | ||
but some utilities affect what happens to them ... it probably isn't me though | |||
spinclad | and they're not trying to access .p? files, either in source or in the compiler | 03:43 | |
not here anyway | 03:44 | ||
dduncan | committing ... | 03:47 | |
spinclad | last more-or-less successful build here (up through linking pugs anyway) was at 11268. | 03:48 | |
dduncan | fyi, I didn't touch them now, but I notice that some text inside .hs files refers to a .p6 extension ... may just be user help though | ||
I'm inclined to change those too | |||
commit done ... 11283 | 03:49 | ||
svnbot6 | r11283 | Darren_Duncan++ | changed most refs to file names from .p6 to .pl ... some in talks and /src remain | ||
PerlJam | btw, if you haven't installed ack, you probably should. It's been a boon for me :) | 03:50 | |
spinclad | only ones not in comments (-- ... $) are in src/Emit/PIR.hs, looking at temp.p6 | ||
PerlJam | App::Ack on CPAN (ack is the executable you get) | 03:51 | |
dduncan | I haven't installed ack ... | ||
spinclad | i'll get it, been hearing good things about it | ||
good for 'find' with extraneous files filtered out | 03:52 | ||
PerlJam | grep through only parrot source files for the word Iterator: ack --parrot Iterator | 03:56 | |
Just find all of the C source files : ack --cc -f | |||
etc. | |||
ack is quite cool | |||
svnbot6 | r11284 | malon++ | t/operators/lvalue.t: failing test for ($x += 2) *= 3 added | 04:01 | |
r11285 | Darren_Duncan++ | changed a few .p6 to .pl refs in src/, script/ ; renamed a couple .p5 files to -p5.pl in examples | 04:04 | ||
04:06
arcady joined
|
|||
svnbot6 | r11286 | Darren_Duncan++ | now did a few .p5 refs | 04:14 | |
dduncan | so I'm basically done now | ||
I'm now stopping, doing a make realclean, and building fresh to see if it still works | |||
spinclad | putter: re mmd-draft.txt: with regret: your text appears to describe what we talked about, which i half-believe is stable. i think what you've written describes a single, implementable algorithm, which may well be the one we have in mind. but i will have to read it more carefully, and possibly construct proofs, to convince myself of these. and i think at this point we have reached something pretty well unteachable. | 04:18 | |
04:22
christopher joined
|
|||
ivanfrey | Ok, if I've confused subversion in such a way that when I do svn up it warns me "Failed to add file|directory 'file|directory name': object of the same name already exists", how do I tell it that those objects with the same name are the things that need updating. | 04:25 | |
spinclad | for this last reason (teachability) i now strongly favor TimToady's suggestion that semi's are specified only in the proto, so they are all aligned; i am dubious of my own further suggestion of multiple subprotos (since they could lead to interleaved semis), unless we declare that we must have a single winning short variant at each successive semi, before expanding its child-variants for the next round. (in other word | 04:30 | |
ivanfrey: since various files/directories(?) have been renamed lately, you may have, say, a leftover local file where svn wants to put a file that it manages. | 04:33 | ||
ivanfrey: look at what's there and consider removing the local file and svn up'ing again. | 04:34 | ||
ivanfrey | spinclad: actually I moved the whole tree around from one directory to another and subversion no longer sees the tree as a copy of the repository. | 04:35 | |
spinclad: that's what of been doing. svn up then rm or rm -fr depending on whether it's a file or directory that svn refuses to update. | 04:36 | ||
spinclad | do you seem to be converging on success? | 04:37 | |
gaal | moose! | 04:39 | |
nothingmuch: back so soon? | |||
merlyn | mĆøĆøse | ||
ivanfrey | spinclad: was your last question directed towards me? | ||
spinclad | many mĆøĆøse! | ||
gaal | hey merlyn, spinclad, all | 04:40 | |
spinclad | ivanfrey: yes. perhaps it's time to rm -r or mv the whole directory and check it out fresh. (you could try reconnecting stray .svn directories, but i've no idea if that even makes sense) | ||
(mĆøĆøse riming with gĆøĆøse) | 04:41 | ||
ivanfrey | spinclad: well I'm nearly done now. I have to leave for a bit. | 04:42 | |
merlyn | sqĆ¼Ć®Ā®Ā®Ć©l | ||
04:43
Daniel_Nee joined
|
|||
TimToady | māāse | 04:45 | |
04:47
putter joined
|
|||
dduncan | more mĆøĆøse | 04:47 | |
putter | spinclad: ping? | 04:48 | |
dduncan | TimToady, try setting your IRC client to utf8 ... I just get boxes from you | ||
in that last post | |||
spinclad | putter: pong | ||
putter | hi, so | ||
teachability seems to be the top of your issue list? | |||
TimToady | I get my own utf8 back just fine. | 04:49 | |
spinclad | did you catch my recent paragraphs in backlog? | ||
(nm) | |||
dduncan | I got the Ćø from everyone else but not from you | ||
TimToady | I didn't send Ćø | 04:50 | |
dduncan | never mind then | ||
TimToady | I sent ā | ||
putter | ok, yes, read them. | ||
TimToady | so I think your font is defective... | ||
dduncan | my font doesn't render that I guess | ||
obra | for the unicode impaired among us, what are you sending, TimToady? | ||
TimToady | apl backslashed circle | ||
putter | I didn't watch the proto discussion, but if I could run a story by you... | ||
obra | :) | ||
dduncan | on the other hand, I did see the asian characters you typed earlier | ||
so it all looks fine | 04:51 | ||
spinclad | putter: teachability is suddenly a big issue now that everyone's keeping their own scorecard. | ||
TimToady | āØ | ||
dduncan | I saw that | ||
looks like a football with 3 vertical lines thru it | 04:52 | ||
spinclad | putter: sure | ||
dduncan | or a birthday cake | ||
TimToady | hot springs | ||
obra | Ī¼s | ||
clkao | orz | 04:53 | |
mĪ¼s | |||
putter | re scorecard, agreed. not having an algo we believed, the spec went back to algo, rather than user perspective. if it the algo holds up, I can massage it again. here is a first cut thought... | ||
instead of viewing param types as "taking" arguments, let's use a cooperative mindset. like with coroutines. collaborative multi methods. :) | 04:54 | ||
dduncan | it seems that there are other variants of the shebang lines to remove; eg, #!/usr/bin/perl6 or #!/usr/pugs | ||
doing that now ... | |||
spinclad | hmm... \(...) ~~ :(...) | 04:55 | |
putter | a param type says, i want anyone with a type more specific than this to take over | ||
to handle the call instead of me | |||
spinclad | got it | 04:57 | |
svnbot6 | r11287 | clkao++ | * Make sub_signature return the coderef itself. | ||
r11287 | clkao++ | * Bump version to 0.26. | |||
r11286 | Darren_Duncan++ | now did a few .p5 refs | |||
putter | the problem with Int,Num and Num,Int isnt two variants trying to grab the call, but two trying to give it to the other "no, you" "please, i insist" "no, i really must decline, but thank you" ;) | ||
TimToady | ā Æā$ā¬ | ||
spinclad | oh, stop it! | ||
dduncan | I saw all of those ... no boxes | ||
spinclad | what currency's the second? | 04:58 | |
TimToady | it's apparently a roman numeral 10,000 | ||
dduncan | fyi, the font that my client is using is in the Licida Grande family ... it seems to work for more or less everything | ||
its the default setting | |||
spinclad | putter: conflicting deferral | ||
TimToady | except APL symbols, apparently... | 04:59 | |
svnbot6 | r11288 | audreyt++ | * First attempt at getting =<> becoming lazy again. | ||
putter | a semi simply says, i want anyone with a type more specific than this to take over, _as long as they were as good as me in the more important bits to the left of the last semi_. | ||
spinclad | TimToady: i've seen ((|)) as 10000 | 05:00 | |
putter | if they bungled the more important section, I dont trust them | ||
audreyt | szbalint: all fixed. | 05:02 | |
have fun! | |||
putter | the user rule is put a semi each place you want to say "henceforth, I will only defer to folks who were as good as me up to this point". | 05:03 | |
svnbot6 | r11289 | audreyt++ | * Massive overhaul of Perl 5 embed system on invokePerl5. | ||
r11289 | audreyt++ | - non-reference errors from perl5 land like "die 'foo'" | |||
r11289 | audreyt++ | becomes Str error objects in perl6 land. | |||
r11289 | audreyt++ | - reference-type errors from perl5 land like "die ['foo']" | |||
r11289 | audreyt++ | becomes PerlSV error objects in perl6 land. | |||
r11289 | audreyt++ | - newSVsv(ERRSV) now protects the ERRSV from being | |||
r11289 | audreyt++ | GC'ed away. this makes szbalint's desired behaviour work. | |||
putter | and doublesemi is, i will henceforth defer to anyone how has anything the least bit better than Any, because I really dont. | 05:05 | |
spinclad | putter: and each variant has a list of those it trusts to delegate^Wdefer to | ||
putter | yes | ||
because it is the variants which are collaborating | |||
the check at the end is just to see if the collaboration worked out. | 05:06 | ||
everything else is just mechanism, implementation | |||
Daniel_Nee | Dear Audrey: I have sent you a mail regarding the SinoPac RPS, could you help to do a little modification during the weekend, thanks. | 05:07 | |
spinclad | this helps a fair bit, i think. the story still has the same level of complication (of course) but being well motivated folds into our understanding better. | ||
TimToady | "It does exactly what you want--it's just hard to explain what you want..." | ||
audreyt | seems to be a recurrent theme here | 05:08 | |
TimToady | must be one o' them thar meme thingamajiggers... | 05:09 | |
spinclad | or why you want it... just look within, you know you do. | ||
putter | lol | ||
TimToady | as long as there's a debugging switch that says "Please explain what I want here..." | ||
spinclad | indeed | 05:10 | |
these are the droids you're looking for | |||
TimToady | I have a good feeling about this... | 05:11 | |
It's my fault!!! | |||
spinclad | (trust the feeling) | ||
TimToady | that's not a space station--that's a moon! | 05:12 | |
audreyt | "There is a Perl 6 in each and everybody's heart" | ||
or was it "There is a Perl 6 in each and every one of us" | |||
spinclad | yeah | ||
merlyn | perl6 - it surrounds us. it penetrates us. it binds the galaxy together. | ||
putter | nonsubseted roles types are comparable because the variants say "oh, all I've got is a role, how about you?" "yeah, me too. we got a subsetting?" "nah, oh well" "ok, well, let's punt and we'll see what happens next". | ||
merlyn | with not one but TWO binding operators. :) | 05:13 | |
clkao | sub { 42 } is parsed as invoking sub({ 42}) in v6 | ||
orz | |||
ivanfrey | audreyt: I've downloaded the latest pugs source tree from the subversion repository, but I'm getting an error with the initial cpan step described in the INSTALL file. I can't seem to access that web site that would allow me to paste the error output. | 05:14 | |
TimToady | only two? | ||
audreyt | clkao: declarators are superspecial :) | ||
ivanfrey: try nopaste.snit.ch | |||
putter | ("in this corner, weighing 120 pages of 10 point TeX, the denotational semantics of perl6. in this corner, weighing 100 pages of 5 color glossy, the perl6 talking variants comic book") | ||
audreyt | ivanfrey: is it something about Devel::Caller? | 05:15 | |
TimToady | The Perl 5 Comix layer... | ||
05:16
Daveman joined
|
|||
svnbot6 | r11290 | Darren_Duncan++ | removed any 'perl6' invoking shebang lines (examples/cookbook), plus the odd variant-format pugs shebang | 05:16 | |
Daveman | TimToady, you around? | ||
05:16
xdg joined
|
|||
TimToady whistles... | 05:16 | ||
Daveman | How's it going? | 05:17 | |
ivanfrey | audreyt: Yes, /opt/local/lib doesn't exist. | ||
dduncan | okay, I think I'm done with all that file and header renaming | ||
audreyt | dduncan++ # wow. | ||
TimToady | okay. I see you're on pacbell.net. We're practically neighbors... | ||
dduncan | it is possible that there are some subtle related matters that still need working out, so hopefully they will be caught in people's tests and trials | 05:18 | |
obra | audreyt: radar.oreilly.com/archives/2006/07/...oscon.html | ||
lambdabot | Title: "O'Reilly Radar > Looking forward to OSCON" | ||
Daveman | TimToady, apparently! | ||
TimToady, that's what I was wondering before :) | |||
Daveman is a bit curious, while at the same time, content. | |||
dduncan | eg, some were in various utilities and package makers, which I don't use ... some in the perl5/ and misc/ space, which I possibly don't invoke | ||
Khisanth | Daveman: you do know stalking is illegal right? :P | ||
spinclad | i'll take the comix version for $50 | 05:19 | |
dduncan | in what country? | ||
putter | if this seems plausible, | ||
the next step would be to find a comic version of type narrowness. | |||
Daveman | Khisanth :P | 05:20 | |
putter | if we could do that, the mmd spec would be quite short and simple. | ||
Daveman | Khisanth, just be glad I'm not neighbors to you, anymore? (at the moment) :P | ||
putter | Euclid's rule. it's cost a week, but now it seems trivial. | ||
dduncan | now, and this is probably unrelated to what I did (?) but I get compile errors with Pugs | ||
spinclad | that ... would be amazing | 05:21 | |
dduncan | eg, in Pugs.Embed.Perl5 | ||
spinclad | and several points in its favor | ||
dduncan | Couldn't match `IO Bool' against `Bool' ... | ||
putter | any mmd cases of interest that dont flop nicely in this (user) model? | ||
Khisanth | Daveman: I have the police on speed dial! | ||
Daveman | Excellent :) | ||
merlyn | what's the number for 9-1-1? | 05:22 | |
dduncan | ... In the definition of `perl5_SvROK': perl5_SvROK _ = False | ||
does that happen to other people? | |||
Daveman | 1-800-4-MERLYN? | ||
Khisanth | actually one of the neighbors is a retired cop :) | ||
Daveman | :p | ||
heh | |||
merlyn, shouldn't you be busy planning shit? :) | |||
putter | not Euclid. Pascal. | 05:23 | |
spinclad | putter: at this hour i can't be sure. it's getting time for me to fade out. i'll be here some tomorrow, then away for a week. | 05:24 | |
Daveman | agreed. | ||
putter | ok. I'm not sure what my state is tomorrow. I'll try to overlap. else backlog | 05:25 | |
spinclad: it has been great fun. thank you. | |||
spinclad | good. coherence is leaving. i can feel my mind failing, Dave. Don't do that. | 05:26 | |
Daveman | uggh | ||
Daveman throws pcb at spinclad | |||
putter | lol | ||
actually, | |||
Daveman | I'll teach you to insult me! :P | ||
spinclad | (sorry) | 05:27 | |
putter | for the user version of type narrowness, | ||
spinclad | all right, how? teach me! | ||
putter | a simple inclusion argument might work. | ||
we've been working from a nested type picture, trying to find an algorithm | 05:28 | ||
but I'm not sure we've actually learned anything about the picture in doing the algorithm | |||
a naive sketch might be just what the user needs | 05:29 | ||
spinclad | right, what matters is just the inclusion: stricter better. | ||
Daveman waves to TimToady | |||
putter | yeah. hmm. *smile* | ||
spinclad | and roles are funny because they're really something else | 05:30 | |
Daniel_Nee | Dear Audrey: How are you ? | ||
Daveman | Dear? | ||
audreyt | Daniel_Nee: I'm doing fine. just replied your mail -- I sent the last RPS/Jifty/Win32 build 24 hours ago | ||
Daveman | Doe a Deer? | ||
putter | not so funny, | ||
when they are associated with classes, they really dont matter, | 05:31 | ||
and when by themselves, well, | |||
audreyt | Daniel_Nee: it should implement all the SinoPac requests Sam sent me, so let me know (by email) if anything's missing, thanks :) | ||
putter | you would obviously like to hand off to someone who has a superset of your roles, | ||
and obviously have no inclination to do so if you have no idea what his role means, | 05:32 | ||
so... the only bit you have to explain | |||
spinclad | they're different colors your nested types can have | ||
audreyt | Daniel_Nee: (or, alternatively, use the hiveminder.com invite account to assign tasks to me; that way I get to process them sooner -- but email is fine :)) | 05:33 | |
putter | hmm... maybe not, let's see... | ||
ivanfrey | audreyt: what channel do I paste my error to? | 05:34 | |
audreyt | ivanfrey: try nopaste.snit.ch | ||
putter | we've said redundantness doesnt increase narrowness. Storable Storable is no more narrow than Storable. | ||
audreyt | use the "none" channel | ||
ivanfrey: and paste the url here | |||
spinclad | sure | 05:35 | |
Daniel_Nee | Dear Audrey: Thanks a lot, I'll check with Sam. | ||
ivanfrey | audreyt: oh ok | ||
audreyt | Daniel_Nee: cool, thanks. *wave* :) | ||
putter | and since classes are recursively expanded, there are no roles of interest not implied by those classes? | ||
roles only compare, superset takes it, else defer | 05:36 | ||
once you hit classes, its just inclusion, no? (i too am ready to call it a night - brain pudding) | 05:38 | ||
ivanfrey | audreyt: nopaste.snit.ch:8001/7582 | ||
05:38
Daveman left
|
|||
spinclad | .oO { (Role, ...) is like Role c => c -> ... in haskell? tomorrow. } | 05:38 | |
.oO { foreach c. ... even, or something } | 05:39 | ||
putter | the only way you get roles from an object is via classes | ||
s/from an object// | |||
dduncan | oh, something I'll point out that may be a cause of problems ... I did notice the odd, but didn't do anything about ... Perl 6 file that doesn't have a "use v6" line of any kind | 05:40 | |
putter | so its | ||
dduncan | I added those to a few that I removed shebang lines from | ||
but not with a few others | |||
spinclad | and if your signature has a role, it's standing in for all the classes that do it | ||
dduncan | it seems those are far and between though | ||
it is possible that said files may now try to execute as Perl 5 and fail | 05:41 | ||
putter | "of course I wouldnt like to hand off to someone who required more implicit coercions than me. yuck" | ||
and "if we are both just roles, subset or defer" | |||
dduncan | I mention these exist, but are rare ... and I don't know how to search for files that don't contain something, only files that do contain something | ||
putter | and "if I dont have a class, i'll assume any. and then we just do class inclusion" | 05:42 | |
dduncan | but a general question of something I can attend to ... | ||
audreyt | ivanfrey: yup, that's known. | ||
spinclad | and a role, if it applies at all, applies to the closest classs | ||
dduncan | many files have a plain "use v6;" rather than "use v6-alpha;" ... something I read suggested that the plain v6 won't run now because it implies 6.0.0-final | 05:43 | |
so should I replace any plain v6 with v6-alpha, or leave these as they are? | |||
audreyt | ivanfrey: try | ||
sudo cpan -fi ExtUtils::CBuilder ExtUtils::ParseXS Module::Build Devel::Caller Module::Compile Pugs::Compiler::Rule | |||
I've update INSTALL. | |||
dduncan: you should | |||
putter | "closest"? what is this "closest" of which you speak? ;) | ||
dduncan | okay, I will make all use lines specify 'alpha' | 05:44 | |
spinclad | the eigenclass! | ||
putter | it might be just, do rule inclusion if you are both strictly roles, else do class inclusion? | ||
svnbot6 | r11291 | audreyt++ | * INSTALL: say "cpan -fi" not "cpan" for now | ||
clkao | mmm closure | ||
spinclad | what is closer than you ? | ||
clkao | isn't that all we need | 05:45 | |
putter | not sure i understand. its the param types. with two param types which have no classes, do role inclusion. else do class inclusion. | 05:46 | |
svnbot6 | r11292 | clkao++ | Make closure and closure invocation work. | ||
audreyt | objects are just poor people's closures. | ||
closures are just poor people's objects. | |||
ivanfrey | audreyt: It's still failing. | 05:47 | |
audreyt | ivanfrey: but it installs :) | ||
ivanfrey: background info: Devel::Caller is known to fail on multithreaded perl. v6.pm doesn't use the parts that fails. clkao is working with Devel::Caller's author on this. stay tuned | |||
clkao: have you suggested to Richard the cheap&cheerful fix? | 05:48 | ||
clkao | audreyt: no, but i think it requires beer | ||
spinclad | not sure i do either. thinking of args as elements, classes as level-1 sets, roles as level-2 sets... i think i've hit my limit for the night. | ||
clkao | which i will be physically able to apply to him tomorrow. | ||
obra | day after | ||
ivanfrey | audreyt: The output looks identical. | ||
putter | the only difference being incomparable roles are a punt. incomparable classes... hmm... that bears a bit of thought. | ||
spinclad: but you were wisely off to sleep. perhaps me too. | 05:49 | ||
dduncan | hm ... I've also noticed a curious thing, that many files have their use v6 line AFTER some other Perl 6 code, like a module declaration ... I will have to move those upwards as well | ||
ivanfrey | audreyt: And I'm still getting make install won't install without force. | ||
audreyt | ivanfrey: hm, your cpan doesn't take -fi? | 05:50 | |
ivanfrey: try this | |||
sudo cpan | |||
force install Devel::Caller Module::Compile Pugs::Compiler::Rule | |||
spinclad | it's been a great week, great fun, amazing things coming together. good night, all! | ||
audreyt | spinclad: g'nite :) | ||
TimToady | nite! | ||
audreyt | dduncan: yes. | ||
putter | indeed. good night! | 05:51 | |
audreyt | dduncan++ dduncan++ dduncan++ # "alpha" committer | ||
clkao wants a beta pony | |||
audreyt | I'm afraid you can only get a puny | ||
dduncan | I want to use Perl 6 syntax in production by this christmas, or sooner | 05:53 | |
clkao | audreyt: i think i want to hack for another hour. want to hack on v6mmd or teach me haskell? | ||
dduncan | commit of first 330 files in progress ... | 05:57 | |
thats just the [examples/, ext/, t/, t_disabled/] dirs | |||
the last 2 only had 22, the first 2 had the rest, about 100 and 200 respectively | 05:58 | ||
or 115 and 193 specifically, I think | |||
based on past performance, the commit will probably be done in 10-15 minutes | |||
audreyt | 'k | 05:59 | |
TimToady | timings about right, just finishing my last smoke | 06:00 | |
dduncan | so that means Pugs builds for you fine | 06:01 | |
somethings causing build errors here, since earlier today | 06:02 | ||
TimToady | yes, and you last checkins made no change in my 23 errors. | ||
*your | |||
audreyt | putter, spinclad: a cursory inspection of Class::Multimethod::Pure reveals that it is very well suited as a p5 realization of the mmd-draft algorithm. | 06:05 | |
the only thing that needs to change is the find_variant sub | |||
all the other scaffolding can probably remain unchanged. | |||
putter | (RoleA,Int) and (UnrelatedRoleB,Num) is unambiguous, right? | ||
audreyt | right. | 06:06 | |
so, plan forward is probably write Sub::Multi that subclasses C::M::P | 06:08 | ||
I think. | |||
working with clkao on it. (and on hooking Data::Bind and perhaps Moose::Meta::TypeConstraint) | 06:09 | ||
spinclad | .oO { wow. :) } | ||
TimToady | can it support call() to next best candidate? | ||
audreyt | yes, and the call() would even be lexical. | ||
TimToady | lexical? | ||
spinclad | .oO { somebody's walked these paths before us } | ||
audreyt | lexical subs. | ||
(Data::Bind can do "sub f (&x) {...}") | 06:10 | ||
putter | ok, another mmd-text rewrite coming up tomorrow. algo unchanged, but shift back again to user perspective rather than implementation. and expect user story to be very short. unless I can't resist including inter-variant conversations. and little ascii picture comics. | ||
audreyt | which means lexical &x in it | ||
putter: and little foxes! | |||
putter | :) | 06:11 | |
audreyt | TimToady: just to be sure | ||
"next best" in face of this stable multi dispatch means that | |||
"take $this_variant out of the equation, run the dispatch again and see who wins" | |||
spinclad | .oO { and Roles playing 5-card Tarot, pentacles wild } | ||
audreyt | and what if it's ambiguous? | ||
svnbot6 | r11293 | Darren_Duncan++ | replaced all 'use v6;' lines with 'use v6-alpha;' in 330 files (examples/, ext/, t/, t_disabled/) ... more remain to do | ||
audreyt | (Int, Int) (Int, Num) (Num, Int) | 06:12 | |
inside Int,Int I do a call() | |||
does it die? | |||
TimToady | I would imagine. | ||
audreyt | good, then no special precaution needed | ||
stability with call() then is a very good property to have. | |||
TimToady | I'm more worried about the case of roles (Foo Bar) (Foo) where the first wants to defer Foo processing to the second. | ||
audreyt | aye. | 06:13 | |
this language is very perlish. | |||
oh, wait. :) | |||
dduncan | I see more shebang lines I missed before ... because they have a space before the path | ||
audreyt | putter: have you read luqui's "semantics" section? | 06:14 | |
putter | long ago | 06:15 | |
audreyt | # search.cpan.org/~lpalmer/Class-Mult...#Semantics | ||
lambdabot | Title: "Class::Multimethods::Pure - Method-ordered multimethod dispatch - search.cpan.or ..." | ||
putter looks at the clock, looks at the link, pauses, clicks... | |||
audreyt | it is neither comics nor algorithm | ||
but more like properties | |||
TimToady | in fact, there almost oughta be a way to say "call all the variants that match", on the assumption that (Foo Bar) only deals with the relationship of Foo and Bar. | ||
audreyt | TimToady: but wait there is | 06:16 | |
it's called $a.*moose($b) -- and pray that $a doesn't have a moose method | |||
06:16
jonasbn joined
|
|||
audreyt | so it can fallback (or something) | 06:16 | |
TimToady | I was afraid you'd say that... | 06:17 | |
MMD.*moose($b) | |||
audreyt | but the .*moose looks unattractive given the multi / method separation | ||
clkao | moose | ||
audreyt | &moose.*($a, $b) | ||
&moose.*apply($a, $b) | |||
TimToady | undef.*moose($b) | 06:19 | |
svnbot6 | r11294 | clkao++ | Data::Bind::Sig->is_compatible to check if a signature is compatible | ||
r11294 | clkao++ | with a given capture. | |||
TimToady | *.*moose($b) | ||
audreyt | *.* is antler? | 06:20 | |
06:21
forsaken joined
|
|||
putter | ok, so the only difference is junction handling. | 06:21 | |
TimToady | I guess that means that for all normal subs self ~~ Whatever. :) | 06:22 | |
putter | is there some motivation case for why we are A|B == min(A,B) rather than luke's A < A|B, B < A|B | ||
dduncan | what is the purpose of pugs-modules.lintian-overrides ? | 06:23 | |
it looks kind of like a partial manifest, including lines like pugs-modules: unusual-interpreter ./usr/share/perl6/5.8/Test/Pil.pm #!/usr/bin/pugs | |||
putter | but you know... | 06:24 | |
dduncan | but only about 2 dozen such lines | ||
I'm going to remove all the unusual-interpreter lines | |||
putter 's tone would cause the hair to stand up on the neck of an sane person.... but this is #perl6... | 06:25 | ||
TimToady | I don't know where the min() came from. | ||
putter | the left to right story is certainly nice and all... | ||
but consider luke's combinator factoring example. (A,Obj) (Obj,A) ( | 06:26 | ||
err, (A,Obj) (Obj,A) (A,A) | |||
or (A,Any) (Any,A) (A,A) | 06:27 | ||
TimToady | I'm considering, but nothin's happening... | 06:28 | |
putter | in case 2... what I really want to say is... "I dont want to hand off to anyone more specific at param0, unless they are as good as me at param1"... | ||
err, case "2" is (Any,A) | 06:29 | ||
TimToady | I don't see why this isn't just an argument for MMD... | ||
of the non-CLOS variety... | 06:30 | ||
putter | because i'm tired and | ||
keep failing to assimilate the impact of the phase 1 compatibility filter. | |||
sigh. | |||
audreyt | sorry for that link :) | ||
putter | sorry. | ||
TimToady | sorry. | ||
audreyt | so, so, sorry | 06:31 | |
putter | lol | ||
np | |||
audreyt | (clkao is now coding up Sub::Multi, with elimination round and then rand(+@variant) for dispatch) | ||
(just so we can start testing it with Data::Bind) | |||
putter | any thoughts on lukes different or-junction spec? | ||
audreyt | I think min() is perhaps wrong, and luke's is perhaps better | 06:32 | |
if I said something like min(), I'm sorry :) | |||
but hey, go sleep :) | 06:33 | ||
putter | no, the fact that i keep making that mistake, even after a week of this, means i have to look real hard at finding a user story which will stick. | ||
("no", ie, no need to be sorry. if you cant understand the docs when you are wiped, the docs likely need work. so reading wiped is actually a good state for that phase of things;) | 06:34 | ||
TimToady | dduncan: should I wait for more checkins before my nighty-night smoke? | ||
dduncan | one should come any moment now | 06:35 | |
svnbot6 | r11295 | Darren_Duncan++ | updated another 2-3 dozen files, mostly in misc/ and perl5/, to replace v6 with v6-alpha, and remove a few malformed shebang lines | ||
putter | ok, i'll sync our junction handling with luke's too. | ||
dduncan | there it is | ||
TimToady | I seen it. | ||
dduncan | the only other change I was going to do is move the use line above perl 6 code | ||
maybe a few dozen files are affected ... your choice as to whether to wait | 06:36 | ||
TimToady | eta? | ||
dduncan | maybe 10-20 minutes ... hard to say, as this is a bit more manual | 06:37 | |
TimToady | I'll wait. | ||
putter | so my biggest fuzzy at the moment is whether the "each variant has its own world view" story actually has the properties we have in mind, with no gotchas. | ||
dduncan | essentially, I will look for use lines that aren't the first lines, or possibly use a smarter grep | ||
currently searching for ';\s+use v6' | 06:39 | ||
found in 24 files | |||
now checking for other variants ... | 06:44 | ||
putter | or maybe the answer isnt I'm tired? (Any,Int) (Int,Num) left to right, says ambiguous. but what if the writer of variant 0 thinks of it as (Int;Any), but regretably, the arguments have to be present in the opposite order. one might imagine them saying (Any ;< Int). and having the result behave as if the two were (Int;Any) and (Num,Int). | 06:45 | |
maybe. | |||
good night & | |||
TimToady | 'nite! | 06:46 | |
dduncan | I should be done in c5 min | ||
TimToady | k | ||
svnbot6 | r11296 | audreyt++ | * Data::Bind - Support for adding signature on anonymous subs | 06:49 | |
r11296 | audreyt++ | by reifying a GV for it out of thin air, with names such as: | |||
r11296 | audreyt++ | *{'__ANON__::CODE(0x1875d20)'} | |||
dduncan | okay, about to commit ... | 06:51 | |
in progress ... | 06:53 | ||
about 25 files | |||
3 examples/, 16 ext/, 4 misc/, 2 perl5/, 1 src/ | 06:54 | ||
done ... 11297 | |||
so that's all I will probably do | 06:55 | ||
TimToady | smokin' | ||
results in .5 hr or so. | |||
if anyone cares. | |||
svnbot6 | r11297 | Darren_Duncan++ | updated 23 files so that their 'use v6' line appears above all other perl code ... they had package declarations coming first ; also removed a few more shebang lines | ||
TimToady | course I'm only testing the Haskell branch... | ||
dduncan | yes | 06:56 | |
thats all that I've ever tested for my life on this project | |||
though with that nice v6.pm out, that's about to change | |||
TimToady | yeah, but I get scared when I see the prereqs. :) | ||
and I'm not sure which of 'em should come from CPAN, and which from pugs/ | 06:57 | ||
dduncan | to someone that already has a base Perl 5 install, the v6.pm prereqs are probably less onerous than those of Pugs | ||
TimToady | true 'nuff | ||
dduncan | as before, Pugs.Embed.Perl5 fails to compile for me ... not sure if its a local transient problem or a general incompatability ... but it works for you obviously | 06:58 | |
TimToady | reconfigged, I presume. | ||
dduncan | the usual 'make' worked yesterday, or earlier today | 06:59 | |
TimToady | mine's just standard Fedora Core 5 perl, pretty up-to-date via yum. | ||
dduncan | maybe I'll see if a clean checkout acts differently | ||
but not today ... today is midnight | 07:00 | ||
TimToady | today is tomorrow now | ||
or vice versa... | |||
dduncan | that too | ||
TimToady | so good morning & | ||
dduncan | & how | ||
fyi, regarding v6 prereqs, my assumption is that CPAN is the "release" version and those with Pugs are the bleeding version ... so a general person would get them from CPAN | 07:02 | ||
now, maybe this was already solved, but I wonder about how a general person would run the Perl 6 test suite on p6 if they don't want Pugs | |||
separate distro with just the test suite? | |||
that Pugs and v6 distros each require | 07:03 | ||
assuming we're going for multiple Perl 6 implementations, I'm assuming that the Perl 6 test suite will soon become its own package, ala Sun's certification app that proves a Java runtime is compliant | 07:04 | ||
maybe the CPAN distro can be Perl6::Certification or something | |||
or Perl6::Validator | |||
or add the word Runtime to that or something | 07:05 | ||
audreyt | v6::tests; | 07:12 | |
svnbot6 | r11298 | audreyt++ | * Data::Bind - snapshot values before checking is_compat | ||
dduncan | or that | ||
audreyt | ok. all that takes is to write a Makefile.PL in our t/ | ||
makes sense? | |||
dduncan | I think so | ||
audreyt | cool. feel free to write one :) | 07:13 | |
dduncan | so is there any objection to start shipping the t/ on CPAN as a separate distro some time soon? | ||
audreyt | nope, I think it's a good idea. | 07:14 | |
maybe around OSCON | |||
dduncan | also, if that is done, would the Perl6::Pugs distro stop including the t/ and instead mark it as an external dependency? | ||
audreyt | that is certainly a good idea. | 07:15 | |
it's such a good idea, would you mind posting it to p6c? :) | 07:16 | ||
dduncan | will do | ||
audreyt | danke | ||
07:16
Aankhen`` joined
|
|||
dduncan | on a related note, while I imagine 'make test' should be relatively easy to support a makefile for, 'make smoke' will be harder | 07:16 | |
or come to think of it, the v6 or Pugs may still be best to still include those, as such harnesses still imply knowledge of the implementation, maybe | 07:17 | ||
vsoni | audreyt: | 07:18 | |
audreyt: hi | |||
07:20
buetow joined
|
|||
svnbot6 | r11299 | audreyt++ | * add "constraint" field to Param | 07:21 | |
07:24
Daniel_Nee joined
|
|||
audreyt | Daniel_Nee: hey. I'm about to sleep now... please reach me via email and I'll process in ~9 hours :) | 07:28 | |
clkao | Sub::Multi 0.001_1 on cpan | 07:30 | |
svnbot6 | r11300 | clkao++ | Data-Bind 0.26. | ||
r11301 | clkao++ | Sub-Multi 0.001_1. | |||
07:38
iblechbot joined
|
|||
clkao | orz orz | 07:43 | |
audreyt: change the pod in data::bind as well? | 07:45 | ||
audreyt | sure | ||
clkao: otoh, does \sub{} work correctly? | |||
clkao | ya | 07:46 | |
svnbot6 | r11302 | audreyt++ | * v6.pm - support -Ilib | ||
clkao | $x == 1 is the trciky one | ||
audreyt | anyway I'm off to sleep | 07:47 | |
g'nite! | |||
svnbot6 | r11303 | audreyt++ | * v6 emitter: Multiple positionals in the callconv is now | ||
r11303 | audreyt++ | func([\( 1, 2, 3, 4, 5 )]); | |||
r11303 | audreyt++ | instead of the old, uglier: | |||
r11303 | audreyt++ | func([\(1), \(2), \(3), \(4), \(5)]); | |||
dduncan | audreyt, I sent the message | ||
audreyt | dduncan++ | 07:48 | |
dduncan | to p6c ... and so we see what happeneth | ||
audreyt | ok | 07:49 | |
clkao | is it christmas yet? | 07:52 | |
clkao zzz & | |||
dduncan | clkao, it is Christmas ... in July! | 07:54 | |
um, regarding the newly added perl5/Sub-Multi, why is the blib/ in version control? | 07:57 | ||
clkao | gr, because i was sleepy | 07:58 | |
dduncan | I can delete it | ||
clkao | i am deleting it | ||
but thanks for spotting ;) | |||
dduncan | okay | 07:59 | |
svnbot6 | r11304 | clkao++ | /me stupid & sleepy. | ||
dduncan | don't forget your Makefiles and other generateds too | ||
clkao | i did make distclean and svk ci --import | ||
dduncan | okay | ||
svnbot6 | r11305 | audreyt++ | * v6 emitter - we still need parens around 1-arg case. | 08:02 | |
r11306 | audreyt++ | * Sub::Multi: fix callconv example in synopsis as requested by clkao. | 08:05 | ||
08:06
elmex joined
08:15
iblechbot joined
08:25
kane_ joined
08:49
beppu joined
09:12
wilx` joined
09:15
prefiks joined
09:17
wilx` is now known as wilx
09:34
play9999 joined
09:35
dduncan left
10:16
nothingmuch_ joined
10:32
Aankh|Clone joined
10:40
chris2 joined
10:50
Aankh|Clone is now known as Aankhen``
10:52
DaGo joined
10:55
larsen joined
10:57
Aankh|Clone joined
11:22
ludan joined
11:28
sanug joined
11:33
Debolaz joined
11:35
sanug left
11:46
Aankh|Clone is now known as Aankhen``
|
|||
meppl | guten morgen | 11:48 | |
ivanfrey | When I do a build and it fails should I make realclean before or after I do a svn up or not at all? | 12:20 | |
12:28
ruoso joined
12:33
szbalint joined,
markstos joined
|
|||
svnbot6 | r11307 | fglock++ | v6 - 'while' modifier, 'until', 'do' | 12:39 | |
13:00
prefiks joined
|
|||
szbalint | audreyt++ , perl5 works like a charm now :) | 13:02 | |
ivanfrey | cpan is asking which installer do I prefer EUMM or MB? Presumably EUMM since that's the first thing we're told to install in the INSTALL file? | 13:12 | |
markstos | ivanfrey: I think both are OK. I prefer MB. | 13:13 | |
ivanfrey | markstos: actually I misremembered the INSTALL file. It's MB. | 13:14 | |
13:22
elmex joined
|
|||
ivanfrey | Agggh, I'm confused. There are "conflicts" with what the INSTALL file is telling me and what cpan is asking me. See this page for what I mean: nopaste.snit.ch:8001/7586 | 13:30 | |
I'm going with MB. | |||
13:54
play9999 joined
|
|||
ivanfrey | where are parameters for the make install command stored I accidentally answered 1 instead of UNINST=1 . | 13:55 | |
Whew! Thank goodness for scrollback. I simply ran cpan and o conf init to correct my mistake. | 14:05 | ||
14:40
xdg joined
|
|||
ruoso just realized that CPAN6 contains a potential pronuntiation joke | 14:44 | ||
14:53
ludan joined
14:56
play9999 joined
14:59
nothingmuch joined
|
|||
gaal | nothingmuch: mooooose | 15:01 | |
nothingmuch | moose | 15:03 | |
i got an antler photo on the hike | 15:04 | ||
i'll put it up as soon as I find my card reader | |||
xdg | question for the perl6 team -- who maintains the various websites? Individuals? Or is it all just part of the svn repository and anyone can update them? | 15:05 | |
xdg is looking for best practice collaboration approaches for Vanilla Perl | 15:06 | ||
15:07
nothingmuch_ joined
15:09
alexander joined
|
|||
gaal | xdg: feather is on the pugs repo | 15:10 | |
nothingmuch: how was the trip? | |||
nothingmuch | excellent | 15:12 | |
gaal | xdg: there used to be a wiki, but afaik it's been spammed to exhaustion | ||
audreyt | xdg: feather.perl6.nl site is in docs/feather | ||
I'm thinking about migrating pugscode.org to something nonstatic | |||
svnbot6 | r11308 | gaal++ | * Pugs.Embed.Perl5 - unbreak the build | 15:13 | |
audreyt | one option is to simply make it the same as featuer.perl6.nl. | ||
nothingmuch | morning audreyt | ||
breakfast? | 15:14 | ||
audreyt | and collaboratively managed under docs/feather/ | ||
Juerd: would it be ok if feather's index.html and pugscode's index.html become somewhat mergd | |||
Juerd: and we manage both under docs/feather/ ? | 15:15 | ||
nothingmuch_ | nick nothingmuch | ||
15:15
nothingmuch_ is now known as nothingmuch
|
|||
audreyt | xdg: are you the releng for vanilla perl? | 15:15 | |
15:15
nothingmuch is now known as nothingmuich
|
|||
gaal | nothingmuich? | 15:16 | |
audreyt | xdg: if so, great work. :) | ||
xdg | audreyt, I'm the reluctant releng for vanilla perl at the moment | ||
audreyt | nothingmunich? | ||
15:16
nothingmuich is now known as nothingmuch
|
|||
nothingmuch | aaaah | 15:16 | |
typo | |||
gaal | eep, the build needs a little more unbreaking. audreyt, do the p5 embedding thingies really need o be exposed to AST.Internals that much? | 15:17 | |
audreyt | xdg: mm reluctant. why? is it because it's blocking your time to strawberry? :) | ||
nothingmuch | audreyt: breakfast? | ||
audreyt | nothingmuch: yes... in a bit | 15:18 | |
xdg | audreyt, when I started helping Alias on it, I didn't realize that I'd wind up taking on a Vanilla Pumpking role | ||
nothingmuch | audreyt: what do you want me to make? | ||
audreyt | xdg: which means you need to find a minion now... :) | ||
xdg | audreyt, I'm now building Perl::Smith, which autogenerates Vanilla, Strawberry or what ever people want from a YML config file | ||
audreyt | it's minions all the way down | ||
xdg | audreyt, Yes, I do. | ||
audreyt | nothingmuch: me? reality? preference? as long as it's food I'll eat it :) | 15:19 | |
gaal | audreyt: never mind, fixing | ||
xdg | audreyt, I admire what you've done with Pugs. When Alias compared me to you on his journal, my immediate thought was "I'm not worthy"! | ||
audreyt | heh :) but indeed you are | ||
xdg | Nay. But I can aspire, anyway. | 15:20 | |
nothingmuch | audreyt: yesterday you seemed pickier ;-) | ||
xdg is going crazy trying to keep track of too many IRC conversations/windows/etc | |||
15:20
alexander joined
|
|||
nothingmuch makes a bread + rice + lard breakfast for audreyt | 15:21 | ||
15:21
alexander left
|
|||
markstos | How can I recover or rest a forgotten OSSF password? | 15:21 | |
s/rest/reset/ | |||
xinming | audreyt: can't build pugs again... | 15:22 | |
src/Pugs/Embed/Perl5.hs:70:16: | |||
Couldn't match `IO Bool' against `Bool' | |||
Expected type: IO Bool | |||
Inferred type: Bool | |||
In the definition of `perl5_SvROK': perl5_SvROK _ = False | |||
Build failed: 256 at util/build_pugs.pl line 126. | |||
make: *** [pugs] Error 2 | |||
audreyt | xinming: gaal just fixed that | ||
gaal | xinming: still on it | ||
give me 3 min | |||
xinming | :-) | ||
audreyt | markstos: rt.openfoundry.org/Foundry/Home/Gue...inder.html | 15:23 | |
lambdabot | Title: "Member Login -- OSSF" | ||
audreyt | xdg: oooh Perl::Smith | ||
markstos | audreyt: Thanks! | ||
audreyt | xdg: how much of it would be win32-specific? | 15:24 | |
xdg: a generic custom-perl distbuilder solves the age-old "SDK problem" of porters | |||
xdg | audreyt, right now it's a "modulino" -- my build scripts converted to a module. Needs to be re-written. | ||
audreyt, it can become that | |||
audreyt | xdg: I'd like to use a .yml that builds e.g. the v6 chain | ||
clkao | good morning | 15:25 | |
audreyt | and/or with pugs/haskell, or parrot/inline-parrot, etc | ||
xdg | audreyt, Right now I can "Perl::Smith->new("vanilla.yml")->build_all" and have a working vanilla perl on win32 | ||
nothingmuch | hola clkao | ||
clkao: what do you want for breakfast? | |||
xdg | From scratch -- it even downloads all the binaries and tarballs | ||
It needs a perl to bootstrap, of course. | |||
audreyt | Perl::Dist::Builder perhaps? | 15:26 | |
or simply Perl::Dist | |||
::Smith is a bit... nondescriptive | |||
clkao | nothingmuch: i will see very soon | ||
but i want some tea first | |||
xdg | audreyt, Alias suggested keeping Perl::Dist::X for distributions -- i.e. for the RT bug queue | ||
Perl::Smithy? | |||
audreyt | why not Perl::Dist then | ||
the root of all ::X | |||
nothingmuch | clkao: okay | 15:27 | |
xdg | Eventually, other tools may supercede to build Perl::Dist::X's | ||
audreyt | and jibes well with the "make dist" image | ||
then those other tools take over the namespace :) | |||
xdg | This started just as trying to automate Carl Frank's HTML directions for building vanilla perl | ||
audreyt | (but I don't feel very strong on this topic -- but I'd still prefer Perl::DistMaker or Perl::Dist) | 15:28 | |
xdg | I'll kick it around on some sites. I hate naming modules. | ||
audreyt | yet the name is everything. :) | ||
xdg | I get the point about Smith. | ||
audreyt | :) | ||
xdg | Yes -- and I hate getting hung up on a name before writing code, and yet... | 15:29 | |
I think Ingy spoke about the importance of names at some talk of his. | |||
clkao | nothingmuch: boil some water? | ||
xdg | chop wood? | ||
clkao | shouldn't modules be named Your::Mama | ||
nothingmuch | clkao: sure | 15:30 | |
audreyt | amazingly google has the same hitcount for "yo mama" and "your mama". | ||
nothingmuch | not for me | 15:31 | |
gaal prefers yo yo ma | 15:32 | ||
markstos | It seems I needed to create a new account on OSSF. Could someone add 'markstos' to the pugs project? I'm interested to lend a hand. | ||
gaal | google hitcounts aren't reliable, btw | ||
markstos | I've started on a port of CGI::Application, and may also help with docs, tests or the website. | ||
audreyt | markstos: you are now a metacommitter. feel free to add more people in invite.pugscode.org/ | 15:33 | |
lambdabot | Title: "Pugs -- OSSF" | ||
gaal | shower, then manhattan & | ||
markstos | Thanks audreyt! | ||
svnbot6 | r11309 | gaal++ | * unbreak the build some more | ||
audreyt | xinming: try the build again? | 15:34 | |
xinming | audreyt: ok | ||
audreyt | xdg: one thing I find with IRC is that your productivity increases as blocking showstoppers gets resolved by other people quickly | 15:36 | |
xdg: but yet you'd spend so much tim resolving other people's showstoppers, the gain is limited | |||
xdg | audreyt, makes sense. | 15:37 | |
audreyt | ...but gradually the notion of "gain" becomes more, uhm, hiveminder | ||
xdg | audreyt, I'm in the guts of Module::Install right now -- I may come back with a Q. ;) | 15:38 | |
has Jesse revealed what hiveminder is, yet? | |||
audreyt | sure. :) if it's particularly appalling, blame me | ||
otherwise, blame ingy -- but Alias is the releng who collects those blames and corrects them now :) | |||
xdg: a commit bit to pugs, as well as to hiveminder's pugs group, is in your inbox | 15:39 | ||
xdg | I don't fully get the interaction between Module::Install and CPAN in follow-mode. | ||
audreyt, thanks | 15:40 | ||
xinming | Compiling Pugs.Embed ( src/Pugs/Embed.hs, dist/build/Pugs/Embed.o ) | ||
src/Pugs/Embed.hs:34:14: Not in scope: `initPerl5' | |||
src/Pugs/Embed.hs:36:4: Not in scope: `freePerl5' | |||
Build failed: 256 at util/build_pugs.pl line 126. | |||
make: *** [pugs] Error 2 | |||
another error. :-) | |||
audreyt | fixing | 15:41 | |
fixed | 15:45 | ||
xinming: try again? | |||
xdg: so btw, if Moose is to offer an inside-out layout option, is Object::InsideOut the one to use? | 15:47 | ||
svnbot6 | r11310 | audreyt++ | * more unbreaking. | ||
audreyt | (it's all hidden from the user, so complexity of API is okay) | 15:48 | |
xdg | audreyt, I'm torn on that. I'd suggest starting with Class::InsideOut because it's a little simpler inside. However, Object::InsideOut is a bit more efficient. | 15:49 | |
( | |||
(O::IO is array based versus hash based) | |||
audreyt | I see. | 15:50 | |
xdg | Jerry Hedden (author of O::IO) has also done a lot of threads work that may or may not be relevant | ||
merlyn | how can it be array based? | ||
xdg | audreyt, Did you see my slides from YAPC? | ||
audreyt | xdg: no, I did not. url? | ||
xdg | dagolden.com/files/Eversion_101.pdf | 15:51 | |
merlyn | are all objects given a small integer? | ||
xdg | merlyn, blessed scalar ref holds the index | ||
merlyn | and then there'd be gaps | ||
as objects are freed | |||
xdg | DESTROY keeps track of available indices, I believe | ||
audreyt | no, it's a seuence number. | 15:52 | |
spinclad | method 'worthy?' (Minion:) { if .claim( !.worthy ) { .worthy } else { !.worthy } } | ||
merlyn | still looks like you could get into a wasted space situation | ||
audreyt | at creation time, the ID is actually seq++'ed | ||
merlyn | create 1000 objects, free 999 | ||
now you're still using [0..1000] | |||
you can't gc because you don't know where the refs are | |||
xdg | merlyn, same with hash, apparently -- the memory allocated for the keys of the hash is an array, Jerry said | ||
merlyn | eh - no | ||
I think that's a misunderstanding | 15:53 | ||
hashes re-hash internally as they get larger and smaller | |||
at most, it'll be a lot of top-level space | |||
but at least it won't need a bad gc | |||
audreyt | you can GC; O::IO manages that from destructor | ||
merlyn | how can you move something from slot 1000 to slot 1? | ||
you'd need to notify all users | |||
unless there's an indirection table | 15:54 | ||
xdg | I don't think O::IO remaps -- it just keeps track of available indices | ||
I could be wrong -- been a while since i went through the code | |||
merlyn | anyway, I'm speaking out of my hat. :) | ||
audreyt | oh, sorry, I thought you meant GC as in free'ing the things in the array | ||
szbalint | hmmm. | ||
audreyt | not as in defrag | ||
merlyn | just reacting badly to what might be a bad design but probably not | ||
audreyt | I don't see a great need for defrag, though :) | ||
xdg | Jerry has some benchmarking on perlmonks that seemed to show array-based was faster and no worse on memory than anything else. | ||
merlyn | perhaps you don't create thousands of objects in a long-running process either | 15:55 | |
xdg | (Usual benchmarking caveats apply) | ||
audreyt | merlyn: even if I do, I think, as p5 is not that great on returning memory for reuse for hash layouts | ||
merlyn | I'm thinking of stuff like mod_perl template toolkit | ||
audreyt | but anyway. benchmark wins :) | ||
szbalint | If Foo is a class, what is the difference between "my Foo $bar .= new" and "my $bar = Foo.new"? Is there some runtime difference? | ||
xdg | Inside-out isn't great for creating/destroying lots of objects because of all the registering and DESTROY that goes on | ||
merlyn | yeah, IOO solves some problems by trading them for others. :) | 15:56 | |
xinming | audreyt: src/Pugs/Eval/Var.hs:207:36: Not in scope: `canPerl5' | ||
audreyt | fortunately you get to choose the layout per class | ||
xinming | src/Pugs/Eval/Var.hs:210:25: Not in scope: `canPerl5' | ||
Build failed: 256 at util/build_pugs.pl line 126. | |||
make: *** [pugs] Error 2 | |||
audreyt | which is why I'd like Moose to be able to simply has | ||
xdg | audreyt, for 5.10, there will be Hash::Util::FieldHash to do Class::InsideOut in the core | ||
audreyt | is repr('insideout') | ||
xdg: I know :) | |||
xinming feels sorry interrupting your conversation. | |||
audreyt | xinming: try again. | ||
xinming | s/interrutping/for interrupting/ | ||
xdg | Class::IO is intended to be something like a 'reference standard' -- minimal in terms of features. O::IO is fast and full of bells and whistles. | 15:57 | |
svnbot6 | r11311 | audreyt++ | * more export. | ||
szbalint didn't intend to blurt something unrelated into the conversation either... | |||
xdg | It's IRC -- it's a multithreaded conversation | ||
audreyt | szbalint: runtime difference is that $bar has a constraint | 15:58 | |
szbalint: so you can't ever put a non-Foo object into it | |||
whilst in "my $bar = Foo.new" it's basically "my Any $bar = Foo.new" | |||
so the Scalar container knows no constraint | |||
and will not attempt to do any validation | |||
"my Foo $bar .= new" is "my Foo $bar = Foo.new" | 15:59 | ||
so Foo acts both on the initial value of $bar | |||
s/on/as/ | |||
and as the constraint that the variable($bar) Scalar object holds on. | |||
clkao | audreyt: we are about to head out for uhmm.. logical breakfast | 16:01 | |
szbalint | well, I was just wondering why would something like "class Foo { method test { my Bar $var .= new; say $var.value } class Bar { method value { '1' } } my Foo $baz .= new; $baz.test; $baz.test" | 16:02 | |
...die on the second "$baz.test" | |||
audreyt | commit the test :) | 16:03 | |
clkao: head "out"? | |||
szbalint | sure | ||
where to put it? | |||
audreyt | I thought nothingmuch is about to cook or something | ||
dire misunderstanding | |||
clkao: bring me back some food then? | |||
szbalint: somewhere in t/oo/ | 16:04 | ||
or t/pugsbugs/ for generic fun | |||
szbalint | okay | 16:05 | |
audreyt | ow. in OSCON my talk is pitted against Selenium, Plagger, and Streamlined. | ||
xdg | audreyt, one downside to O::IO for Moose is that you give up the ability to do 'black-box' inheritance -- e.g. use an IO::File object as your object. That may or may not matter as that kind of thing may not fit cleanly into the MOP | ||
obra | audreyt: ow | ||
audreyt | xdg: and C::IO gives you that ability, I presume? | 16:06 | |
xdg: it's okay as we know inheritance chain at compile time, and can simply reject choices that are incompatible. I think. | |||
"In ancient Greek mythology, Ajax was a fierce warrior, second only to Achilles in strength and reputation. Towards the end, he occasionally went mad and by some accounts, killed himself in remorse after killing some sheep he mistook for the enemy. | 16:07 | ||
" | |||
obra: you, on the other hand, seems to have no competition in that timeslot :) | |||
xdg | audreyt, yes. If you read the YAPC slides, all should be clear. There's a comparison of inside-out modules in the back. (A comment about the talk: "it was pre-digested for me") | 16:09 | |
obra | audreyt: fear | 16:12 | |
audreyt | xdg: the array layout is the same one ParrotObject uses | 16:16 | |
all superclass must provide offsets | |||
hm, wait, no, not exactly | 16:17 | ||
szbalint | should perl5/Pugs-Compiler-Rule/lib/Pugs/Grammar/Rule/Rule.pmc be under revision control? | ||
xdg | audreyt, I'm confused on the superclass/offsets bit | 16:18 | |
audreyt | because instead of an array for potential fields, O::IO (ab)uses the lexical pad | ||
xdg: nvm, that was a thinko. | |||
xdg | k | ||
audreyt | I think lexical pad abuse is wonderful :) | ||
clkao | of course | ||
also forget_unlocal | |||
xdg | what do you mean abuse? | ||
audreyt | does that get you runtime creation of new properties? | ||
xdg: "go back to the class closure; put a new lexical there to stand for a new field" | 16:19 | ||
runtime field creation | |||
xdg | Ah. | ||
audreyt | maybe on crack. but maybe good idea. | 16:20 | |
easier, though, to just have a %runtime_fields | 16:21 | ||
since you lose compile time check anyway | |||
xinming | audreyt: bug fixed... | 16:22 | |
audreyt | yay | ||
xdg | audreyt, for encapsulation, you might as well just use the 'flyweight' pattern -- AoH of fields | 16:24 | |
audreyt | k. | ||
xdg | Inside-out -- a lexical per field -- really only helps for compile time typo checks | ||
I.e. if you're putting everything through accessors anyway, don't worry about the lexicals. | 16:25 | ||
(If I understand the MOP right, accessors are required) | |||
16:25
play9999 joined
|
|||
szbalint | audreyt: committed. | 16:27 | |
svnbot6 | r11312 | szbalint++ | Added test for method call/instantiation bug. Not sure how to call it. | ||
r11312 | szbalint++ | Please adjust description/filename/location for a better name. | |||
r11311 | audreyt++ | * more export. | |||
audreyt | xdg: not inside the creation site | ||
you can be free to refer to layout-specific closures if you are in the class closure | 16:28 | ||
perl6: | 16:29 | ||
class Foo { has $.x; method f { $!x = 1 } } | 16:30 | ||
which is direct access on the slot | |||
use Moose; has '$x'; sub f { my $self = shift; $x_[$$self] = 1 } # potential mockup syntax | 16:31 | ||
inheritance based on simple rebless is quite powerful indeed (Grokking search.cpan.org/src/DAGOLDEN/File-M...Marker.pm) | 16:34 | ||
xdg | audreyt, ah. I think that pretty much mandates evil with the lexical pad. | ||
re: File::Marker -- it's one of the few things that Inside-Out objects are really good for | 16:35 | ||
audreyt | my @_x : field; | ||
but that syntax is somewhat ugly | |||
xdg | yes. I've come to dislike attributes (perl 5 ones anyway) | ||
audreyt | but I have no problem with compile-time PAD extension | ||
xdg | I think they're potentially fragile, too | ||
audreyt | so that's the way to go | ||
in perl6 we have this COMPILING:: stash | 16:36 | ||
which, inside BEGIN or a function called by BEGIN | |||
refers to the lexical pad that's being built | |||
and you can extend it before it is fully closed | |||
this pattern is backported to perl5 and I think it's useful generally | 16:37 | ||
s/backported/backportable/ | |||
audreyt ponders Devel::Pad::Compiling | 16:39 | ||
16:43
nothingmuch joined
16:46
prefiks joined
16:48
DaGo joined
16:49
play9999 joined
16:50
b_jonas joined
|
|||
audreyt | hmm. | 16:51 | |
members.microsoft.com/careers/searc...1B43134038 | |||
lambdabot | Title: "Job Details - Microsoft Careers" | ||
audreyt | it's posted on January, but when I visited there last month I don't think there's one on that slot | 16:52 | |
interesting how the priority for them is Ruby > JavaScript/PHP > everything else :) | 16:54 | ||
xdg: so if I want to extend YAML::Syck to support inside-out objects, is there a way reuse STORABLE_freeze? | 16:59 | ||
or must I provide my own _freeze hooks? | |||
I'd liek to avoid that | |||
xdg | audreyt, the semantics of STORABLE_FREEZE/THAW/ATTACH are complicated. There are some really long threads about it in RT for Storable. | 17:00 | |
audreyt | ok. is it possible to come up with a API that can serve as the common bridge | ||
between all serializers and inside-outs? | |||
xdg | I think you can reuse the hooks if you can match the semantics | ||
audreyt | I think I can | ||
but it does seem to be hairy | |||
xdg | I talked to stvn about MOP needing a protocol for serialization. | 17:01 | |
audreyt | yup, it's best handled at metaclass level. | ||
ivanfrey | audreyt: just to let you know that I've decided to use the Fink installed Perl. After all it is 5.8.6 and there doesn't appear to be anything wrong with it. | ||
xdg | He and Alias and I got into the Storable discussion on the way to the Chinese dinner at YAPC | ||
audreyt | ivanfrey: sure, that's fine | 17:02 | |
mm FieldHash is already checked in | |||
maybe I'll concentrate on supporting it for v6 | |||
xdg | Hmm. Have to go. Feel free to email other questions. | 17:03 | |
17:12
nothingmuch joined
|
|||
ivanfrey | how do I get readline support? I thought the perl Makefile.PL would find it? | 17:23 | |
17:23
hexmode joined
|
|||
audreyt | ivanfrey: youa re using GHC 6.4.1 tarball? | 17:26 | |
I'm not sure how to get readlinee linked in there | 17:27 | ||
haskell.org/ghc/download_ghc_641.html#macosx offers little help | |||
lambdabot | Title: "GHC: Download version 6.4.1" | ||
ivanfrey | audreyt: I installed it from the .dmg file. | ||
audreyt: they claim 6.4.2 for macosx is coming soon. | 17:28 | ||
audreyt: I thought perl would find my readline support. I'm getting it in cpan. | 17:29 | ||
audreyt | Bundle::CPAN ought to give you Term::Readline something. | 17:30 | |
or Term::Readline::Gnu if you have gnu readline installed via fink. | |||
ivanfrey | audreyt: what's LWP? | 17:36 | |
17:36
fglock joined
|
|||
audreyt | libwww-perl | 17:38 | |
nothingmuch | moosage | 17:43 | |
17:44
DaGo joined
|
|||
clkao_ | mmm, pugs -c -BPerl5 doesn't work | 17:53 | |
i want to have a first run of tests to see what doesn't compile at all | |||
audreyt | upgs -CPerl5 | 17:54 | |
pugsgs -CPerl5 | |||
pugs -CPerl5 # gaah | |||
clkao_ | ah cool. builtin/arity.t seems to be infinite loop in parser | 17:56 | |
nothingmuch | does anybody need any laundry done? | 18:00 | |
(obrathoners) | |||
audreyt | I nee | ||
d; it's long overdue :) | |||
should I just transfer it to you? :) | 18:01 | ||
nothingmuch | no need to get up | ||
;-) | |||
fglock | clkao_: you see "parsing error..." many times? | ||
nothingmuch | clkao_: would you like some laundry done too? | 18:02 | |
ivanfrey | Should I embed perl 5? What about parrot? | 18:03 | |
18:04
froh-doh joined
18:13
putter joined
|
|||
nothingmuch | audreyt: you may insert cloths into the bag i threw at you and ping me at your earliest convenience | 18:14 | |
note that there is currently a blocking operation on the laundry machine | |||
so this should be low priority IO | |||
audreyt | okay, danke. | 18:15 | |
putter | anything new on the mmd front? | ||
audreyt | ivanfrey: embedparrot currently doesn't gain you much. embedperl5 gets you DBI :) | ||
18:15
jkanter joined
|
|||
audreyt | putter: clkao released Sub::Multi as a platform to add stuff onto; I figured out how to combine luqui's TypeConstraint with stevan's | 18:16 | |
putter: but it's all implementation-land. nothing much on story/spec land. | |||
nothingmuch | no i'm not | ||
i'm in the living room | |||
putter didnt get a chance this morning to do the new user story. perhaps in t+10 hours. | |||
audreyt | okie. | ||
putter | great # combine | ||
nothingmuch | Named parameters, while checked for compatibility, do not currently | 18:17 | |
affect choice. | |||
why not? | |||
no way to syntactically prioritise? | |||
putter | were there any thoughts on ;< or indexed ordering of param importance? | ||
though it's not pressing. rev2 kind of thing. | 18:18 | ||
the collaborative model means each variant could hypothetically use its own deferral policy. the infrastruct simply enforces the "you must converge unabiguously" requirement. | 18:19 | ||
nothingmuch | putter: was that an answer to my question? | 18:21 | |
putter | ok, no. oops. | 18:22 | |
I had mentally tagged you as having a laundry discussion, and didnt even read your lines. sorry. let's see... | |||
nothingmuch | heh | ||
laundry is & | |||
putter | re why not, | 18:23 | |
that's from back when I was initially just transcribing a spec. dont know actual motivation. my guess is kiss loadsheding. we're still not entirely sure how the positionals work, so... | 18:24 | ||
nothingmuch | this is a sort of weird idea | ||
but | |||
what if named thingies | |||
were treated like positional ones | |||
putter | but yes, I should ponder how the nameds might fit with the current scheme. | ||
nothingmuch | from the perspective of every variant | ||
based on how they match in the argument list | |||
basically, this is a way for the caller to dictate to the callee which named is more left than right | 18:25 | ||
putter | "how the match in the argument list"? | ||
oh... hmm... | |||
audreyt | nothingmuch: in the Capture structure there's currently no room for named to act as positionals | 18:26 | |
f(x => 1, y => 2) | |||
f(y => 2, x => 1) | |||
would *not* dispatch differently | |||
principle of least surprise | |||
nothingmuch | principle of least surprise vs. DWIM? | ||
because in my experience working with named args, you put the "nouns" early, and the adjectives late | |||
audreyt | if you control all of it yes | 18:27 | |
but there's also the case of splicing a hash into named | |||
f([,] %args) | |||
nothingmuch | ah | ||
audreyt | in which case you lose all resemblance of ordering | ||
wolverian | what's [,]? flattening? | ||
audreyt | yeah | ||
nothingmuch | so maybe, only if there is lexical ordering | ||
putter | nothingmuch: intriguing thought. unfortunately my ride is here. | 18:28 | |
wolverian | prefix * is gone? | ||
audreyt | wolverian: it's gone, term:* takes its place | ||
nothingmuch | as in, actually written down by the user as separate elements | ||
but nevermind | |||
that is probably too complex | |||
putter | look forward to hearing mmd thouights later. will backlog. cheers 7 | ||
& | |||
wolverian | audreyt, ah, ok. thanks. | ||
nothingmuch | putter: see you | ||
audreyt | wolverian: [,] is quite a bit easier to explain | ||
merlyn | why are all the changes batched when I pull from svn.perl.org ? | ||
is that refreshed only rarely? | |||
audreyt | merlyn: we had some problem with the syncer | 18:29 | |
wolverian | audreyt, yeah, syntactically :) | ||
"this becomes that" and you don't have to wave hands | |||
audreyt | merlyn: it shoudl be fine now | ||
yup. | |||
nothingmuch | i think nameds still Just Work | ||
between colons and semicolons they should just be unordered | |||
err, semicolons and double semicolons | 18:30 | ||
i will jot down some notes | |||
and will try to add examples | |||
audreyt | sure | ||
and maybe code them up? (smile) | |||
nothingmuch | ha ha | 18:31 | |
we'll se | |||
e | |||
we need a Moose::Meta::TypeConstraint object that can compare first | |||
audreyt | import luke's API | ||
from C::MM::P | |||
nothingmuch | yes | ||
audreyt | with ->les | ||
with ->less | |||
and also all() and none() | |||
M::M::TC currently oly does any() | 18:32 | ||
nothingmuch | it's a lot of engineering though | ||
audreyt | that needs to be addressed | ||
nothingmuch | right | ||
audreyt | nah. it's copy and pasting | ||
nothingmuch | well | ||
you can do all | |||
you just have to do it manually | |||
anyway, thought first | |||
work later | |||
does it make sense to have several semi colons in the same sig? | 18:34 | ||
instead of voting vs. non voting | |||
you have vote power | |||
that is decremented | |||
? | |||
spinclad | several semis: yes, that's what we have | 18:37 | |
nothingmuch | i really like this mmd scheme | 18:39 | |
spinclad | btw i'm buildfailing due to can't install Devel::Caller due to Module::Build not configured with C_support. | ||
nothingmuch | from a syntactic POV it lends itself to excellent self documenting code | ||
and good style | |||
but type distance is still ambiguous | |||
spinclad | but Module::Build is latest, 0.2801... | 18:40 | |
nothingmuch | however, since we have pluggable type systems (in theory) | ||
clkao_ | nothingmuch: you didn't give me the lighter right? it'd be painful if i happened to pack it | ||
nothingmuch | maybe type distance is also a pluggable thing? | ||
clkao_: it was in my pocket tioll 20 mins ago | |||
and now on my bed | |||
clkao_ | k | ||
nothingmuch | or one of jesse's piles | ||
also | |||
ivanfrey | What should the recommended value be for $d_setregid? | 18:41 | |
nothingmuch | www.privacyinternational.org/activi...oying.html | ||
lambdabot | Title: "World's Most Annoying Security Measures" | ||
audreyt | nothingmuch: type distance is no more | 18:42 | |
nothingmuch | it might be pre 9-11 | ||
audreyt | nothingmuch: it's just ->less | ||
nothingmuch | audreyt: hmm | ||
audreyt | and indeed each typesystem/constraint-system can define its ->less | ||
nothingmuch | could you explicitly define narrowness? | ||
audreyt | yes. see mmd-draft.txt | ||
nothingmuch | i did | ||
audreyt | I can go downstairs and play the card game with you :) | ||
nothingmuch | it discusses the mmd stuff | ||
but not narrowness | 18:43 | ||
or maybe i missed that | |||
audreyt | it also cover narrowness | ||
nothingmuch | which 1/3rd of the file? | ||
audreyt | after "Parameter types are compared by their relative type narrowness" | ||
the last para | |||
it defines an algorithm for determining narrowness | |||
ivanfrey | I've gone to install Term::ReadLine. So cpan wants me to build Perl 5.8.8, but it doesn't like $d_setregid recommended value "undef" | ||
audreyt | based on constraint overlapping | ||
i.e. one variant is less narrow unless it's a superset of the other variant's constraints | 18:44 | ||
nothingmuch | ah, i see | ||
and orthogonally narrow constraints are an ambiguity error | |||
audreyt | yup, unless those are roles | ||
nothingmuch | ? | ||
audreyt | in which it's ambiguous but both still advances | ||
it's for the case of | |||
:(Storable $x, Int $y) | |||
:(Readable $x, Any $y) | |||
and dispatching to 1st variant. | 18:45 | ||
nothingmuch | how come first? | ||
wait | |||
i don't care, i'll never write code like tha | |||
audreyt | Storable and Readable are orthogonal bot roles | ||
nothingmuch | t] | ||
and Int is a sub of any | |||
audreyt | s/bot/but/ | ||
yup | |||
so Int can be written out as | |||
Any Int | |||
which is strict superset to Any | |||
so it wins | |||
nothingmuch | for a moment there I thought that Int and Any were also ambiguous | ||
so it's just roles on the left-to-right traversal are ok to be ambig | |||
audreyt | no, for any stands for union() | 18:46 | |
well | |||
:(Int $x, Storable $y) | |||
:(Any $x, Readable $y) | |||
is still the 1st | |||
spinclad | and the class C of the first arg can be written Storable Readable C | ||
audreyt | yes. | ||
nothingmuch | okay | 18:49 | |
comitting notes | |||
ingy | hi audreyt nothingmuch spinclad | ||
nothingmuch | hi <3 | 18:50 | |
ingy | anything I need to do for perl6 today? | ||
svnbot6 | r11313 | nothingmuch++ | mmd notes | ||
spinclad | hi ingy! | ||
make it work, it's christmas! | |||
audreyt | ingy: hey | ||
nothingmuch | audreyt: see also second rant section about disambiguation from caller | ||
audreyt | ingy: help writing a :Attr sugar for Data::Bind! | 18:51 | |
since you are working on :Attr anyway | |||
might as well combine forces | |||
nothingmuch | oi attr | 18:52 | |
i can help with that | |||
i've been traumatized fairly recently | |||
audreyt | by A::H? | ||
nothingmuch | the wounds are still open on how to do pluggable | ||
hell no | |||
ingy | audreyt: can you write me a failing test? | 18:53 | |
audreyt | uhm. | 18:54 | |
ingy | you can even write it ingy-style | ||
nothingmuch | heh | ||
ingy: i can do that for you | |||
audreyt | ok | ||
nothingmuch | anything that ends in .t and fails is ok, right? | ||
audreyt | it's basically | ||
ingy | touch t/attributes_for_data_bind.t | 18:55 | |
that's ingy style | |||
audreyt | take Params::Validate::Micro | ||
ingy | the test totally fails in the harness | ||
audreyt | translate its spec to Data::Bind | ||
reuse Sub::MicroSig for the handler | |||
nothingmuch | ingy: here | 18:56 | |
http:nothingmuch.woobling.org/pony-1.jpg.t | |||
audreyt | and pack the whole thing up as Sub::Sig | ||
nothingmuch | nothingmuch.woobling.org/pony-1.jpg.t | ||
18:56
markstos joined
|
|||
audreyt | or Sub::Sigs | 18:56 | |
or (hey) Perl6::Subs | 18:57 | ||
ingy | I think that one is taken | ||
audreyt | I'll write a failign test :) | ||
it's mine | |||
chip says it's okay for me to butcher^Wmaim^Wtotally refactor it. | 18:58 | ||
nothingmuch | okay | ||
audreyt: i will work on type math for you | |||
ingy | oh | ||
audreyt | nothingmuch: just extend Moose TypeConstraint, right? | ||
nothingmuch: eggcellent | |||
ingy | well there you go! | ||
audreyt | "a Perl6::Subs that doesn't suck" | ||
ingy | ok... | 18:59 | |
ingy runs 7 miles first | |||
nothingmuch | audreyt: yes | ||
ingy | Hal Higdon told me to: www.halhigdon.com/marathon/novices.html | ||
nothingmuch | audreyt: oh, you too with the eggcelenet | ||
lambdabot | Title: "Marathon Training Schedule: Novice" | ||
nothingmuch starts liking lambabot's title summary | |||
i was just going to click the uri | |||
and now i realized i've already been there | 19:00 | ||
audreyt: please gather your laundry in the bag | 19:01 | ||
audreyt | ok | ||
nothingmuch | i will pick it up in ca. 15 mins | ||
19:06
mdiep_ joined
|
|||
audreyt | nothingmuch: laundry bag in the kitchen now | 19:09 | |
ingy: also we need recursion support | 19:11 | ||
ingy: for a M::C'er to declare that its output contains potentially more M::C code | |||
otherwise it will .pmcc .pmccc away | |||
which is redundant | |||
19:13
mauke_ joined
|
|||
nothingmuch | audreyt: got it, thanks | 19:18 | |
19:28
mauke_ is now known as mauke
19:32
renormalist joined,
lumi joined
|
|||
ivanfrey | Should I embed perl 5? Should I enable parrot linking? | 19:53 | |
audreyt | embed perl5 if you'd like to use CPAN modules | 19:54 | |
on OSX it should work | |||
so give it a try | |||
parrot linking otoh is not neccessary at this moment | |||
and would require latest parrot | |||
so perhaps not | |||
19:55
renormalist left
|
|||
szbalint | audreyt: did you manage to take a look at the test I've committed? It's not blocking me, I'm just curious... | 20:03 | |
audreyt | szbalint: yeah. the cause is known | 20:07 | |
currently the pad does not really carry its constraint | |||
so when a closure is entered for the next time | |||
it's refreshed into undef | |||
instead of into its principal constraint class | |||
the new AST solved this | |||
so will be fixed as part of the new P6AST switch | 20:08 | ||
i.e. when the method is called again | |||
$var becomes undef | |||
instead of Bar as it should | |||
can you paraphrase the explanation above | 20:09 | ||
and make it into a comment on your instantiation.t test? | |||
merlyn | is there a factorial operator? | ||
or just use the [*] reduce? | 20:10 | ||
szbalint | Sure, audreyt. | ||
audreyt | szbalint++ | ||
?eval [*] 1..10 | 20:11 | ||
evalbot_11274 | 3628800 | ||
audreyt | merlyn: no builtin factorial, no | ||
merlyn | ?eval 2**20 | ||
evalbot_11274 | 1048576/1 | ||
merlyn | what's the /1 there? | ||
is there an integer version of that? | |||
audreyt | internal representation | ||
merlyn | or of bit shift left? | ||
how come I can get that exactly with | 20:12 | ||
audreyt | ?eval 2 +< 20 | ||
evalbot_11274 | 2097152 | ||
audreyt | ?eval 1 +< 20 | ||
evalbot_11274 | 1048576 | ||
merlyn | Ahh +< | ||
of course | |||
(he says, sarcastically :) | |||
audreyt | :) | ||
"numerically shift-left" | |||
merlyn | anyway, lemme upload what I got, and y'all can make sure I haven't lied badly | ||
audreyt | cool | ||
merlyn++ | |||
merlyn | OK - check out www.stonehenge.com/pic/ur-col66.pod | 20:13 | |
please review in the next 20 minutes or so, and I'll be watching for responses | |||
20:14
lumi joined
|
|||
merlyn | I could be complete wrong | 20:15 | |
however, every example was cut-n-pasted from pugs. :) | |||
audreyt | what you mean is, if it's wrong, it's pugs's fault :) | 20:16 | |
wolverian | merlyn, are you keeping perl5 anachronisms intentionally, or are the parentheses in 'for (1..100)' intentional? | 20:17 | |
I suppose it might make sense in that specific context. :) | |||
merlyn | I'm minimizing the differences | ||
trying to sell perl6, not scare more people off. | 20:18 | ||
wolverian | right. just checking | ||
wolverian reads on | |||
merlyn | just like I use print first, even though say would be better | ||
audreyt | merlyn: not "over six years" | 20:19 | |
perl6 (counting from the mug throwing) will be 6 years next week | |||
oh wait | |||
merlyn | when was the coffee cup thrown? | ||
by the time this publishes | |||
audreyt | by the time your reader sees this... | ||
merlyn | it'll be after oscon | 20:20 | |
yes | |||
Hence the intro paragraph. :) | |||
audreyt | it's still "six years" :) | ||
(as Sep 2006 is roughly the same time the same time as the mailing lists actually starts) | |||
merlyn | OK. reload | ||
This is real-time collaborative editing | 20:21 | ||
I incorporate a comment, then tell everyone to reload. :) | |||
audreyt | in the | 20:22 | |
my @x = ('a'..'e'); @x[2]; | |||
the idiomatic perl 6 is | |||
my @x = 'a'..'e'; @x[2] | |||
but again, minimizing diff is good | |||
?eval my @x = 1,2,3,4,5; @x | |||
evalbot_11274 | [1, 2, 3, 4, 5] | 20:23 | |
merlyn | yeah, I like that you don't have to quote that any more | ||
audreyt | (which is quite different from perl5, but nvm) | ||
yeah, not worth a tangent in the article | |||
merlyn | I had to get this into 7500 chars | ||
barely made it. :) | |||
audreyt | ?eval [0,1,2][1] | 20:24 | |
evalbot_11274 | \1 | ||
audreyt | actually... | ||
merlyn | the pugs> line dereferences those | ||
audreyt | s/scalar context/numeric context/ | ||
merlyn | Hmm. yeah, I pondered that. | 20:25 | |
I'll put them both. :) | |||
audreyt | in numeric scalar context... | ||
yup | |||
merlyn | reload | ||
audreyt | In fact, if I just wanted C<$_\n>, I can use C<say> with no parameters. | ||
merlyn | not true? | 20:26 | |
20:26
lumi joined
|
|||
merlyn | I didn't try that. | 20:26 | |
audreyt | sad to inform you that's going away | ||
need to say | |||
merlyn | don't tell me it's the one thing that's wrong so far. :) | ||
audreyt | .say | ||
instead | |||
merlyn | Ugh. removing that sentence. | ||
audreyt | say() prints empty list | ||
.say is $_.say | |||
merlyn | reload | ||
audreyt | otherwise, excellent article | 20:27 | |
merlyn | Thanks. | ||
audreyt | merlyn++ merlyn++ merlyn++ | ||
merlyn | No big lies to worry about? | ||
audreyt | not at all. | ||
not even miniscule lies. | |||
merlyn | cool | ||
does it put generally the right spin on things? | |||
purpose, state of the world, etc? | |||
audreyt | I like it that v6.pm and parrot/perl6 are both elided | 20:28 | |
merlyn | is sub xyz { }; multi sub xyz { }; an error? | ||
well - I say they're "coming along" | 20:29 | ||
but I don't want to point people at them until it's as mature as pugs | |||
audreyt | yes. | ||
re that: it's not an error. should be a warning saying xyz is being shadowed | |||
pugs doesn't throw that warning | |||
the new P6AST will make it happen | |||
so, by next release :) | |||
(it's the same as | 20:30 | ||
sub xyz {} sub xyz {} | |||
) | |||
merlyn | couldn't it just be that "multi" means "create/replace by signature" and without multi it means "create/replace all subs with this name" | ||
so it's a last-one wins | |||
possibly with warnings if things are replaced | |||
audreyt | yeah. two multis play together | ||
either side is a sub, last one wins | |||
ditto for both sub | |||
merlyn | right, but I'm talking about sequence of sub vs multi-sub on the same name | ||
it would seem intuitive to do and describe what I just said | 20:31 | ||
audreyt | it is. hm. | ||
basically | |||
later multi makes earlier subs multi | |||
merlyn | oh weird | ||
OK | |||
audreyt | I was paraphrasing what you said | ||
not the spec | |||
merlyn | yes | ||
heh | |||
no wonder it sounded familiar. :) | 20:32 | ||
audreyt | I wouldn't mind that | ||
will certainly make nothingmuch happy | |||
merlyn | sub xyz ($a, $b) {} multi sub xyz ($a, $b, $c) { } | ||
audreyt | (he proposed something like that a while ago) | ||
merlyn | that would be legal and just add a new definition | ||
then if I come along with sub xyz ($x) { ... } all get erased except for this | |||
but if that had said multi, it would have *added* that | |||
with appropriate warnings for loss of previous defs, of course | 20:33 | ||
audreyt | TimToady is the arbiter for taste in declarator surface syntax | ||
20:33
mdiep_ is now known as mdiep
|
|||
audreyt | if you can lobby him, I think it's sane | 20:33 | |
(ditto for @ary.count replacing @ary.elems) | |||
20:34
hcarty joined
|
|||
audreyt | the good thing about surface/semantics separation is that implementing that wouldn't touch the pugs runcore a bit :) | 20:34 | |
merlyn | cool | ||
merlyn ships the column off to the publisher | |||
audreyt | merlyn++ # yay | ||
I'll bbiab :) | |||
merlyn | that's sysadmin, still read by old core system admin types that use Perl for everything | 20:36 | |
I'm trying to reassure them that Perl6 is not going to take away | |||
anything that it has already done | 20:37 | ||
wolverian | merlyn, it's a very well written piece, by the way. thanks! | 20:38 | |
merlyn | cool | ||
well, I do have a bit of that writer knack. :) | |||
perlbot, merlyn's books | 20:39 | ||
perlbot | camel 1+2, llama 1+2+3+4, alpaca 1+2, gecko, shiny ball (EPP), Perls of Wisdom | ||
wolverian | yeah, that "merlyn" did sound a bit familiar .. | ||
merlyn | perlbot, merlyn's columns | ||
perlbot | unix review (65 and counting), linux magazine (84 and counting), web techniques (70), perl journal (14), freely available at www.stonehenge.com/merlyn/columns.html | ||
lambdabot | Title: "Columns by Randal" | ||
merlyn | oops. that's 66 now | ||
in fact, column 66 is about perl 6. how cool. | |||
interesting convergence | |||
and I mention Damian twice | 20:40 | ||
wolverian | the beast is a pug(s)? | ||
merlyn grins | |||
audreyt ponders if we can get perl6 shipped after 6 years, 6 months and 6 days of dev | |||
...which means mid-January 2007 | 20:41 | ||
audreyt hacks on | |||
merlyn | type faster! | ||
use both hands! | |||
no more hunt-n-peck! | |||
wolverian | no, don't type! | ||
merlyn | use strong typing! | ||
wolverian | typing sucks, didn't you hear? :) | ||
merlyn | "I tried strong typing once... nearly ruined my keyboard." | ||
audreyt | "type inferencer" | 20:42 | |
it's another name for autocomplete! | |||
merlyn | type-o-matic. :) | ||
wolverian | just write the calculus of mind, thanks | ||
audreyt | I don't want a typo matic, thank you very much | ||
wolverian estimates audreyt will have that done in six months | |||
20:43
dduncan joined
|
|||
merlyn | you prefer manual typos? :) | 20:43 | |
svnbot6 | r11314 | szbalint++ | Adding comment explaining t/oo/instantiation.t (audreyt++ for the explanation) | 20:45 | |
r11315 | audreyt++ | * more accurate explanation of desugaring in instantiation.t: | 20:51 | ||
r11315 | audreyt++ | my Bar $var .= new; | |||
r11315 | audreyt++ | is actually | |||
r11315 | audreyt++ | my Bar $var = $var.new; | |||
r11315 | audreyt++ | which explains the problem of pad refreshing. | |||
dduncan | so, it seems that r2562 et al supports the idea that building actually was broken, despite some people being able to smoke | 20:53 | |
I mean, r11308 | |||
but it seems to have unbroke for me regardless, at least at the Pugs.Embed.Perl5 stage | 20:54 | ||
20:57
elmex joined
|
|||
dduncan | I have another question/opinion or 3 regarding system design for multiple Perl 6 runtimes | 21:12 | |
first of all, leaving aside the whole thing about CPAN being the language and Perl 6 the grammar ... | 21:13 | ||
and most functionality being in separately distributed modules anyway ... | |||
is it reasonable for the core spec to be divided up some how, like with certain technical standards, into multiple tiers, so say a minimalist Perl 6 implementation could just do part of it rather than all of it, and so a certain minimal functionality would work on everything purporting to be a Perl 6 implementation, but some other parts may not work on some of them? | 21:15 | ||
audreyt | it is very reasonable. | ||
dduncan | eg, if you look at standards docs for things like XML or SQL, you see multiple tiers, where some parts are mandatory and others optional | 21:16 | |
one case in point is that support for non-ASCII characters could be in a level-up tier | |||
especially since Perl 6 provides ASCII equivalents for Unicode operators | |||
so if it is reasonable for the core spec to be divided up thus | 21:17 | ||
... | |||
is there a way for a Perl 6 program to programmatically query what tiers or features the particular runtime its on supports? | |||
audreyt | mm, API for compiler and runtime capability introspection. | 21:18 | |
dduncan | if it is possible for tiers, then there should be a way to query support levels | ||
audreyt | $?CONFIG and $*CONFIG are objects that can be queried | ||
dduncan | so they serve that purpose? | ||
audreyt | or maybe $?PARSER and $?COMPILER and $*RUNTIME | ||
so config is mostly environmental | |||
dduncan | I was just thinking that, if there was a single standard, then with the standard Perl 6 test suite, it would nonsensical to have SKIPs ... it would all be PASS or FAIL | 21:19 | |
audreyt | aye. | ||
dduncan | SKIPs are only useful if features are officially optional, and the testing program can query "do you claim to support this feature" before actually testing the support ... | ||
audreyt | aye. | ||
dduncan | then passes and fails are only given for things that the impl claims to support | 21:20 | |
okay, I think that answers my question | |||
so then a related action plan ... | |||
some time soon, all the skips/todos should be removed from the test suite, except those that explicitly query the CONFIG vars to make the skipping optional | 21:21 | ||
audreyt | yes. add it to the TODO file? | ||
dduncan | while this will mean that Pugs will perpetually have a lot of fails until it is done, this levels the playing field for other implementations ... | ||
or alternately ... | 21:22 | ||
audreyt | I'll probably do a batch import of that to hiveminder braindump :) | ||
dduncan | a partial implementation of Pugs should simply declare its TODOs in its CONFIG vars | ||
audreyt | yes. | ||
dduncan | um, where is the TODO file? | 21:28 | |
the general Pugs or Perl 6 one? | |||
audreyt | in pugs there is a TASKS | 21:30 | |
dduncan | there we go | ||
21:32
stephanepayrard_ is now known as cognominal,
cognominal is now known as cogno
|
|||
dduncan | on a related note, do we still need a t_disabled/ dir? | 21:33 | |
I don't see how those are different than skips/todos | |||
will mention that too ... | |||
svnbot6 | r11316 | audreyt++ | * "say" now no longer outputs $_. use ".say" for that. | 21:36 | |
r11316 | audreyt++ | (it's the last builtin that still have hardcoded $_ in pugs.) | |||
r11317 | audreyt++ | * mmd-draft.txt - cleanup the roles of Roles in mmd tiebreaking. | 21:42 | ||
21:45
hcarty left
|
|||
ajs_home | Anyone have a problem with my postulating a Str::Codepoint object in S29's entry for chr and ord? Just an object that combines an int (codepoint) and a memory of the character set that it's a codepoint for.... | 21:51 | |
Seems to play nice with SO2's thinking | 21:52 | ||
svnbot6 | r11318 | Darren_Duncan++ | updated the TASKS to provide ideas on how to make t/ scale like modern languages, and also make it implementation-generic | 21:54 | |
xinming | how do I run generated javascript code in firefox please? | ||
dduncan | audreyt, my addition to TASKS was further expanded to address an existing need mentioned there | ||
xinming | I use html file to invoke the javascript, It doesn't print anything... :-/ | 21:55 | |
dduncan | if you want, I can focus some of my tuits on getting this done | ||
xinming | dduncan: thanks. :-) | ||
dduncan | the question is, can I have free reign to move tests around between folders, or do you want me to take time to draft a written arrangement proposal first | 21:56 | |
the first stage would just move them around, not change their contents, so it shouldn't affect the pass/fail stats | |||
audreyt | dduncan: well, it's built on rough consensus and running commits | 21:58 | |
and we already have a rough consensus, so just commit | 21:59 | ||
anarchy and all :) | |||
dduncan | will do ... but it will be incremental and I can bounce ideas or questions here first | ||
audreyt | sure | ||
I'll go take a nap. bbia | |||
vsoni | vsoni has unicode working in PGE | 22:20 | |
obra | re | 22:23 | |
svnbot6 | r11319 | nothingmuch++ | make a directory for Ann to put in the summaries | ||
r11320 | Darren_Duncan++ | added skip_rest+exit to every t_disabled/*.t to preserve their noop-behaviour when they are subsequently moved to t/ | 22:26 | ||
nothingmuch | obra || audreyt: may i interest you in food stuff? | 22:27 | |
nothingmuch is going to make a sandwich | |||
obra | I could dinner soon | ||
nothingmuch | do you want me to cook? | 22:28 | |
like real stuff? | |||
nothingmuch feels like pesto, TBH | |||
but this may require groceries | |||
audreyt: please convince kudra to store the summary .pod in pugs svn | 22:30 | ||
obra | real cooking would be lovely | 22:31 | |
nothingmuch | okay | ||
i'm going to run through your kitchen | |||
and make a list of what i'll need for pesto | |||
does that make sense? | |||
obra | that's worth doing | 22:32 | |
nothingmuch | okay | ||
so brb | |||
clkao_ | real cooking... | 22:35 | |
obra | :) | ||
22:36
cognominal joined
|
|||
nothingmuch | obra: please make kudra svk co pugs while i go through the kitchen | 22:38 | |
irc.perl.oirg | |||
clkao_ boarding | 22:41 | ||
kolibrie has a build error he doesn't understand and the nopaste site seems unavailable | |||
22:44
play9999 joined
|
|||
kolibrie | is that alternate paste bot still around? | 22:44 | |
anyway, the short version is: | 22:45 | ||
svnbot6 | r11321 | Darren_Duncan++ | moved all files under t_disabled/ to corresponding places under t/ | ||
kolibrie | ghc-pkg: /var/projects/pugs/third-party/installed/packages.conf: parse error in package config file | 22:46 | |
Setup: cannot get package list | |||
The field "hs-source-dir" is deprecated, please use hs-source-dirs. | |||
Setup: error reading ./.setup-config; run "setup configure" command? | |||
22:46
play9999 joined
|
|||
kolibrie plans to return in fifteen minutes & | 22:47 | ||
22:49
play9999 joined
|
|||
audreyt | kolibrie: rm third-party/installed/packages.conf and try again? | 22:51 | |
kolibrie: alternately, nopaste its contents with paste.snit.ch | |||
play9999 | Audreyt : hi | 22:53 | |
svnbot6 | r11322 | sanug++ | Updated mime-type on each html,jpg, and pdf file in perl6_compilation | 22:55 | |
23:00
fglock joined
23:05
sanug joined
|
|||
kolibrie removes third-party/installed/packages.conf | 23:05 | ||
sanug | Need help with svn properties - anybody? | 23:07 | |
Traying to checkin the proper properties on .html, .jpg and .pdf | |||
s/traying/trying/ | 23:08 | ||
code in docs/perl6_compilation/*.html does not open in editor properly... will checkback later... | 23:09 | ||
23:09
sanug left
|
|||
kolibrie | audreyt: thank you much. build seems to be working now. | 23:12 | |
23:18
chris2 joined
23:23
play9999 joined
|
|||
svnbot6 | r11323 | Darren_Duncan++ | removed now-empty t_disabled/ folders, added new initially-empty t_pugs/ folder, moved t/pugsrun/ to t_pugs/invocation/, renamed t/pugsbugs/ to t/bugs/, updated lib/Pugs/Doc/Hack.pod and other docs about the aforementioned ... still TODO: update the test/smoke harness to run t_pugs/*.t | 23:25 | |
fglock | markstos: re colabti.de/irclogger/irclogger_log/...sel=33#l58 - "what's a good way to help or get involved to improve p6 on p5" | 23:26 | |
lambdabot | Title: "#perl6 2006-07-08,Sat" | ||
fglock | I'll start a HACKING file to write about that | ||
TimToady | ajs_home: commit bit on its way to you | ||
ajs_home: please add your name to AUTHORS as first checkin. | 23:27 | ||
dduncan | I would appreciate some help with getting the harness to invoke the new t_pugs/ as it does t/ , since I am less familiar with the details of its mechanism | 23:29 | |
and/or if a saavy person just does it | |||
23:29
markstos joined
|
|||
dduncan | fyi, currently the only thing that wouldn't be run prior to that fix is the Pugs command line option tests that were 'pugsrun' | 23:30 | |
I kept 'pugsbugs' (as 'bugs') and 'unspecced' in t/ since they seemed more generic to the language, despite their originally stated purpose | 23:31 | ||
play9999 | Auderyt: | 23:35 | |
23:36
Bit-Man joined
|
|||
dduncan | now I have a question for feedback ... | 23:36 | |
fglock | bbiab & | 23:37 | |
dduncan | it seems inapproriate to me that the module 'Test', which is used by the main Perl 6 test suite, be in the ext/ dirs | ||
I believe that ext/ by nature should only include things that can be taken out entirely and the main Perl 6 test suite will still run | |||
so I suggest putting Test.pm, plus its own tests, somewhere else, either in a different Pugs root dir, such as t_util/, or in t/ | 23:39 | ||
I refer specificially to the Test.pm that is written in Perl 6 ... also, just the module would go there | 23:40 | ||
the test suite of Test.pm could go in t/, and be executed just after the sanity tests, such as sanity2 | |||
so sanity1 tests that the harness is getting the ok/nok, and sanity2 tests that Test.pm works | 23:41 | ||
obra | dduncan: the directory structure has licensing implications. | 23:42 | |
putting it in ext is an effective separation of the pugs core and what is ultimately a perl6 module destined for CPAN or its successor | 23:43 | ||
TimToady | I guess it depends on whether you think "ext" stands for "external" or "extra"... | ||
dduncan | if other discussions are approved, then t/ is no more a part of the test core than ext/ | ||
I consider ext/ to mean external | |||
obra | dduncan: you've walked through the licensing statements in the README? | 23:44 | |
dduncan | I also see that t/ to be a validation suite for all Perl 6 implementations, and is not a part of Pugs | ||
it is something that Pugs' tests depend on | |||
or is t/ going to be maintained with separate copies for v6.pm or Parrot et al? | 23:45 | ||
TimToady | I think that would be a recipe for disaster... | ||
obra | I expect that every implementation will both use a standard corpus of tests and have some of its own | ||
ideally few of its own, but always some of its own | |||
dduncan | yes | ||
some of my t/ changes are meant to support this move, discussed yesterday | |||
once done, the contents of t/ should be movable to its own distro, such as v6::tests, which is then an optional external dependency of Pugs and v6.pm and whatever ... so just one copy of the tests is shared | 23:46 | ||
TimToady | yes, saw that. though some of the from_perl6_rules tests were knocked out because they were for testing Perl6::Rules, TheDamian's old module, if I recall. | ||
dduncan | the contents of t_pugs/ et al stays with Pugs | ||
well, people with more knowledge than I can move things out of t/ or into t/ as is appropriate | 23:47 | ||
the moves I made so far were based on my knowledge | |||
TimToady | np | ||
dduncan | eg, t_disabled/ seemed like a legacy way to say 'don't run this', whereas we have skips of use_ok now | 23:48 | |
TimToady | I think subsets of Perl should be called Perk. :) | ||
"Perl"-- | |||
dduncan | indeed | 23:49 | |
obra | ^_^ | ||
TimToady | maybe with a modifier saying what's left out. | ||
so Perl-u is no unicode | 23:50 | ||
*Perk-u rather | |||
dduncan | now part of my point is, a dependency chain should be linear ... the general perl tests depend on Test.pm, and Pugs on the generals, so if the tests are distributed separate from Pugs, then Test.pm should too | ||
TimToady | And Perk-u2 would be missing, er, both Unicode and threading... | ||
dduncan | Test.pm should be distributed with the general Perl 6 tests, unless on its own | ||
obra snickers at TimToady | 23:51 | ||
TimToady | Perk-abcdefghijklmnopqrstuvwxyz would run on nanobots | ||
dduncan | fyi, unless I misunderstand, all the contents of Pugs' ext/ are meant to be things dependent on Pugs, not things Pugs depends on | 23:52 | |
things that Pugs depends on have been in other folders, or in third-party/ | |||
that is, ext/ are meant to be things dependent on Pugs or another p6 implementation, and not Pugs on them | 23:53 | ||
TimToady | using a tree structure to represent multiple dimensions of concern is always a bit problematic... | ||
obra | dduncan: rt.openfoundry.org/Foundry/Project/...E?rev=8028 summarizes the intent pretty well | 23:54 | |
TimToady | and 3rd party is more about licensing, I thought. | ||
obra | TimToady: indeed. I take back my comment about ext being about licensing | ||
dduncan | and I thought ext/ was a repository for things that are bundled with Pugs now for convenience, but later will become their own CPAN distros | ||
TimToady | let's just put everything in an RDBMS. :) | ||
dduncan | bug re yesterday, I assume you guys saw my p6c post? | 23:56 | |
if we agree that the general perl 6 tests are distributed separately, all the other details will fall into place | 23:57 | ||
TimToady | yes, I think the absence of feedback is actually good in this case. | ||
dduncan | as to what goes where | ||
TimToady | nobody could think of anything to complain about. :) | ||
dduncan | and Test.pm will end up wherever it is the most useful | ||
sometimes I worry about not seeing any replies, because the first thing in my mind is that no one read it, or that it was dismissed as unimportant | 23:58 | ||
sure, sometimes it means there are no arguments | 23:59 | ||
markstos | dduncan: I agree with your line of reason, from my vantage point on th sidelines. | ||
dduncan | but feedback can be either positive, or to hash out details more, which is what I expected |