Under no circumstances collapse your lambacamel duality | pugscode.org <<Overview Journal>> | pugs.kwiki.org | logged: xrl.us/e98m | smoke: xrl.us/fmw2 | win2k:r1434(228/3851) Linux:r1302(193/3383) MacOSX:r1342(189/3478)
Set by Corion on 2 April 2005.
kungfuftr moo? 00:00
shapr bark bark! 00:03
kungfuftr apologizes 00:06
been away, auto-smoke has been broken for the day
conflicts in run-smoke.pl, etc 00:07
is there any way to tell svn not to merge stuff if it's going to cause a conflict? 00:08
hhhmmm... everyone dead? or is it just me? 00:24
MatthewZ not dead... just don't know enough Subversion to answer your question :) 00:25
shapr same here
I use darcs. 00:26
though I'm doing svn for pugs.
kungfuftr ah, is it just me or is pugs not currently compiling (or linking perhaps) 00:33
MatthewZ I'm building a fresh checkout right now... 00:34
I'll let you know if it finishes (though it could take awhile; this is a 500 MHz Celeron) 00:35
kungfuftr =0)
ah, seems to build now... very very odd 00:45
looks like the smoke sandbox got into some odd state 00:50
putter well, that's 3 p5/t tests converted anyway. good night. 00:59
drbean before merging, svk diff might do the job to see if there's conflict, wouldn't it? 01:13
kungfuftr drbean: yar, don't see an automated way though 01:14
yay... smoke tests are working again 01:15
Darren_Duncan fyi, I just committed the new SQL::Routine SYNOPSIS - feedback is welcomed 01:31
jabbot pugs - 1452 - SQL::Routine resync with 5v0.58-to-be :
Darren_Duncan ... but I will be away from comp for next 30 mins or so ...
in particular, stevan , your feedback is appreciated since you indirectly influenced it 01:32
stevan Darren_Duncan: looking right now 02:01
Darren_Duncan: I would recommend showing the XML string it prints as well so people can compare it with the code itself 02:08
Alias_ What's the equivalent of scalar(@list) under Perl 6 02:42
@list.something... 02:43
Alias_ files a bug against Perl6::Bible (evil chuckle) 02:47
stevan Alias_: yeah +@list
force numeric context :)
Alias_ +@list? 02:48
ew
Is there a method?
stevan LOL
is there anything you do like about perl6 ??
Alias_ junctions!
Implicit Parrelelisation!
stevan Junctions rule :)
Alias_ I _love_ the fact that if they deliver on promises, Perl should kick ass on the dual-core boxes that will be common by the time of a 1.0 release 02:49
I guess I'm one of the people heavily on the business side of the fence
So I'm pro-simplicity and pro-psychology 02:50
And extremely pro-CPAN :)
and junctions for the most part do what people expect
stevan Alias_: I agree with you on many levels, but I am also pro-stronger code 02:51
and I think all the explict stuff in perl6 will make that happen
BTW - looks like no method for length
www.rodadams.net/Perl/S29.html#perl6::arrays
Alias_ I think it's internally contradictory
stevan at least not according to that
what is internally contradictory?
Alias_ Perl is always saying we don't force you do to things like Python does, and yet Perl 6 is going to have all this forcing of things in other ways 02:52
stevan Alias_: I actually think the final product will do that much less than it seems to do now
Alias_ After I've typed the twigil for the hundredth time, I'm going to start resenting that second character
stevan my guess is that as the language gets closer to reality it will get more DWIM-ish
Alias_ QUIT REMINDING ME!!!
... is what I suspect I'm going to be thinking 02:53
So, I like Junctions, I love library sharing between languages 02:54
assuming that happens
stevan thats more Parrot than perl6
it will happen with Ponie
Alias_ The odds of it being possible at all without someone writing some form of CPAN module to make it easy are practically zero
stevan yes it will not be easy 02:55
Alias_ But it will be after 6 months
CPAN will see to that
As it has for everything else
Anyways, back to real work 02:57
BTW "length" is on the S29 TO DO 02:59
So it may just not have been written up yet
stevan in the perl6::Array section?
or at the end?
Alias_ at the end
stevan the one at the end I think has to do with strings and has been replaced by .bytes 03:00
(at least last I heard, but I am not a frantic perl6 lang reader)
Alias_ no, it includes other things
want, vec, caller, sleep, etc 03:01
Darren_Duncan I'm back ... starting to read comments ... stevan , I see yours from 58 minutes ago 03:06
you figure I should display the XML too 03:07
fyi, given the current most-compact code I have written for the synopsis, about 1 perl line equals 1 xml line
would it be useful for me to show sample SQL strings that can be generated from the model, even though SQL::Routine doesn't do that itself? 03:08
Alias_ examples are always good 03:09
Especially if they show change
Even if it's the changed result of something down the line, people are good at inferring upstream cause 03:10
jabbot pugs - 1453 - updating File::Spec tests with use_ok(); 03:11
pugs - 1455 - adding tests for split(<regexp>, "") 03:21
pugs - 1454 - updating Pod::Stream::Parser to use spli
pugs - 1456 - * make optimized is now -O1 to save time 03:41
pugs - 1457 - * splitting with empty match now works; 04:01
pugs - 1458 - * add newlines to all .hs files 04:11
Darren_Duncan I have updated the SYNOPSIS ... commit in a few minutes 04:19
jabbot pugs - 1459 - SQL::Routine - added 2 more sub-sections 04:31
autrijus stevan san! 04:37
stevan: please don't add xxx to Prims. I've changed it to File::Spec::cwd()
Khisanth well it was originally __cwd :) 04:38
Darren_Duncan The newer SYNOPSIS for SRT, with output examples, has been committed as r1459 04:39
autrijus , I just have a bug to track down that executing the SYNOPSIS uncovered in the module, probably simple ... 04:40
autrijus oh?
Darren_Duncan I plan to commit the bug fix as soon as I find it, then I consider SQL::Routine to be finished
autrijus <- need to run for lunch soonish
okie.
Darren_Duncan meanwhile, stevan et al, any feedback on my additions following your last suggestions is welcome 04:41
jabbot pugs - 1462 - * xxx_file_spec_cwd is called File::Spec
pugs - 1461 - * remove httpd.p6
pugs - 1460 - * make ghci works again
ingy hola 04:43
Darren_Duncan hola 04:47
crysflame . 04:52
ingy Darren_Duncan: fyi, I was talking to autrijus and thinking that we don't wannt to changes the social norm of 'perl Makefile.PL' to 'pugs Makefile.PL' since eventually pugs will be renamed to perl again 04:55
Darren_Duncan I"m here
ingy not that you shouldn't write a pure perl6 MakeMaker
(god save your soul)
Darren_Duncan my main goal in that regard is that all /modules stuff is perl 6 ... what happens behind the implementation doesn't really matter now 04:56
so the files can still be named Makefile.PL
anyway, the FIRST thing I'm doing now is fixing a SQL::Routine bug before the release 04:57
ingy =)
what time is the release slated for?
Darren_Duncan don't know 04:58
Alias_ points ingy at rt.cpan.org for Perl6::Bible
Darren_Duncan last week it was a couple hours after now
ingy well autrijus is headed for here for lunch
so I'll ask her then
Darren_Duncan the bug manifests like this ... if you look at the SRT synopsis, you notice a few lines are commented out ... those fail under the current version but shouldn't
ingy Alias_: got it 04:59
Darren_Duncan 'her'?
ingy Alias_: I'll make you a freepan committer for the module
Alias_ ugh...
I added it because _I_ don't know what they mean :)
ingy Alias_: yes you do :P
Alias_ These stupid grand-sounding names always make me forget when they mean
ingy heh 05:00
well I will certainly improve the module over time
Alias_ That, and I still disagree with freepan on principle :)
ingy I wrote it on the train ride
Alias_: yeah, but you tend to disagree with everything new ;)
Alias_ ingy: Not everything. Only the things where people tend to "forge ahead" 05:01
Which is the reason we are lumped with all sorts of crap in the current generation of code
The idea of decentralised module distribution seems to have sprung up out of the ether overly quickly 05:02
ingy Alias_: well form a committee then. I'll just forge ahead
Alias_ That won't help
Evolution dictates that the first releaser wins... 05:03
ingy Alias_: oops gotta run
Alias_ Guess I'm just not a confident person by nature
Anyways, later
ingy later 05:04
obra ingy? 05:18
crysflame Alias: you convery much confidence 05:35
didn't betamax precede vhs? 05:36
dinosaurs precede humans?
not sure of what evolution you speak
Alias_ crysflame: First mover advantage
If someone gives you a crap way to do something where no way exists before, people gravitate to it and try to make it better 05:37
And if some of the basic premises are flawed, well too bad
(Not that I'm suggesting that freepan is based on flawed basic premises)
crysflame can't the basic premises be changed? 05:38
what need be fixed in stone?
Alias_ often, no
or it takes so much work that it never happens
Witness File::Spec
:)
crysflame i saw it ported to perl6 two days ago
gaal msys/6,4: Failed 43/172 test scripts, 75.00% okay. 362/3876 subtests failed
Alias_ And it still uses the same terrible API :)
crysflame Meta was an API rewrite
look at how well received it was 05:39
Alias_ Meta was just fine
gaal how come time's epoch is from y2k? is this specced, or some haskell artefact?
crysflame as directed by lwall
Alias_ It's just that the decision to lump 200 packages into one dist was silly
crysflame: I tend to prefer to go slower and devils-advocate myself at each step 05:40
So I move a bit slower, but almost never have to go back
Witness 5 total rt.cpan.org bugs for 60 dists 05:41
(Of course, it might just be nobody is using any of them) :)
theorbtwo Mornin, all. 05:48
gaal heya 05:49
Darren_Duncan bug fixed in perl 5 version ... now syncing the perl 6 version ... 05:57
drbean Jesse Vincent at YAPC::Taipei was also questioning release early, release often 05:58
Khisanth what about it? 06:00
drbean Or was that Leon Brocard, or Sam Vilain? Sorry for the noise.
theorbtwo Leon Brocard's the one with the French accent. 06:01
Though I suppose it takes a pretty high degree of fluency to be able to distinguish.
Eeep: Perl6::Bible has no Makefile.PL! 06:06
gaal AST.hs makes ghc very hungry. 06:10
unfortunately it doesn't seem to free() after compiling it, either :( 06:11
oh, actually, it does but it takes quite a while to register.
jabbot pugs - 1463 - in SQL::Routine, fixed a module code bug
Khisanth heh yes ... building pugs requires a lot of memory...
Darren_Duncan the SRT bug fix is committed
now I see nothing left to do in the short term concerning my /modules stuff 06:12
and I can move on to other tasks
away from comp for a bit ... 06:18
except for this ... 06:19
autrijus, don't hold the release anymore on my sake
gaal what time is the release scheduled for? 06:30
autrijus okay.
gaal: a release is coming in 10 hours or so
gaal the conf being over lends some convenience :)
nothingmuch morning 06:31
gaal the xreferencer in yam_harness is broken on msys, probably a mistreated newline or something. i have to go to work but will try to fix that soon
hey nm, by nm!
bye that is. i can't spell. 06:32
nothingmuch ciao
gaal oh, i get "couldn't match line" on linux too, though less often it looks. 06:33
anyway, bye.
theorbtwo There's a few tests that don't use Test.pm, and don't output line-number info.
gaal aha! naughty.
nothingmuch sorry, my bad 06:34
gaal i think though that on msys they all fail to be indexed.
nothingmuch should have been reported better
gaal not sure - will check - be seeing you.
theorbtwo Somebody should poke ingy; Perl6::Bible is quite broken.
mugwump theorbtwo: go on... 06:35
theorbtwo There's no Makefile.PL in the archive.
06:35 castaway_ is now known as castaway
theorbtwo ...and the p6bible isn't compiling for me, but that might just be me. 06:35
nothingmuch wtf p6bible? 06:36
theorbtwo It's supposed to be a command-line tool of some sort... I'm not really sure myself.
But I suspect catalog_tests is going to need to use some of the routines in Perl6::Bible, and they're all undocumented. 06:37
nothingmuch will svn up soon, and see for himself
mugwump theorbtwo: he's onto it now. you can get the svn version if you want, or wait a few minutes 06:38
theorbtwo waits for his apt-get upgrade run to finish so he can install Spiffy. 06:39
Where's the SVN??
Er, s/\?\?/?/
mugwump svn.kwiki.org/ingy/Perl6-Bible, but it will become a freepan.org address soon 06:40
theorbtwo Thanks.
mugwump np 06:41
theorbtwo SVN's missing the inc dir.
mugwump yes, you'll need Module::Install installed 06:42
theorbtwo I do; the first two lines in Makefile.PL should be C<use lib 'inc'; use Module::Install;> rather then C<use inc::Module::Install;> 06:43
Oh. Or not; Module::Install doesn't like that for some reason.
asavige unsure of this "Autrijus Protocol" "releng" thing 06:53
Given a release is due in 10 hours should I hold off adding some new operator tests until after the release?
theorbtwo Don't think so.
Making failing tests into todos is the last thing that happens before a release, generally. 06:54
castaway sneaky
asavige theorbwo: Thanks. Is there a "cut off time" for adding new tests before a new release. One hour, say? 06:59
theorbtwo Donno. 07:00
castaway I dont see why there should be.. 07:01
At some point, you'll be checking into the svn, and the person building the release will have already checked out the stuff to release 07:02
Darren_Duncan I'm back ... for a brief time only 07:16
anyway, while I said I would do something with makefiles today, I actually won't 07:19
I'll start into that after the current release, so there is more time to do it properly
in the mean time, I've only got a few hours of work before my perl 5 distros will go on cpan, so they're planned to ship tomorrow 07:20
good night
Corion yawn 07:51
theorbtwo G'mornin, Corion. 07:52
nothingmuch morning Corion
castaway pokes Corion awake
Corion Good morning cabal!
theorbtwo I'm a cabalist?
castaway certainly isnt
Khisanth there is a cabal? :)
castaway Corion, can you translate something for us? ;) 07:53
Corion castaway: Yes, if you trust me ;)
castaway heh..
Corion Oooo - lots of fixes it seems :)
castaway well hopefully quite simple
nothingmuch wants to be put to sleep
theorbtwo Hmm, nm? 07:54
castaway We saw signs saying "StVO gilt sinngemaess" .. I know StVO are like the standard traffic regulations, but what was it trying to say?
castaway searches for the chloroform
nothingmuch sleeeeep
i don't mind if i don't wake up
if i DO wake up, i'd like to still have my job though
castaway heh
nothingmuch so it's either later, or permanent
gaal was in a cabbalist wedding two weeks ago, was horrible 07:55
Corion castaway: That means that the StVO applies "where relevant" or "adapted"
gaal religious frevor--
castaway Hmm.. I was thinking it meant "this is privat ground, StVO doesnt usually apply here, but we're using it anyway" ..
theorbtwo notes that the English word cabal isn't generally considered to apply only to practitioners of qaballah. 07:56
nothingmuch it's also a worshipper of the xmen character
Corion castaway: Yep 07:57
theorbtwo I didn't know there was an xman named cabal... though I do remember one named cable...
castaway Ah, good
gaal notes the ontic viability of puns
castaway Then we had a long discussion about that not being allowed in the US.. cos its "impersonating government signs" ;)
Corion castaway: The "sinngemaess" is mostly because the StVO only applies to public roads. I think the "sinngemaess" is the s!public road!this space! operation
castaway right, that was my thinking
nothingmuch theorbtwo: beh
Corion castaway: The signs should be green instead of red
castaway the road signs? hmm, they werent 07:58
Corion Oooo - we can inject builtins directly into the namespace. Nifty :)
castaway (This was on/in the Munich Trade Fair centre)
Corion castaway: Hmm - that's weird. Because normally, you aren't allowed to use official signs. But maybe it was because it was on semi-public/private space 07:59
castaway So I guess we were both right :)
I'm fairly sure the MTC isnt public grounds
(especially not behind the gates in front of the big halls) 08:00
theorbtwo I wouldn't be surprised if it was some sort of public-private mix.
(Which I do not approve of in general.)
Corion castaway: Ah, if it was gated/walled anyway, then you're free to do what you want. If it is publicly accessible, you get more problems I think 08:01
But traffic law is not my speciality
castaway heh
Corion Why are we pulling in Module::Install as a prereq ? Does it solve any problems for us ? 08:02
castaway "we"?
Corion "we"
... or so the backlog tells me
theorbtwo Perl6::Bible is. 08:03
Corion (Perl6::Bible, as distributed with Pugs)
theorbtwo ...and it appears to be doing so very poorly, or at least it was when last I saw.
Corion Ah. I confused it with ... what's its name ... Module::AutoInstall or something. Module::Install is yet another frontend to Module::Build it seems. Oh well. 08:05
Too bad - shapr hasn't put in want() :) 08:07
Under no circumstances collapse your lambacamel duality | pugscode.org <<Overview Journal>> | pugs.kwiki.org | logged: xrl.us/e98m | smoke: xrl.us/fmw2 | win2k:r1468(234/3876) Linux:r1302(193/3383) MacOSX:r1342(189/3478) 08:12
shapr I'll put in half of it in the next hour or so. 08:12
Corion (+ 1) shapr 08:13
shapr haha
Corion A greeting for everybody in their own language :)
shapr That's culturally understanding :-) 08:14
Khisanth Corion: like purl? :)
Corion Khisanth: Heh. Well, IRC.pm will be a project for the next week I think ;)
Khisanth POE ... 08:15
Alias_ heh
baby steps
Khisanth that would require objects 08:16
Corion Khisanth: No. POE is an abomination for languages that don't have coroutines or threads. 08:17
shapr What's POE?
Corion I've programmed such languages long enough to see the merits of a coherent flow of control 08:18
theorbtwo I think Corion defined it pretty well...
Alias_ POE is a process sharing system
For when you don't have decent threads
Corion shapr: Perl Object Environment. "Cooperative multitasking" by using manually programmed state machines
shapr I think I agree with your assessment then.
Alias_ Invented mainly because Perl's threads sucked or were unstable for so long :)
Corion shapr: You send messages and then return from your subroutine, and the kernel dispatches the next message. Ugly to program in, but for a long time the roundest wheel there was. 08:19
Alias_ But a lot of neat things have been written using it
shapr It sounds like an interesting hack.
Corion It is, in principle, OK, except that state machines are ugly and rip your code apart in ugly ways.
shapr Well, interesting hacks are interesting. But they're not always elegant. 08:20
I think writing POE code would frustrate me.
Khisanth Corion: I see it more as a useful wheel for avoiding having to write your own event loop :) 08:21
Alias_ It requires something of a different paradigm/mentality
And it's nice in that lots of CPAN POE things come for free... web servers, IRC bots, etc etc
Corion Khisanth: But for example Coro.pm is the same useful wheel in a much nicer package. Except that it doesn't work everywhere :)
Alias_: Yep - all of these would need to be rewritten. But that'd be worthwhile IMO ;) 08:22
Alias_ I want a ThreatNet bot, but I keep getting told that POE bots don't handle large message volumes
So I never get around to writing one
Corion Win2k smoke matrix updated at datenzoo.de/pugs/win2k.html 08:23
Alias_: I never wrote anything big in POE because it gives me flashbacks of programming in Turbo/Borland Pascal
shapr GHC's threading is nifty. iirc it's coroutines with preemption during memory allocation.
Khisanth Corion: but does Coro also have the various other wheels as well?
Corion ... not that TP was bad at the time ;)
shapr That means you should be fine with 10,000 threads, and you get passable preemption as well. 08:24
Corion Khisanth: No, Coro doesn't include all the wheels that POE has. It also isn't that stable :)
shapr: Does it do preemption during socket/file operations too?
... I'll have to look into threads then ...
... or into my make module ... 08:25
choices, choices
shapr I think it depends. I'm sure that'll force memory allocation, but ...
GHC's runtime has a -threaded option where the any coroutines that are ready to run can be handed to a free OS thread from a pool. I'm not sure how that interacts with preemption. 08:26
Oh, did you know GHC can run on the bare metal? It's likely Pugs will be able to boot by itself too without too much extra work. 08:27
Are there other, more complete, implementations of Perl6? 08:29
theorbtwo No. 08:30
There's the perl6 rules generic engine (or something like that), Patrick McMahaud's work... but I'd hardly call it more complete. 08:32
jabbot pugs - 1465 - * elems, bytes, chars 08:41
pugs - 1464 - r6094@speights: samv | 2005-04-03 16:2
Corion shapr: PugsOS :) 08:44
Khisanth and entire OS written in Perl? 08:47
Alias_ oh dear god, save us all :)
Corion :)
castaway sure why not ,)
Khisanth imagines the wackiness that will lead to 08:48
Alias_ Just whack CPAN on a CD, point the bootloader at PerlOS::Boot, and you're done
Corion Alias_: :)))
One would still need a browser, to render HTML :)
Oh. There is HTML::Display :))) 08:49
castaway HTML::Display ,)
Corion castaway: Indeed :-))))
Khisanth Corion: that still requires a browser 08:50
Corion Khisanth: I know. I'm the author :))
Khisanth then how did you manage to forget about it?! 08:51
Corion Khisanth: I didn
... didn't, really :)
castaway *g* 08:52
autrijus jabbot: seen stevan 09:00
jabbot autrijus: stevan was seen on Sun Apr 3 11:00:29 2005
Corion autrijus: I noticed yesterday that Haskell or Prim.hs don't like builtins named __cwd (for whatever reason) 09:01
autrijus really. hrm
not sure
theorbtwo Do they like a builtin named _foo?
Corion ... but I didn't know that colons are cool in builtin names, otherwise I would have used File::Spec::cwd myself :)
autrijus anyway it's a bad idea anyway
Corion theorbtwo: Never tried
autrijus just use File::Spec::cwd :)
no, it could not work, I hacked it so it can 09:02
Corion autrijus: Yes, that's the clean way :)
autrijus: Aaah - cool of you!
autrijus is beginning the huge work that is ChangeLog
Corion autrijus: Another release converging on 2pi ?
autrijus yes
Corion Wasn't the last release three days ago or something?
That's really really quick :) 09:03
autrijus no, last release was one week ago
we follow a weekly release cycle.
Corion theorbtwo: BTW, is there some consolidation of the smoke tests ? Or is that still in the works?
autrijus: Ah
theorbtwo Eh? 09:04
Corion theorbtwo: Across platforms, I mean
theorbtwo Oh.
Donno.
autrijus hi shapr 09:11
shapr hiya autrijus
Corion & # breakfast 09:21
09:26 Aankh|Clone is now known as Aankhen``
elmex wo 09:40
ho
shapr w00h00
Corion Hmmm. I should add proxy support to LWP::Simple ... 10:55
... or at least document that there is none yet :)
shapr Is a stick turing complete?
theorbtwo No, but it may have the Buddha nature. 10:56
shapr snickers
Corion Hmmm. How would I test against LWP::Simple using a proxy without doing ugly set up? Any suggestions? 10:58
metaperl how does the current LWP do it?
and would thttpd help? 10:59
Corion metaperl: I want to avoid any elaborate set up :)
metaperl: I could spawn a local proxy or something, but these things are fragile at best
metaperl oh. sockets are demanding
Corion metaperl: I know :) 11:00
metaperl shapr, have you seen the Perl6 slurpy lists?
theymake me want to vomit
shapr no, what's that?
Corion metaperl: Sockets or slurpy lists ?
metaperl dev.perl.org/perl6/synopsis/S06.html
Corion, slurpy lists
Corion metaperl: Ah, but you need to have both, slurpy and non-slurpy lists. But I haven't looked at S06 yet 11:01
metaperl that URL shows them under "List parameters"
Corion metaperl: I don't see anything bad there - the recipient declares how it wants its parameters - slurped or nonslurped. Fine with me
shapr How do you know how many to slurp? 11:03
theorbtwo As many as you can. That's the basic defintion of "slurpy". 11:04
Corion shapr: I imagine the stuff is kept lazy. Or rather, it should be, for infinite lists :)
Aaah. I'll bite the bullet and fake the local HTTP proxy via threads.
shapr I'm lost about slurpy lists, but hacking more pugs should help. 11:05
metaperl shapr, f6.p6 in examples shows them in use 11:06
shapr I'm still trying to figure out how to jump from the code in retEmpty to using that for want. 11:09
The secret is in opEval, I'm sure of it. 11:11
hiya Schwern 11:18
Schwern For god's sake don't base Pugs on MakeMaker. That is all. 11:19
Alias_ heh
Corion Schwern: I'll force people to use _my_ Perl reimplementation of make instead :-)))) 11:20
theorbtwo Sounds good, Corion.
Corion Schwern: And theorbtwo has just volunteered to port it I hear.
No. I'm not really interested in meta-packages / meta-modules... And I know better than falling for the same trap that caught the Module::Build people - developing a module that nobody will ever use. 11:21
... as long as EU::MM is around.
Schwern Corion: I have fired weapons which throw projectiles larger than your fingers.
Corion But Pugs/Perl6 has the good situation of not having any build system, so we have a clean slate :)
jabbot pugs - 1466 - Ported HTTP::Headers.
theorbtwo fails to see the relevance, Schwern. 11:22
Alias_ uses Module::Install now
Corion Oooo. HTTP::Headers. Shiny toys.
theorbtwo BTW, Corion, I use M::B.
Alias_ Module::Install is quite a nice model for installer scripts, if fairly twisted internally
Schwern puts the barrel closer to theorbtwo's face.
Alias_ CPAN has almost 10% M::B coverage now
I have a script somewhere that tests it
But 350+ dists use it 11:23
Schwern The MI interface is fine. But its still a MakeMaker wrapper.
theorbtwo I offically dislike Module::Install; I can't get Perl6::Bible to install because of it.
Corion theorbtwo: I also use it for one module. But M::B will never replace EU::MM, because of the ugly incompatibilities between the two.
Schwern Alias: How many if you eliminate those which haven't been updated in the last year?
Alias_ Schwern: Not sure...
Corion BTW, Schwern, didn't you promise PREFIX= for M::B ? :-)))))))))))))))))
Alias_ Schwern: And I'm not doing a 6 hour tinderbox run to find out :)
Schwern Corion: Yes. The sheer pain at trying to implement it says volumes. 11:24
Alias_ wonders if we should lobby Microsoft to let us distribute nmake
Schwern No.
Corion Alias_: I think Perl6 has the one chance to use a pure micropugs / minipugs make utility. 11:25
Schwern The dependency on an external build tool is the problem.
Corion If we miss that chance, we'll have to wait until Perl7.
Schwern No make utility.
Corion schwern++
Schwern No external build utility.
Alias_ There can only be one
shapr decapitates a nearby ninja
theorbtwo I quite agree.
Schwern No having to build a script to be executed by something else.
Corion One ANSI C file for building minipugs, and from there it's Perl6 code only.
Alias_ Then someone needs to decree it
theorbtwo We should be able to install pugs modules using nothing but pugs. 11:26
Corion Alias_: Yes.
Alias_ And that someone needs to be Larry
Schwern Alias: I already have. Many times.
Corion I really should rework my buggy module.
metaperl i'm not sure if this is relevant, but have you all heard of makepp? It is written in Perl and parse Make syntax but can be extended in Perl
Alias_ Schwern: Then invoke Rule 1
Corion Alias_: No. Matter-of-fact can be stronger than Larry, especially, if it's already there. :)
shapr People are stupid?
theorbtwo Schwern doesn't have a rule 1.
castaway One cannot decree in an open community, IMO.. The replacement either needs to work and be better for the users, or it will fail to get followers.
Alias_ theorbtwo: ... yes... and therefore...
shapr Right, open source is just as resource limited as anything else, but the resources are the minds of developers. 11:27
Alias_ If Larry says that Perl6 modules don't use make, then they don't use make
Corion Larry will use anything that's Good Enough. And about anything is better in the long run than supporting the various (n)make utilities.
metaperl makepp.sourceforge.net/
Alias_ And anyone who _does_ use make knows they arn't doing the blessed thing
Corion Alias_: It's not so much about the modules, but about Perl6 itself.
metaperl drop-in replacement for GNU make written in Perl
Juerd has never understood why we use make.
Schwern metaperl: The existence of an intermediate build tool is always going to be problematic, pure Perl or not.
Alias_ Tell people what to do, but don't stop them doing it the other way
Corion metaperl: I don't want any make utility.
castaway cos its there, Juerd, I suspect. 11:28
Alias_ I just want everything to work the same between Unix and Win32
Juerd Make can do nothing that perl itself cannot.
Alias_ Maybe someone should port ant... Pant anyone?
Corion In principle, the idea of M::B is good, just the implementation is bad, or the lack of backwards compatibility with EU::MM. But Perl6 has a clean slate, so it might work this time.
Alias_ knows nothing about ant
shapr make is a domain specific language that does directed acyclic graphs of build dependencies.
Schwern Alias: That's just another external build tool. Same problem.
castaway Ant IS pants.
XML--
Alias_ Scwern: "Port"... 11:29
Corion And the bugs in M::B might disappear / be not that important :)
Schwern Alias: Its still an external build tool. You don't understand.
shapr Why is an external build tool bad?
castaway M::B isnt external?
Juerd shapr: dependencies
Schwern Corion: Please stop sniping at MB. I'm not in the mood.
Corion External build tools are bad. Perl6 should be able to build itself starting with one C file.
Juerd shapr: Depending on something when Perl itself can do the same thing makes sense only during bootstrapping...
Corion Schwern: Ah well :)
Schwern Ok kids. Here's why we can't use make or ant or pmake or makepp or any other build tool you might think of. 11:30
shapr Hm, I disagree. Perl can't be good at everything.
Corion Schwern: Think of it as reminiscences of a failed relationship
Schwern Gather round.
Juerd shapr: It very well can
shapr: And it will
Schwern Corion: Except you're dating a 12 year old.
shapr I don't think any language can be good at everything.
Schwern Corion: The thing ain't done yet.
Corion Now, what's wrong with dating a 12 year old ? :)
Juerd shapr: It can be very good at the things make does 11:31
shapr Why not wait to port Make to perl/pugs until the perl6 bootstrap is done? In the meantime we have something that does work.
Juerd shapr: But in a better way :)
Corion Schwern: I think I'm more upset with the parents in law, of both, the 12 year old and the 5 year old.
Alias_ quiet... he's typing
;)
Schwern Now. How many folks here have tried to extend MakeMaker?
Corion I have.
Schwern Ok. And I'm sure you appreciated the nice, clean API?
shapr Juerd: In my opinion, you'd need to write a good graph reduction language interpreter in Perl for that to work well.
Juerd Schwern: Depends if chickening out on first sight of the source counts as actually trying.
Corion Schwern: Of course I've appreciated it, the same way I appreciated patching Inline, CPAN and other stuff I only have intermediate interest in :) 11:32
Juerd shapr: If that has to be done, it has to be done. Simple as that. The functionality will be wanted by many anyway.
Schwern I hope you'll all apprecate the sarcasm.
theorbtwo shapr, but like you can write parsers in haskell just fine. All it needs is a library.
Corion Schwern: That is, no, I loathed it. :)
Alias_ understands
Schwern MakeMaker has no API. Why? Because in the end MakeMaker methods spit out hunks of a Makefile.
shapr theorbtwo: Sure, yeah. But then it's not Perl itself, it's a separate language. Maybe I'm just being pedantic. 11:33
Alias_ "Intermediate Language Considered Dangerous"
shapr shrugs
Corion . o O ( MakeMaker is a templating system before we had the insight of the various failed templating systems )
Juerd s/Dangerous/Scary!/
:)
Schwern In order to alter how MakeMaker works you have to write your own methods which spit out Makefile hunks.
theorbtwo Sure it is: It's perl with a library, the same way as parsec is haskell with a library.
Schwern This is a disaster.
Alias_ It's like writing SQL :)
theorbtwo Of course, what you can and can't do in those hunks is completely undocumented, or at least horribly underdocumented.
shapr theorbtwo: Does that mean that pugs is Haskell with a library?
theorbtwo Worse: It's like writing SQL that generates SQL. 11:34
Alias_ (which, as far as I'm concerned, is also a disaster)
theorbtwo Or possibly SQL that generates perl that uses DBI to interact with the database.
Corion Schwern: I'm all with you here. In principle, the idea of M::B is good, and with P6 we have the clean slate that is needed.
Schwern If you make the API sufficiently advanced such that one can extend MakeMaker in all the ways people want to (which is to say, all of them) then you wind up reimplementing the build tool.
shapr Yow, spawn of cthulhu!
Corion Schwern: Have you tried to (re)implement EU::MM on top of M::B ?
Schwern At which point you just throw out the build tool. 11:35
Corion: See Module::Build::Compat
theorbtwo shapr: Read the Makefile that pugs' Makefile.PL generates.
Corion Schwern: Ugh. Not in that way, I meant. :)
theorbtwo It consists largely of calls to perl -e.
Alias_ Wait... so Module::Install could target ::Compat? And I'd be able to have a Build.PL after all?
Schwern Corion: But I can't even document all of what MakeMaker does, why would I want to reimplement it?
Alias: Module::Install could target Module::Build.
Alias_ That would be even nicer
Schwern Yes, it would wouldn't it. And it wouldn't break with every internal MakeMaker change. 11:36
Alias_ But I don't see a lot of movement in M:I and the code inside it looks pretty simple
Schwern heh
You wish
theorbtwo I was trying to install a module that uses M::I recently.
Schwern Like the Pugs::MakeMaker code its astoundingly brittle.
It relies on specific formatting and internal MakeMaker targets.
Alias_ The symbol table stuff and module loading is twisty as hell, but the bits and pieces are surprising dumn
theorbtwo The first line was "use inc::Module::Install", but there was no "inc" directory.
Schwern Which is the only way to do it, alas. 11:37
theorbtwo So I said, OK, it should be use lib 'inc'; use Module::Install.
Alias_ theorbtwo: That's because Module::Install bundles itself into the package
theorbtwo Nope, doesn't work, dies with an error that says "don't do that".
Alias_ in the /inc directory
theorbtwo Yeah, well, it wasn't bundled.\
Alias_ Also, Module::Install, when installed, also installs to lib/inc/
Schwern theorbtwo: Could have just been a bungled distribution. Which one was it? 11:38
Alias_ So the makefile runs when it's not bundled
Schwern: erm... inc::Module::Install is the blessed way
I have 40-50 packages doing it
Schwern Alias: But if there's no inc/ directory?
theorbtwo Perl6::Bible (SVN; the one on CPAN has no Makefile.PL at all).
Alias_ Schwern: There should be... Module::Install on the system should copy itself there
Schwern Alias: Right. theo's saying there wasn't one. 11:39
Alias_ Take a look at the layout on your system
right
Which means Module::Install is installed into the pugs SVN wrongly
Schwern theorbtwo: Oh, straight out of SVN.
Alias: Well, its not installed into SVN in the first place.
theorbtwo Correct, Schwern.
Alias_ So, he can't load a badly named module, that isn't installed anyway?
And isn't bundled like it should be 11:40
Schwern theorbtwo: I think the issue here is that you were pulling the module straight out of the repository and it hadn't been prepared for distirubtion.
theorbtwo So Module::Install breaks when you try to use it like you'd use any other perl module.
I tried that first, Schwern; the version on CPAN has no Makefile.PL at all.
Alias_ theorbtwo: If you mean, you can't just chuck the .pm file into your lib and expect it to work, without actually installing it, yes :) 11:41
Schwern theorbtwo: search.cpan.org/src/INGY/Perl6-Bibl...akefile.PL
jabbot pugs - 1467 - Fixed use_ok(): Missing $desc
Alias_ theorbtwo: In the same way you can't just chuck the .pm files into lib for something that needs some XS compiled
theorbtwo Yeah, it was only 0.11 this morning. 11:42
Alias_ Module::Install is not a "simple" module in that sense
Schwern theorbtwo: They're working fast. Things get broken.
To complete the Mobius Strip, I'm trying to fix up Module::Install so MakeMaker can use it. 11:43
Schwern leans back and grins. 11:44
theorbtwo I don't see why any of this should be so difficult.
Alias_ So do you consider Module::Build to be "Done Right" in the various senses?
theorbtwo For simple modules, the installer should be simple to use.
And Perl6-Bible is a dead simple module.
Alias_ really? 11:45
It needs to compile POD and install them into man... etc
theorbtwo Really. It's a bunch of pod, one module, and one script.
Compiling POD to man and installing it is something a simple module is expected to do.
Alias_ And installing to bin?
actually... probably yes :) 11:46
theorbtwo Is very very mildly strange.
Alias_ I'm not sure why we need a bin reader in any case
theorbtwo Nor am I. 11:47
And some docs on the module itself would be nice.
Corion Ooops. %ENV is readonly :)
Alias_ But them I also don't get why the thing that installs packages needs to know how to build them too
in the way that Module::Build/MakeMaker etc does 11:48
Schwern theo: I think your confusion here comes from the fact that Perl6::Bible ain't exactly optimized for ease of distribution yet.
castaway because they come as source?
Schwern theo: Ingy is used to using MI, that's what he used. 11:49
Alias_ And M:I really does work quite well
Schwern Alias: Its got to install them somewhere.
castaway and install from something. 11:50
Schwern Alias: The builder has to "install" the package it just built somewhere so that the installer can see it to install it.
Alias: What would be the gain in separating the logic of the two?
Alias_ Schwern: I mean more in the sense of the "dist" command 11:51
Schwern dist as in to make a tarball?
Alias_ yes
Schwern Like "make dist"?
Alias_ or ./Build dist
Schwern As opposed to...?
Rolling your own tarball and distributing lots of ~ and .bak files? Not to mention your .svn directory.
Alias_ Well... having a tighter module that dealt with build/install and was realtively easily bundled, and a biggest one for doing the "Packaging" that added the rest of the functionality 11:52
ugh..
s/biggest/bigger/
theorbtwo I'd rather not expect people to bundle the installer module with every module they write.
Schwern You can write that if you want.
Alias: "make dist" doesn't stop you from doing that.
theorbtwo I wonder what percentage of CPAN's size is just redundant copies of Module::Install, Module::Build, and friends. 11:53
Alias_ Module::Install is about 7k increase in the tarball
Schwern theo: Eh, disk is cheap.
theo: Too many people have whined about modules having too many dependencies.
Alias_ I've been including a lot more deps lately 11:54
Schwern MI solves that problem handily. It even strips out the POD before redistribution.
Alias_ Mostly test modules
And it should pack tighter once PPI::Squish is done
or whatever it gets called
Schwern Oh dear.
Compress::Perl
Alias_ I've got the module here already from the pre-0.900 days 11:55
strip pod, strip comments, remove leading/trailing whitespace, useless ; , etc etc
I draw the line at trying to rejigger variable names though
Schwern Change "foreach" to "for" :) 11:56
Alias_ heh
theorbtwo I'd really love for a makemaker replacement that could easily make debs, rpms, and whatever other sort of packages people want to make.
Schwern Oooooh. Hufman encoding of lexical variable names!
theo: You don't have to replace Makemaker for that.
Alias_ Schwern: PPI should be able to know there lexically declared vars get used soon
Schwern theo: And CPANPLUS and/or Module::Build has some of that functionality already. 11:57
Alias_ At least for the basics
theorbtwo Schwern: Yes, but MM needs to be replaced, and I'd like for the replacement to be able to do this.
Schwern theo: I'd rather it didn't. I'd rather someone ELSE did all that.
Half the problem with MakeMaker is it tried to do everything.
Alias_ Schwern: There's a good reason to seperate out the packaging from the build/install'ing
Schwern There's code in there to do RCS checkins!
Alias_ Module::Package::Tarball...
theorbtwo I'd rather that more modules had enough metadata to make it possible.
Alias_ Module::Package::RPM
theorbtwo Yes, Alias_.
Schwern Alias: I'd leave tarballs in the core.
theorb: Such as META.yml? 11:58
theorbtwo But they should be a clean way of making those Module::Package::*s.
Alias_ theorbtwo: Most of the really sweet solutions I've designed in my head generally involve VMWare images :)
theorbtwo That sounds like a bad idea. 11:59
At least use qemu images.
Alias_ $your_favourite_emulator
theorbtwo What I'd like the core to do is define ways of putting in all the metadata you can think of.
Schwern Why do you need an emulator to make a package?
theo: See also META.yml
Alias_ Schwern: Because it's going to have to do compilation and testing and various other crazy stuff in the make/build script? 12:00
theorbtwo Yes, but it needs to be better defined.
Schwern module-build.sourceforge.net/META-spec-new.html
Corion Ugh. Does C< try { %ENV{$key} = $val } > mean something different from the Perl5 equivalent ? Because $! gets set to %ENV afterwards.
Schwern That good enough?
Alias: So? The author does that.
theorbtwo Also, META.yml is generally built from the Makefile.PL (or equiv) presently. 12:01
Schwern theorb: From the Build.PL, yes. What's wrong with that?
Alias_ or the Module::Install script
Schwern (Don't even bother looking at MakeMaker's implementation)
theorbtwo Because if the META.yml field defines something, but it's source provides no way of setting it, it will never get set. 12:03
Schwern ...
theorbtwo I'd like so see a way of specifing dependencies that are not perl modules, and of specifing ors on the various dep lists.
Schwern Yeeees. Ok.
Build.PL is a program.
You can do whatever you want in it.
theorbtwo Oh, that's what requires_packages are for. 12:04
Schwern :)
Alternatively, patch up Module::Build.
Alias_ Granted though, Module::Install is a little weak in that area
even no_index is undocumented
But it's China/Tawain-ware... so that's somewhat expected
Schwern WLECOME TOO HAPPY LUCKY, FUN INSTALER MODULER!!! WE HOPE YOU AND YOUR'RE FAMILY AND YOU'RE ANCESTORS ENRICH THEIR RABBITS WITH THIS FINE CRAFTED SOFTWAR!!! 12:06
Schwern looks around for autrijus.
Ok, I'm safe. :)
theorbtwo is surprised none of the far-eastern developers are here to beat Schwern to a bloody pulp.
Schwern hee 12:07
theorbtwo Most of them seem to speak quite passable English, BTW.
Schwern Hey man, I've seen Autrijus lay down the phat beats
Alias_ theorbtwo: Speak, sure, but some of the documentation for various things is horrible
horrible in the sense of incomplete... 12:08
Schwern BOY AM I GLAD MY RACIAL SLANDER IS ALL GETTING LOGGED
shapr Who were you racing?
theorbtwo xrl.us/fmw2
Schwern shapr: NASCAR CAN DRIVE 55!
Alias_ More shame me for not helping to fix it though :( If only I could work out how the svk internals worked, so I could document it :)
theorbtwo Not just logged: publicly logged.
Alias_ Racial...? 12:09
shapr So, can someone help me with this want implementation? I'm not really sure how I can get retEmpty code to work like the op1 code.
Alias_ OK, I'm a languagist! So what!
Schwern Musicalologist 12:10
Alias_ I happen to think that people that don't speak English as a first language sometimes produce somewhat lower standards formal documentation (except those embarrasinly good dutch)
Although their spelling is generally better than mine :)
Corion Alias_: Lower compared to what? :)
theorbtwo Alias: "somewhat lower standards formal documentation"? 12:11
Schwern Yeah, I'm not seeing high grades for English programmers writing docs either.
Alias_ Corion: There's a certainly level of conceptual clarity missing at times
theorbtwo I don't think /anybody/ writes both good documentation and good code.
Schwern Non-English speakers have a lock on this?
Schwern points at theorbtwo: LIES!
Alias_ Schwern: No, but there's been a string of them I've had problems with
jabbot pugs - 1469 - Added information to Test.pm test suite
pugs - 1468 - %ENV is readonly and behaves strange whe
Alias_ The SVK guts for one, and the Module::Install guts for two, just in the last 3 months 12:12
Schwern Alias: Umm, realize they were authored by the same person.
Alias_ The only thing I can compare it with are the Software Diamonds docs
Schwern: Then that would probably explain it
theorbtwo I suspect it's very difficult to look at code you yourself wrote, and look at it from the viewpoint of someone who doesn't know the code.
Schwern Alias: Surprise!
theo: It is, but its learnable.
Alias_ You should be designing your APIs from the beginning for people that don't know how the guts work 12:13
unless it's meant to be an extremely technical module
theorbtwo I've heard I write quite readable code, which is good, because I suspect I write unreadable documentation.
Corion Alias_: But the API is not always the documentation. Especially when there are concepts that are not obvious through the API 12:14
Corion goes outside, washing and cleaning the bike
Schwern theo: "Good coders can't write good docs" is just a cop out. Documentation is a skill to be learned and practiced just like coding.
Alias_ True, but when you've got very little if any DESCRIPTION, and the API is complex, unclear and only partially documented, it's a problem 12:15
Someone look at XML::XBEL and tell me what it does
Corion Alias_: Ah well - I don't see non-EN-* coders holding a monopoly on unclear docs :)
Alias_ I'm sure if I knew what an XBEL file was, it might help. But without knowing about XBEL files, it's completely opaque
Schwern Corion: APIs have layers.
Corion Schwern: Like ::Simple :)
theorbtwo wonders if anybody wants to critique the docs of Sort::Merge 12:16
Schwern Corion: Like its not just what the external user sees. You can have internal APIs
Sums up the anti-build tool argument. www.pobox.com/~schwern/talks/MakeMa...de011.html 12:17
Alias_ theorbtwo: Reads fine to me, although that SYNOPSIS code is packed a little tight :)
Schwern In the SVK example they really, really, really should document what all those internal modules do.
Alias_ indeed
theorbtwo Woo!
Alias_ Hell, I've WRITTEN a giant CVS wrapping API, and I _still_ can't work out what the SVK internals do 12:18
Schwern theo: The DESCRIPTION is too defensive.
Alias_ CVS Monitors guts are at least relatively clear
Schwern theo: Most of the discussion about your motiviations can go into NOTES or HISTORY
Alias_ I didn't even make it past the first paragraph though, it said everything I needed to read, and I skipped past the rest 12:19
Schwern theo: Focus on answering the questions the user will ask. "Why do I want to use this module? Why not just use sort?"
theorbtwo Thanks.
Alias_ wonders what Schwern would think of the PPI::Tokenizer docs
(ignoring the spelling mistakes, which are mostly fixed in CVS)
theorbtwo I'll try to take this into account the next time I write docs. (I'm not planning on updating S::M; I'm aware of no bugs, and no users.) 12:20
Corion ... I think I should add the "=head1 WHY" section to Sample::Module in the Pugs distribution :)
Schwern theo: If you find yourself writing docs like this "sort_coderefs takes an array-ref of source coderefs, and a single output coderef" realize its much more concise and easier to read to just express that as code.
"sort_coderefs( \@sort_coderefs, \&output_coderef );" 12:21
Corion Any better names than "= WHY" for this section ? "= RATIONALE" ?
Schwern Or sort_coderefs( [\&sort_coderef, ...], \&output_coderef );
Alias_ =head2 inside of =head1 DESCRIPTION
Schwern theo: The sort_coderefs() docs don't explain what @sort_coderefs is for. 12:22
Corion commits.
Schwern theo: And its not really clear why you allow multiple source coderefs. 12:23
theorbtwo Hm, perhaps I ought to rerelease just for better docs, as if you don't have multiple source coderefs, there isn't any point. 12:24
Merge sort takes several sorted sources, and merges into one sorted output.
Corion theorbtwo ++
Schwern theo: Assume the reader doesn't know a damned thing about merge sort.
In fact, modules named after algorithms are a red flag. 12:25
Corion ... except maybe in the Algorithm:: namespace :)
A good day, Jouke!
Schwern Sure
# Return all the tokens for the document 12:26
my $tokens = PPI::Tokenizer->all_tokens;
What document?
Alias_ The Perl document... given that PPI is a Perl parser... 12:27
theorbtwo Wouldn't it be a method on a document object, then?
Alias_ Anyone looking directly at PPI::Tokenizer is probably doing some hairly shit
theorbtwo: Remember the "layers" Schwern was talking about
theorbtwo Aye, Alias. 12:28
Alias_ theorbtwo: PPI::Document is what most people should be using
Schwern Alias: I would think it would be my $tokens = $Tokenizer->all_tokens; no?
Alias: An object method
Alias_ oh... woopise
]right
Alias_ fixes
Schwern :)
Alias_ I tend to write these things in one pass
Schwern Well, the docs seem ok up to the point you start talking about how you optimized the thing.
Alias_ It's meant for the rare few that are going to actually play with it :) 12:29
Schwern That all belongs at the BOTTOM
Alias_ hmm.. probably...
=head1 NOTES?
Schwern Tell me what it is and how to use it. Then get into the design notes.
NOTES, sure.
shapr sings 'concjunction junction, what's your function?' 12:30
o/~ conjunction junction, what's your type signature? o/~
Schwern For method documentation I like to show the method in use. Makes it easier to document the return value.
$is_incremented = $tokenizer->increment_cursor; 12:31
It also has the handy task of suggesting a vocabulary.
jabbot pugs - 1470 - Added 'WHY' section to Sample::Module
Schwern my $tokens = $tokenizer->all_tokens; 12:32
jabbot pugs - 1471 - Ported Text::Greeking 0.11 (complete wit 12:41
theorbtwo Oh, that sort of greeking... 12:45
jabbot pugs - 1473 - Closed TMP file in Makefile.PL and util/ 12:51
pugs - 1472 - Kwidified last change, because the rest
clkao jobs 12:52
shapr steve?
autrijus hi! 12:53
theorbtwo Hello, autrijus!
shapr y0! 12:54
autrijus how goes, lambdacamels? :) 12:55
shapr waves the pom-poms
Oh, do you have time to point me in the direction of a sane want.Type implementation? It looks like I can use the code in retEmpty, but I'm not sure how to mix it with the real operator code in opN 12:56
autrijus want.Type. 12:57
good question!
op0 "Want::type" = \_ -> do
return . VStr =<< asks envContext 12:58
done :)
shapr wow
theorbtwo Why is that a =<< rather then just return . VStr $ asks envContex ?
autrijus because "asks envContext" is a Eval VStr 13:00
but we want VStr
so we need to reduce it
i.e. take the Eval away
the standard way to take Eval away is by using =<<
because Eval is a monad
and you can use =<< to take a monad prefix away
it's like saying
cxt <- asks envContext 13:01
return . VStr $ cxt
basically haskell distinguishes from "something that evalates to a string"
like readline($fh)
from "something that is a string"
theorbtwo nods. 13:02
autrijus like 'foo'
where here 'evaluate' means 'performed in some monad'
theorbtwo So you need to use <-, >>= or =<< to actually do the evaluation.
autrijus exactly. 13:03
shapr btw, is initSyms a string for UTF8 and perldoc reasons? 13:04
Corion autrijus: pugs -Imodules/LWP-Simple/lib -MLWP::Simple -e "say get('pugscode.org')"
autrijus uhm, it's just a hack.
Corion ... for some reason, getprint() doesn't works.
autrijus Corion: ! 13:05
Corion: move it to ext/? :)
(since it actually works)
Corion autrijus: It's still faked/hacked, as mirror() and getstore() and get() are basically the same :)
autrijus I don't mind :)
I'll do the mv.
Corion autrijus: So I don't know. But get() and head() work, except if you have a proxy. :)
autrijus you ok with the move? 13:06
Corion autrijus: Sure :)
autrijus it will be run as part of pugs test tho
the tests I mean
Corion autrijus: I don't mind. The tests connect to the outside world though. That might be a concern for others.
autrijus yeah. 13:07
theorbtwo They should probably be made to skip if the proxy env vars are set.
autrijus I wonder if you skip it unless a env is set
alternatively, set up a http server using async
Corion theorbtwo: Hmmmm - interesting idea.
theorbtwo I just meant for release. 13:08
Corion autrijus: I'm in the process of doing that, for testing the proxy features. But it might be prudent to do so in all cases.
autrijus ok, please do
you have a couple hrs :)
I've done the move
hi asavige!
Corion But introducing an %ENV variable to allow/disallow net access is a good idea
autrijus $ENV{PUGS_TEST_NETWORK}
Corion Ugh. I wanted to go outside now :) Oh well - I'll look if I can hack up local tests within the next 30 minutes :)
autrijus $ENV{PUGS_TESTS_NET}
no rush :) worst case I'll just delist that test from MANIFEST. 13:09
Corion PUGS_ALLOW_NETWORK_TEST ?
autrijus not a big deal
PUGS_TESTS_ALLOW_NETWORK
(want to have common prefix)
Corion autrijus: I like that.
asavige hi autrijus, you better check my change to Makefile.PL/config_h.pl, just closed TMP to avoid Win32 error, hope I did not misunderstand this code.
autrijus you did not
thanks! 13:10
so win32 builds?
asavige yep, looks good
autrijus wonderful
Corion autrijus: Of course. Otherwise I wouldn't be using Pugs :)
Hmmm. svn does not delete local files? Because my svn up only added the new stuff below ext/ but didn't remove modules/LWP-Simple
Or did you make the move in two steps and I only svn upped at the wrong time ? 13:11
theorbtwo It doesn't.
autrijus you need to rm them yourself
it only deletes versioned files
Corion theorbtwo: Oh. So from time to time I should check out a fresh version, just to remove all the cruft.
autrijus that works too
jabbot pugs - 1475 - * fix typo
pugs - 1474 - * LWP::Simple works, so is in ext/
theorbtwo You can also rm a subtree and svn up. 13:12
Er, deltree to you, I suppose.
Corion theorbtwo: perl -MExtUtils::Command -e rm_f :-) 13:14
theorbtwo Noooo!
Anyway, you wanted rm_rf.
castaway *g*
clkao Alias_ feel free to ask about svk internals 13:19
Alias_ clkao: My main one was how you define the list of functions which any given driver needs to perform
clkao: After talking to autrijus, he seemed to imply they were specific "tasks", rather than capabilities 13:20
"import into foo"
etc etc
And how you structure the object model for change data
Which I think from memory doesn't exist, and is also defined by tasks? 13:21
or rather "commands"
jabbot pugs - 1476 - * interpolating method call needs ()
autrijus ok, stevan is not around 13:23
anyone want to volunteer to summarize ChangeLog for 6.0.14 from my journal and svn log? :)
autrijus is doing preflight for unTODO and review tests
Alias_ clkao: Or rather, that the SVK internals could be best described as a set of processes/tasks that are joined together in various ways, rather than any deep knowledge of the data itself
... which is how CVS Monitor does it. (and which has it's downsides as well) 13:25
Corion Err. "last" is not yet implemented? :)
autrijus Corion: last()
Corion ah!
autrijus bareword nullary is not implemented
sorry :( 13:26
Alias_ clkao: Also, in SVK terminology, what is the difference between a "depot" and a "repository"
Hey autrijus, if you happen to get the chance, at the YAPC hackfest, can you rope people into writing a manual for SVK :) 13:28
obra Alias_: start with submitting a patch adding questions to svk help intro
Alias_ svk help into? 13:29
obra spent an evening of the hackfest doing svk docs
intro
Alias_ I'm not so much interested in the svk front-end stuff, as in the backend stuff
obra I think the frontend is more likely to get docced better first.
but if you start with an outline of what you want to know, I bet it'll get filled in faster than saying "hey. this needs docs"
might make sense to start on the wiki 13:30
Corion Hacked a local test for LWP::Simple. I think. 13:31
jabbot pugs - 1477 - LWP::Simple tests are now local unless %
autrijus anyone remember if abs() still defaults to $_ w/o args? 13:32
in perl6
Corion Ooops. Building on Win32 currently is broken...
autrijus Corion: how?
Corion Seems like the tests don't execute. Looking at Makefile 13:33
Ah. ERROR from evaluation of C:\Projekte\pugs-auth\ext\LWP-Simple/Makefile.PL:
Can't locate Perl6/MakeMaker.pm in @INC
so that's my fault I guess :(
autrijus hrmph 13:34
weird, Perl6::MakeMaker needs to be installed by pugs
iblech Hi, my gateway is still b0rked, so don't be surprised if my IRC connection dies unexpectedly. /me noticed a bootstrapping problem with LWP::Simple now being in ext/: When there's no pugs executable yet, perl Makefile.PL will generate some warnings, because Perl6::MakeMaker tries to execute pugs, which is not compiled yet...
Corion: Try perl -Ilib Makefile.PL 13:35
(That'
Corion Ugh. Hen-and-Egg problem. Easy fix is to take LWP::Simple out of the loop again.
iblech s the same probleme, I guess)
Corion Ah. Now it builds. With "perl -Ilib -w Makefile.PL && nmake test"
So Makefile.PL needs a "use lib 'lib'" ? :) 13:36
Anyway. I should actually look at my Makefile.PL instead of cargo-culting it from somewhere else (Sample::Module)
autrijus go ahead :)
Corion I'll patch the main Makefile.PL and then leave.
autrijus k.
iblech Hm... with the "use lib 'lib'"-patch perl Makefile.PL does run, but still generates some warnings while writing the Makefile for LWP::Simple 13:37
Corion iblech: Yup :(
r1478 has the patch. I'm away now - maybe it's safer to take out LWP::Simple :) 13:38
castaway later Corion ;)
Corion &
Alias_ updates the SVK Glossary with lots of blanks 13:41
jabbot pugs - 1478 - Added 'use lib qw(lib)' to main Makefile
pugs - 1480 - * the last change made abs() work 13:52
pugs - 1479 - * add $_ defaulting to most builtins
clkao Alias_: sec. i'll fill the glossary later 13:57
Alias_ clkao: Thanks
Once everything everywhere in SVK is defined to the nth degree, live should be much easier 13:58
life 13:59
shapr Can I claim that the Pugs project is "led by autrijus" ? 14:00
obra yes 14:01
shapr ok
Alias_ Benevolantly dictated to by
shapr heh
Alias_ more accurate :)
clkao autrijus: now where are you going to again? 14:05
shapr I prefer the gmane.org webinterface over the yahoogroups webinterface. 14:07
autrijus clkao: and whither then? I cannot say 14:14
clkao orz 14:15
14:26 Aankh|Clone is now known as Aankhen``
sri_ someone already porting File::Spec and File::Find? 14:29
shapr Does perl6 have hyperfunctions? 14:30
autrijus hyperfunctions? 14:33
shapr I thought someone here mentioned hyperfunctions yesterday. If they really did, I was going to ask if they're the hyperfunctions I've seen elsewhere. 14:34
theorbtwo Hm, if you mean functions that take functions as arguments, the answer I think is "yes, of course". 14:35
p6 has hyperoperators, which is prossibly what you heard mentioned, though.
shapr Oh, maybe so. I'll ask google about hyperoperators.
theorbtwo Limbic: ".member.p3m"? 14:36
shapr Is there an example of a test that calls a function like foo::bar ? Like, a test for cwd?
Limbic_Region theorbtwo - you aren't familiar with the IRC Perl Mongers? 14:37
theorbtwo Ah.
As in hash-pound-perl.
Limbic_Region pound-perl.pm.org/
theorbtwo I'm vaugely fimilar, I just didn't associate p3m with pound perl pm. 14:39
Limbic_Region was recently recruited
though it appears to be fairly inactive
suits me just fine ATM
theorbtwo nods.
jabbot pugs - 1481 - Added more tests to t/operators/short_ci 14:41
shapr oh, I just call it directly like that "Foo::bar()", neat. 14:44
Corion sri_: File::Spec is (somewhat) ported. File::Find should die and be replaced by File::Find::Rule IMO 14:52
The File::Find interface was never a good idea.
... or maybe it should be replaced by something entirely different. IO::All, while being a bad idea in general, has a nice directory tree abstraction. 14:53
Limbic_Region Corion - what about merlyn's File::Finder (which is admittedly a better interface wrapper around File::Find) 14:54
Corion Limbic_Region: Yes, that API wouldn't be bad either, if we go with such an interface. 14:55
sri_ Corion: File::Find::Rule uses File::Find
Corion sri_: I'm talking about the API.
sri_ mhm
Corion sri_: And the API of File::Find is so bad it shouldn't live as its own module.
IO::All has the nice idea of presenting a directory as a list of IO::All objects, so you have a (lazy) tree of directories. Together with tree walking iterators, that could be nice. But I'm not totally convinced. 14:56
Limbic_Region IIRC, there was a node at the Monastery about what was wrong with File::Find and how they fixed it
Limbic_Region goes to look
pjcj w 14:57
shapr x
Limbic_Region www.perlmonks.org/?node_id=109068 # In case anyone wants research information for a better File::Find 14:58
pjcj that was half of a :w that went astray -- don't know where the other half went ;-)
shapr Geez, registered ecc memory is expensive. 15:00
jabbot pugs - 1483 - Ported example.pl of Text::Typoifier, to 15:11
pugs - 1482 - Ported Text::Typoifier 0.04a.
pugs - 1486 - Don't panic, read README :) 15:41
pugs - 1485 - Explanation of the missing modules
pugs - 1484 - Ported Perl6::Bible to Perl 6 :)
gaal doesn't panic, reads README 16:00
wow, freepan.
kungfuftr moo 16:01
gaal se
jabbot pugs - 1487 - Moved to FreePAN.
kungfuftr needs to redo the auto-smoke stuff 16:02
=0/
gaal backlogging... re: file find - just last thursday i was so bummed by that module i implemented the subset i needed inline in my code :( 16:06
kungfuftr hhhmmm... how's bitwise string assignment work in perl6? (ie: $string &= 07777) ? 16:31
autrijus +&= 16:33
I think.
~&= for the str form 16:34
kungfuftr taa 16:35
bah... what happened to al the modules? 16:38
autrijus read the README? 16:41
Don't panic, read modules/README | pugscode.org <<Overview Journal Logs>> | pugs.kwiki.org | smoke: xrl.us/fmw2 | win2k:r1468(234/3876) Linux:r1302(193/3383) MacOSX:r1342(189/3478) 16:42
kungfuftr ah 16:42
autrijus fortunately this happens before modules/ exceeded several megabytes :) 16:43
kungfuftr heh 16:44
gaal autrijus, when do you plan on starting the release checks? 16:48
autrijus gaal: in a hour
gaal okay, good, i'll be home by then :)
autrijus :)
gaal the results of 'time make' have increased significantly lately :( 16:49
autrijus tried "make unoptimized" ?
gaal if i do that, makte test will be slow :)
but maybe on my slow machine it's better. 16:50
autrijus benchmark and see :)
also test "make optimized"
gaal will.
autrijus but anyway, I expect runtime to be faster next week
gaal make optimized is no longer a target, i htink?
autrijus with on the fly compilation landing
it is, no?
gaal i *think* it gave me an error this morning
autrijus I'd like to know that error 16:51
gaal but "morning" implies "too little coffee", so i may be wrong.
hold on, ssh++
hmm, no, it's okay now.
autrijus coolio
gaal but i did svn up sometime.
maybe i had just mispelled "optimized" as, i don't know "omg i want more sleep" 16:52
autrijus :D 16:53
gaal they changed the clock over to daylight savings. did nothingmuch tell you guys about the insane way DST is scheduled in Israel? 16:54
it's decided every year all over again, sometimes only a few weeks before the actual clock change. 16:55
in most countries it's a date that never changes, say the equinoxes, and in others it's decided every three-four years in advence. 16:56
but here it's a subject for political debate every time over.
the thing is that religious people whose prayers begin around dawn have to start their days at the same time, absolutely speaking, no matter what the wall clock says. 16:57
castaway funky
why dont they just not have it then (dst), some countries dont 16:58
theorbtwo Well, the same time sun-rel.
gaal but if the clock moves, most shops and services would close an hour eariler, as far as they're concerned; which means that by the time they finish work, they suffer the inconvenience of less time to do Stuff.
theorbtwo Not going to DST doesn't help that, though -- the time of sunrise and set still changes, and the days still get shorter and longer. 17:00
gaal DST is beneficial in terms of energy use.
theorbtwo I know.
gaal it helps put the industry closer to the daylight
to2, that was an answer to castaway 17:01
theorbtwo Ah.
Hm, what's your longitude?
jabbot pugs - 1488 - * rx:perl5:g// match landed.
gaal so yes, shorter and longer, sure; and in fact summer should have been *easier* on the people who pray bacuse their day starts early, and thus ends potentially before everyone else's 17:02
34ōæ½xB0 46'E, to2 17:03
Latitude 32ōæ½xB0 05' N
theorbtwo Er, right, I meant lat.
gaal that's tel-aviv
but it's a tiny country :)
theorbtwo Oh, further N then I thought. 17:04
gaal so, the annoying bit for sysadmins (and actually Real Life admins everywhere) is how they need to stay updated all the ime and sometimes can't plan htings in advance.
theorbtwo Yep. 17:05
gaal but they real funny thing, an example of how ludicorous things can get here, last year (or was it this year?) there was a proposal tabled in parliament to make a one-day "hole" in DST, just for the Day of Atonement, so that the fast would be subjectively shorter by one hour. (!) 17:06
shapr that's wild
gaal that motion almost passed
s/cor/cr/
theorbtwo What? 17:07
That's crazy.
gaal told you :)
now, i'm really a fan of database-schema-breaking phenomena.
theorbtwo You know, if I were religious, I'd call everybody who supported that irreligious.
G-d told us to attone for a day, and dammit, He meant a whole day when he said it! 17:08
shapr I am religious, and I think people can be as picky as they like as long as they don't apply their pickiness to others.
gaal i mean, tell me a country spent money fixing their databases to support single-sex marriages ("two mommy fields!? we can't do *that*!"), and i'll actually be glad
shapr Like, if someone says that it's important for them to take exactly 24 hours, that's cool with me. Or if they're only awake for four hours because they have a flu, that's cool with me too. 17:09
gaal (irrespective of my personal substantive opinion of single sex marriages)
i just like the idea of weird things like that
but in this case, this is insane :)
shapr I think people should choose for themselves, not others.
Of course, I won't decide that for you ;-) 17:10
gaal shapr, that makes sense; but then you don't need everybody to change their DST bit.
the thing is that prayer is a communal thing (at least in the religion that defines the day of atonement) 17:11
and you have to wake up in time for prayer along with everyone else
the communality of it is kinda intrinsic to the religion.
shapr Silly question, do they sell digital 'sundial' clocks in .il?
That sort of clock would seem sensible. 17:12
Where you could set an alarm like "wake me up one hour before sunrise" and not have to worry so much about the number.
gaal that's a nice idea 17:13
and being digital, the sundial can work even when the sun isn't up :)
shapr You could probably write one in Perl...
Right!
gaal newspapers here carry the start of twilight every weekend, in time for the Sabbath.
you know it changes by 0-3 minutes daily 17:14
shapr And you could set that sort of alarm to go off every year, day, etc and it wouldn't depend on DST for that year.
I'm sure you can find tables that will give you sunrise/sunset for a given latitude.
gaal (incidentally, the change is sinusoidal)
yes, there are.
any decent almanac should carry them. 17:15
shapr Yes the change irritates my sinuses too ;-)
putter I gather there is a release comming up?
shapr sniggers
gaal any decent Google does, too :)
elmex_ hm
17:15 elmex_ is now known as elmex
gaal i'm heading off home to make it to the preflights. see you soon 17:16
theorbtwo See you soon, gaal. 17:17
putter im trying a clean install, after removing every trace of pugs. lib/Perl6/MakeMaker.pm is not happy... 17:19
autrijus how so?
jabbot pugs - 1489 - * huge TODOification 17:21
putter with no pugs already present, get_perl6_libs is pattern matching undefs.
havent checked yet whether brokenness propagates... 17:22
autrijus good catch. 17:23
putter: are you already in AUTHORS? 17:27
jabbot pugs - 1490 - * putter noticed that Perl6::MakeMaker d 17:31
theorbtwo Can someone who actually speaks Chinese (I'm looking at you, Autrijus) check that Kuang-che Wu's utf8 name is correct? 17:32
The first character shows as ~ for me, and gives my emacs heartburn.
autrijus it is correct.
theorbtwo BTW, we're at 60 committers even, most frequent are autrijus, Stevan, ingy, nothingmuch, iblech. 17:33
shapr cheers
autrijus that sounds about right
putter autrijus: if it is not a problem, let us leave me out for now. I am just... puttering. 17:34
ingy hi putter !
autrijus putter: it is a problem and I fixed it
putter: can you svn up and check? 17:35
I'd like to add you to AUTHORS, because it's actually a significant breakage.
putter ingy: hi :)
ingy putter is an Inline patcher from back in the day
putter autrijus: no prob. thanks. re svn, has not been tested, but it should work, yes. 17:36
ingy he wrote an alternative C parser to the P::RD one!
ok, I hate svn 17:37
jabbot pugs - 1492 - * now, bump version 17:42
pugs - 1491 - * try again at fixing this version mess
theorbtwo wonders what "version mess" the changelog refers to. 17:43
shapr throws a bunch of versions on the floor.
theorbtwo Holy mother of...
ingy: did you do modules/README?
gaal hellooo:)
theorbtwo Allo, gaal? 17:44
gaal heya
theorbtwo I've been iritable lately, sorry for yelling:
WHAT THE HELL WERE YOU THINKING BY CREATING A BUNCH OF ACCOUNTS AND BROADCASTING THE PASSWORDS AS WIDELY AS POSSIBE?!?!?!
ingy wiki style anarchy development 17:45
theorbtwo Might I suggest that for any accounts that have the password 'pugs' you set the password to a random string and mail it to them?
ingy this was autrijus idea actually
embrace the anarchy 17:46
theorbtwo I have little problem embracing anarchy... the illusion of order is what worries me.
ingy :)
there is quite a rash of worrying going about lately 17:47
theorbtwo How do I change my freepan.org password?
gaal to2, then just think of it as global commit access which you can turn off when you want
theorbtwo I don't have a problem with that.
ingy theorbtwo: we're working on that
castaway if it was that, then why not just one repository, and one password/ 17:48
obra ingy, could you lock out my account until I can set my password?
theorbtwo I just don't want anybody who comes along to be able to commit code in my name.
Mine as well.
ingy obra: to know who is commiting what
theorbtwo But if anybody who comes along knows my password, then you don't know who is committing what.
obra misrely, ingy?
reply
ingy theorbtwo: same as a wiki no? 17:49
listen: everything is exactly as autrijus wished for now
theorbtwo Same as some wikis. 17:50
I never liked that feature about those wikis.
ingy freepan will constantly improve over time. 17:51
it is very much the pugs style of dev
theorbtwo You should add this stuff to the FAQ.
Well, except that the pugs style of dev has usernames and passwords for it's users.
gaal has svn uped and is doing prepreflight checks 17:52
castaway does he want to know who is committing what, or not? because it seems you are claiming he does, yet setting up stuff which makes it useless..
(or so it looks from over here)
gaal folks, it's not that bad!
autrijus gaal: can you try unTODOing the failing test for me?
gaal you can impersonate someone if you're malignant
but you aren't are you?
ingy gaal++
gaal autrijus, sure, what should i do? 17:53
autrijus by "over time" I persume ingy means "this week"
ingy :)
autrijus so I'm totally fine with that.
castaway No, I'm not, but I'm mindful that there are such out there, no matter how much we might prefer otherwise
theorbtwo Exactly. If I wanted to, I could check in code as "ingy" that did an rm -rf ~ when running the Makefile.PL of Perl6::Bible.
Then I could come in here and complaign about what a total ass ingy was.
Since the changelog clearly shows him putting the code in. 17:54
ingy theorbtwo: but you won't
theorbtwo No, I won't.
But can you really say that about everybody who reads modules/README?
Because all of those people know your password.
ingy we'll see
gaal most of the modules that have been moved aren't install-ready yet...
autrijus we'll see. :)
ingy autrijus++
castaway (hmm, to go with it, you could use whatever nick on irc you felt like.. what fun ,) 17:55
putter theorbtwo: all order of magnitude 100 of them?
gaal autrijus, what do you want me to unTODO?
autrijus gaal: anything that fails make test.
:)
gaal ...but if it fails, it isn't TODOed :)
you meant enTODO maybe?
theorbtwo The only problematic thing about todoing tests is ones that pass for some and not others.
autrijus enTODO with a comment 17:56
gaal TODOify
autrijus that says unTODO.
TODOify is the word yes.
gaal ah :)
autrijus gaal++
gaal TODOitate
TODOgrify
theorbtwo TODOit, dude.
gaal TODA!
beh, it's slightly different across platforms. I'll be doing this on my msys box since the cycle is much faster - but expect the UNEXPECTED PASS on other machines. 17:57
theorbtwo Then it needs to be a skip, or commented out. 17:58
gaal do we have skip already inTest.pm?
mugwump we'll have a web interface for setting your svn password shortly. until then, keep a lid on the situation. tia.
autrijus or Fixed.
theorbtwo mugwump: cat's out of the bag. 17:59
gaal okay, since my linux box is slow: i'll TODOify, ci, then you guys with a fast linux box can rectify my eager TODOs if you like.
autrijus gaal: that's the spirit.
gaal (make test still running)
TODOifying tests that've already been run)
mugwump theorbtwo: ok, so once we get things working, go through your modules, check for any malicious commits and let us know.
VCSes++ 18:00
castaway ones with actual control ;) 18:01
mugwump you can't delete revisions, that's enough control for me.
actually it's not, I want (and am designing now) gpg certificates. 18:02
(a distribution system based on, that is)
gaal t/builtins/io/io_in_for_loops seems to contain a fatal error after t25 18:04
t/builtins/io/io_in_while_loops.t a similar error after t11 18:05
i think pugs isn't closing a file correctly, or maybe not resetting the position of a file handle after it's been reused?
theorbtwo I'd be happy with just normal username/password auth for people, and gpg sigs for distributions.
autrijus gaal: I think it's later 18:06
but it's not the time to fix it
comment it out, todo_eval it, etc
:)
gaal what shall i do with the tests then? reduce plan and comment out?
ok 18:07
mugwump gpg sigs will be on the mirror node level, to protect distribution. If your project wants to sign distributions via Module::Signature or something, that can be done too 18:09
18:09 Corion_ is now known as Corion
mugwump at least, that is a plan that seems to work. Briefly described at wiki.freepan.org/index.cgi?Distribu...ndSecurity 18:09
s/work/pan out/
theorbtwo If somebody does a svn log|grep '^r[0-9]'|cut -d'|' -f2|sort|uniq -c|sort > comitters, and looks at the comitters file, all people listed after (IE more committs) then tiw are confirmed as in AUTHORS. 18:10
tiw, and possibly some people with less commits then him/her, need to be added. 18:11
I don't feel well, I'm heading to bed.
G'night, good release, all.
autrijus incidentally I'm also feeling that probably resuming releng after a few hour's sleep sounds like a good idea.
gaal: are you up for playing stevan and help filling in ChangeLog a bit?
just sort my journal entries (March 27 onward) and the svn logs a bit 18:12
and fill them into ChangeLog in kwid syntax
I'll polish it when I wake up
gaal: alternatively, help me to find another helpful soul who can do it 18:13
gaal i'd be happy to do it 18:14
autrijus woot!
gaal might take longer for me though
autrijus gaal++
that's fine, you have at least 8 hours :)
and I'll pick up where you left off if you change your mind
gaal ah, no more 15 minute sleeps, eh? :)
autrijus gaal++ # can't thank you enough
theorbtwo Give him metacommitter access and make^W let him do AUTHORS too.
gaal lol
autrijus eh, you don't have to be a metacommitter to change AUTHORS :)
theorbtwo True, but being able to know "tiw"'s email address might make it easier to figure out who he is. 18:15
ingy there are pugs on the tv
theorbtwo I was about to, but I couldn't find the admin page on openfoundry.org
gaal hm, why put someone's email in AUTHORS if they didn't ask for it there?
castaway night folks
autrijus theorbtwo: rt.openfoundry.org/Foundry/Project/.../?Queue=82 18:16
gaal bye castaway
Corion I see AUTHORS as the basic svn usage intelligence test :)
autrijus then, "Members"
theorbtwo And I decided that I hate everyone, so it'd probably be a good idea to sleep my hatred off.
autrijus err, wrong project.
theorbtwo: nite!
the admin page for pugs is rt.openfoundry.org/Foundry/Project/...?Queue=270
putter well, that's amusing. fyi, ghc64 rpms for FedoraCore x86_64 are _not_ built interactive. no ghci. no templates. so pugs' make complains "Template Haskell bracket illegal in a stage-1 compiler". build vaguely looks ok though.
gaal night to2 18:17
autrijus putter: that's just bootstrap ghc I think
you'd need to recompile ghc (I think)
gaal i got a message about TH on msys too.
autrijus but currently pugs works just fine without TH.
gaal apparently the win32 (==msys doesn't have TH)
autrijus in the future tho, compiling to IMC will likely require TH. we'll see how it plays out.
but, sleep first. see you in a bit! 18:18
gaal er, misplaced ). i should probably not cde in lisp.
autrijus where a bit == 8~9 hrs
&
gaal bye autrijus.
Corion While talking about compilers - my compiler (-Cbackend) test only tests -CParrot and -CPugs - is there any other backend, and how can I find if it is supported?
good night autrijus, castaway, theorbtwo
putter bye autrijus. 18:19
autrijus there's -CHaskell and it only supports hello world.
*wave* &
theorbtwo &
Corion So I won't add a test for -CHaskell now ;) 18:20
gaal aw, shucks, hunting failing tests in arith.t is sorta hard because it prints coords at an uninteresting place -- plus there are no test captions :( 18:21
binary search here i come!
alternatively, stack tomfoolery.
jabbot pugs - 1493 - fix tests on win32
gaal actually, there's a chance that this is a bug in goto! because it leaves a stack frame in place. 18:22
good thing autrijus already went to sleep, otherwise he'd have to stay awake and fix it. :p
putter re ghc64... if you are trying to win friends and influence people, you create a distribution that just works... what part of that concept is hard? :( actually, i'd be less grumpy if i didn't know the source doesn't build cleanly, and so its time for ghc debugging. sigh. maybe lunch instead. 18:23
gaal putter, are you talking about TH? maye it bloats the distro and isn't used by most people? 18:24
(trying to be charitable. i don't really know haskell nor th to tell if that's the case.)
Corion What is this TH thing about, really? 18:26
gaal converts haskell to ASTs and back 18:27
Corion gaal: Oooo - "and back" - cute :)
gaal (that's my layman's understanding of it, anyway)
any lambdamoose in the chanell?
putter gaal: sorry, i'm just complaining about ghc release practices. no objection to th in pugs. i just had one of those floor drops away moments, when you find A is broke and you need B, but you already know B is broke, requiring C, and suddenly you are several levels down a task stack from what you thought you were working on. off to lunch. 18:28
Corion Should all currently failling tests be demoted to todo_ tests ? 18:29
gaal yes, i hate those too - i was saying, maybe the ghc ditributers felt most people woldn't want that
yes, corion, want to help me with that?
Corion gaal: Yep - I'll just modify the pugsrun ones :)
gaal okay. don't start anything else before telling me please so we don't overlap. 18:30
Corion Do we mark the demoted tests anyway ? Like "# demoted for release" or something?
gaal yes: say # unTODO
Corion Okies
gaal use that exactly please so that autrijus can grep for it. 18:31
Corion that was my intention anyway :)
gaal cool.
jabbot pugs - 1494 - More tests TODOified in preparation for
gaal that was fast! :) 18:32
Corion Hmmm. Why does Orkut think it needs to validate my secondary emails, to continue sending me mail?
That was not me :)
I'm just running make test to see if my demotions work 18:33
gaal !@#$!#@$ arith.t! it turns out that a test is marked TODO, *if it has a description*! beh.
anyone know what the indented version number is for this release? 18:34
Corion gaal: My change produces now lots of "unexpectedly succeeded" - is that OK or should I factor out the exact failing test into a unTODO (by breaking up the loop)? 18:36
gaal oh, it's in a loop? that's tough :/ if it's not an uglifying refactor, refactor. if it is, comment out the existing code, and leave the ugly refactor there. 18:37
uh, i hope that wasn't confusing :) 18:38
i mean, you really want to avoid unexpected passes
but don't mess up the code completely to make it terrible
so if you have to, do it, but leave the previous code in a comment 18:39
Corion Okies - I'll fix it "in spirit" :)
jabbot pugs - 1495 - Split up compiles into TODO and OK 19:01
mugwump ok, if anyone wants a password for their freepan account, /msg me with it. 19:06
Corion I want "pugs" :))) 19:07
gaal *giggle*
gaal has a module there but it doesn't have an installer, so i can wait. 19:08
Corion I also have a module there now it seems. I'm not sure if/why I want to have it on FreePAN if I am on CPAN already.
Except maybe FreePAN uses svn. 19:09
Odin-LAP Hmm.
FreePAN?
gaal Odin-LAP: see modules/README 19:10
Corion Whoops. One of my tests fails when run via the harness, but not if run from the command line. :(
gaal and don't panic :)
heh
same environment?
Odin-LAP gaal: PANIC!
Odin-LAP grabs a copy of the hitchhiker's guide, and calms down. 19:11
gaal :)
Corion gaal: Yes. Missing libraries or something is the likely problem... A "push @INC, < ext/File-Spec/lib >" should help.
jabbot pugs - 1496 - More cleanup - now skipping tests
gaal "blib" might be better? 19:12
Corion gaal: Oh - indeed
"prove" gets it right, but the smoke matrix wrapper doesn't :) 19:13
gaal yaml_harness? i'll fix that
anyway see the FAQ in the wiki
which, come to thing of it, gets it wrong too :)
can someone fix that please? i'm still doing TODOs.
Corion gaal: I'll look into it. But I might fail in doing the right thing. 19:14
gaal that's why it's a wiki :) 19:15
Corion has an ingenious idea. Just dump @INC.perl.say from prove, and dump it from the harness, and look at the difference.
gaal: I was thinking about fixing the yaml harness, not the wiki
gaal ah, i can do that, just give me a minute
or beat me to it, whichever you prefer :) 19:16
Corion I stopped beating people
gaal corion, was that commit up there your pugsrun work? 19:17
Corion gaal: Yep, but there will be a second commit for these files.
gaal: And one in pugsbugs 19:18
gaal weird, i got no fails in pugsbugs
Corion BTW, my tests will now not run on Win9x anymore, because I'm now using STDERR redirecting syntax.
gaal doesn't that work there?
Corion gaal: I get one failure there in the YAML harness, so I fix that the same.
gaal ....and pugs worked there until now? wow.
Corion gaal: No, because Win9x does not have the new command shell that allows that.
gaal: I don't know, but I don't see any reason why it shouldn't have.
gaal i thought you kinda needed an OS 19:19
Corion gaal: And in principle it will still work, except now the shell will balk at the syntax errors.
gaal: Pugs doesn't need much of OS it seems.
gaal PugsPilot.
Corion gaal: Well, I assume it needs a memory manager and some non-broken memory layout. That rules the Palm out :) 19:20
All my tests committed (r1497)
Maybe we get a Pugs release with r1500 ? :)
So we need to stop at r1499 , so that autrijus can set the version number right :) 19:21
gaal 1500? that's not a round number! (see: r1024)
jabbot pugs - 1497 - More test fixes, Win9x support broken in 19:22
Corion Ah. Well, we won't get to 2048, and I'm too lazy to find anything close and interesting :)
gaal 2**10.5 19:23
Corion too late, according to perl
gaal so i guess you're free to ci all you want :) 19:24
iblech, you there? 19:25
we both spent time TODOified the same annoying file :( 19:27
Corion Greener pastures - datenzoo.de/pugs/win2k.html 19:28
gaal oo! pritty css. 19:29
hadn't seen that in a few days
Corion I try to keep it updated regularly, but it is still a two-step thing. 19:30
... because the files travel over two machines, triggered by two manual steps. 19:31
... but setting up a passwordless ssh is even more work :)
gaal false laziness. www.brandonhutchinson.com/Passwordl...ogins.html 19:32
jabbot pugs - 1498 - TODOify tests in prep for release (t/io)
Juerd gaal: It helps when automating backups though :) 19:34
mugwump OK, open committing problem is sorted guys ... sorry 'bout that :-}] 19:35
gaal what does, Jeurd, not having passwordless login?
Juerd No, having them
gaal Corion, I've ci'ed all my TODO work. 19:36
yes, that's why i said it's false laziness not to set it up
when you need it that is.
Juerd Oh, I misinterpreted that then
Corion gaal: But that would mean installing cygwin, for ssh.
Juerd Corion: Why?
Corion ... and doing the keygen dance again, that is, searching for the oneliner that sets it up.
gaal msys has ssh
that, yes.
Corion Juerd: Because I don't have cygwin installed on the machine.
Juerd Doesn't putty do this? 19:37
Corion Juerd: There is plink, true.
gaal pscp
Corion but I haven't used it.
gaal: PSCP won't start a command on the remote side.
Juerd pscp works but is, compared to normal scp, very slow.
gaal (putty and friends)++
Corion For file copying, I have SMB
gaal oh, i didn't know that
Juerd Corion: That's about as slow
Corion Juerd: It's not a matter of speed. 19:38
Juerd With 40% speed loss, it should :) 19:39
myren parrot has something like pointers right?
this pointerless .net nad java shit has to die
preferably a grizzly death
Corion Juerd: No, not to me. What do I care with a 100Mbps network, and a single user, about 600k bytes getting transferred 40% slower? 19:40
myren: ???
pointers are useless. References all the way, baby!
myren i've always failed to understand the difference 19:41
Corion I guess that's your problem with C# and Java.
Juerd myren: pointers point to memory locations only
Corion myren: What do you need pointers for?
Juerd myren: Which means that if there happens to be other data there than you expect, things go wrong terribly.
myren the advantage of references is that they can move as the object moves, but pointers dont explicitly lack that functionality
jabbot pugs - 1499 - two more unTODOs in arith.t 19:42
myren .net is making life difficult because i'm trying to build an inversion of control system
Juerd (Note that PHP's "references" are pointers or symbolic, much like how its "arrays" are really hashes)
myren and as it stands its very difficult for both copies to maintain a proper link to the other item
both ends
Corion myren: Use a central "broker" with symbolic references maybe. 19:43
Or hand out tokens (which is a symbolic system anyway)
Corion goes to look at the Driv3r demo
metaperl ingy, you hate svn? 19:45
why is that?
gaal Don't panic, read modules/README | TODOification for release | pugscode.org <<Overview Journal Logs>> | pugs.kwiki.org | smoke: xrl.us/fmw2 | xp/msys:r 1499(123/3846) win2k:r1468(234/3876) Linux:r1302(193/3383) MacOSX:r1342(189/3478) 19:53
gaal Corion, ci your TODOs, that's 123 tests and r1500 :) 19:53
Corion My todos are in already :) 19:54
gaal really? i svn upped just a few minutes ago
how come i still have fails there?
oh, i know why. i'll fix it then. 19:55
Corion gaal: Heh. I get two unexpected successes in arith.t :) 20:04
gaal urgh!? uh, oh: no i know why i got a conflict with iblech :( 20:05
it's platform dependent apparently.
i'll fix it.
gimmie a minute
Corion gaal: Relax :) 20:06
gaal what numbers unex succeed for you?
Corion gaal: Dunno - I only saw the report on make test
I'll check
#148 : Inf/Inf NaN != NaN and #149 too 20:08
gaal Corion++ 20:09
thanks
Corion gaal: Ooops - yes - my OS checks suck :) 20:18
gaal Don't panic, read modules/README | TODOification for release | pugscode.org <<Overview Journal Logs>> | pugs.kwiki.org | smoke: xrl.us/fmw2 | xp/msys:r1501(all 3846 pass) win2k:r1468(234/3876) Linux:r1302(193/3383) MacOSX:r1342(189/3478) 20:19
Corion I expect 100% pass as well :) 20:19
gaal r1501. all tests should pass, please smoke.
Corion Why is it that Win32 is the best tested platform? Or are Win32 users just keen on updating?
gaal they're just /topic-happy :) 20:20
Corion gaal: :)'
gaal but as you can see w2k fails the most tests.
(that's before the todo)
Alias_ Or Win32 are the most nervous about things failing 20:21
Given the track record of Perl 5
gaal off to changelog. refilling tea.
Corion gaal: Because other OS people don't update the topic :)
jabbot pugs - 1501 - TODOify two platform-dependent tests
pugs - 1500 - win32 test fixes
Corion Ooops. t/Dialects/perlego/isrw.t fails I think. 20:23
... but that's under the YAML harness
gaal then the -X default should include it. :P 20:24
say, what was the other thing you needed in the yaml harness? i forgot
Corion gaal: I think the yaml harness does set @INC differently from how prove does it 20:25
gaal ah, yes. lessee.
it just doesn't set it at all. 20:26
so to the environment thing as suggested in the faq.
Corion t/data_types/array-parse-error.t fails with a parseerror 20:31
(for me, GHC 6.4)
gaal platform?
Corion MSWin32
gaal activeperl?
Corion No, own Perl
gaal native win?
Corion gaal: Yep 20:32
(but the error itself comes from Pugs, of course)
gaal wow, you're like the only person in the world who does that :)
yes, of course
Alias_ Acme::MorningMusume++ # Wot a laff
gaal but this worksforme
Corion gaal: Does what? Compile my own Perl? I just don't believe in binary compatibility :)
gaal on win32 at least.
Corion gaal: I'll look at it closer. But the error message I see during "nmake test" points to a Pugs parsefail
gaal i've compiled perls on... hmm, linux, solaris, aix, *not* hpux thankfully, and probably some others. 20:33
Khisanth Alias_: what the heck does that do? 20:34
gaal umm, Corion, i don't have that file?
Alias_ Khisanth: search.cpan.org/~kentaro/Acme-Morni...gMusume.pm 20:35
Corion gaal: Then maybe it got deleted :) I'll remove it locally and svn up :)
Alias_ Someone should port that to Perl 6, just to that we have an Acme module :)
s/to/so/
Khisanth obsessed fan!
Corion gaal: Yes, it was a stale file :)
gaal wanted to upload an Acme on 1 April, but got cold feet
Corion so MSWin32 is 100% clean too.
gaal cool. i'll try my linux box, should only take till morning or so :) 20:36
Corion Don't panic, read modules/README | TODOification for release | pugscode.org <<Overview Journal Logs>> | pugs.kwiki.org | smoke: xrl.us/fmw2 | xp/msys:r1501(all 3846 pass) win2k:r1501(all 3846 pass) Linux:r1302(193/3383) MacOSX:r1342(189/3478) 20:36
Alias_ thinks of writing to the author to suggest wrapping Acme::MorningMusume around Data::Vitals so each band member object can return Chest and Waist and Hips size objects 20:36
Corion gaal: I've been too lazy to install GHC 6.4 on my Linux box :)
crysflame Alias++ 20:37
gaal Corion, distro?
Corion We should turn Test.pm into a bug management system, with more categories than just ok() and todo_ok() :-)))
gaal: Debian stable
crysflame heh, todo_wontfix()
gaal ok_i_think_but_ask_autrijus
Alias_ fixme_ok?
Corion crysflame: :-))
crysflame fixme_asap_or_the_world_gets_it
Alias_ fixme_thankyou_come_again!
Corion breaks_build_ok()
gaal Corion, interesting. You compile your own perl on win32, yet you run debian *stable*. 20:38
Corion gaal: Yes. I use the linux box as fileserver. I'm not interested in tinkering with it.
gaal i doubt 6.4 made it to backports. :p
Corion Any OS is mostly a way to run Perl for me.
... and maybe a browser, mail client, ssh. 20:39
And ssh is needed to run Perl on other machines.
Corion & 20:40
gaal Net::SSH ::p
Most of the ChangeLog work is done; I got glassy-eyed over the bugfixes and tests. Autrijus, when you backlog -- fix my XXX at the least. :) 21:23
Also I didn't know what to tell of modules now that they've been moved. (Apart from the fact that they *have* been moved!) 21:24
gaal zzzz
jabbot pugs - 1502 - Towards 6.0.14 ChangeLog (needs cleanup) 21:31
Darren_Duncan Now that it is no longer being done in Pugs, I'm thinking to start my own regular distribution of my Perl 6 ports on CPAN ... 22:03
Reminiscent of the previous Pugs release, I plan to put all my Perl 6 stuff in a single distro during the time that it doesn't compile 22:04
I thought of naming that distro Perl6-Incubator-DUNCAND ...
The third part is my CPAN id, and anyone else could name their own similar distro the same but with the different ending 22:05
Does that seem like an appropriate name, or are any of you aware of someone else wanting to use 'Perl6-Incubator' for another purpose? 22:06
This would be a temporary distro in any event
It would disolve when all of my Perl 6 ports execute properly 22:07
jabbot pugs - 1503 - ext/FileSpec/t/30_cwd.t no worky on Win3 23:11