Under no circumstances collapse your lambacamel duality | pugscode.org <<Overview Journal>> | pugs.kwiki.org | logged: xrl.us/e98m | smoke: xrl.us/fmw2 | win2k:r1400(225/3849) Linux:r1302(193/3383) MacOSX:r1342(189/3478) Set by Corion on 1 April 2005. |
|||
metaperl_ | is pugs able to execute any of the modules in the modules directory of the distro? | 00:06 | |
stevan | metaperl: yes | 00:07 | |
metaperl_ | i had problems executing COnfig::Tiny | ||
stevan | CGI, FileSpec (not File-Spec) and PodStreamParser | ||
metaperl_ | URL to follow | ||
stevan | metaperl: wont work, its OO | ||
mugwump moved some stuff around, but we need to better organize things | 00:08 | ||
metaperl_ | oh | ||
stevan | the old rule was: if its in ext/ it runs, if its in modules/ it doesnt | ||
but he moved stuff from ext to modules, and mixed it up | 00:09 | ||
metaperl_ | i'm trying to figure out what aspect of Perl6 to present at this month's Perl Monger's meeting --- nobody else likes to present | ||
metaperl_ does svn update | |||
stevan | metaperl: do you need something which can run? | ||
personally I really like multi-subs, they are mostly implemented | 00:10 | ||
metaperl_ | ah, our functional stuff ... that would be nice | ||
stevan | see examples/fp.p6 | ||
and in CGI as well,.. I implemented param as a multi-sub | |||
metaperl_ | actually I would like to exemplify most of the points made in a recent perlmonks post | ||
by iblec | 00:11 | ||
how to port perl5 to perl6 or something like that | |||
metaperl_ groks url | |||
hmm wish I knew his exact name | 00:12 | ||
stevan | check the AUTHORS file | ||
metaperl_ | perlmonks.org/index.pl?node_id=442402 | 00:13 | |
found it | |||
this should be on pugs wiki somewhere | |||
I will add it | |||
stevan | actually its mostly copied from modules/PORTING_HOWTO | ||
metaperl_ | oh | 00:15 | |
oh well | |||
pugs.kwiki.org/?ConversionGuide | |||
what do the asterisks here mean? | 00:16 | ||
multi sub length (*$x, *@xs) returns Int { 1 + length(@xs) } | |||
stevan | they mean the parameter is slurpy | 00:17 | |
metaperl_ | lol | ||
slurpy? what does that mean? | |||
Khisanth | flattens the corresponding argument? | 00:18 | |
stevan | arrays dont flatten by default in perl6 | ||
so foo(@list) and foo(*@list) mean to different things | |||
*@ is slupry it gathers all the args and slurps them into @list | |||
Khisanth | heh refering to the * as a splat would be fitting :) | ||
stevan | Khisanth: i think it is splat in other contexts :) | 00:19 | |
so that length function works like this | |||
first *$x slurps up a scalar | |||
then *@xs slurps up the rest | |||
Khisanth | hrm slurp a scalar? | ||
stevan | it is equivalent to the Stardard ML idiom of x:xs | 00:20 | |
or sometimes as head:tail | |||
Khisanth | ah that is more clear suprisingly :) | ||
metaperl_ | when you say foo(@list) and foo(*@list) are you referring to calling a sub foo in two different ways or is that the header of sub foo | ||
stevan | both :) | ||
Khisanth | stevan: why wouldn't sub length( $x, @xs ) work in that case? | 00:21 | |
stevan | when you define the function sig you can specify that you want to slurp all the parameters by giving it a *@ sigil (or twigil or whatever) | ||
metaperl_ | flatten means something different to me. (@x, @y) flattens into a linear list | ||
stevan | and when you call foo(*@list) you are explicity flattening @list before you pass it | 00:22 | |
metaperl_ | what od you mean "flatten" it | ||
metaperl_ looks for the Synopses | |||
stevan | metaperl: perl6 lists dont auto-flatten like perl5 lists | ||
metaperl_ | auto-flatten... what do they do instead | 00:23 | |
of course, I should go read this: dev.perl.org/perl6/synopsis/S06.html | |||
stevan | Khisanth: no it wouldn't work since it would require you to specify a scalar and a list as your two args, and the length recurses in such a way that would not work | ||
metaperl_ | unless you want to tell me | ||
Khisanth | ACK! | 00:24 | |
stevan | metaperl: I suggest you read it too, but I will explian my understanding | ||
Khisanth | stevan: sounds like those things work like perl5 prototypes | ||
stevan | Khisanth: they are formal parameters, so they a much more powerful, but they are similar to prototypes in somw ways | ||
metaperl: the biggest change (as far as I know) is in how args are passed | 00:25 | ||
all perl6 subs which do not specify their args have a default arg of *@_ | |||
which will slurp up everything passed to the sub into the @_ array (much like perl5) | 00:26 | ||
ihb | stevan: what about those that that declare parameters? do they get a @_ too? | ||
stevan | ihb: no idea, have to check the synopsis | ||
Khisanth | there there are those $^ variables | 00:27 | |
stevan: does this apply to methods as well? | |||
stevan | but the idea of @_ in some ways conflicts with formal params since perls auto list flattening makes it hard to pass multiple arrays (which is what prototypes tried to fix) | 00:28 | |
Khisanth: yes, it does apply to methods | |||
Khisanth: but there is some weirdness with the invocant too | |||
you can leave it out of the arg list | |||
and it will be implicity topicallized | 00:29 | ||
Khisanth | and it would default to $self? | ||
stevan | however there is still some debate of the details of that | ||
Khisanth: no to $_ | |||
metaperl: am I making sense? | |||
metaperl_ | stevan, I actually flipped over to S06 while you were talking to Khisanth | 00:30 | |
it made sense and what you said makes sense too | 00:31 | ||
stevan | metaperl: yeah they can explain it much better than I can :) | ||
metaperl_ | heh | ||
stevan | metaperl: be warned that type based multi-sub dispatching is broken in Pugs | 00:32 | |
t/subroutines/multi_subs.t has some broken tests in it | |||
but if the sub signature is different enough it does seem to work | 00:33 | ||
metaperl_ | my impression of all this is that there is too much working going on - you have to do a lot of work in the sub's header and when calling the sub and make sure it all jives... | 00:36 | |
stevan | metaperl: the idea I think is that if you do the work in the subs header, you wont have to do it when calling it | ||
metaperl_ | I've never seen so much protocol in calling a sub in any language ever before | ||
well, but look at how foo(@args) will be an error when we have sub ($x, $y, $z) | 00:37 | ||
stevan | metaperl: it is pretty nutty, but hey its perl6 :) | ||
metaperl_ | :) | ||
stevan | yes it would | ||
unless you did this: | |||
sub foo (@args) { ... } and then called it foo([ $x, $y, $z ]) using the list constructor [] | 00:38 | ||
(i think I am right here, I may not be so dont bank on it) | |||
of course you could always just do: sub foo(*@args) { ... } | |||
metaperl_ | complaining is pointless. if I have a better solution, then I should offer it | 00:39 | |
otherwise just understand why they are doing it | |||
stevan | metaperl: personally I like it, but I do agree it can get a little burdonsome | 00:40 | |
ideally it will DWIM in most cases and then allow freaks like me to do weird things :) | |||
shapr | Where are the lambdafolk needed today? | ||
stevan | shapr: it can't still be day for you is it? | ||
shapr | No, it's 2am actually. | ||
er, 2:40am | 00:41 | ||
sorje | 2:41! ;-) | ||
metaperl_ | there are issues with getting pugs installed in a local tree as opposed to /usr right? | ||
Darren_Duncan | stevan and others ... | ||
shapr | sorje: your clock is better than mine. | ||
metaperl_ | shapr, is the air fantastic in Sweden? | ||
Darren_Duncan | I have now finished the SQL::Routine perl6ification, with a few remaining issues | ||
jabbot | pugs - 1403 - SQL::Routine - last major perl6ification | ||
stevan | metaperl: I have no idea,.. i just put it in /usr | ||
shapr | metaperl_: It's warm on the inside, cold on the outside. | 00:42 | |
metaperl_ | I dont have such privs | ||
stevan | Darren_Duncan: nice :) | ||
Darren_Duncan | 1. I still have to write a SYNOPSIS for the perl 5 version, which will then be ported | ||
sorje | shapr, sure. I am quite surprised that germany and sweden are in the same timezon, thouhg. ;-) | ||
shapr | metaperl_: re: extremeperl - turing machine equivalence is total copout | ||
Darren_Duncan | I didn't take advantage of any Perl 6 features that would make the code look too different from the perl 5 code | ||
eg, hyper-operators | |||
metaperl_ | heh | ||
shapr | sorje: I'm just a little bit more north than you are. I'm 70km south of the Arctic Circle. | ||
Darren_Duncan | while I am open to doing so ... | 00:43 | |
shapr looks at sort.t | |||
Darren_Duncan | I would like for the SRT code to be kept stable until the next Pugs release, aside from the SYOPSIS addition and small bug fixes | ||
after the Pugs release, feel free to play with it, stevan, as you indicated you wanted to | 00:44 | ||
sorje | Oh sorry, confused Sweden and Finland | ||
shapr | s'okay, I've confused germany and austria before ;-) | 00:45 | |
Darren_Duncan | any major suggested changes should be done after the Pugs release | ||
shapr | gruĆ gott! | ||
sorje | As I'm in the very very south austria feels more appropriate anyway. ;-) | 00:46 | |
shapr | erlangen? | ||
Darren_Duncan | aside from chatting here and fixing smaller bugs, my attention today and tomorrow is on releasing the perl 5 modules ... which correspond to what is already checked into pugs | ||
distro | 00:47 | ||
sorje | shapr, about the level of munich | ||
shapr | ah | ||
sorje | Well, got to work to.. day. Good night ;-) | 00:48 | |
shapr | g'night | 00:49 | |
Darren_Duncan | g'night | 00:50 | |
drbean | ruby's Matz has discovered pugs according to his blog: www.rubyist.net/~matz/200503.html | 00:51 | |
Darren_Duncan | lookin | ||
drbean | but the blog is in Japanese | ||
Darren_Duncan | is there a good compu-translator for this? | 00:52 | |
metaperl_ | nice April Fool's Joke drbrean :) | ||
there was some talk of using PPI Darren | |||
Darren_Duncan | so who here can read that? | 00:53 | |
drbean | It just says pugs is a perl6 compiler written in Haskell | 00:55 | |
and for a moment he thought, Are you kidding? | 00:56 | ||
Darren_Duncan | I hear you, carry on | ||
drbean | BUt truly, they are not kidding | ||
and there is a link to Autrijus's perl.com interview with chromatic | 00:57 | ||
and that's all. | |||
Darren_Duncan | ok | 00:58 | |
shapr | www.rubyist.net/~matz/20050307.html - note the Pugs and Haskell | 00:59 | |
drbean | Oh in the next entry up about Span, he is saying something about parrot and pugs | 01:00 | |
shapr | Amazingly, there's an article on Haskell in this month's 'Dator Magazin' (Computer Magazine) here in Sweden. | 01:01 | |
drbean | Matz: After, what's interesting about Span is that it has adopted Parrot as its engine. | ||
execution engine | 01:02 | ||
And he says: Go, Parrot! | 01:03 | ||
shapr | Btw, would anyone mind if I submitted the pugscode url to lwn.net for next week's Perl development section? | ||
mrmuskrat | howdy folks | ||
shapr | hiya musk | ||
Darren_Duncan | howdy doody | ||
drbean | And he concludes, Pugs is going to win. | ||
Darren_Duncan | shapr, why would that be a problem? | 01:04 | |
just do it | |||
shapr | Just wondered if there was an un/official PR person for pugs. | ||
metaperl_ | stevan... | 01:05 | |
stevan | metaperl... | ||
autrijus | shapr: go ahead :) | ||
shapr | yay! | ||
Darren_Duncan | hello autrijus | ||
metaperl_ | fp.p6 uses eq ... in Haskell == would be polymorphic to the type of the daum | ||
stevan | hey autrijus | ||
metaperl_ | datum | ||
autrijus | stevan: sanity-p? www.nntp.perl.org/group/perl.perl6.compiler/486 | ||
metaperl_ | autrijus: ignore my email - I learned that objects are not implemented? | ||
autrijus | aye | ||
mrmuskrat | can anyone help me with a pugs makefile issue? "makefile(411) : fatal error U1087: cannot have : and :: dependents for same target" Windows XP Pro + perl, v5.8.6 built for MSWin32-x86-multi-thread | ||
autrijus | metaperl_: polymorphic == works really well when both sides are of same type ;) | 01:06 | |
mrmuskrat: what's the paragraph around line 411? nopaste it? | |||
mrmuskrat | FIXIN = pl2bat.bat | ||
stevan | autrijus: that sounds sane | 01:07 | |
contrib is a good name too | |||
Darren_Duncan | whenever someone wants, have a look at SQL::Routine in the repository and tell me if you spot any obvious bugs | ||
autrijus | stevan: ok. would you like to make it happen? :) | ||
stevan | autrijus: surely :) | ||
Darren_Duncan | ... with the perl 6 | ||
mrmuskrat | pure_all ... blah blah ... 410 -> realclean :: and 411 -> $(RM_F) $(INST_SCRIPT)\pugs.exe $(INST_SCRIPT)\pugscc | ||
autrijus | I can do [B[B[B[Bstevan++ | ||
gah, bad latency. | |||
stevan | :) | 01:08 | |
autrijus | stevan++ # I can do thD[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[Dis at least. :) | ||
argh! | |||
autrijus wonders if there's a way to convince ssh/screen to not emit those stuff | |||
drbean | I found the Matz reference in Dan Kogai's blog entry about Autrijus | ||
stevan | autrijus++ | ||
drbean | blog.livedoor.jp/dankogai/archives/...#trackback | ||
autrijus | mrmuskrat: weird. post the entire makefile to nopaste or some other url? | ||
mrmuskrat: also, are you using trunk with nmake? | 01:09 | ||
drbean | that blog is in Japanese too | ||
mrmuskrat | what's nopaste? | ||
autrijus | pasteling: nopaste | ||
pasteling: nopaste? | |||
stevan | metaperl: your right, but I wanted to get fp.p6 to run :) | ||
metaperl_ | yes, I'm just noticing the difference between the languages | 01:10 | |
autrijus | ~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~[6~oh well. | ||
mrmuskrat: sial.org/pbot/ | |||
pasteling | "mrmuskrat" at 67.174.166.72 pasted "makefile" (813 lines, 30.8K) at sial.org/pbot/8864 | ||
stevan | metaperl: to be honest, the examples were actually ripped from my Standard ML book, not haskell | ||
metaperl_ | I see | ||
stevan | and adapted from my fp module too | ||
mrmuskrat | I was looking for a nopaste user :) not pasteling | 01:11 | |
this is my first visit to #perl6 and my first time on irc.freenode.org | |||
Darren_Duncan | I've used nopaste, whatsyerquestion | ||
jabbot | pugs - 1404 - added (untested) Perl 5 implementation o | ||
Darren_Duncan | mrmuskrat, go here: sial.org/pbot/perl6 | 01:12 | |
use that when you want to share more than a line of quoted material | |||
metaperl_ heads home | |||
Darren_Duncan | ... with #perl6 | ||
metaperl_ | 13 minutes later than 5pm on a Friday... how generous of me | 01:13 | |
mrmuskrat | Darren, right. I figured it out right before autrijus posted the link :) | ||
Darren_Duncan | so metaperl_ , you're in my timezone then | ||
autrijus | mrmuskrat: are you using svn trunk? | ||
Darren_Duncan | i got 5:13 here | ||
pm that is | |||
metaperl_ | yes are you in Victoria? I'm in Southern California | ||
Darren_Duncan | I am in Victoria | ||
silicon valley north is one name for the area | 01:14 | ||
'land of trees' is another | |||
metaperl_ | have you heard of the Fane Darren? they are a religious group in Victoria, BC CANADA | ||
mrmuskrat | no idea :) I'm extremely new to svn. I just did a "svn co url" and cd'ed in when it was done to do my "perl Makefile.PL" | ||
Darren_Duncan | never heard of 'Fane' | ||
autrijus | mrmuskrat: that is fine :) | ||
Darren_Duncan | are they a cult or a non-cult? | 01:15 | |
autrijus | anyone else on win32? | ||
if not I'll boot into win32 to check this | |||
Darren_Duncan | I'm win32-free here | ||
metaperl_ | i cant answer that "cult" question easily | ||
Darren_Duncan | the short definition of cult is if the group worships someone who is present there physically | 01:16 | |
mrmuskrat | autrijus, am I going to have to rebuild my linux box sooner rather than later? ;-) | ||
Darren_Duncan | anyway, don't worry about it | ||
shapr | So that's why Rocky Horror Picture Show is a cult picture? Because of Dr. Frankenfurter? | ||
stevan | shapr: didnt he die at the end? | 01:17 | |
shapr | Oh, so it stops being cult then? | ||
stevan | shapr: it would have to be a Brad and Janet cult ;) | ||
autrijus | mrmuskrat: uh no, no, pugs is committed to support win32 | ||
Darren_Duncan | a cult is a cult while a worshipped human leader is alive | ||
if he dies, then either the group falls apart, or ceases to be a cult | 01:18 | ||
autrijus | ..and become a culture? | ||
Darren_Duncan | mayhaps | ||
stevan | autrijus: so you want me to put Pugs::MakeMaker into the root lib/ directory? | 01:19 | |
autrijus | stevan: yes I do | ||
stevan | ok | ||
Darren_Duncan | there should be separate dirs for Perl 5 and Perl 6 modules | ||
autrijus | I'll manage to convince ingy and mugwump here that it's a good idea :) | ||
Darren_Duncan: yup, see my p6c post? | 01:20 | ||
stevan | ok :) | ||
Darren_Duncan | looking ... | ||
stevan | autrijus: what should I do about the Pugs MakeMaker makefile? | 01:21 | |
autrijus | stevan: raze it | ||
stevan | ok :) | ||
Darren_Duncan | I see that email thread now | 01:23 | |
autrijus, same question as last week ... about what time of the day on this weekend to you plan to post Pugs .15? | 01:24 | ||
fyi, aside from little bug fixes that people point out, the only remaining thing i want to get in is a SYNOPSIS for srt | 01:25 | ||
and I will be writing that today | |||
stevan | ok commiting | ||
Darren_Duncan | ... elevator music ... | ||
autrijus | Darren_Duncan: .14 you mean? | ||
Darren_Duncan | um ... | ||
autrijus | Darren_Duncan: I'm flexible. could be tomorrow | 01:26 | |
i.e. at least 24hrs from now | |||
Darren_Duncan | you usually do it late saturday my time zone | ||
... yes, I meant .14 | 01:27 | ||
stevan | ok r1405 is in | ||
autrijus | danke | ||
Darren_Duncan | shins | ||
stevan | bitte | ||
autrijus: I am going to respond to the mail, just for consistency | |||
actually nevermind,..no need to do that | 01:28 | ||
Darren_Duncan | I could do so also, but you guys will say what needs saying | ||
stevan | this is all logged | ||
Darren_Duncan | what is with this theorbtwo / theorbtw1 duality that I keep seeing? | 01:29 | |
stevan | ok I need to grab a bite to eat, but I have one question for the group | ||
Darren_Duncan | go ahead | ||
stevan | I wanted to do something more with the CGI hack | ||
so i was looking at some old CGI books | |||
should I implement a guestbook, a game of hangman, or something else equally as silly and useless :) | 01:30 | ||
autrijus | I like hangman :) | ||
Darren_Duncan | the game sounds more fun ... | ||
stevan | ok | ||
Darren_Duncan | and everyone does guestbooks already ... might as well stand out | ||
stevan | hangman it is,.. that is what my daughter thought too :) | ||
autrijus | mrmuskrat: try "svn up" | ||
mrmuskrat: and see if it gives you the same problem | 01:31 | ||
Darren_Duncan | moreover, guestbooks are more of a database example than a cgi example | ||
stevan | ok,.. off for food, I will be back later & | ||
jabbot | pugs - 1405 - restructuring where perl6 and perl5 code | ||
mrmuskrat | ok | 01:32 | |
yes but now it's at 414 | |||
autrijus | ok. | 01:33 | |
pasteling | "mrmuskrat" at 67.174.166.72 pasted "makefile (rev 1405)" (818 lines, 31.1K) at sial.org/pbot/8865 | ||
Darren_Duncan | there are now 'empty' folders in /ext/Pod* | 01:34 | |
I mean ext/Pugs | |||
the modules were moved out, but not the support files | |||
is someone in the middle of this, or is that a loose end? | |||
autrijus | I don't see a ext/Pugs here | 01:36 | |
maybe you need to simply rm them | |||
Darren_Duncan | I mean ext/Pugs-Documentation and ext/Pugs-MakeMaker | ||
are still there, without the modules, but still with support files | 01:37 | ||
autrijus | pugs-doc should remain | ||
Darren_Duncan | testing ... | ||
autrijus | the support files are artifacts on your system | ||
they are not versioned. | |||
so, just rm them, I think | |||
Darren_Duncan | I thought svn should have removed them, since it previously added them | ||
autrijus | they may be added by perl Makefile.PL | 01:38 | |
Darren_Duncan | will remove then up to see what happens | ||
autrijus | k | ||
Darren_Duncan | it re-added Pugs/Documentation | 01:39 | |
I mean _ | |||
I mean - | |||
autrijus | that's ok. | ||
it should be there. | |||
(I think) | |||
yay, aix finally builds ghc 6.4. | 01:40 | ||
that means the last reason for maintaining 6.2.2 compatibility has just went away. | |||
Darren_Duncan | did you try it or read that? | ||
autrijus | if no-one opposes, Pugs 6.0.14 will drop 6.4 support. | ||
Darren_Duncan: er, I'm the AIX porter for ghc :) | |||
Darren_Duncan | say again? | 01:41 | |
autrijus | er | ||
drop 6.2 support. | |||
mrmuskrat | so I should download and install 6.4? | ||
autrijus | drop ghc 6.2 support. | ||
Darren_Duncan | sounds better | ||
autrijus | mrmuskrat: right, and maybe uninstall 6.2 | ||
Darren_Duncan | in that case, I'll have to install 6.5 since I don't have it | ||
I mean 4 | |||
autrijus | yeah. sorry folks | ||
Darren_Duncan | looking ... | ||
autrijus | but the #ifdef | ||
is getting out of control. | |||
and 6.2 doesn't work well on win32 anyway (no %ENV) | 01:42 | ||
I mean, 6.2-built pugs doesn't have real %*ENV support. | |||
which is annoying. | |||
Darren_Duncan | I have to find the GHC download site again | ||
mrmuskrat | i was wondering about that last time I tried pugs | ||
autrijus | haskell.org/ghc/ | ||
Darren_Duncan | du-oh-h | ||
downloading now | 01:46 | ||
mrmuskrat | the uninstall takes took twice as long as the install | 01:47 | |
Darren_Duncan | is uninstall automatic, or do I have to do something special? | 01:48 | |
autrijus | prolly the regular win32 uninstall procedure | ||
Darren_Duncan | ... when using a premade binary | 01:49 | |
I'm not using win32 | |||
Mac OS X | |||
I suppose the installer package will tell me... | |||
download done | |||
autrijus | ah. in that case you don't need a uninstall I think | 01:50 | |
Darren_Duncan | so they will work at the same time, or a normal install will overwrite the old? | 01:51 | |
autrijus | I don't know. I imagine the latter | ||
Darren_Duncan | the new installer says there is a script for uninstalling ... | ||
will check that 6.2 had one... | 01:52 | ||
mrmuskrat | if it's anything like the win32 install, you don't have to uninstall as long as you update the path to point at the version you wish to use | ||
Darren_Duncan | sure, ... in this case I have no more use for the old version though | ||
mrmuskrat | oh boy. anyone play SWG? | 01:57 | |
I just logged in to the radiant galaxy and the ewoks are invading Bestine. lol | |||
Darren_Duncan | as an experiment, I didn't even try to remove the old version, and just ran the new version installer ... see what happens | ||
installer says it was successful | 01:58 | ||
autrijus | oh you should notice a significantly faster compile :) | ||
will be even faster when I drop all the 6.2isms. | |||
obra | HEH | 01:59 | |
er. "heh" | |||
Darren_Duncan | doing a ghc -v gives the right version num | ||
do it yeah do it! | |||
I am currently at rev 1405 | 02:00 | ||
autrijus | you may want a "make clean" | ||
Darren_Duncan | will now try to remake everything | ||
autrijus | right. | ||
Darren_Duncan | did a 'make clean' | 02:01 | |
curiously, according to its output, it didn' t do a 'rm' or anything like that, but rather a 'mv' to /dev/null | 02:02 | ||
mrmuskrat | autrijus, thanks for trying to get this working tonight but I'm going to call it quits for now. I'll svn up in the morning and try again. | ||
autrijus | mrmuskrat: ok. I will fix it when you're up | ||
mrmuskrat: sorry for the problem | |||
Darren_Duncan | anyway, now doing 'make' ... | ||
autrijus | mrmuskrat: oh, did 6.0.13 release workforyou? | 02:03 | |
or 6.0.12 release for that matter | |||
mrmuskrat | from cpan? let me check | ||
I had one of them working | 02:04 | ||
probably 6.0.11 | |||
I know that I had to revert to GHC 6.2.2 to get it to install | 02:05 | ||
quit | |||
doh | |||
nice... pugs -v shows 6.0.10 | |||
and cpan is lying to me "Perl6::Pugs is up to date." | 02:07 | ||
d/l the gzip | |||
autrijus | reboot to win32 & | ||
mrmuskrat | same error with 6.0.13 from cpan | 02:08 | |
anyway, there's no rush. it's not like I've got to work my way through the synopses this weekend. | 02:09 | ||
I just thought that I'd spend an hour or two getting familiar with it | 02:10 | ||
autrijus | hrm | 02:12 | |
it worksforme on win32. | |||
mrmuskrat: what is your nmake version? | |||
mrmuskrat | 7.10.3077 | 02:13 | |
autrijus | see "nmake /?" | ||
oh. the .net one? | |||
mrmuskrat | yes | ||
autrijus | where can I get it? | ||
I'm using 1.50 still | |||
if you remove nmake.exe from your path | |||
and run makefile.pl again | |||
mrmuskrat | I got it with MS C++ .NET 2003 | ||
autrijus | it will likely to fix it | ||
hrm, can you put it somewhere I can download? the nmake.exe I mean | 02:14 | ||
or rather, nmake.* | |||
mrmuskrat | I was using the VS .NET 2003 command prompt and not the normal one | ||
you should d/l the free version... I've got it at work. | |||
let me see if I have the url | 02:15 | ||
Darren_Duncan | the 'make' succeeded, bug I got a 'Warning: `Ptr' is imported more than once:' from the DynamicLoader.hs file | ||
anyway, on to 'make test' ... | |||
mrmuskrat | msdn.microsoft.com/visualc/vctoolkit2003/ | 02:16 | |
ew | 02:18 | ||
I have to find the old version of nmake and remove it | |||
um | 02:22 | ||
when I run perl Makefile.PL and it can't find nmake, it downloads version 1.50. | |||
the error is the same and still at line 414 | 02:23 | ||
autrijus | very weird. | ||
go sleep, I'll figure it out :) | |||
mrmuskrat | thanks :) | ||
autrijus | oh, nopaste your perl -V | ||
before you sleep :) | |||
mrmuskrat | ok | 02:24 | |
pasteling | "mrmuskrat" at 67.174.166.72 pasted "perl -V" (57 lines, 2.5K) at sial.org/pbot/8867 | ||
jabbot | pugs - 1406 - * GHC 6.4 here we come. | 02:51 | |
Darren_Duncan | I was away from my comp for the last hour ... anyway ... | 03:35 | |
'make test' for 1405 said - Failed 29/169 test scripts, 82.84% okay. 224/3849 subtests failed, 94.18% okay. | |||
autrijus | sounds good | 03:36 | |
Darren_Duncan | this under 6.4 | ||
on Mac OS X 10.3.8 | |||
if I'm around, I'll test your preflight likewise ... otherwise, I won't test again unless you ask due to some risky change that was made | 03:37 | ||
question - did 1406 have those ifdefs stripped out, or does that come later? | 03:38 | ||
nevermind | |||
autrijus | :) | ||
Darren_Duncan | I said that because a svn up showed no changes to .hs files, where I presume the ifdefs are | 03:39 | |
then again ... | |||
jabbot | pugs - 1407 - * builtins.kwid is now S29. | 03:51 | |
autrijus | massive src reorg in progress. | 03:57 | |
Darren_Duncan | i unnerstan' | 03:59 | |
jabbot | pugs - 1409 - mp me up baby | 04:01 | |
pugs - 1408 - * ArgsParse is now Run.Args. | |||
autrijus | t/Synopsis is finally being blasted. | 04:06 | |
ingy will head the new Perl6::Bible effort. | 04:07 | ||
film at 11. I mean, on p6c. | |||
theorbtwo | Mm. | 04:12 | |
I suppose it's no longer April Fool's there by a good 12 hours. | |||
autrijus | sadly, it's serious. | ||
mugwump | It's only supposed to be until noon | ||
theorbtwo | I have no problems with t/Syn being blasted. | 04:14 | |
But the docs should be available by man Perl6::S02, etc, when pugs is installed. | |||
Also, having them available for easy grep is key for useful development. | 04:15 | ||
(Try searching for the =:= operator with google...) | |||
mugwump | Well, for your convenience I've included a URL to the online browsable versions and the subversion source. | ||
autrijus | theorbtwo: yes. that's the idea | ||
Perl6::Bible will contain them | 04:16 | ||
and it will be on CPAN | |||
so you can easily download them. | |||
theorbtwo | Oh, OK. | ||
jabbot | pugs - 1411 - Early Kwid parser | 04:21 | |
pugs - 1410 - Remove t/Synopsis/S*.pod | |||
Steve_p | Perl6::Bible? | ||
mugwump | sure, why not :) | 04:22 | |
Steve_p wanders off the p6c to take a peek | |||
Alias_ pokes autrijus: <purl> couldn't get the headlines: wagner.elixus.org/~autrijus/cpan.rdf wasn't successful | 04:24 | ||
autrijus | Alias_: will fix | 04:30 | |
NA hackathon announced: www.nntp.perl.org/group/perl.perl6.compiler/487 | |||
EU hackathon to be announced next monday | |||
all in the same month | 04:31 | ||
Alias_ | 4 days! | ||
wow! | |||
autrijus | Alias_: you had not heard I'll stay in leo's house for 2 weeks? | ||
Alias_ | no | ||
autrijus | ok. that's just before YAPC::NA hackathon | ||
jabbot | pugs - 1414 - turn off parser test for cpan | ||
pugs - 1413 - Changed Perldoc test stuff | |||
pugs - 1412 - forgot these Perldoc modules | |||
autrijus | so it will be a month full of hackathons | ||
Alias_ | I had mentally written you off for conference season | ||
I forgot YAPC::NA is in .ca | 04:32 | ||
autrijus | =) | ||
Alias_ | Look like I won't get to YAPC::NA... I'd hoped to do the pair of cons, but the odds are my business will be at a critical launch point somewhere around june | ||
autrijus | k. | 04:33 | |
good luck :) | |||
Khisanth imagines neighbors complaining about the sound 13 hackers hacking :) | 04:34 | ||
Alias_ | It's going to be a hell of a year ... :/ | ||
Khisanth: And the patrich in the pear tree... | |||
autrijus | Khisanth: the place is in a far far isolated place :) | 04:35 | |
Khisanth | but it mentions a neighbor :P | 04:36 | |
autrijus | true :P | ||
theorbtwo wonders. | 04:38 | ||
I was hoping to go to the hackfest, but I wasn't invisioning it being at somebody's house out in the sticks. | |||
Khisanth | is there a way to make whatver it is that is building pugs run at a lower priority? | ||
theorbtwo | The normal way -- man nice. | ||
Or renice. | 04:39 | ||
Alias_ | Do you have an address? | ||
Khisanth goes grepping through Makefile.PL | |||
Alias_ | Just pull it up on NASA World Wind and see what it looks like | ||
ali.as/photos/OSCON | |||
autrijus | nice make | ||
Alias_ | # Shows Alias Central during OSCON | ||
eep, bad url | 04:40 | ||
autrijus | theorbtwo: I hear there's lots of outdoor activities possible | ||
Alias_ | make that ali.as/OSCON/ | ||
Khisanth | s/outdoor activities/distractions/ ;) | ||
theorbtwo | I'm not much on outdoor activities, generally. | ||
autrijus | theorbtwo: also it's 90min drive from central toronto | 04:41 | |
so it's not that bad... I think | |||
theorbtwo | Oh, the mail says 1.5. | 04:42 | |
Steve_p reads about the hackathon and sighs | |||
theorbtwo | Er. Same thing. | ||
Steve_p | heh | ||
autrijus | Steve_p: hm? | ||
theorbtwo shakes his head, trying to get the idiocy out. | |||
Steve_p | I'm probably not going to be able to go to Toronto :( | ||
theorbtwo | I'm certianly going to YAPC::NA. | 04:43 | |
I'm hoping to do the hackathon as well, but am uncertian. | 04:44 | ||
autrijus | theorbtwo: you don't have to stay for 4 whole days... | ||
you can just drop by and say hi :) | |||
theorbtwo grins. | |||
Steve_p | Have people seen the warnings with ghc 3.4? | 04:46 | |
theorbtwo | 3.4? | ||
6.4, you mean? | |||
Steve_p | Duh? Yes, 6.4 :) | ||
Alias_ | A quiack Haskell question | 04:47 | |
quick | |||
Am I right in reading that one of the key features of Haskell is that is can implement math-like provably correct things? | 04:48 | ||
autrijus | yes, fixing warnings. | ||
Alias_: yes. | |||
term is "proof-carrying code" | |||
Alias_ | So you don't actually have to write unit tests for certain functions, because you can prove it works right | ||
autrijus | also it comes with QuickCheck that is a weaker form of provable code | ||
yes, that is the idea. | 04:49 | ||
Alias_ | Is that provability tracked in the language? | ||
autrijus | or rather, you can prove that it satisfy a set of invariants. | ||
Alias_ | Internal meta-data or some such | ||
autrijus | there is a Programmatica project that tracks such metadata | ||
Alias_ | invariant? | ||
Alias_ lacks in terminology in this area | |||
autrijus | "properties about the system" | ||
mugwump just happens to be googling for that now | |||
Alias_: aka "Axiom" | 04:50 | ||
Alias_ | Axiom is another thing I know nothing about | ||
autrijus | but normally you have to derive them using QuickCheck or other tools | ||
Alias_ | I tend to just discover concepts independantly most of the time | ||
Then find out later they have names | |||
theorbtwo wonders if there's a -w option that makes sure that you've not written any pattern-matches that can fail. | |||
autrijus | theorbtwo: -Wall detects that. | 04:51 | |
there is a -W that checks for this | |||
forgot which | |||
Alias_ | autrijus: Oh, did you say that PPI::Tokenizer has an official name? I wanted to update the POD | ||
autrijus | what official name? | ||
Alias_ | For the parser "type" | ||
mugwump | An Axiom is like a statement of truth. You define something as being so, and then everything else follows from it | ||
autrijus | context? | ||
Alias_ | infinite something something | ||
jabbot | pugs - 1416 - release files | ||
pugs - 1415 - Doc tweak for release | |||
autrijus | backtracking parser with infinite lookaheads? | ||
Alias_ | right, that | 04:52 | |
mugwump | en.wikipedia.org/wiki/Axiom # a nice write-up | 04:54 | |
autrijus | mugwump: invariants are something you prove about a system, I think | ||
like conservation of energy | |||
not sure whet^W^W^Wthey are laws, not axioms | |||
Alias_ | At least Haskell finally makes some sense to me now | 04:55 | |
"What you use when you want to be provably correct" | |||
obra | "Hello Kitty has no mouth" being an example of a universal invariant | ||
mugwump | well, once I work through xrl.us/tapl, no doubt we will be using the same set of terms | 04:56 | |
autrijus | mugwump: how far are you into it? | ||
I was just reading typed assembly in ATTaPL this morning | |||
makes lotsa sense | |||
with OO support and provably won't stuck | 04:57 | ||
obra | wait. xrl.us/tapl is tapl? | ||
mugwump | well, the other day I tried to dive right into chapter 18 in TaPL, which is a study on Featherweight Java | ||
It made quite a bit of sense, but I'm not sure how to apply it | |||
obra: I love the way metamark will let you name the links :) | 04:58 | ||
autrijus | mugwump: you may want to start at beginning :) | 04:59 | |
mugwump | :) | 05:00 | |
jabbot | pugs - 1417 - * fix ghc 6.4 warnings. | 05:01 | |
Steve_p | hey, I was going to do that :) | 05:06 | |
autrijus | :D | ||
I'm still removing 6.2isms. | 05:07 | ||
Steve_p looks into the trig functions | 05:09 | ||
autrijus | haskell has this weird property of bits can't easily rot | 05:11 | |
because they become type errors as soon as they rot | 05:12 | ||
ingy | hola | 05:26 | |
theorbtwo | Morning, ingy. | 05:27 | |
Darren_Duncan | Evening, ingy | 05:31 | |
jabbot | pugs - 1418 - * deprecation warnings are gone | ||
Darren_Duncan | eggcenent | 05:32 | |
celent | |||
theorbtwo sighs. | 05:38 | ||
autrijus | mmm? | ||
theorbtwo | You know, most things about the pugs/perl6 effort I like, but a couple of things really get under my skin from time to time. | 05:39 | |
Trying to hide references is one of them. | 05:40 | ||
autrijus | mrrmph | 05:43 | |
elaborate? | |||
the current way pugs treat refs is probably all wrong | |||
but the language level ref-hiding is part of perl6 | |||
theorbtwo | Yeah. | ||
I don't like it. | |||
autrijus | elaborate? :) | ||
theorbtwo | $x=4; $y=\$x; $y=10; | ||
I expect after that $x is 4, $y is 10. | |||
If I wanted that to change $x, I would have used :=. | 05:44 | ||
autrijus | sure. why would it be otherwise. | ||
ask pugs? | |||
$x is 4 and $y is 10. | |||
ingy | =) | ||
theorbtwo | People are suggesting otherwise in the "identity tests and comparing two references" thread. | 05:45 | |
autrijus | unless people is @larry | 05:46 | |
I suggest to ignore. | |||
obra | @larry... | 05:47 | |
Khisanth | if $x ends up as 10, that would be rather annoying and confusing | ||
theorbtwo wonders who @larry[1...] is. | |||
Khisanth | @larry[1..] is infinite larrys? | 05:48 | |
theorbtwo | Just the ones that actually exist, AFAIK. | ||
I could well be wrong, though. | 05:49 | ||
Khisanth | hmm infinite number of larrys typing on infinite keyboards ... :) | ||
Alias_ | Khisanth: Which that might generate a hell of a lot of documentation, will we get much code? | ||
theorbtwo | Anyway, the first Larry is Larry Wall... who are the rest of them? | 05:50 | |
Alias_ | Larry W(All) | 05:51 | |
Khisanth | alternate dimension copies | ||
autrijus | theorbtwo: dev.perl.org/perl6/people.html | ||
obra | Larry tty0...Larry ttyN | ||
Khisanth strangles GGV | 05:53 | ||
theorbtwo | Ah, you mean $cabal. | ||
Khisanth | $*CABAL? :P | 05:54 | |
obra | *** Error: Undefined variable $cabal at Var "$cabal" | 05:55 | |
rgs | that's normal. | ||
theorbtwo | You didn't declare it. | 05:56 | |
obra | Right. There is no cabal. | ||
theorbtwo | Hm, I'm not sure that "Undefined" is the word we should be using. | ||
Cognative dissonnance with undef. | |||
"Undeclared"? | 05:57 | ||
rgs | Unexistent. | ||
(for $cabal :) | |||
theorbtwo | No, I mean the error message should be fixed. | ||
autrijus | sure. | 05:58 | |
fix it to say | |||
Global symbol "$w" requires explicit package name | |||
or something like it? | |||
theorbtwo | Nooo! | ||
autrijus | ;) | ||
obra | Sorry. Didn't mean to cause actual discussion ;) | ||
autrijus | "Undeclared" is fine by me. | ||
please commit ahead. | |||
rgs | obra :) | ||
autrijus | aww | 05:59 | |
I just discovered that | |||
perl -Mstrict -e'$a' | |||
is just fine | |||
perl -Mstrict -e'$x' # error | 06:00 | ||
clkao | finally there's ghc 6.4 pkg | ||
autrijus feels suddenly motivated to do this rewrite perl thing | |||
Alias_ | heh | ||
theorbtwo | $a and $b are exempt; doing otherwise makes writing sort subs annoying. | 06:01 | |
OK, not annoying as much as confusing. | |||
autrijus | that's why we have $^a now. | ||
theorbtwo | I know. | ||
autrijus | and the "reverse sort" optimisation | ||
rgs++ # 5.9.2 | |||
theorbtwo | Wait, $^a is in 5.9? | ||
jabbot | pugs - 1420 - * use qualified Data.Map | ||
pugs - 1419 - Deleting contrib | |||
theorbtwo | I'm liking the idea of @foo = sort @foo opt. | 06:02 | |
autrijus | no, reverse sort is 5.9 | ||
not $^a | |||
theorbtwo | Ah, OK. | ||
Khisanth | do people actually use reverse sort LIST? | ||
autrijus | it was slow | 06:03 | |
now it's fast | |||
so I imagine people will gradually start using it | |||
Khisanth | it just like a strange thing to do | ||
seems | |||
autrijus | it feels more natural than | ||
sort { $b cmp $a } LIST | |||
to me | |||
theorbtwo | To me as well. | ||
Alias_ | Khisanth: Write a detect function, and ask File::Find::Rule::PPI | ||
Khisanth | oh you mean that | 06:04 | |
autrijus | or just ask miyagawa's search | ||
Alias_ | that too | ||
theorbtwo | (I do a @foo = sort {$b->depth <=> $a->depth} in categorize_tests, BTW.) | 06:05 | |
...which could possibly benifit from /both/ of those. | |||
castaway_ | more natural? eh? you lot strange | 06:06 | |
Khisanth | autrijus: I thought you meant reversing the result of sort in general, not just the default sort | 06:07 | |
autrijus | ingy: Perl6::Pugs::MakeMaker? Pugs::MakeMaker? | ||
06:07
castaway_ is now known as castaway
|
|||
autrijus | ah. | 06:07 | |
theorbtwo | OTOH, it could benifit more from somebody writing an easy way to say "give me the first element in the order specified by this code block". | ||
autrijus | head . sortBy code | 06:08 | |
Alias_ | theorbtwo: List::Util::first | ||
theorbtwo | I could have sworn there was a way to do that in Scalar::List, but I didn't see one, and didn't feel like implementing it. | ||
No, List::Util::first is $foo = (grep)[0]; | |||
Alias_ blinks | |||
oh, right | |||
autrijus | there's no such thing in List::Util. | ||
theorbtwo | I know. | 06:09 | |
Alias_ | Check List::MoreUtils | ||
autrijus | you can write it using a fold. | ||
I mean, reduce | |||
theorbtwo | I know. | ||
Alias_ | Wouldn't min { .. .} @list do it? | ||
theorbtwo | OTOH, the list I'm doing it on in this case probably maxes out at 5 elements. | ||
I don't think min takes a codeblock. | |||
Alias_ | The min would be the first element of the sorted list | ||
Then you arn't using the right min | 06:10 | ||
theorbtwo | Nope, it doesn't. | ||
Alias_ | :) | ||
theorbtwo | List::Util is core on recent perls, and it already has plenty of deps. | ||
14 use lines. | 06:11 | ||
jabbot | pugs - 1421 - * Internals.TH is now gone | ||
theorbtwo | Er, one of those is local to mine. | 06:12 | |
drbean | ?help | 06:28 | |
jabbot | pugs - 1422 - Moving disabled modules into `modules` d | 06:41 | |
castaway | disabled modules? | 06:42 | |
castaway hopes they have rights too | 06:43 | ||
theorbtwo | Modules that shouldn't be compiled per default, because they're expected to not work at present, or because they're just there "for the time being". | 06:44 | |
autrijus | right. | ||
castaway | aha ;) | ||
autrijus | as soon as some module Works, we welcome it back to ext/. | ||
castaway starts up the "rights for disabled modules" movement ;) | |||
Corion | Hi ! After reading the logs, I assume that I'll have to upgrade to GHC 6.4 :) | 06:47 | |
autrijus | yes. :) | ||
sorry but it's better in the long run | |||
Corion | autrijus: I'll manage :) | ||
autrijus | it also means we get version objects for free | 06:48 | |
Corion | autrijus: Free stuff is always cool :) | ||
Oooo - and the Makefile.PL even checks for GHC 6.4 - nice! | |||
... but that means no smoking until in 8 hours, as I'll be away for the day :) You'll manage :) | 06:49 | ||
autrijus | I'll manage :) | ||
castaway waves at Corion. | 06:50 | ||
Corion | Good morning castaway :) | ||
Corion still wonders at the test failures in kungfuftrs smoke tests ... | |||
castaway | it's morning? | ||
Corion | castaway: at least here, yes | ||
castaway | so thats what that light is | ||
Corion | ... and the sun is shining - splendid weather for riding my bike! :) | ||
castaway | oh, the new bike | 06:51 | |
still shiny? | |||
Corion | castaway: Yes, still shiny :) And it'll get cleaned tomorrow, so it'll shine some more ! :) | ||
castaway | ;) | ||
what colour(s) ? | |||
jabbot | pugs - 1424 - * pod sections can now contain arbitary | ||
pugs - 1423 - * it is now ok to warn depcrecations etc | |||
Corion | autrijus: BTW, one of my (failing) tests is of interest to you - t/pugsrun/09-dash-uppercase-c.t - the failures there are Parrot compiler failures (or so I think) | 06:52 | |
castaway: Sky blue (if that's a colour), just like on the pictures I showed/posted :) | |||
castaway | oooh | ||
Corion | ... but I can upload a live picture :) | ||
castaway | yay | ||
Corion | Oh. Even reading the headlines of slashdot is now lame. They have really really lame april fools jokes | 06:54 | |
castaway | tell us something we didnt know :) | ||
Alias_ | indeed | ||
castaway | (and Iavent even looked) | ||
Alias_ | Although I'm trying to work out of "no limit Gmail accounts" is a hoax or not | ||
Corion | BTW, is there a way to make PuTTY automagically reconnect? | 06:56 | |
Alias_ | ooo.. I wish | ||
castaway | That would be nice | 06:57 | |
run it in a perl loop? | |||
Corion | Alias_: :) Chat!Zilla does this for me, so I can hibernate the computer and it wakes up without any "problem". I'd like PuTTY to be the same. | ||
castaway: Hmmm. Hmmmmmmm. | |||
Alias_ | The problem with PyTTY is that you'd still need to enter passwords again | ||
PuTTY | |||
castaway | you can use the agent | ||
Alias_ | Chat is a bit of a different situation | 06:58 | |
Corion | datenzoo.de/pugs/Honda-CBF-600.jpg (200k) | ||
for passwords I'd (then) use the agent, true | |||
"pageant" or however it's called | |||
castaway | www.chiark.greenend.org.uk/~sgtatha...-auto.html | ||
Corion | castaway: :( | ||
Alias_ | "(Some people would like for us to remember the password so they don't have to type it again, but we won't be doing that.)" | 06:59 | |
Corion | It's a photo taken with my Nokia 7610, so the quality isn't top notch :) | ||
Alias_: Yes - that's what PuTTY agent (pageant?) is for | |||
castaway | ooooh, shiny | ||
theorbtwo | Looks pretty, Corion. I didn't know that you ride motorbikes. | ||
Corion | Alias_: You passphrase protect all your logins with it, and it manages them | ||
castaway | thats a phone pic? not bad! | 07:00 | |
Corion | theorbtwo: I've been doing so a long time, and it's mentioned on my homenode :) But last year, I didn't ride much, because my old bike was too old (slow, broken) | ||
castaway: Yes, not bad for a phone pic :) | |||
theorbtwo | Oh. Apparently, you showed us your bike while we were in town. | 07:01 | |
castaway | sold the old one on ebay for lotsacash? | ||
theorbtwo | But I forgot. | ||
Alias_ | ok, definately start investing in oil companies | ||
Corion | Alias_: See the.earth.li/~sgtatham/putty/0.57/h...r9.html#C9 for passwordless putty | ||
castaway wanna see Corion in leathers ,) | |||
jabbot | pugs - 1425 - * nomenclature: "Pod" rules are now "Doc | ||
Corion | castaway: Not yet :( Photos to be taken of it and then it's to be sold | ||
Alias_ | Corian: While I want it, I don't want it enough to reduce security level | ||
Corion | castaway: :)) I'm told I look good in leathers | 07:02 | |
Schwern | VICTUALS++ | ||
Corion | ... and some evenings, I just sit in the mirror, oiling me up in my leathers | ||
castaway | *g* | ||
Schwern | Though I would have thought Ingy's would be "Sausage, eggs, potatoes and bourbon" | ||
Corion | s!in!in front of! :) | ||
Schwern | Corion: I like the first version better. | ||
castaway | Oh, thats a file ?? | 07:03 | |
Schwern | svn.openfoundry.org/pugs/VICTUALS | ||
Corion | Alias_: Aah, the age old conflict of security vs. convenience :) | ||
Alias_ | but of course | ||
Corion | Schwern: Well, that's because you have no mirror in your room. So I need to watch other people through the mirror! | 07:04 | |
castaway | ah, cute | ||
Alias_ | I keep thinking that every stable country in the world should be hanging on to their safe oil as long as possible, to let the prices creep up | ||
castaway | safe oil? | 07:05 | |
theorbtwo | safe oil? This is the stuff you oil safes with? | ||
castaway | oh, saved | ||
Alias_ | "safe" as in stuff that isn't subject to touchy offshore treaties where some other country might pinch it | 07:06 | |
theorbtwo | Oh! | ||
Alias_ | on-shore oil where the entire field is inside your protected zone | ||
or something of that nature | |||
theorbtwo | Ah, yeah. | ||
Alias_ | It's getting to the point where the .gov.au has decided that they are going to have to drill the Great Barrier Reef for oil | 07:07 | |
castaway | lucky for them as has it | ||
ick | |||
Alias_ | I guess this does at least mean we can cap global warming once the oil runs out | 07:08 | |
Khisanth | Alias_: it should start growing more soybeans instead :) | ||
Alias_ | And it's probably a good time to invest in solar tower companies | ||
and uranium miners | |||
and rail companies | |||
castaway | rail ? | ||
Alias_ | Trucks need oil, trains can use electricity | 07:09 | |
castaway | not all places ,) | ||
Alias_ | At $80 a barrel, there's a whole range of non-carbon electricity sources that become profitable | ||
Solar, wind and solar-tower are all sweet at $80 | 07:10 | ||
theorbtwo | Or carbon but not petroleum-based. (Nor coal.) | 07:11 | |
Alias_ | Well, non-cached carbon | 07:12 | |
theorbtwo | Non-cached? | ||
castaway | you missed hyrdo, or is that expensive/ | ||
? | |||
Alias_ | Hydro is profitable already, but has limited supply | ||
There arn't enough places to dam | |||
It's fairly expensive in real-estate terms | 07:13 | ||
theorbtwo | There are plenty of places to dam, but most of them are too small to bother with. | ||
Alias_ | theorbtwo: The idea that all these "non-renewable" things are using up "cached" energy below the earth (or wherever) | ||
theorbtwo | Oh, yeah. | ||
Makes sense. | |||
castaway | well wind-wotsit space is limited too | ||
Alias_ | yeah | ||
Solar tower is interesting | 07:14 | ||
Australia could generate bucketloads of it, same with most other desert-like places | |||
castaway | should slap it on all rooves | ||
(rooves? eek.. roofs .. ?) | |||
Alias_ | Slap a 1km concrete tower on every roof? | ||
castaway | no, planels | ||
Alias_ | oh... | ||
Towers look like a better option | |||
theorbtwo | Hmm? | 07:15 | |
castaway | whats better? why not both, more isnt bad, no? | ||
theorbtwo | Getting it up above the cloud layer, you mean? | ||
Alias_ | 600 megawatt power plant, built from a 1km concrete tube | ||
castaway | sneaky | ||
Alias_ | www.enviromission.com.au/index1.htm | ||
They are building the first one in country .au | |||
Biggest building in the world, once it's up | 07:16 | ||
And conveniently, it's also a food source | |||
castaway | howso? | 07:17 | |
Alias_ | It's a giant greenhouse at the base | ||
theorbtwo | Hm, interesting looking idea. | ||
castaway | cool | ||
Alias_ | So for the outer third or so of the covered area, you can grow fruit and stuff | ||
theorbtwo | It's very interesting to me how almost all different forms of electric generation are just different ways of creating pressure in a fluid to move turbines. | 07:18 | |
IIRC, normal solar is pretty much the only one that isn't. | |||
Alias_ | only because we can build massive kinetic->electric converters | 07:19 | |
And it's hard to build any other type of converter | |||
I imagine it would be hard to scale solar panels to hundreds of megawatts | |||
jabbot | pugs - 1426 - Recommend Perl6::Bible installation | 07:21 | |
mugwump | Darren_Duncan: are you planning to convert all the Makefile.PLs in modules/ ? | 07:22 | |
Corion | Aaaah - I'm stupid - I just had a revelation why my tests fail on freebsd. "print" is a builtin for some shells, I guess. | 07:24 | |
But I don't have time now :( | 07:25 | ||
I think using -e "print" should fix it (over using the bareword print on the command line" | |||
anyway - have a nice day | 07:26 | ||
castaway | have fun Corion! | 07:28 | |
ingy | what is $^O on windows? | 07:35 | |
autrijus | MSWin32 or cygwin or mingw | ||
or msdos for weird people | |||
ingy | tanks | ||
autrijus | machine guns | 07:36 | |
ingy | autrijus: what should `p6bible -v` currently print | 07:37 | |
castaway | whats p6bible? | 07:38 | |
ingy | Perl6::Bible on cpan | ||
perldocish support for perl6 | 07:39 | ||
autrijus | ingy: list the version from each pods | ||
or svn rev from the svn.perl.org pull | |||
or the generated date | 07:40 | ||
or all above | |||
ingy | hmm sounds like work :P | ||
autrijus | pick whatever seems easy and nice for you :) | ||
Darren_Duncan | ping mugwump | ||
autrijus | I think the gen date for PErl6::Bible dist itself | 07:41 | |
makes sense already. | |||
Darren_Duncan | I was away from comp for an hour | ||
I tossed the idea of converting all the Makefile.PL in /modules but then said I wouldn't after all | 07:42 | ||
ingy | autrijus: ok | ||
Darren_Duncan | one result of that discussion is that we don't actually want to bring Makemaker to perl 6, but do something better instead | ||
afterwards, makefiles can target that | |||
invoke that | 07:43 | ||
also, numerous makefiles were non-trivial in content, so I thought it would be better for those who ported the modules they are associated with to port them | |||
so I only ported the ones for my own modules | |||
but even those need changing once we have a working replacement for Makemaker to invoke | 07:44 | ||
right at this moment, I'm writing the new SYNOPSIS doc for SRT | 07:45 | ||
ingy | we can refactor when we have better tools. for now Pugs::MakeMaker is fine | ||
Darren_Duncan | Pugs::MakeMaker is not written in Perl 6, is it? | 07:46 | |
ingy | not currently | ||
autrijus | we'll get there when we get there :) | 07:47 | |
Darren_Duncan | then a Perl 6 module config file can't invoke it, can it | ||
? | |||
theorbtwo | It could eval_perl5('...'), but most builds can't do that. | ||
Darren_Duncan | by 'most builds', do you mean that ability is platform specific right now? | 07:48 | |
even then, I use 'VERSION_FROM' in my makefiles, and PREREQ_PM ... | 07:49 | ||
for both of those, the Makemaker will have to extract version numbers from the Perl 6 modules to associate them | |||
I think that, in the short term, a solution would be to have a Perl 6 MakeMaker that is mostly a shell around the Perl 5 one; | 07:50 | ||
autrijus | version_from needs to be fixed to track p6 module lines | ||
if it had not already do so. | |||
which I think ingy has already done the parsing part for SHA1 | 07:51 | ||
(I think) | |||
Darren_Duncan | the Perl 6 version would load/examine the Makefile.PLs and the modules themselves, extracting necessary info ... | ||
then invoke the Perl 5 module to actually create the 'Makefile' | |||
then the only 5 to 6 bridge is in the core helper module, and nothing in /modules has to know about perl 5 | 07:52 | ||
autrijus | I think it makes sense even tho that means we'll have to system() perl5 | ||
would you make it so? | |||
Darren_Duncan | I can consider attempting to do that tomorrow, but no promises yet | 07:53 | |
autrijus | sure =) | ||
Darren_Duncan++ | |||
Darren_Duncan | theoretically the task is simple ... | 07:54 | |
autrijus | theory and practice is the same thing in theory :) | ||
(but not in practice) | |||
castaway | *g* | ||
Darren_Duncan | but I haven't actually hacked MakeMaker before so I'll have to research to know what I'm doing | ||
ingy | Darren_Duncan: if you write me an email of what to do I can do it for you | 07:55 | |
Darren_Duncan | I'll have to work through it, then I could write you tomorrow | ||
ingy | ok | ||
Darren_Duncan | fyi, I should be able to write the necessary perl 6 based on the synopsis, but I'm not sure if Pugs will have implemented the necessary parts ... even if I don't make it object oriented | 07:56 | |
eg, does Pugs currently know about the middle part of a module name? | 07:57 | ||
the 'number' | |||
Khisanth | write it anyway and wait for the features to be implemented? :) | 07:59 | |
Darren_Duncan | If I said 'require Foo' and then later said 'my $version = Foo.meta.version()', will I then hold the module's declared version? | 08:01 | |
Khisanth, I hear you | |||
I think I will write a brief note to p6c now to announce my intentions | |||
check your p6c mail now, the posting is in | 08:16 | ||
Juerd | Is Thomas Sandlass right that values have identity? | 09:15 | |
wolverian | oh, we require GHC 6.4 now? ouch. | 10:30 | |
shapr | Juerd: what did thomas sandlass say? | 10:54 | |
Juerd | shapr: That =:= tests value identity equality | 11:11 | |
Which IMHO (a) makes no sense in Perl and (b) would mean values have identity, which in turn implies that references point to values, not variables, which in turn means that after $foo = new value, \$foo has changed... | 11:12 | ||
This all makes sense in a Python world | |||
Not in ours | |||
theorbtwo | Hmm. | 11:15 | |
ghc-6.4: panic! (the `impossible' happened, GHC version 6.4): Maybe.fromJust: Nothing | 11:16 | ||
theorbtwo tries again from "make clean" | |||
Alright, compiles OK that way. | 11:18 | ||
drbean | I don't have readline support although I have Term::ReadLine::Gnu | 13:02 | |
I installed it after making pugs however. | 13:12 | ||
Do I have to make pugs clean? | |||
autrijus | so I committed some work from the past hour. | 13:35 | |
* Threads. Sockets. Namespaces. Perl6::MakeMaker. pugscc now runs everywhere. template haskell is now optional. | |||
also see examples/httpd.p6 | |||
dinner, bbiab & | |||
nothingmuch 's jaw clunks on the floor | 13:36 | ||
and to think, all i've done this weekend is read some tldp howtos and try to get lvm and raid to get along | 13:37 | ||
integral | ghc 6.4 is now required? | 13:40 | |
yinjieh | 6.4 !! | ||
nothingmuch | yes, iirc | ||
yinjieh | mm | 13:41 | |
jabbot | pugs - 1427 - * Threads. Sockets. Namespaces. Perl6::M | ||
wolverian | Juerd: I don't really understand why p6 keeps around the reference-based idiom. I like how ruby does this. :) | 13:46 | |
Alias_ | wolverian: Because then Perl probably wouldn't be Perl? | 13:48 | |
wolverian | Alias_: I'm not sure. | ||
Alias_: do you think so? | 13:49 | ||
Alias_ | Arbitrary referencing is a heavily used Perl feature | ||
wolverian | Alias_: oh, I don't mean that. it just feels weird that 'my $foo = @bar;' would put a reference into $foo, not the object itself. | 13:58 | |
Alias_ | how could the object itself go in? | 13:59 | |
wolverian | Alias_: I don't know. :) the way ruby does it! (although it copies.) | 14:05 | |
oh well, I'm pretty confused about this. | |||
Alias_ | heh | ||
So are most of us still | |||
shapr | yow! | 14:09 | |
Juerd: (lambda x:x + 1) != (lambda x:x + 1) because == compares memory addresses. | 14:17 | ||
In Python, that is. | |||
Once you can create function values, value equality gets harder. | |||
Juerd: In fact, that problem gets so hard it has its own name - en.wikipedia.org/wiki/Entscheidungsproblem | 14:19 | ||
masak | i created a game the other day which explores this problem | 14:22 | |
shapr | oh tell me more! | ||
masak | it's called "horseplay" | 14:23 | |
shapr | How does it work? | ||
masak | players take turn creating five entities | ||
syntax, semantics, walls, programs and inputs | |||
syntax+semantic=language and program+input=horse | |||
the game is won by the one who creates an unbroken wall (for a sufficiently long period of time) for a rich language | 14:24 | ||
shapr | How do you create those entities? | ||
masak | by defining them | ||
shapr | Do you have logs of example games? | 14:25 | |
masak | never played | ||
not even examples | |||
the rules are still a bit shaky | |||
shapr | Well, this is a great time to try it out. | ||
masak | i agree | ||
if you give me your email we might discuss it further | 14:26 | ||
shapr | I am [email@hidden.address] | ||
masak | thx | ||
the rules are in swedish right now but i can translate them | |||
shapr | And I have TMDA spam protect, so emails bounce the first time unless I whitelist you address ahead of time. | ||
masak | ok, i am [email@hidden.address] | 14:27 | |
shapr | Det Ƥr okej. Jag kan forstƄr lite svenska. | ||
masak | sedƤr | ||
then i'll send the rules as they are | |||
shapr | Bor du i sverige? | ||
masak | uppsala | ||
shapr | Ah, inte sƄ nƤra. Jag bor i Boden. | ||
Och jag kommer frƄn USA, sƄ min svenska Ƥr nƤstan skit. | 14:28 | ||
Jag borjade att lƤra mig svenska tvƄ Ƅr innan. | |||
masak | so far it's perfect, at least the written aspect of it | ||
shapr | I can never get that part right about "I began in two years" that means "It was two years ago and it continues" | 14:29 | |
I know one of those prepositions means "it's over now" and one means "it continues still" | |||
masak | verb tenses are screwed up in swedish | ||
but one only realises it when one learns a language where they are sensible | 14:30 | ||
shapr | Most languages are screwed up. But Swedish has some nice features. | ||
masak | such as? | ||
shapr | I really like "sin". If I say "Shae drove his car." it could be masak's care that I drove. but with "Shae kƶr sin bil.", we *know* it's Shae's car. | 14:31 | |
I also like the way 'gƄng' is separate from 'tid' | |||
'one time' can mean both of those in English. | |||
metaperl | shapr, do you mind telling us how you migrated from Birmingham, Alabama, USA to Sweden? | ||
and why your named changed? | |||
shapr | I met this woman on ICQ. (50,000 words omitted) and now I live in Sweden. | ||
masak | shapr: 'gƄng' is separate from 'tid' in most languages i know | 14:32 | |
shapr | metaperl: But a few years before that, I got bored with my name. | ||
masak | and 'sin' has a counterpart in french | ||
shapr | So I changed it. | ||
masak | what i would like to see is 'gƄnger' (occasion) separated from 'gƄnger' (mathematical operation). but i suspect that's just me. | 14:34 | |
shapr | metaperl: Seriously though, I wanted a name that really describes me. | 14:35 | |
I've noticed that the larger long-term effect a decision will have, the longer I should think about it. So I thought about it for a few years. I really wanted to change my name when I was 21, but I waited till I was 27 to actually do it. | 14:37 | ||
masak: what's the mathematical operation? Finns inte i min lexicon. | 14:38 | ||
masak | 2 * 4 = 8 | ||
shapr | Oh. Easy enough. | ||
metaperl | what's the story with this: www.scannedinavian.org/~shae/yogi.jpg | ||
shapr | That's Yoggi Toulouse, famous French unicyclist. | ||
I think he's convinced he can fly a unicycle anywhere. | 14:39 | ||
metaperl | oh my god | ||
is he balanced like that or about to jump off? | |||
shapr | He didn't land that one, but he did land it the next time. | ||
He's in the air. | |||
You can see that guy's foot between his wheel and whatever that is... | 14:40 | ||
My unicycle skillz are significantly smaller - www.scannedinavian.com/images/uni-hop.jpg | 14:41 | ||
masak | shapr: i've noticed that the larger impact a decision will have, the *easier* it is to make. though i have never understood why it feels like that. | ||
shapr | masak: I think that's because for those sorts of decisions, it's easy to know if you made the right choice. | 14:42 | |
I've never wanted to unchange my name, and have always remained thrilled to have the name I chose. | 14:43 | ||
metaperl: If you're interested in unicycling, there's a whole culture of short unicycle films, of which I have a few - thunderbird.scannedinavian.com/~shae/unifilms/ | 14:44 | ||
masak | shapr: it seems that it is possible to know that choices were the right ones even when one doesn't know the rationale behind them. | 14:45 | |
shapr | metaperl: This is my favorite! - thunderbird.scannedinavian.com/~sha...T_10Mo.wmv | 14:46 | |
masak: yeah, I agree. | |||
Intuitive thinking can be right without needing rationale. | |||
Alias_ | Unicycling has a culture? | 14:50 | |
shapr | Sure, lotsa. | ||
Mountain unicycling is my favorite. But the other largest subsections are road, trials, and technical with like trials and mountain together. | 14:51 | ||
If you know anything about mountain bike tires, I have a 24" 35.1mm wide Alex DX32 rim with a 3" Duro Wildlife tire on my unicycle. But I'm upgrading to a 65mm wide Large Marge rim next month. | 14:54 | ||
Anyway, back to the topic at hand =) What's good for lambdafolk to do for the puppy? | |||
Alias_ | pet it | ||
shapr pets Pugs. | 14:55 | ||
so, theorbtwo said "set HARNESS_PERL and PERl6LIB, then run perl utils/yaml_harness.pl, then perl utils/testgraph.pl > testgraph.html" What values should I set for HARNESS_PERL and PERL6LIB ? | 14:57 | ||
masak: I use a lot of intuitive thinking, obviously without knowing how it works. I wonder if there's any research into intuition. Maybe it's subconscious thought? | 14:59 | ||
masak: Har du skickat reglarna till mig? | |||
Alias_ | There research into the brains "computation-restricted mode" | ||
There is ... | |||
There's a funny mode the brain goes into when it realises it has to make a decision without sufficient time to work it out properly | 15:00 | ||
"Knee-jerk reaction" type stuff. It uses very limited indicators to come to a conclusion that is correct 95% of the time or so | |||
shapr | Any keywords I can google? | 15:01 | |
Alias_ | not off the top of my head | ||
masak | shapr: i just clicked "send" | ||
shapr: what happens once we understand intuition? will it still be intuition? | 15:02 | ||
shapr | I think so. I'd guess it'd be like programming languages without reflection. | ||
masak | lol | ||
shapr | I think the process of programming works like that for me sometimes. Total zen, no real 'consciousness' of what I'm doing. | 15:03 | |
masak | that's flow | ||
Alias_ | oh, there's an article on that in New Scientist this week | ||
shapr | So maybe intuition is like flow? | ||
masak | maybe | ||
but flow has to do with actions | |||
shapr | Can you have flow with reflection? | ||
masak | intuition has to do with congnition | ||
shapr | Is cognition an action? | 15:04 | |
masak | i think flow and reflection are sort of opposites | ||
but i don't know | |||
shapr | I'd argue that programming flow involves cognition. | ||
masak | yes, a very basic form of it | ||
i had to comb through the rules to update them in light of the latest developments in my head | 15:05 | ||
shapr cogitates on that. | |||
masak | parts of them may not make sense | ||
shapr | Om kan jag inte forstƄr, ska du veta. | 15:06 | |
Alias_ | ... or was it scientific american.. | ||
masak | shapr: any feedback is appreciated | ||
Alias_ | They classified the 4 main properties needed for creativeness | ||
or "flow" | |||
shapr | masak: btw, do I reverse the subject and verb like that if I have a preposition at the beginning of a sentence? | ||
I like pair programming, group flow is different from single flow. More powerful in some ways, less powerful in others. | 15:07 | ||
Alias_ | I like the idea of someone correcting the spelling mistakes in my comments :) | ||
masak | shapr: no. "om jag inte kan fƶrstƄ". negations come into play somehow, i cannot formalise it properly. | 15:08 | |
shapr | Ok, I'll check out the grammar book I have around here somewhere. | ||
stevan | threads??? sockets?? | 15:09 | |
wow | |||
masak | shapr: the phrase would be "om jag kan fƶrstƄ" if you were talking about the opposite situation. | ||
or just "kan jag fƶrstƄ"/"kan jag inte fƶrstƄ" as shorter variants, but still conditionals | 15:12 | ||
stevan | nothingmuch: ping | 15:15 | |
nothingmuch | pong | ||
stevan | hey nothingmuch | ||
nothingmuch is fighiting the dichotomy that is linux raid/lvm | |||
can | |||
beh | |||
can't resize a raid1 device on two LVs | |||
=( | |||
stevan | what do you know about these threads, sockets and namespace things? | ||
nothingmuch: does not sound like fun :) | 15:16 | ||
nothingmuch | that autrijus said 'oh btw, i did all that' | ||
and then went to dinner | |||
stevan | :) | ||
ok | |||
I guess I will wait for the journal | |||
nothingmuch | examples/httpd.p6 | ||
he mentioned that | |||
stevan | has this stuff been speced out by perl6l? or is he just mapping the haskell stuff | ||
yeah I looked at that very cool | 15:17 | ||
nothingmuch | no clue | ||
hah | |||
perlbot nopaste | 15:18 | ||
perlbot | Paste your code here and #<channel> will be able to view it: sial.org/pbot/<channel> | ||
stevan | ok :) | ||
pasteling | "nothingmuch" at 212.143.91.217 pasted "lambda silliness" (5 lines, 221B) at sial.org/pbot/8878 | ||
nothingmuch | crap, copy paste madness | ||
stevan | :) | ||
nothingmuch | prepend: "A novice was trying to fix a broken Lisp machine by turning the power off and on..." | 15:19 | |
stevan | thats my usual Windows fix | ||
oh well | 15:21 | ||
autrijus: when you journal tonight, please give details on the namespace stuff, I am very interested in knowing more :) | |||
nothingmuch | reboot reboot reboot | ||
stevan | have fun with your raid nothingmuch :) | 15:22 | |
nothingmuch | =( | ||
stevan | I am off to do errands in the dirt world | ||
nothingmuch | i hope that LVM can do mirroring without sw raid | ||
i don't even care about performance | |||
gah! umount -f /mnt/test/ | 15:23 | ||
umount2: Device or resource busy | |||
dd if=/dev/zero of=/dev/md0 seemed to help it out | |||
no | 15:24 | ||
*whine* | |||
kolibrie | autrijus: looks like the darcs repository hasn't sync'ed up for a day or two | 15:29 | |
obra | 127.0.0.1 | 15:30 | |
autrijus | it's a 404 | ||
obra | mischan | ||
autrijus | kolibrie: resyncing | ||
kolibrie | autrijus: thanks | ||
off topic - can any debian mutt users recommend packages I need to see non-English fonts? | 15:33 | ||
I have locale set to UTF-8, but no font package yet has seemed to do anything | 15:34 | ||
putter | i was thinking of starting the day by smashing together the [SEA]\d\d.html docs, interleaved, common index, colored by age, mixin mechanism for definitive emails, so I could easily see the current state of things. thoughts? | 15:36 | |
autrijus | putter: talk to ingy, the maintainer of Perl6::Bible | 15:37 | |
putter: you may wish to polish Perl6::Bible into that | |||
that'd be a great serice | |||
service | |||
putter | tnx | 15:39 | |
obra | autrijus: permalink.gmane.org/gmane.comp.lang...eight/3240 | 15:42 | |
autrijus | Perl6::Bible is on cpan too | ||
a new release just hit pause | |||
obra: yeah, #haskell loved it | |||
Alias_ | What's in it? | 15:44 | |
ah, all the docs | |||
autrijus | kolibrie: are we up to date? | 15:48 | |
darcs I mean | |||
hi tmoertel! | |||
kolibrie | autrijus: pulling now | 15:49 | |
autrijus: darcs looks much better now, thanks | 15:51 | ||
autrijus | :) | 15:53 | |
kolibrie | I have a test for "for @list { $_++ }" and "for @list -> $num is rw { $num++ }" | 15:54 | |
should I put those in t/statements/for.t? | |||
or are the "rw" things collected somewhere better? | 15:55 | ||
put them in t/statements/for.t -r 1428 | 15:59 | ||
autrijus | ok. | 16:01 | |
jabbot | pugs - 1430 - * thread is now toplevel value. | ||
pugs - 1429 - * "{ block }" in qq and rx was eating tr | |||
pugs - 1428 - added tests for rw for statements - for | |||
ingy | hola | 16:02 | |
we are moving pugs modules to freepan and we need to know who is the primary maintainer of each module | |||
autrijus | a forking web server and a web service client! | ||
Alias_ | maintainer in what context... | 16:03 | |
I own Config::Tiny and Algorithm::Dependency, but I sure as hell don't maintain the P6 versions | |||
obra | will this mean that "primary" authors will have to grant other authors access? | ||
Alias_ | And they probably don't track changes to the original | ||
autrijus | ingy: I say we list the first committer of a given module as owner | 16:04 | |
ingy | fine | ||
autrijus | and list all committers on them as committers | ||
Alias_ | This is going to really screw up copyright assignations :) | ||
Mass re-"owner"ship | |||
mugwump | ownership means less in the face of per-author namespaces, so there's no need to be particular about it... | 16:06 | |
"first come first served" no longer :) | |||
Alias_ | BTW, how does that translate to "official" module names? | ||
I'm presuming we don't have to learn and remember the author of every single module... | 16:07 | ||
mugwump | via QA team(s) | ||
Alias_ | So CPAN will be told that there's an official MUGWUMP::File::Spec -> File::Spec alias? :) | ||
mugwump | ie, QA teams will be responsible for grouping sets of modules together that they think are a good set. To kill off the flamewars etc | ||
autrijus | Alias_: right, actually PAUSE maintains that already | 16:08 | |
as the index | |||
Alias_ | right | ||
mugwump | Why is File::Spec always the example here? ;) | ||
Alias_ | Because it's so darned useful | ||
autrijus | sure. | ||
mugwump | use File::Spec-(Any)-freepan:mugwump | ||
Alias_ | So if I fork CPAN::Mini (like I did for CPAN::Processor) in P6 I juse release my version of CPAN::Mini, and my code uses the explicitly named one? | ||
obra | freepan:? | 16:09 | |
obra suspects those should end up as uris in the end | |||
mugwump | sorry, I meant jerkit: | ||
autrijus | eh what. | ||
Alias_: yes. | |||
Alias_: that is exactly the idea. | |||
basically you can freely fork things locally | |||
Alias_ | And then when QA decides to handover, they just do a namespace toggle? | 16:10 | |
autrijus | see S11 | ||
that may be the case. there may be multiple QA teams. | |||
like, your company may set up its own index | |||
Alias_ | So I take it that the "request to be on the module list" will actually mean something now? | 16:11 | |
jabbot | pugs - 1431 - * httpd client and server examples | ||
autrijus | Alias_: exactly! | 16:12 | |
Alias_ | It's been quite nice to have things fairly free-form in regards to "adding" modules | ||
autrijus | yup | ||
there can be a first-come-first-serve index | |||
Alias_ | But those initial names people pick, ew | ||
autrijus | maintained by cpan or somebody else | ||
but I fully expect people move away from it gradually | |||
Alias_ caught China::IDCard::Validate or something the other day | |||
autrijus | esp. now we can install multiple modules with the same name. | ||
or even alias them locally | |||
Alias_ still worries | 16:13 | ||
autrijus | so you can install 10 File::Spec locally | ||
Alias_ | But then I'm a worrier | ||
autrijus | and your local site policy determines which one to use. | ||
sure =) | |||
Alias_ | As long as it works for the brain dead, I don't care | ||
autrijus | :D | ||
Alias_ | With this damned perl jobs boom, it's hard enough as it is | 16:14 | |
Alias_ beats the Lowest Possible Barrier to Entry drum | |||
autrijus: Have you seen the recent jobs.perl.org stats? | 16:15 | ||
autrijus | no. eh? | ||
Alias_ | It's a BOOM I tell ya | ||
see magnet #perl topic | 16:16 | ||
obra | s/boom/bubble/ | ||
tmoertel | autrijus: hi! (belatedly returning your hi from earlier) | ||
autrijus wonders if [email@hidden.address] is a freepan id. | 16:19 | ||
then, [email@hidden.address] is another | |||
autrijus pushes for email-based ids | |||
obra | that sounds like a much better plan. | ||
autrijus | but if you want to register [email@hidden.address] | ||
because we recognize cpan.org | 16:20 | ||
we still require them to enter their pause auth | |||
just to reduce spamming and save them an email reply | |||
(they can do email reply instead.) | |||
ingy: sounds like a plan? | |||
obra | why special case it? | ||
just do email auth for everybody. nice and easy | |||
autrijus | well, no, @openfoundry.org can do the same thing | ||
it's single sign on | |||
Alias_ | One of these days I should publish my single sign on system | 16:21 | |
autrijus | there's people who devnulled their @cpan.org | ||
Alias_ | It was really sweet | ||
autrijus | so, don't want them to lose, that's all | ||
so current committers can auth with their @openfoundry.org id | 16:22 | ||
s/committers/pugs committers/ | |||
nothingmuch | yay! | 16:39 | |
lvextend /dev/vg/home_0 | |||
lvextend /dev/vg/home_1 | |||
then mdadm --stop /dev/md0 | |||
and mdadm --grow /dev/mdadm -z blah blah blah | |||
reboot | |||
and resizefs | 16:40 | ||
pjcj | autrijus: How does the Eval.hs refactoring stand - is that still the plan? | ||
nothingmuch | yayayayayayaaay! | ||
autrijus | pjcj: you mean moving to gen IMC? | 16:59 | |
yes that is still the plan. | |||
jabbot | pugs - 1433 - * be properly HTTPish | 17:01 | |
pugs - 1432 - Oops! Inheritance is spelled "is", not " | |||
autrijus | so, examples/network/ is there | 17:02 | |
anyone want to work on socket tests and/or a LWP clone? | |||
jabbot | pugs - 1434 - * probe readline for real | 17:11 | |
Corion | re | 17:25 | |
autrijus | yo Corion | 17:26 | |
Corion | hi autrijus | ||
autrijus | Corion: seen svn.openfoundry.org/pugs/examples/network/ ? | ||
jabbot | autrijus: I havn't seen svn.openfoundry.org/pugs/examples/network/ , autrijus | ||
Corion installs GHC 6.4 | |||
autrijus: nope, just returned | |||
jabbot: :))) | |||
jabbot | Corion: That is interesting. Please continue. | ||
autrijus | Corion: cool. I have this feeling that you'll like them | 17:27 | |
Corion | autrijus: That sure looks _very_ interesting indeed! | ||
autrijus | and they even work! | ||
Corion installs GHC 6.4 at double speed | |||
autrijus: Let's see if they work on Win32 :) | |||
autrijus | good. I need someone to test that :) | ||
Corion | Ooooo - Haskell has "async()" - so it's likely they work on Win32. The joy of coroutines :) | 17:28 | |
... Oh - no, async() is a thread. Also good. | |||
autrijus | using real OS threads. | ||
we can use a Posix fork as well | |||
but I think lightweight threads is the way to go | |||
for the moment | 17:29 | ||
Corion | Grr. Why is the haskell.org GHC a .msi file ? That means I can't install it at work :( But at least at home ... | ||
autrijus: True. But in any way, that means that LWP has to come now! ;-) | 17:30 | ||
autrijus | yes! | 17:31 | |
Corion looks forward to real, easy, convenient http/1.1 support and multiple connections :) | 17:32 | ||
xerox | Is there any text about perl6? | 17:33 | |
metaperl | xerox, you mean a printed text? | ||
Perl6Now.com | |||
by scrottie is one | |||
xerox | I want something to try in pugs :) | 17:34 | |
Corion | xerox: Port a module :) | ||
xerox: Or write tests | |||
xerox: Both are good exercises to learn Perl6 :) | |||
metaperl | xerox, read through the examples and test suite | ||
xerox | I mean, I know a bit of perl5, but I just know "say" in perl6 :) | ||
metaperl | I learned about slurpy lists yesterday | ||
learn about slurpy lists | |||
xerox | slurpy lists? | ||
metaperl | right here: dev.perl.org/perl6/synopsis/S06.html | 17:35 | |
also see examples/fp.p6 in the pugs distro | |||
Corion | Ah - GHC isn't officially called Glorious Glasgow Haskell Compiler :) | 17:36 | |
... is anybody working on an LWP::Simple port ? I think LWP::Simple is the best start, LWP can be fudged behind LWP::Simple later on :) | 17:38 | ||
autrijus | why is it not officially called? | 17:39 | |
$ ghc --version | |||
The Glorious Glasgow Haskell Compilation System, version 6.4 | |||
Corion | autrijus: The installer didn't call it that, so I presumed :) | ||
autrijus | Corion: no, please start it :) | ||
Corion++ # in advance | |||
Corion | autrijus: I will :) | ||
autrijus: Aaah, nooes! You | |||
autrijus: Aaah, nooes! You're piling responsibility on me :) | 17:40 | ||
Corion does "make test" and hopes his tests still succeed on Win32 | |||
jabbot | pugs - 1435 - * do not build threaded if there is no t | 17:41 | |
Corion | . o O (... and here I was, thinking I'd port my broken "make" module to Perl6, to fix it in the process... And then sockets come along ...) | 17:42 | |
autrijus | "make" is also good :) | ||
ruby has Rake. | |||
I'm jealous. | |||
Corion | autrijus: But sockets are so much more fun ! | ||
autrijus | that, too | 17:43 | |
I'm fine with either :) | |||
Corion | If anybody wants to adopt and fix a broken module, corion.net/perl-dev/Make-PurePerl.html ( "Make::Naive" ) needs some tender loving! | ||
autrijus: Maybe I do LWP::Simple today and Make::Naive tomorrow :) | |||
autrijus | yay | 17:44 | |
Corion | 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) | 17:45 | |
mugwump | PLEASE NOTE ::Simple, ::Lite, etc are all considered GAY in Perl 6 | 17:49 | |
autrijus | please note that gay means happiness and fun | ||
mugwump | PLEASE NOTE: I have beer | ||
autrijus | ah. that explains | ||
hmm 40 commits today | 18:03 | ||
Corion | Is there anything other than .readline() to read from a handle? I could set (the Perl6 equivalent of) $/ and then use readline, but I'd prefer to read a fixed length... Hmmm - do I really? | 18:07 | |
Grrr. Google gives me no love. What is the equivalent to $/ in Perl6 ? Header parsing is nicely done by =$hdl , if I can set $/ correctly ... | 18:09 | ||
mugwump | see docs/S28draft.pod | 18:10 | |
jabbot | pugs - 1439 - | 18:11 | |
pugs - 1438 - Add README for those looking | |||
pugs - 1437 - Getting a little way through converting | |||
pugs - 1436 - Add working drafts S28, S29 | |||
Corion does svn up | 18:12 | ||
mugwump | Actually all it says is that they're methods on filehandles now | ||
autrijus | hi Corion. | 18:13 | |
what do you want? :) | |||
input record reparator props? | |||
separator | |||
Corion | autrijus: I'm just reading S28 - I want to set $/ to "\012\015" to read in HTTP headers in a convenient way | ||
... not yet looked into S28 closely | 18:14 | ||
autrijus | what we we, say, use slurp()? | ||
see search.cpan.org/dist/Perl6-Slurp/Slurp.pm | 18:15 | ||
Corion | Ooooo ! Thanks! | ||
Corion wonders how he'll port the nice syntax of Perl6::Slurp | 18:16 | ||
(or rather, how to make the syntax nice) | |||
pjcj | I wonder how Perl6 will do $/ = \10 | 18:17 | |
autrijus | implementing slurp($hdl) now | 18:18 | |
done | |||
mugwump | FILEHANDLE.eol("\010") or somesuch | ||
autrijus | mugwump: no, that's size | ||
mugwump | right - \10, not "\10" | 18:20 | |
Corion | mugwump: Thanks for thinking ahead! Content-Size: handling is simplified through that! :) | ||
autrijus | Corion: it's in; see the new http-client.p6 | 18:21 | |
I imagine it makes your life simpler | |||
Corion | autrijus: :) | ||
jabbot | pugs - 1440 - * slurp($hdl) | ||
Corion | Is there $hdl.irs ? I'd like to say $hdl.irs = rx:perl5/\015?\012\015?\012/; # :-)) | 18:22 | |
autrijus | argh rx irs | ||
p5 doesn't do that | 18:23 | ||
Corion | autrijus: I thought Perl6 was finally making Perl better than awk ? :)))) | ||
autrijus: Otherwise I have to fake it like LWP::Simple fakes it as well ;) | |||
autrijus | yup | ||
Corion | ... or make the \015 required instead of optional | ||
Is ~= the string concatenation/assignment operator now ? $buffer ~= $hdl.read() ? | 18:27 | ||
autrijus | aye | 18:28 | |
Corion | Yay. I know Perl6. | ||
autrijus | I'm doing split($rx, $string) for you | 18:31 | |
done. | 18:33 | ||
Corion | autrijus: Hugs | ||
You're just like a mother to me | |||
autrijus | :D | ||
I think it works reasonably well | 18:34 | ||
clever code and tests welcome | |||
Corion | autrijus: I guess that my code can serve as a smoke test :) | 18:35 | |
autrijus | cool :) | 18:37 | |
Corion | How do I export stuff from my module? | 18:40 | |
Gah. Found it - "is export" | |||
autrijus | "is export" | ||
jabbot | pugs - 1442 - * fix show() class for Symbol | 18:41 | |
pugs - 1441 - * split(rx:perl5/.../, $string) | |||
Corion | Ah hah. With GHC 6.4, theorbtwos testgraph matcher won't throw the errors as with GHC 6.4, the output matches his regex :) | 19:02 | |
autrijus | that is a good thing? | 19:03 | |
:) | |||
Corion | autrijus: Well, I won't get lotsalotsa error messages on the console when I update my test matrix :) | 19:04 | |
autrijus | journal up. | ||
partially summarized only | |||
too tired | |||
must sleep :) | |||
Corion | Who is working on Test.pm ? Because I'd like use_ok() in it :) | ||
autrijus | just add it. | ||
Corion | autrijus: Sleep well - dream of lambdas :) | ||
autrijus | & | ||
nite! | |||
Corion | autrijus: Yeah, but I don't want to get sidetracked :) | 19:05 | |
good night, autrijus | |||
putter | what docs are people using to write p6? Snn.pods. And the two drafts. Are E&A still helpful? Perl6:: pods. What else? | 19:13 | |
kcwu | Perl6::Bible | 19:14 | |
putter | basically i'm taking a few hours to pick up and massage docs. eg, all S\d\d.pods into a single synopses.pod, etc. | 19:15 | |
anyone have a cache of "key emails not yet integrated into Snn's"? | 19:17 | ||
Corion | Wooo. I reimplemented examples/network/http-client.p6 :) | 19:18 | |
putter | kcwu: do you find your using A\d\d and E\d\d, or just or S\d\d? tnx | ||
Darren_Duncan | good morning campers | 19:27 | |
my first task this morning is to finish my SYNOPSIS and commit that ... | 19:28 | ||
then I'll start on the makemaker thing | |||
pjcj | I've not been fully following this - are you planning to port MakeMaker to Perl6? | 19:31 | |
Darren_Duncan | see my p6c announcement yesterday | 19:32 | |
Odin-LAP advocates turning makemaker into something that doesn't need make, and can serve as a generic building system. ;) | |||
Darren_Duncan | no, not port ... | ||
my short term plan is to have a placeholder that the Makefile.PL in each /modules distro can be written in Perl 6 and invoke | 19:33 | ||
it's to get rid of the last remaining perl 5 in /modules | |||
the placeholder does a bit to scan perl 6 modules but otherwise just turns around and invokes the perl 5 version to do the real work | 19:34 | ||
I do not support keeping makemaker around either ... this is just a quick stopgap measure to work until the replacement is made | 19:35 | ||
pjcj | Darren_Duncan: I read that. I'm just concerned that the concensus in the Perl5 world seems to be MakeMaker is dead, long live Module::Build. But it sounds more as though this is to be a stopgap? | ||
aha | |||
Darren_Duncan | I agree, makemaker is dead | 19:36 | |
but it hasn't left the building | 19:37 | ||
pjcj | For me, it sits on a list that includes CGI, File::Spec, File::Find, Date::Manip ... | 19:41 | |
The functionality is required, but I'd prefer to lose the API. | |||
Darren_Duncan | fyi, I wasn't planning to name the replacement shell 'makemaker' | 19:42 | |
Corion | Odin-LAP: So you want to adopt my module? Great! | ||
Odin-LAP | Corion: :p | ||
Darren_Duncan | it was just a perl 6 thingy that does the right thing to install a module and check its dependencies first | ||
Corion | IMO, neither MakeMaker nor Module::Build are the path to the future, but a shiny new implementation. | 19:43 | |
Odin-LAP | Shiny new something. :p | ||
Darren_Duncan | on that end, I thought I would make my shell a different name than either of those | ||
Corion | Heh. Filehandles don't close/flush on time. Is that a known bug ? (I think so, but ...) | 19:53 | |
Are there any objections to introducing the -M switch, so -MLWP::Simple works ? :) | 20:21 | ||
jabbot | pugs - 1443 - LWP::Simple started; use_ok added to Tes | 20:31 | |
nothingmuch | the government should hand out medals for weekend hacking sessions | 20:44 | |
especially those of the system administration kind | 20:45 | ||
nothingmuch hates computers so much | |||
Darren_Duncan | thats un-fortunate | ||
shapr | I just hate software. | ||
nothingmuch | i hate software too, but i think a bit less | ||
i know how to fix software much more easily | |||
too bad they are the best way to get most of what I want done | |||
Darren_Duncan | well ,you know the saying ... things would be a lot easier if one didn't have to be concerned with users | 20:46 | |
shapr | I've gone on a crusade against stupid software choices the last few years. Hasn't made me popular with some of the people I know. | 20:47 | |
nothingmuch | anybody know which way mirrorring is done when creating a raid1 on linux? (sw) | ||
shapr | "We'll pay you lots of money to write this medical database in visual basic and J2EE." 'No.' "But it's really lots of money! You'll be making 35,000 a year!" 'No. Why don't you go ${ANATOMICALLY_IMPOSSIBLE_ACT}?' | 20:48 | |
nothingmuch | 35k? hmmm | 20:49 | |
nothingmuch is making in the order of... *compute* | |||
Corion | shapr: You should have written a compiler that outputs J2EE and VB code from Haskell :) | ||
nothingmuch | 15k | ||
which is little, due to my lack of experience/education/references/age | 20:50 | ||
so 35k is not that much, really | |||
shapr | Corion: I did something like that for my first J2EE project, Jython servlets. They had a hissy fit and told me I couldn't use Jython anymore. | ||
Corion | shapr: :)))) | ||
lightstep | Corion, would you do it, and be responsible for the dying patients? | ||
(vb crashes explorer, etc.) | |||
nothingmuch | ? | 20:51 | |
ack | |||
Corion | lightstep: The code quality would be better with code generated via Haskell :) | ||
shapr | It was a student medical database for 200,000 college students in Finland. | ||
nothingmuch | lightstep: do you have a day job yet? or are you still busy with the army stuff? | ||
shapr | No death involved, happily. | ||
jabbot | pugs - 1445 - Added tests for anonymous classes. | ||
pugs - 1444 - added -MModule support | |||
lightstep | i don't have a day job | 20:52 | |
shapr | I really wish clients would accept solutions in any language, as long as there are several different support providers for that language. | ||
For example, I wish I could tell my clients that I'm part of a consortium of twenty companies where we all twenty would commit to pick up and maintain the software of the other companies in case of plane crash or other force majeure. | 20:53 | ||
And then I could write GPL/BSD/etc licensed software and my clients wouldn't have to worry about me screwing them over with obfuscation. | 20:54 | ||
nothingmuch | shapr: what's stopping you? the consortium? or the clients? | ||
the hypothetical state of thereof, i meant | |||
shapr | It's clients that are stopping me. They're already scared to death that they depend on Zope/Plone and their programmer guys only know Java. | 20:55 | |
nothingmuch | woo, 3.2G copied, 17 to go! | ||
nothingmuch is really saddenned that his two disks must be on the same channel due to physical constraints | |||
2mb per second | 20:56 | ||
=( | |||
nothingmuch will steal a longer cable from work tomorrow | |||
shapr | Ya know, that would be interesting. Why isn't there that sort of consortium for lots of languages? | ||
nothingmuch | shapr: there's such a consortium for some languages? | ||
shapr | I don't think so. But, why not? | 20:57 | |
nothingmuch | i don't know | ||
i bet most companies would do that | |||
it doesn't take clients away | |||
it provides more value for your money | |||
shapr | There are at least ten people on #haskell whose code I trust enough that I know I could support it. | ||
nothingmuch | it gives a better reputation | ||
shapr | I'd want to have read-only access to all the source repositories for the other companies in my consortium. That wouldn't be a problem for DFSG compatible licenses. | 20:58 | |
Yeah, I bet most OSS companies would do that. | 20:59 | ||
Khisanth | <shapr> It's clients that are stopping me. They're already scared to death that they depend on Zope/Plone and their programmer guys only know Java. <- time to start posting wanted ads? :) | ||
shapr | They just requested one or two new plone sites, one of which will be large. So I'm sure I'll have work for the next six or eight months at least. That's rock solid security in the land of self-employment. | 21:00 | |
Darren_Duncan | if programmers only know one language and aren't willing to learn more, they probably aren't good at programming | ||
a good programmer can handle multiple languges easily | |||
shapr | I agree with you. | 21:01 | |
Darren_Duncan | the real skills are language independent | ||
shapr | I also wish I didn't work by the hour. I think that limits the quality of my work in some ways. | 21:02 | |
Corion | shapr: You're doing much with Plone I gather - is it really useful? Or does it require much work on your part? | ||
Khisanth | well most things carry over from one language to another | ||
shapr | Corion: Depends on what you need to do. | ||
Corion | ... as soon as you know more than one (kind of) language | ||
Khisanth | but for some reason people think that just because it's a different language all the things that worked in the other language no longer applied | ||
Corion | shapr: Mostly, I need/want to slap a nice web gui onto a database | ||
Khisanth: Well, if you only know OO/imperative, then functional is quite the bitch :) | 21:03 | ||
... same for Prolog :) | |||
shapr | For some value of easy, that's easy to do in Plone. | ||
But if you don't already use Zope, or you don't know Python at all, you should try something else. | |||
Khisanth | Corion: I only know OO/imperative and Haskell is turning out to be quite fun :) | ||
shapr | Nowadays, Plone is like emacs, it can do nearly anything, if you know enough about it. | 21:04 | |
Corion | shapr: I use Python at work, and don't know Zope (beyond some toying around) | ||
shapr: Yeah - I saw Zope already has users/permissions/stuff, something I'd have to do myself if using Maypole (a/the Perl MVC-web-thingy) | |||
shapr | There are two layers on top of Zope, Content Management Framework and Plone. CMF is sort of like J2EE, it's a toolkit for workflow, and lots more. Plone is actual realization of the CMF toolkit into an out-of-the-box-usable kind of system. | 21:06 | |
Corion | shapr: Ah, yes. I think I realize the analogy - for Perl, there also are two incarnations, Maypole (diy web framework) and Catalyst (prebuilt application) | 21:07 | |
shapr | So, if you can immediately use Plone for what you need right out of the box, then it's great. If you can't use it, and you don't have motivation to learn to modify a large complicated system, you want to look elsewhere. | ||
xerox | sub foo {...} # Yes, those three dots are part of the actual syntax | 21:08 | |
gee. | |||
shapr | Yeah, Catalyst sounds like Plone. | ||
Plone really can do amazing stuff, and there are lots of add-ons that do more, but it's not easy to learn to modify and extend yourself. | 21:09 | ||
On the other hand, if you do end up using it for whatever reason, feel free to ask me about it. | |||
xerox | Some perl6 syntax looks neat, too: circumfix for example. | 21:10 | |
shapr | I get really frustrated doing web development in object oriented languages. All of the OOP webdev I do seems to suffer from huge amounts of state. It's hard to unit test that. | 21:11 | |
But I don't know if a purely functional solution would be any better, or if there are powerful solutions that don't have the problems that J2EE and Zope have in common. | |||
Corion | shapr: Yep - unit testing for web apps sucks - which is why I am in the WWW::Mechanize cabal, which eases end-to-end testing :) | ||
shapr | Maybe someone here knows? | ||
Corion | shapr: I dream of continuation-based webservers/webapps | ||
shapr | Yeah, me too. | 21:12 | |
Corion | shapr: But they have different problems | ||
shapr | Arrows in Haskell can almost do continuation-based webapps. | ||
What sort of problems? | |||
xerox | UCW! | ||
shapr | Do you need to upgrade references in the continuation? Do you have to decide when to expire the continuations? What does the basic flow look like? | 21:13 | |
Corion | shapr: Load balancing | ||
shapr: (or the lack thereof) | |||
xerox | common-lisp.net/project/ucw/ | ||
Corion | xerox: I know :) | ||
xerox | Oh. | ||
shapr | That doesn't sound hard at first thought, what's difficult about load balancing with continuations? | ||
xerox | So why you dream it? :) | ||
Corion | shapr: Expiry isn't that important, but you can't move a continuation between servers (unless you can serialize it, of course) | 21:14 | |
shapr | That makes sense. | ||
Corion | xerox: Because I'm no Lisp hacker. I prefer to share my ivory towers with other people :) | ||
shapr: Not that that would really matter for the applications I write :) | |||
shapr | You could round-robin off the clients so that no one server ends up with a high load. Distributed services that each server calls would help that. | 21:15 | |
I wonder if Erlang handles continuations and migration of such. | 21:16 | ||
Corion | shapr: Yep | 21:17 | |
shapr: I looked at "E" for a short time, and it promises (ha ha) lots of interesting things, but it has much more focus on authentication/secure distributed computing instead of getting things done :) | |||
shapr: (among those, migration of processes) | |||
shapr | Yeah, E is nifty. | 21:18 | |
Though capability security is its main feature of interest. | |||
Corion | Grrr. want() is not yet implemented ... | ||
Corion curses | |||
shapr | What does want() do? | ||
shapr looks at the tests | 21:19 | ||
Corion | shapr: Tell me what the caller wanted (boolean/scalar/list/hash/whatever) | ||
shapr: So I can return different things based on that (FiniteMap, list, one large string) | |||
xerox | Where are the builtins defined? | 21:21 | |
shapr | Prim.hs | ||
Corion | xerox: t/builtins :) | ||
err - yes, depends on how you look at it :) | |||
xerox | Aren't those the tests? | 21:22 | |
Corion | xerox: Yes - the tests define what gets implemented :) | 21:24 | |
xerox | Corion: ok, so where are the actual implementation? | 21:26 | |
Corion | xerox: Prim.hs | ||
xerox | Thanks. | 21:28 | |
shapr | I like the pictures on the pugs.kwiki | ||
Corion | shapr: autrijus has a thing for pictures :) | 21:29 | |
shapr | Can you explain more about want? I don't quite understand the tests. What does the code { x ?? y :: z } obj_ok_in_scalar do? | 21:33 | |
lightstep | ?? :: is the ternary operator (if/then/else) | 21:34 | |
Corion | shapr: Perl has "context", that is, a subroutine knows what its caller wants | ||
shapr: want.count == 3 is equivalent to the caller saying take list 3 | 21:35 | ||
err - saying: "take list 3" | |||
shapr | take list 3? | ||
Corion | shapr: Except that there are more contexts than just the number of items wanted. Like "boolean context", "scalar context" | ||
shapr: Isn't "take" a Haskell function? | |||
shapr | Yes, but I'm missing some of other parts, I think. | 21:36 | |
Does that imply that the caller has a list somewhere for the callee to get hold of? | |||
Corion | shapr: Basically, if you say (in Perl) : %hash = function_call(), want.Hash is true within function_call() | ||
shapr: Yes - I guess it's an implicit parameter (or a global variable, whichever way you look at it) | 21:37 | ||
shapr | oh, you're asking for the type of the variable to which your caller wants to assign your result. | ||
Corion | shapr: Yes | ||
shapr: You explain it so much clearer than I can ;) | |||
shapr | I dunno, you understand it =) | ||
I don't yet... | |||
Corion | shapr: Also, if there is no assignment, but a test, this works too, (boolean context) | ||
shapr: It's what makes the following things magically work in Perl: @array > 3 | 21:38 | ||
shapr | So, count asks for the length of the sequence to which your caller is trying to assign your return value? | ||
pjcj | there seem to be a few contexts missing in the tests | ||
Corion | ... because an array/list, in scalar context, evaluates to the number of its elements | ||
pjcj: I don't know which contexts will actually exist. | |||
pjcj: It may well be that I made some contexts up that will never exist. Perl5 only has two contexts, scalar and list | 21:39 | ||
pjcj | Nor do I off the top of my head, but I'm sure I read something somewhere | ||
Corion | (as far as I remember) | ||
pjcj | Perl5 also has void, which is missing here | ||
shapr | That's wild, it's like having multiple sublanguages and you can switch them whenever you want. | ||
Corion | pjcj: Feel free to add the other contexts to the tests :) | ||
pjcj: Oh, yes, void context! | |||
Corion chants "map in void context" | |||
shapr: ? Perl is a conglomerate of various sublanguages (within sublanguages), yes :) | 21:40 | ||
pjcj | Corion: Right now I'm fighting with WWW::Mechanize and cookies for something that should be deployed on Monday :-( | 21:41 | |
Corion | pjcj: Ooops | ||
pjcj | but I'll try to remember if no one else does it | ||
Corion | pjcj: In principle, WWW::Mechanize should handle cookie stuff transparently. That is, unless somebody uses JS to set/get/modify cookies. | ||
pjcj | yeah - I want to set one myself in the test | ||
Corion | pjcj: If in doubt, look at HTTP::Recorder (or the FireFox Live HTTP Headers extension) to record what actually gets sent | ||
jabbot | pugs - 1446 - Added head() implementation, waiting for | ||
shapr | So want.count asks for the length of the sequence, right? | 21:42 | |
Corion | pjcj: Ah... Hmmm - for adding one yourself, I think you have to get a grip on the cookie jar in the $mech object | ||
pjcj | Corion: Right. The first one works fine - the second doesn't ... | ||
Corion | shapr: Yes - if you do my ($foo,$bar,$baz) = get_foo(); then want.count would be 3 | ||
pjcj: Hmmm. That's weird. | 21:43 | ||
shapr | Can want tell anything more than count and type? | ||
Corion | shapr: What else would you want? I think not, but I'm no P6 designer :) | 21:44 | |
Khisanth | Corion: wouldn't a void context be a junction of all the other ones? | ||
Corion | Khisanth: No, void must be detectable on its own, because you can save doing some work (like actually saving the result) | ||
stevan | Corion: I wrote tests for use_ok for you :) I will commit in a moment | 21:45 | |
Corion | stevan++ # writing tests for my crap | ||
s!crap!code! :)) | |||
stevan | Corion: I will document it too :) | ||
Khisanth | Corion: I mean something like if none(list of contexts) {...} | ||
Corion | Khisanth: Ah, yes. I forget that Junction is the name for all of the junctions, any/all/none... (???/conjunction/disjunction) | 21:46 | |
Khisanth: But that's an implementation detail :) | |||
stevan | does anyone think a todo_use_ok function makes sense? | 21:47 | |
Khisanth | any/all/none/one I think unless that got removed | ||
Corion | stevan: You mean because my "use_ok" is currently only "require_ok" ? I thought of a later, silent upgrade... | 21:48 | |
stevan | Corion: no, so you can write tests which dont work, but should eventually :) | 21:49 | |
Corion | stevan: Oooooooo ! :) | ||
stevan | use_ok faking it with require is fine | ||
because we dont have use now | |||
Corion | stevan: Yes, that would be nice - or maybe simply listing the modules in PREREQ_PM (except that should have a new name) in Makefile.PL | ||
stevan | (and I always hated require_ok because it didnt handle everything right all the time) | ||
Corion: done :) | |||
Corion | stevan: I haven't implemented parameters for use_ok yet ... Also my "-M" switch doesn't handle them either. | 21:50 | |
Ooo - I have to update the command line help! There are some undocumented switches :) | |||
pjcj | I think dev.perl.org/perl6/rfc/21.html was pretty much endorsed as the definition of the want function in A6. | 21:51 | |
Corion | Ooops. And my "-M" switch won't work if you try pugs -MModule file. Oh well. | ||
stevan | Corion: I think if you want to pass switches to use_ok you can just add them to the string it evals | 21:53 | |
Corion | stevan: True :)) | ||
stevan | at least for now until we have a read use() function | ||
shapr | pjcj: thanks | ||
jabbot | pugs - 1447 - Make command line help more like perl5 h | 22:01 | |
Corion | Oh - btw, the LWP::Simple tests I added are "live" tests that currently hit my webserver (i.e. the outside internet). I hope that's OK ... | 22:04 | |
Khisanth | pugs has sockets now? | 22:05 | |
Corion | Khisanth: Yes!!!! | ||
Khisanth: Check out examples/network/* and modules/LWP-Simple :) | |||
Khisanth hope it doesn't resemble Socket.pm :) | |||
Corion | Khisanth: No, currently, sockets look just like filehandles. But filehandles look like objects, instead of being special, now :) | 22:06 | |
stevan | oh, it looks like a by-product of split(//, '...') is that I can write like() for Test.pm | 22:07 | |
Khisanth | bareword as filehandles is also gone right? | ||
Corion | stevan: Yay! :) | ||
Khisanth: Barewords are gone, basically :) | |||
Khisanth | subs still need predeclaring to be used without ()? | ||
Corion was never a big fan of barewords. But poetry will get harder now. | 22:08 | ||
Khisanth: I imagine so, yes. | |||
Ooops. stevan - I think one of my tests needs your todo_use_ok() :) I need File::Spec in it, but it isn't loaded :) | 22:10 | ||
... at least when running it through the yaml test harness :) | |||
stevan | Corion: I will commit in a moment,... just writing tests for like() and todo_like() | 22:11 | |
Corion | stevan++ | ||
stevan | Corion++ # for braving LWP :) | ||
Corion | stevan: Only LWP::Simple currently, and only a flakey version :) Only HTTP is supported, and it loads everything into memory. And mirror() isn't there yet. | 22:12 | |
Hmmm. I should fake mirror() by making it call getstore() :)) | |||
... at least until I get head() to work properly in hash context :) | |||
Khisanth | so no LWP::UserAgent? | 22:14 | |
hmm actually that would require all the HTTP::* stuff | |||
Corion | Khisanth: Not yet. | 22:15 | |
Khisanth: I plan on slowly expanding LWP::Simple, because Perl6 allows far more callback based stuff, instead of blindly porting LWP | |||
Khisanth: But first, I want to learn by taking baby steps with LWP::Simple and seeing what works and what doesn't | |||
Khisanth | LWP::Simple seems like it was never meant for more :P | 22:16 | |
Juerd | #perl6++ # no mention of /pope/ | ||
shapr agrees | |||
Corion | Juerd: We talked about Zope earlier. Does that count? | ||
stevan | Corion: its best to take a simple approach | ||
Corion | Khisanth: And if we got LWP::Simple, we can punt on ftp/wget/etc. for CPAN.pm later :) | 22:17 | |
stevan: Yep, that's my plan too :)) | |||
Juerd | Corion: haha | ||
stevan | The File::Spec port only supports things up to a point | 22:18 | |
and it fakes cwd really badly | |||
Corion | stevan: I gotta look at that ... | 22:19 | |
stevan | Corion: it's ugly :) | ||
few things I have learned though | |||
1) arguments are still immutable in most cases | 22:20 | ||
I tend to hack around that by copying the arg into a lexical | |||
2) function return values are still broken for another other than strings and basic arrays | |||
hashes return as the first pair only in some cases and die in others | 22:21 | ||
shapr | Is there another builtin on which I could model want? Any suggestions? | ||
stevan | Its not unlike coding perl in the early 90s :) | ||
Corion | stevan: Heh - that's a perlish way to fake cwd :) But Haskell should have getcwd. But I don't know how to make an "inline" Haskell extension into a good namespace. But maybe we should make cwd a builtin :) | ||
shapr: Ugh. Hmmm - not that I know directly... | |||
stevan: Yes - the spirit of the frontier... :) But this time, we know what's bad and what has stood through the time (and still is bad :) ) | 22:22 | ||
Hmmm. Haskell has getWorkingDirectory(), which would map nicely onto cwd(). | 22:23 | ||
stevan | Corion: I agree | ||
Corion: those little IO functions are easy to hack too | |||
Corion | And I think we've done good things already - cleaned up CGI.pm, abolished the File::Spec syntax, made open() return an object :) | ||
Corion looks at Prim.hs to implement __cwd() :) | 22:24 | ||
stevan | Corion: I am actually working on a CGI Hangman game as well :) | 22:25 | |
actually we didnt abolish the File::Spec syntax yet :) I figure that I have extracted all the cross platform knowledge out of it though, so it will be easier to do that later on | 22:26 | ||
Corion: I am commiting right now | 22:28 | ||
done, r1448 | |||
ok time for dinner, enjoy :) | |||
xerox | Bonne appetit | 22:29 | |
Khisanth | Corion: so perl6 will have a cwd builtin? | ||
Corion | Khisanth: No. I'm just hacking up a __cwd builtin, which will then be used by File::Spec | 22:30 | |
stevan | Corion++ | ||
Khisanth | Corion: hrm I have always found it strange that I can chdir and chmod but I can't get the cwd :) | ||
Corion | Khisanth: I don't want to take the matter-of-fact changing of Perl6 too far - there are people more capable than I am defining the language :) And Perl6 shouldn't become PHP, the language with 4000 builtins :) | ||
Khisanth: That's because Unix is crippled when it comes to cwd. getcwd is an expensive system call under Unix. | 22:31 | ||
... or used to be. | |||
shapr | There's some extranifty code in Eval.hs | ||
Corion | And Perl is/was Unix-centric | ||
jabbot | pugs - 1448 - tested and documented use_ok(); added to | ||
Khisanth | Corion: well it isn't that I want a few thousand builtin but I do like consistency :) | 22:32 | |
Corion | shapr: I just noticed. retEmpty is context sensitive - you can look at that for want() | ||
Khisanth: Ask on p6l maybe. Once I've implemented it, it's just a matter of renaming __cwd() to cwd() :) | 22:33 | ||
Khisanth | so having chdir/chmod/... also in a module along with cwd would seem better | ||
Corion | Hmmm. How dow I get an IO Filepath into a VStr ? ... I have to learn about the Pugs type system, I guess ... | 22:34 | |
shapr | Probably use liftIO to lift the IO call into the main monad. What's it called, Val? | 22:35 | |
Corion | shapr: Aah - I've seen liftIO used. I'll try that and see what Haskell tells me ;) | 22:36 | |
Yippie :) | 22:37 | ||
But I didn't export it properly it seems. | |||
Where other than in Prim.hs do I need to declare a new builtin? | 22:38 | ||
shapr | declare it, fill it into the really big string at the bottom, and you're done. | 22:39 | |
Oh, and *update the tests* as I learned. | |||
Corion | shapr: Hmmm. Then I've made some other error, as Pugs doesn't know about it yet. | ||
shapr | make ? | ||
Corion | shapr: Heh - I need to write the test for it still :) | ||
shapr: Did that, too :) | |||
shapr: My "yay" was because Pugs compiled :) | 22:40 | ||
shapr | You sure you put it into initSyms? I forget that quite often. | ||
As in, I've forgotten that every time so far. | |||
Corion | shapr: I'll check that. And maybe I messed up the param count/type/whatever ... cwd should be an op0 | ||
shapr: I mostly copied the prototype of time(), so I should be fine with that (except changing Int to Str) | 22:41 | ||
shapr | Yeah, good choice. | ||
Corion | Bah. The parser doesn't seem to like my __cwd. With xxcwd(), it works. :((( | 22:42 | |
So I now gotta find a different way of declaring my hidden builtin :) | 22:43 | ||
Maybe some weird Unicode char. | |||
Unicode sliderule to the rescue: ā¼ is my prefix :) | 22:44 | ||
Grrr. But it pastes not as unicode, but as two exclamation points. I'll need a unicode-able editor :( | 22:45 | ||
shapr | What are you using? | ||
If emacs, C-u C-x C-f will let you force the charset. | |||
Corion | shapr: Proton | ||
shapr | Never heard of it. | 22:46 | |
putter | Fyi, I now have a kludge which combines pods and adds misc cruft. Single synopses.pod with toc and section index. A and E's in historical.pod, and a modules.pod. Not everyone likes one-big-page manuals... but I like zipping/grepping around a spec, ymmv | ||
Corion | shapr: Nice, quick, small Win32 text editor with multiple tabs. | 22:47 | |
Khisanth | shapr: are you sure it's C-u C-x C-f? it attempts to open a file here | ||
Corion | shapr: But I'll have to change to something different if it doesn't support UTF-8 | ||
shapr | Khisanth: Yes, but once you've chosen the file, you can choose the charset as well. Try it. | ||
Khisanth | hmm nope | 22:49 | |
are you using xemacs? | |||
shapr | Yes I am. | ||
But I'm pretty sure it works on gnumacs as well, though it may require MULE. | |||
Khisanth | I do have mule support, though there was nothing about charset when using that combo | 22:51 | |
I get a lot of \d+ | |||
shapr | Weird, maybe I'm just confused. | ||
I switched back to xemacs21 two weeks ago, possibly that has scrambled my brains. | 22:52 | ||
Khisanth | hrm maybe I am just lacking a utf8 font emacs can use | 22:53 | |
Corion | Hah. My first super-secret builtin is in Pugs :) | 22:55 | |
( xxx_file_spec_cwd() ) | |||
Khisanth | pugs easter egg | ||
shapr: what does $ do in haskell? don't know how to read forall b a. (a -> b) -> a -> b :/ | 22:56 | ||
Corion | Khisanth: $ is a shortcut to space you a pair of parentheses :) | ||
Khisanth | space? | ||
Corion | Khisanth: foo $ bar is the same as foo( bar ) | ||
s!space!spare! | |||
Khisanth | ah | ||
shapr | $ means function application, you can use it like Corion just described, and you can use it other ways too. | ||
Corion | Khisanth: So foo $ bar $ baz $ ack is foo( bar( baz( ack )))) | 22:57 | |
shapr | Like if you have a list of functions, and a list of input data, you can stick the two lists together into a result list with zipWith ($) fList dList | ||
Corion | shapr: Oooo - nice :) I thought that $ might be a form and not a function, but it seems that Haskell doesn't have (many) forms ? | 22:58 | |
Hmmm. Or maybe there isn't much difference, as Haskell is lazy. | |||
shapr | forms? You mean builtin unchangeable functionality? If so, Haskell has almost none. | ||
Khisanth | that is very nice, the zip that is | 22:59 | |
Corion | shapr: Yeah - if(bool, ex1, ex2) is a form in non-lazy languages | ||
shapr | if is a function in Haskell. | ||
Corion | I broke my own tests. I'm stupid :) | ||
(because I commited before running the test suite :) ) | 23:00 | ||
shapr | I was pretty shocked when I first ran into Haskell, you can change nearly anything. | ||
I like a language that trusts me =) | |||
Corion | shapr: You'll like Perl then :) Except that there are things in Perl that you can't really change. Hence the need for Perl6 :) | ||
Khisanth | that is the same reason I like Perl | ||
shapr | I'm working my way into Perl slowly. | 23:01 | |
I think I may invite Rob Nagler to work his way in from the other side. | |||
jabbot | pugs - 1449 - Proper cwd() for File::Spec (via the sup | ||
putter | re the request/suggestion to grab p5 modules and port... has anyone systematically groveled over p5/t, transliterating and integrating the test with pugs/t? Pugs/t seems mostly written from scratch...? | 23:06 | |
Corion | putter: Yes, mostly written from scratch. | ||
putter: So, transliterating P5 tests where applicable is most welcome IMO | 23:07 | ||
putter | tnx | ||
shapr | Waitasec, I just realized metaperl called me the main evangelist for Haskell. | 23:08 | |
shapr blinks confusedly | |||
ok, quick poll, do I sound like a Haskell evangelist? | 23:09 | ||
Odin-LAP | You are a functional programming advocate, are you not? | 23:10 | |
Corion | I didn't see much advocacy here | ||
shapr | Yes. But I think I advocate all flavors of programming. | ||
Corion | ... the use of Haskell for Pugs is pretty much a given thing, no ? :) | ||
shapr | heh, true. | ||
Odin-LAP | shapr: Well, maybe such caused some confusion..? | ||
shapr | Could be. | 23:11 | |
Corion | multi-flavoured-programming ++ | ||
shapr | truly! | ||
jabbot | pugs - 1450 - Fix command line help verification | ||
shapr | I guess I am a vocal proponent of Haskell for everyday general programming. | ||
aaanyway... back to staring at want | 23:12 | ||
Corion | r1450 Win2k testmatrix at datenzoo.de/pugs/win2k.html | ||
shapr: You saw my comment about Empty ? | 23:13 | ||
err - retEmpty ? | 23:14 | ||
shapr | Yes, thanks! That's half of want right there. | ||
I guess I could just implement that and commit it. I've been trying to figure out the want.count part so far. | 23:15 | ||
Corion | shapr: Small steps! So implement that one and commit. Punt on want.count and let it always return infinity :) | ||
(or VUndef, dunno how it's defined) | |||
shapr | Yeah, true. | 23:16 | |
Corion | good night all | 23:19 | |
jabbot | pugs - 1451 - Added test for super-secret builtin | 23:41 |