Run Perl6 Now! | pugscode.org ('Overview', 'Journal') | pugs.kwiki.org | channel log: xrl.us/e98m Set by autrijus on 6 March 2005. |
|||
metaperl_ | I went there when I lived in Taiwan | 00:00 | |
mugwump | purl, #taipei.pm? | 00:02 | |
doh :) | |||
obra | #elixus on irc.tw.freebsd.org | 00:03 | |
mugwump | how long did you live in Taiwan for, metaperl_ ? Are you a good person to ask for I18N tips from? :-) | 00:40 | |
metaperl_ | oh no, I know nothing about that? | 00:42 | |
Limbic_Region | I lived in S. Korea for a year and a half and the only other country I visited was the Philippines - shame | ||
metaperl_ | s/\?/\./; | ||
what did you do in S. Korea? | 00:43 | ||
It costs money to travel and nothing is close by land to Korea if I'm not mistaken | |||
arcady | russia is close enough to korea to have ferry service | 00:49 | |
metaperl_ | are you serious? | 00:53 | |
Limbic_Region | sorry - was paying attention to #perl | ||
metaperl_ | you arent the arcady from LA.pm are you? | ||
Limbic_Region | I was a contractor to the US Army | ||
my gf at the time got stationed there | |||
so I told my boss to get me a job there or I would quit | 00:54 | ||
metaperl_ | oh I see. I enjoyed Taiwan and miss it. My plane stopped in Korea on the way back to the US but that's it | ||
Limbic_Region | 1 month before we were supposed to come back to the states - she sent me a dear john email | ||
Limbic_Region was well compensated | |||
besides - a large portion of foreigned earned income is tax free (under the right conditions) | |||
oh - if we are talking layovers or 1 day trips, HongKong and Tapei should be added to the list | 00:55 | ||
3 countries in Europe, 3 in North American, and 3 in Asia | 00:56 | ||
metaperl_ | I knew an American who teaches in Japan. He simply quit responding to his creditors, including student loans. He said they assume you are dead after 3 years | 01:00 | |
and just nullify the loans | |||
metaperl_ quit too --- time to leave this office and head home! | |||
adios fellow hackers | 01:01 | ||
ingy | hi metaperl_ | 01:12 | |
arcady | wow, I didn't even know there's an LA.pm... or another arcady for that matter | 01:14 | |
stevan | added a basic early support for isa_ok() in Test.pm if anyone is interested. r542 | 01:19 | |
cls_bsd | ōæ½xB5Lōæ½xAAkōæ½xB3sōæ½xB1ōæ½xB5ōæ½xA8ōæ½xECōæ½xA6ōæ½xF8ōæ½xAAAōæ½xBEōæ½xB9 (svn.openfoundry.org) # cannot connect..... | 02:04 | |
rooneg | i was getting that before, seems to work now though | 02:05 | |
seano | :t ws | 02:40 | |
by which I mean "hi"... | 02:41 | ||
hcchien | 95/1360 subtests failed | 02:54 | |
arcady | and the test results have some weird numbers like 178% of subtests failed | 03:17 | |
obra | yeah. there's been lots of test un_todoing | 03:19 | |
04:01
metaperl__ is now known as metaperl_
|
|||
autrijus | greetings on another frabjous day! | 04:06 | |
obra | hi! | 04:07 | |
seano | calloo callay, homes. | 04:08 | |
autrijus | :) | ||
seano | Has either of you been using GHC 6.4? I just realized that both FiniteMap and Data.Map look buggy... | 04:09 | |
autrijus | I've been testing against it | ||
but for daily work I'm still using 6.2 | |||
mostly because 6.4 is still in early rc | |||
seano | hm... I guess everyone has his own definition of "rc". | 04:10 | |
Parsec is sure a fun tool, but it seems to take a different kind of discipline to make grammars legible. | 04:20 | ||
autrijus | explain? :) | ||
seano | It almost makes me wish for a BNF -> Parsec tool, like yayacc or something. | 04:21 | |
autrijus | ahh. I see. | ||
seano | With BNF, your description and your language are very similar. | ||
autrijus | seano: write a Rule->Parsec compiler? :) | ||
seano | With Parsec, it's very tempting to add helper functions, folds, maps, and tables to generate the thing, which makes it hard to read. | 04:22 | |
Yeah, something like that... | |||
For a real mind-bender, write a BNF parser in Parsec that generates a Parsec parser. | |||
I dare you ;) | 04:23 | ||
autrijus | that is how Rule->Parsec compiler must be written :) | ||
well, there is already Happy | |||
flw | autrijus: ōæ½xCEōæ½xD2ōæ½xB7ōæ½xA2ōæ½xC1ōæ½xCBŅ»ōæ½xB7ōæ½xE2ōæ½xD3Ź¼ōæ½xFEōæ½xB8ōæ½xF8ōæ½xC4ōæ½xE3ōæ½xA3ōæ½xACōæ½xD4ōæ½xDA [email@hidden.address] | 04:24 | |
seano | True, but I think the staticness makes it unusable for "is parsed foo". | ||
flw: wtf with the row of boxes. Is that perl6? | |||
autrijus | and there is already www.cs.chalmers.se/~markus/BNFC/ | ||
flw: please try to keep #perl6 as utf8... if you'd like to write gbk we can talk at #perlchina :) | 04:25 | ||
flw: and yes, I did get your mail. | |||
flw: can you provide a telnet server or ssh? | 04:26 | ||
so that I can get on your machine and debug? | |||
seano | autrijus: cool, didn't know about that one. | ||
autrijus | otherwise, I'm trying to lure autarch into implementing Build.PL for us | ||
in which case your problem is more easily solved. | |||
flw | seano: ??? | 04:28 | |
seano | non-ASCII in Emacs looks like boxes. | ||
mugwump | Heh, confusing Perl 6 with Chinese. "It's all to me!" | 04:36 | |
į¼@ā@ā@į¼”@vį¼”@KĪŗ | 04:42 | ||
lol | |||
mugwump tries iso-8859-3 (B&%B(B&KB(B&KB(B&GB(B&MB(B&IB(B&JB | 04:43 | ||
mugwump gives up | |||
autrijus | heh :) | 04:50 | |
mugwump | did you get my modified sendmoremoney.p6 script, autrijus ? | 04:51 | |
autrijus | mugwump: I did. I also wonder why you did not commit it yourself :) | ||
mugwump | My message was asking if I could have access, in the form of a token change. I grokked what you were trying to do with the sendmoremoney.p6, and as I'd recently explored the problem space, I'd show the script | 04:52 | |
s/show the script/add my findings/, sorry | 04:53 | ||
autrijus | oh. sendmoremoney.p6 is not my baby :) | ||
mugwump | oh, duh. | ||
autrijus | so I was briefly confused :) | ||
viirya | autrijus: why re-tranalste? You made changes in PA01? | ||
autrijus | I think it's nnunley's | ||
viirya: yes, there is one single paragraph rewritten by Stevan | |||
viirya: see yesterday's journal | |||
mugwump: an invitatil should be @ your mailbox now. | 04:54 | ||
viirya | autrijus: ok. I see it. | 04:55 | |
autrijus | thanks! | ||
mugwump waits 300 seconds for the greylisting timeout ... | |||
autrijus | mugwump: welcome aboard. sorry, I thought I've invited you earlier; mea culpa | 04:56 | |
viirya | autrijus: it's done, how do I give you it? | 05:18 | |
Darren_Duncan | greetings humans | 05:24 | |
I've just checked in an updated Locale::KeyedText ... | 05:27 | ||
autrijus | Darren_Duncan++ | ||
Darren_Duncan | some bugs are fixed, partly thanks to some questions I got answered on p6l | ||
autrijus | yeah, larry seems excited | ||
it's good to excite larry :) | |||
<- but I gotta run. | |||
Darren_Duncan | but one of the more interesting things is that the new version uses new Perl 6 features | 05:28 | |
subtypes I think they're called | |||
lets me cut out a lot of input checking code | |||
autrijus | also "where" clause I think is useful. | 05:29 | |
Darren_Duncan | assuming I used them correctly | ||
my subtypes use the "where" clause | |||
autrijus | ah. cool | ||
Darren_Duncan | I just didn't want to repeat it for every variable | ||
autrijus | nod nod. | ||
Darren_Duncan | I consider subtypes like SQL domains | ||
you can pre-declare a set of constraints and use it everywhere | 05:30 | ||
autrijus | yup. logic programming, here we come | ||
I just submitted YAPC::NA proposal :) | |||
obra | ! | ||
oh. canada. | |||
Darren_Duncan | of course, that's one more thing Pugs'll have to support before my mod runs | ||
autrijus | obra: yes, the very reason :) | ||
Darren_Duncan | other end of the country from where I am | ||
I'm going to try to be at OSCON this year | 05:31 | ||
my first ever big Perl conference | |||
it's location is relatively close to home | |||
and some of the biggest stuff happens there | |||
autrijus | have fun. :) ingy will speak there for me on pugs | ||
Darren_Duncan | but I suppose its more expensive | ||
what are you talking about at YAPC? | 05:32 | ||
same thing? | |||
autrijus | yeah. "Apocalypse Now" | ||
but more of a how-to-hack-pugs tutorial | |||
Darren_Duncan | eventually I'll try to visit all the english-language Perl conferences, as I have the means to do so | ||
autrijus | :) | 05:33 | |
Darren_Duncan | it seems like some people go to all of them | ||
obra is trying to cut down on conferences | |||
autrijus | obra: I figure 3 days can't hurt :) | ||
Darren_Duncan | I could do that later, but gotta go up before I can come down | ||
autrijus runs & | |||
obra | + how may days of travel ;) | ||
Darren_Duncan | I figure its a great opportunity to meet all these Perl folks I only see on the internet before that | 05:34 | |
obra | Indeed. | ||
Darren_Duncan | that said, I have met a couple names in person | ||
obra has spent a bit too much time at the worthless conferences. | |||
Once I hire minions, things will get better, though | |||
At least in theory | 05:35 | ||
Darren_Duncan | If any of you have heard of Peter Scott, who wrote Perl Debugged (name?) and spoke at OSCON in 2004 about taming legacy perl, he lives in my home town and we meet at the monthly Victoria.pm gatherings | ||
obra | Ah | ||
Darren_Duncan | Also, about 1.5 years ago, a Linux cruise stopped by in Victoria and I briefly met ... Mike Schwern (name?) ... and I met Linux Torvalds | 05:36 | |
obra | But yes, come to conferences. Meet more people. Share more ideas | ||
Darren_Duncan | not mike schwern ... | ||
Randal Schwartz I met | 05:37 | ||
that's about it | |||
wolverian | well, Larry Wall has replied to my mailing list post! so nyah! | 05:38 | |
wolverian cries softly | |||
Darren_Duncan | he replied to mine too | ||
and he said thanks for my efforts | |||
so nyah! | 05:39 | ||
anyway, Larry is one of those I'm most looking forward to meeting when I get the chance, for several reasons | 05:40 | ||
mugwump | #1. to bow down and chant "we're not worthy" | ||
Darren_Duncan | won't list em | ||
mugwump | #2. Hit him up about why there can be no $%@#$% operator in Perl 6 | ||
Darren_Duncan | who says there can't | ||
I seem to recall Perl 6 will let us redefine its own grammar | 05:41 | ||
I think that was Larry's idea | |||
obra | Oh wow. The ruby track at OSCon is going to be great. | ||
seano | because that's a magic variable that stores the last failed grammar rule. | ||
mugwump | Is that a flying saucer? No, wait, I think it's a pie | ||
Darren_Duncan | is there another bet? | ||
statico | mmm... unidentified pie... | ||
Darren_Duncan | like pie-thon the return? | 05:42 | |
or the son of pie-thon | |||
or the bride of pie-thon | |||
mugwump | pie-in-the-sky-thon | ||
nothingmuch | good morning | 05:52 | |
hoowa | morning | 06:14 | |
thesaboteur | morning | ||
hoowa | afternoon in china. | 06:15 | |
thesaboteur | 1am here | ||
hoowa | where u local? | ||
thesaboteur | east coast usa | 06:16 | |
hoowa | woo :0 | ||
morning morning!! | |||
thesaboteur | yea haha | ||
hoowa | alexe?? | 06:17 | |
06:33
Paler2872 is now known as cnhackTNT
|
|||
Darren_Duncan | about ... stuff? | 06:34 | |
thesaboteur | mmmm...... invisible stuff. | 06:39 | |
hoowa | stuff? | 06:44 | |
Darren_Duncan | that was a joke ... | 06:50 | |
it is what someone can say to try to start a conversation while being fully non-descriptive | |||
thesaboteur | hmm is there a way to get more verbose error output from perl? im running it with -w but is there anything else I can do to get more info from the errors? | 06:53 | |
#!/usr/bin/perl -w | |||
Use of uninitialized value in split at /Library/Perl/5.8.1/Net/AOLIM.pm line 2406. | 06:54 | ||
that's the error I get | |||
&{$imsg->{'callback'}}($tp_type, split(/:/,$tp_tmp,$SERVER_MSG_ARGS{$tp_type})); < line 2406 | |||
Darren_Duncan | the only way I've found to resolve that is to split up the offending line into several shorter lines | 06:55 | |
not with whitespace, but with the use of a few temp variables | 06:56 | ||
thesaboteur | yeah | ||
obra | it might make sense to print out the variables just before that line | ||
or use the debugger, if you dare. but really, #perl is a better place for perl5 questions | |||
Darren_Duncan | sometimes printing them helps, sometimes not | ||
thesaboteur | ah ok that I can do | ||
Darren_Duncan | good idea | 06:57 | |
thesaboteur | kool thanks | ||
Darren_Duncan | I've just committed some more LKT upgrades | ||
that's it for tonight ... tomorrow I'll upload a test suite for it | |||
it looks a lot more Perl-6ish now | |||
obra | Night, Darren. | ||
Darren_Duncan | same to you | ||
obra | Oh. it might be worth taking it and annotating it and posting it on your use.perl journal or somesuch | 06:58 | |
are you blogging about perl6 hacking? if so, I'll add you to planetsix.perlfoundationlorg | |||
Darren_Duncan | I should post what there? | ||
no, I don't have a blog for any reason | |||
usually, stuff like this that I want to share, I email a related mailing list | 06:59 | ||
obra | so. you're one of the first folks actually _coding_ in perl6. | ||
Darren_Duncan | probably | ||
obra | It might be interesting for folks to read about the stuff you're doing. | ||
Darren_Duncan | maybe, but blogging never really interested me, and it takes time | ||
obra | use.perl.org provides free blogging for perl-related people. and we've got public blog-aggretators so the general public can see what's up | ||
ingy | hola | ||
obra | hey ingy | ||
ingy | hi jesse | ||
obra | Understood. | 07:00 | |
obra is getting very excited about the hualien hackathon | |||
Darren_Duncan | still, I've got a little problem where it takes me a lot more time to do things than the average person, so doing extra things like a regular blog can be significant | 07:01 | |
on the other hand, I may be pleasantly surprised | |||
ingy | Darren_Duncan: maybe you irc too much :P | ||
Darren_Duncan | part of it is just about figuring out what to say without sounding boring | ||
obra | *nod* you could also just write to mailing lists and copy and paste your messages into the blog ;) | ||
so. I'm a module author. I'd love to hear about what makes perl6 so much better for coding in. | 07:02 | ||
since I've been paying only a bit of attention and it sounds like you've found it nicer than perl5 in some ways | |||
Darren_Duncan | it takes getting used to, but I certainly appreciate a lot of Perl6 features | ||
the subtypes can save a lot of input checking code for example | 07:03 | ||
assuming they do what I think they do | |||
I mean, subtypes in combination with a 'where' clause | |||
sort of like a SQL domain | |||
and I'm quite into databases, if you hadn't noticed from my modules | 07:04 | ||
anyway, while I *could* start a blog, I can't promise that I'll write in it very often | |||
ingy | obra: hualien looks awesome | 07:05 | |
obra | nod | 07:06 | |
to both of you | |||
ingy | it will be a fun drive down the coast | 07:10 | |
Darren_Duncan | as for public-visible stuff, fortunately all the Perl mls and this IRC channel are all archived on the web, so everything I say is sort of published | ||
ingy | I can't wait | ||
obra | driving? last time, we just took the train | 07:12 | |
Darren_Duncan | question: yesterday there was a p6l post by Shu-chun that said the ternary operator wasn't working in pugs, ?? :: ... is this known to be an outstanding issue or known fixed | 07:13 | |
actually nevermind, I'm leaving | 07:14 | ||
nothingmuch | morning | 07:37 | |
08:14
sorje_ is now known as sorje
|
|||
nothingmuch | hola larsen | 08:18 | |
Khisanth | ack! | 08:19 | |
Khisanth gives up on haskell and tries perl6 instead :) | |||
larsen | nothingmuch: Hello. | 08:21 | |
ingy | Khisanth: what haskell stuff have you read? | 08:25 | |
Khisanth | ingy: just following stuff on haskell.org | 08:27 | |
ingy | Khisanth: I like www.haskell.org/onlinelibrary/ | 08:28 | |
just the facts | |||
Khisanth | "A Gentle Introduction to Haskell" seems nicer than YAHT | ||
ingy | agreed | ||
but both take to long to get to the nuts and bolts | |||
nothingmuch | what is long? | 08:29 | |
the first 40 or so pages of YAHT, which is 200 pages | |||
were not that dense | |||
Khisanth | ingy: maybe we're just impatient :) | ||
nothingmuch | so they went quickly | ||
i spent about 90 minutes learning haskell so far | |||
and excercises i felt i should skipped i did | 08:30 | ||
but then again, i sort of skimmed | |||
nothingmuch feels cunning | 08:55 | ||
make test now works on OSX | 09:02 | ||
whomever++ | |||
(ingy?) | 09:03 | ||
ingy | did it not work? | ||
nothingmuch | it didn't work yesterday | 09:05 | |
PERL6LIB problems | |||
make purge didn't help | |||
but now it does, maybe because i upgrade ExtUtils::MakeMaker | |||
maybe not | 09:06 | ||
eitherway, karma is up | |||
dada | hola | 09:19 | |
nothingmuch | hola dada | 09:25 | |
has anybody but autrijus taken a look at the fatal (even in eval) casting of hash to string? | |||
i'd like to comit the second iteration of t/op/smartmatch.t | |||
which covers everything but rules & objects | |||
and some stuff i didn' | |||
t understand | |||
theorbtwo | Morning. | 09:26 | |
nothingmuch | hola theorbtwo | ||
autrijus | hi. | 09:40 | |
nothingmuch | morning autrijus | ||
autrijus | where is the stringification to hash specced again? | ||
I have fixed not() | |||
and various related parsing bugs | |||
and hopefully made flw's nmake problem go away. | |||
nothingmuch | i would like it to just not die horribly in an eval, | 09:41 | |
appearantly in S02 at the top | |||
as arcady noted | |||
it says $key\t$value\n | |||
autrijus | "There is no such thing as a hash list context." | 09:42 | |
oops. so pugs is wrong. | |||
autrijus makes a note | |||
nothingmuch | a hash in list context == a list of paris, no? | ||
don't make a note, i'll write a test | 09:43 | ||
oh | |||
not hash in list context | 09:44 | ||
list context into a hash | |||
autrijus | hash stringification implemented as r554. | 09:45 | |
autrijus goes out to find food | 09:46 | ||
food & | |||
nothingmuch | *hug* | ||
thank you! | |||
autrijus | :) | ||
it's AST.hs line 158 if people are interested. | 09:47 | ||
it's one line: | |||
vCast (VHash (MkHash h)) = unlines $ map (\(k, v) -> (vCast k ++ "\t" ++ vCast v)) $ fmToList h | |||
nothingmuch | \n? | ||
autrijus | unlines = \n | ||
nothingmuch | ah | ||
autrijus gone & :) | |||
theorbtwo | Anybody SubEthaEditites around here? | 09:59 | |
nothingmuch is here | 10:00 | ||
but i can't punch work nat | |||
you'll have to arrange for that | |||
theorbtwo | I actually wanted an ethereal or tcpdump trace of an anonymous subethaedit session. | 10:02 | |
nothingmuch | anonymous? | 10:03 | |
i.e. rendezvouz? | |||
theorbtwo | Anon IE without encryption. | ||
nothingmuch | i doubt there is encryption either way | 10:04 | |
subetha uses zeroconf to find other subethas on the LAN | |||
subnet | |||
and aside from that it's just a propietry protocol | |||
theorbtwo | I know, but it uses BEEP for the actual communications, and BEEP will do SASL. | ||
nothingmuch | tcp/ip | ||
ah | |||
theorbtwo | SEE 2.0 or 1.0? | ||
nothingmuch | that i didn't know | ||
nothingmuch is outdated, appearantly | 10:05 | ||
theorbtwo | <g> | ||
nothingmuch | well, not really | ||
software wise i'm up to date | |||
i just was not aware of any changes | |||
you want to glue see operability into something else? | |||
theorbtwo | xemacs. | ||
Not that I've got the elsip chops, but perhaps I can figure out the protocol, and get somebody else to do it. | 10:06 | ||
nothingmuch | search.cpan.org/~autrijus/Kwiki-Edi...ubEtha.pm? | ||
theorbtwo | Looks like that just scripts a subethaedit instance. | 10:07 | |
nothingmuch | oh, right | 10:08 | |
hmm | |||
funny way of doing it | |||
if i connect to you, you can just tcpdump and see if it does sasl | |||
theorbtwo | Um, I could, if I had a subethaedit, but the point is that I don't. | 10:09 | |
Connect to see://www.codingmonkeys.de/ ? | |||
Juerd_ hates his wrists and hands | 10:16 | ||
theorbtwo | Type with your feet? | ||
Juerd_ | I wish I could | ||
theorbtwo | Should learn. | 10:17 | |
I've never tried to type with my feet, but typing with my nose works OK. | 10:18 | ||
Of course, it makes it hard to watch the screen while typing. | |||
nothingmuch | theorbtwo: oh, i thought you were running pearpc | ||
so you want me to connect there, and give you tcpdump | grep codingmonkeys.de? | 10:19 | ||
theorbtwo | No, have to set it up, I suppose. | ||
That won't give me payloads. Hold on a sec, let me figure out how to convince tcpdump to give me what I want. | |||
nothingmuch | tcpdump -vv? | 10:20 | |
theorbtwo | tcpdump -w host codingmonkeys.de | 10:21 | |
luqui just had an insanity attack | |||
theorbtwo | Er, tcpdump -w host codingmonkeys.de > see.tcpdump | ||
Hmm? | |||
luqui | hmming at me? | 10:22 | |
theorbtwo | Aye. | ||
nothingmuch | tcpdump won't accept 'host codingmonkeys.de' | ||
luqui | my most recent message on p6l is purely insane | ||
nothingmuch | one minute | ||
luqui | but perl6 has been open to insane ideas before :-) | ||
theorbtwo | try "host 212.204.60.78" | 10:23 | |
Oh, that should probably be quoted. | |||
nothingmuch | ah, yes | ||
i thought maybe -w wants a file arg | |||
theorbtwo | D'oh, yes, it does. | 10:24 | |
I haven't use tcpdump directly for quite a while -- I just use ethereal, and let it do the hard bits. | |||
nothingmuch | theorbtwo: i have dumps of simple actions | 10:28 | |
connect, disconnect, open file | |||
theorbtwo | Great! | 10:32 | |
nothingmuch | hold on, got to do it all again | ||
theorbtwo | Put them someplace http-accessable, or mail to james-at-mastros-dot-biz? | ||
nothingmuch | it was the argument to -w, and now you have all my other traffic aswell =) | ||
theorbtwo | Oh. Um, might want to do something about that. | 10:34 | |
nothingmuch | uhuh, redumping is easiest | 10:36 | |
ok | 10:37 | ||
FYI, i am syeeda.int.hyperroll.com | |||
which is my laptop, internal net, | 10:38 | ||
ip 10.1.1.xx | |||
i forget | |||
here is the progress, || denotes tcpdump was restarted | |||
connect || close || connect || open file || move around file || add line || <--- overwritten some data, state ruined --> || remove line, by repeatedly deleting chars, and by selecting and deleteing || quit app | 10:39 | ||
theorbtwo | So you only have data from the <--- overwritten ---> bit forward? | 10:41 | |
nothingmuch | no | ||
i accidentally overwrote the dump where the line was deleted | 10:42 | ||
so i redid that | |||
but the state was not exactly the same | |||
nothingmuch.woobling.org/subethadumps/ | |||
between add_line.dump and delete_line.dump the line was deleted and added | |||
theorbtwo | Ah, much much thanks. | ||
nothingmuch | good luck with it | 10:45 | |
and feel free to ask for more specific interaction as necessary | |||
i'm going to lunch | |||
theorbtwo | Bon appitit. | 10:46 | |
DOH! | 10:50 | ||
theorbtwo stops messing with nothingmuch, installs pearpc. | |||
lumi | Mornin' | 10:51 | |
Umm, I could send you dumps in ~ 10 hours | |||
theorbtwo | Mornin, lumi. | 10:53 | |
I can have a pearpc install up and running quicker then that, I hope. | |||
nothingmuch | FYI - subetha may be free for noncommercial use, but i'm not sure whether it's EULA allows this kind of stuff | 10:57 | |
you should check | |||
nothingmuch would donate to theorbtwo if the said monk would produce a 'libnetedit' which every editor would bind to | |||
theorbtwo | The EULA is irrelevant; the wire is mine. | 10:58 | |
nothingmuch | isn't this reverse engineering their protocol, which is sort of like data files? | ||
buu | Yes! | 10:59 | |
theorbtwo | Yes; just like data files it's legal. If it weren't, the samba guys would have been sued into the stone age by MS. | ||
nothingmuch | hmm | 11:00 | |
so why are DVDs illegal? | |||
program binaries? | |||
if i disassemble the windows kernel on a sun machine, the machine code is no longer executable | |||
i could argue it's not a program as far as i'm concerned | |||
forget it | |||
i don't really want to know this stuff | 11:01 | ||
i wasn't asking | |||
just be careful =) | |||
theorbtwo | The reason is that the copyright on the program files belongs to them. If I write something in Word, and save it, does MS have a copyright interest in my words? | 11:03 | |
Nope. | |||
Juerd_ | I'm sure that a careful reading of the EULA brings up a possible interpretation that says they own everything, including the user's thoughts for the time they use the program ;) | 11:06 | |
nothingmuch | autrijus: ping | 11:25 | |
is(~%hash9, ("1\t2\n2\t3\n"), "hash can stringify"); | 11:35 | ||
this passes | |||
but it's not correct | |||
is(~%hash9, ("1\t2\n2\t3\n" | "2\t3\n1\t2\n"), "hash can stringify"); | |||
this does not | |||
not ok 53 - hash can stringify | |||
# Failed test (t/op/hash.t at line 133, column 1) | |||
# got: '1 2 | 11:36 | ||
2 3 | |||
' | |||
# expected: '2 3 | |||
1 2 | |||
' | |||
oh shit | |||
i see | |||
ok 52 - hash can stringify | |||
not ok 53 - hash can stringify | |||
ok(hash eq junction) | |||
sorry, everyone! | |||
12:08
Aankh|Clone is now known as Aankhen``
|
|||
wolveria1 | I wonder what the 'shall' auxiliary trait keyword in A12 does. | 12:22 | |
nothingmuch | hmm | 12:24 | |
no clue | |||
it's not in s12 | |||
or s13, which forked off | 12:25 | ||
p6l? | |||
wolveria1 | Thomas Sandlaōæ½xDF's message in the thread Adding linear interpolation to an array wonders about it too, but I don't see any answers. hmm. | 12:27 | |
nothingmuch | =P | ||
nothingmuch just realized he's at work, and can run pugs tests on a 2x3ghz machine, instead of his 1x400mhz laptop | 12:28 | ||
Aankhen`` | Dual 3 GHz.? What CPU? | 12:29 | |
nothingmuch | model name : Intel(R) Xeon(TM) CPU 3.06GHz | ||
hyperthreading | |||
twice | |||
Aankhen`` | Kewl. | ||
nothingmuch | uhuh | ||
Aankhen`` | You lucky dawg. | ||
nothingmuch | and that machine's swap disk just got zapped | ||
so no one can use it for anything else either =) | 12:30 | ||
Aankhen`` | Awesome. :-P | ||
nothingmuch | is there an svn rpm for only the client somewhere? | ||
theorbtwo | Nice. | ||
nothingmuch | we also have some tougher boxes | ||
at the US site there's some quad and 8 cpu aix and sun boxes | |||
and we have an old alpha server | 12:31 | ||
which in theory was much more powerful | |||
it looks like a minibar | |||
Aankhen`` | I want an 8 CPU Opteron server. | ||
And I want a life too, while you're at it. | |||
nothingmuch | ... make -j5 ... | 12:35 | |
=D | |||
Aankhen`` | ? | ||
nothingmuch | oh nothing | ||
Aankhen`` | Awww, c'mon, tell me... | 12:36 | |
nothingmuch compiles svn | |||
wolveria1 | svk? :) | ||
nothingmuch | svk - i've been having interface incompatibilities with it | ||
i don't know how to use it yet | |||
svn is like cvs which i already know | |||
wolveria1 | it is a bit odd. | ||
nothingmuch | and i have no time to learn something new | ||
so it's on hold | 12:37 | ||
even though i would like to use it eventually | |||
time make optimized ... | 12:46 | ||
116.590u 2.020s 2:02.58 96.7% 0+0k 0+0io 52996pf+0w | 12:48 | ||
not bad | |||
csh makes it undreadable | |||
time make test | 12:49 | ||
16.990u 1.330s 0:18.23 100.4% 0+0k 0+0io 104230pf+0w | |||
woot | |||
does the default var ($_) need any declaration in p6? | 13:12 | ||
rgs | I don't think so | 13:13 | |
fayland | hcchien: if i find some mistakes at the zh_tw/S13.pod, what can i do? | 13:19 | |
hcchien_: maybe my mistake? should i contact the author directly? | 13:21 | ||
nothingmuch | fayland: change and commit, IMHO | 13:25 | |
if it turns out to be a wrong correction, it can always be rolled back | |||
fayland | nothingmuch: but my encoding is diffrent, is that ok? | ||
nothingmuch | ah | ||
utf-8 is the norm | |||
pugs won't eat anything else | 13:26 | ||
perl6 says it's a good thing | |||
and i think hcchien_ converted them yesterday | |||
fayland | but the words appears different | ||
zh_tw is big5, i use gb2312 | 13:27 | ||
nothingmuch | where is S13 in zh_tw? | ||
both should be utf-8 | |||
if i understood correctly | |||
fayland | the words appears big5.the encoding is utf-8 | ||
nothingmuch | ah | ||
you mean it was reinterpreted as utf-8 | 13:28 | ||
but it really is big-5? | |||
fayland | appearance is different | ||
nothingmuch | and meaning? | ||
also, duh | |||
nothingmuch is a bit tired, please forgive | |||
hmm, i think you'd better ignore me for now | 13:29 | ||
fayland | :) soory for my poor english. | ||
nothingmuch | i think i should apologize for my poor mental skills | 13:33 | |
scw | fayland: Hello, what's the problem you discovered? I'm from Taiwan so may be able to help :) | ||
fayland | scw: such as "Likewise operators on your new type can appear in the class:" | 13:40 | |
scw: i upload my translation to zh_ch, may this helps. | 13:41 | ||
scw: i think we need discuss that. | |||
scw | fayland: Are you talking about some file already in the svn tree? | 13:42 | |
fayland | scw: yes. | 13:43 | |
scw: the done translation work. | |||
scw | fayland: So you are stanslating t/Synopsis/*.pod in to Chinese? | ||
fayland | scw: that's right. | ||
scw | fayland: I think the file should better use UTF-8 encoding | 13:44 | |
fayland | yes. i use utf-8 encoding. | ||
scw | fayland: but with different codes for those words which are different between simplified Chinese or Traditional one | 13:45 | |
fayland: Just as what t/docs/zh-tw and t/docs/zh-cn do :) | |||
fayland | scw: so i upload my document to zh_cn. | ||
scw | s!t/!!g | ||
fayland | svn.openfoundry.org/p6l10n/zh_tw/S13.pod | 13:46 | |
i just think there may has some mistakes. | |||
and ask what can i do | |||
contact the author directly or something else? | |||
scw | fayland: if you can commit, commit directly should be ok :p | 13:47 | |
fayland | scw: but i use diffrent glossary and the appearance of simp.chinese and trad.chinese is different | 13:48 | |
lumi | Why are there Chinese translations? | 13:50 | |
I'm not complaining, I'm enquiring | |||
scw | fayland: different glossary? Do you means those word translated in different term? (ex: computer) | ||
lumi | Would other translations be helpful? | ||
fayland | maybe for the man who is not good at english | ||
of course. | |||
theorbtwo | The zh_tw translation should be traditional chinese; the zh_cn translation should be simplified chinese, but both should be in utf8 encoding. | ||
fayland | scw: yes.i mean that | 13:51 | |
scw | fayland: That should be ok, l10n including culture :) | ||
theorbtwo | As far as I know, there's Chinese translations and not others simply because there were volunteers for the Chinese translations first. | ||
fayland | theorbtwo: we are use utf8 encoding.but the appearance is different.such as ōæ½x98ōæ½xCBōæ½xEE} as trad. and ōæ½xB1ōæ½xEAōæ½xCCōæ½xE2 as simp. | 13:52 | |
scw: that's fine.:) | |||
scw | fayland: in fact, if there are some term different in simp. in pugs/docs/zh-cn, update directly, too. | 13:53 | |
nothingmuch | lumi: thinking of hebrew? latin? finnish? | ||
scw | fayland: it is translate by trad. author and convert to simp. by program :) | ||
nothingmuch thinks STM haskell should be the de-facto academic computation language on linux clusters | 13:54 | ||
it can't be slower than the java overhead | |||
which is a pill most are willing to swallow | |||
but it looks so much more useful | |||
lumi | The only language I could translate well into is Hebrew, but I don't know of any Perl hackers who don't have decent English skills | ||
fayland | scw: autrijus ask me to change the terms. :) i'll do it later. | ||
scw | fayland++ # I am, in fact, afraid of translating :) | 13:55 | |
fayland | scw: ask u a question. does pugs support the %= op? | 13:56 | |
yet | |||
nothingmuch will write a test | 13:57 | ||
scw | Err, seams not. | ||
fayland | and what about multi in deep? | ||
scw | fayland: What do you mean? multi-what? | 13:58 | |
nothingmuch | fayland: multi in deep? | ||
fayland | such as "multi sub infix:<%> (Us $us, Them $them) is deep { mymod($us,$them) }" | 13:59 | |
is deep | |||
theorbtwo | Objects aren't yet supported, so you can't do Us $us, Them $them. | ||
fayland | maybe i should write test myself | ||
how about Int | |||
multi sub infix:<%> (Int $us, Int $them) is deep { mymod($us,$them) } | 14:00 | ||
ya, i write test now. see u all later. | |||
scw | I wonder if `is' is implemented or not :p | 14:01 | |
nothingmuch | i think not | ||
i submitted t/var/is_constant.t as a test for is applying | 14:02 | ||
but t/op/is.t is not really there | |||
ugg | 14:10 | ||
t/op/arith.t is not nice | |||
someone please sanity check r560 | 14:23 | ||
autrijus | greetings folks | 14:39 | |
autrijus squashed more test failures | |||
still testing, commit in a bit | |||
theorbtwo | Looks sane to me, nm. | ||
lumi | The failure is kinda useless, it always gives the testing sub's line number | 14:40 | |
autrijus | hi stevan. | ||
stevan | hello autrijus | 14:41 | |
Coke-afk | ~~ | 14:42 | |
hcchien_ | autrijus: is length a perl6 build-in function? | ||
14:42
Coke-afk is now known as Coke-DarnitThisI,
Coke-DarnitThisI is now known as Coke_
|
|||
autrijus | hcchien_: string length? | 14:44 | |
hcchien_ | autrijus: yes | ||
dada | hcchien_: no length anymore :-) | ||
malaire | wasn't length banned from perl6 | ||
dada | AFAIK, yes | ||
is spelled chars(string) or string.chars now | 14:45 | ||
autrijus | yeah, and underlying it's | ||
theorbtwo | Or bytes(string), depending which it is that you care about. | ||
autrijus | .bytes, .codes, .graphs, .langs | ||
the "chars" one is aliased to one of the four | |||
depending on the unicode supporting level. | |||
dada | wasn't that .graphemes? | ||
autrijus | no it's graphs. | 14:46 | |
dada | oh, ok | ||
autrijus: one question | |||
autrijus | oh btw, my ($a, $b) = (1,2) now works... | ||
I'll commit in a bit | |||
that is my first use of parallel comprehension | |||
and it rocks :) | |||
dada | how can I distinguish an arrayref from an array? | ||
stevan | nice | 14:47 | |
scw | autrijus: It works!! | ||
autrijus | dada: in general you cannot. | ||
stevan | actually array-refs usually show up as List types | ||
autrijus | I guess .ref maybe. but that's blurry. | ||
dada | mmm | ||
I mean in Haskell | 14:48 | ||
err, in the Haskell part of pugs, that is | |||
the fact is | 14:49 | ||
that to implement the splat operator | |||
I need to distinguish an array from an arrayref from a list | 14:50 | ||
autrijus | oh. arrays are VArray | ||
refs are VRef | |||
you can use case analysis. | |||
dada | cool, thanks | ||
and lists are VList? | |||
autrijus | right | ||
t/01basic........................ok | 14:51 | ||
2/17 unexpectedly succeeded | |||
cool. seems to work. | |||
my (@a, @b) = (1,2,3); # what happens? | |||
does @a get 1,2,3? | 14:52 | ||
dada | I think so | ||
autrijus | my (@a, @b) := (1,2,3); # @a get 1, then? | ||
dada | no, wait | 14:54 | |
mmm, yes, it should | |||
(@a, @b) := (@b, @a); # "this should swap two arrays" | 14:55 | ||
autrijus | okay. that's what I thought too. | ||
I wonder why it's not an infinite loop ;) | |||
dada | autrijus: another question | ||
larsen | autrijus: me too | 14:56 | |
isn't := the binding operator ? | |||
dada | larsen: sure it is | ||
larsen | then shouldn't I use = to swap arrays ? | ||
dada | no | ||
because = flattens | |||
(@a, @b) = (@b, @a); # this would concatenate @b and @a and put them in @a | 14:57 | ||
lumi | And truncate @b? | 14:58 | |
dada | probably, yes | ||
autrijus: consider this: my *$a = @a; | 14:59 | ||
autrijus: this should be "translated" to: my ($a) = @a; | |||
autrijus: this means that the * should change the context in which the assignment is evaluated | |||
autrijus | yeah. | ||
dada | any clue about how to do that? :-) | 15:00 | |
can I assign to envContext from inside the reduce function? | |||
autrijus | sure | 15:01 | |
grep for enterContext | |||
dada | ahhh, yes | ||
enterContext does that? | |||
autrijus | yup. | 15:02 | |
it's not assign, mind you | |||
it's a pad | |||
dada | wait a moment | ||
autrijus | the difference being it reverts back after the scope exits. | ||
dada | is enterContext different from enterEvalContext? | ||
autrijus | see "All About Monads", the reader monad | ||
enterEvalContext enters a context | |||
then eval something. | |||
see its type | |||
enterContext enters a context | |||
dada | ok | 15:03 | |
autrijus | it takes an action | ||
eEC takes Exp | |||
enterEvalContext :: Cxt -> Exp -> Eval Val | |||
enterEvalContext cxt = enterContext cxt . evalExp | |||
dada | autrijus: "see its type" sounds like "see how many legs martians have" to me :-) | ||
autrijus | I hope that is clear :) | ||
enterEvalContext is just, first enter the context specified as first arg, then eval the exp in the 2nd arg. | 15:04 | ||
dada | sure, I get it | ||
enterContext :: Cxt -> Eval a -> Eval a | |||
autrijus | it takes a context, and another eval action, then perform that action under the specified context. | 15:05 | |
clear as ink! | |||
dada | mmm | ||
but I have no action to perform | |||
autrijus | you have something to eval, don't you? | ||
the @a | |||
dada | yeah | ||
no, rather the $a | |||
autrijus | aye | 15:06 | |
dada | my *$a = @a; | ||
ok, I will try to code it now :-) | |||
autrijus | my ($a, $b) := (); | ||
what happens? | |||
runtime error? | 15:07 | ||
dada | mmm | ||
maybe it's just like ($a, $b) := (undef, undef); | |||
so it's like $a := undef | 15:08 | ||
autrijus | so $a and $b are constant undefs? | ||
dada | yes | ||
autrijus | i.e. you can't assign to them? | ||
ok, implemented as such | |||
it's actually | |||
$a := not() | |||
theorbtwo | That seems like very useless behavior... | ||
autrijus | so we get | ||
@b := not() | |||
as well. | |||
dada | I'm not sure about it | 15:10 | |
binding should be (more or less) the same binding used for subs | 15:11 | ||
autrijus | I mean, | ||
@b := undef | |||
will result in +@b being 1 | |||
which is certainly what we want. | |||
so not() is right. | |||
PerlJam | autrijus: I think that my ($a, $b) := (); should be an error. | 15:13 | |
(not that what I think counts for much :-) | 15:14 | ||
autrijus | I was trying to find it in specs. | ||
Apocs or Syns. | |||
maybe warrants a p6l post again :-/ | |||
PerlJam | I think you won't find it. IIRC, that behavior is up for grabs. | ||
actually, maybe it shouldn't be an error, but also $a and $b shouldn't be bound to anything | 15:16 | ||
theorbtwo | I think my ($a, $b) := (); should be error, or nop... but I don't know what makes the most sense in. | ||
@a=(); my ($a, $b) := @a; | |||
PerlJam | theorbtwo: I think nop makes the most sense now. | ||
autrijus | I'll use const undef for now | ||
until a ruling is made on either p6c or p6l. | |||
PerlJam | theorbtwo: that would make $a an alias for @a and $b is bound to nothing | 15:17 | |
autrijus | (read: easiest to implement) | ||
PerlJam | (ie, it's free) | ||
autrijus | s/const undef/const not()/ | ||
theorbtwo | Do we have a mechinisim in place for generating warnings? | ||
autrijus | no we do not. do you want to design one? | 15:18 | |
ok, I think multiarg LHS for both := and = are done. | 15:27 | ||
hash_ref fails, though. weird | |||
my $a = (1,2); | 15:29 | ||
is $a 1? | |||
or [1,2]? | |||
theorbtwo | Are we checking ($a, $b)=($b, $a) ? | 15:30 | |
autrijus | prolly not. | 15:31 | |
my () = (); | |||
syntax error? | |||
I'm making it a syntax error. | 15:32 | ||
rgs | [rafael@grubert ~]$ perl -e 'my()' | ||
Can't declare stub in "my" at -e line 1, at EOF | |||
nice error message :) | |||
autrijus | C:\work\pugs>pugs -e "my () = ()" | 15:33 | |
unexpected ")" | |||
expecting variable name | |||
pugs is superior! :) | |||
wolveria1 | autrijus: re: my $a = (1,2); I think apos say now that a list in scalar context doesn't flatten | 15:36 | |
15:36
wolveria1 is now known as wolverian
|
|||
autrijus | ok. | 15:36 | |
wolverian | so $a would be a List presumably. | ||
autrijus | let me get this clear | 15:38 | |
my $a = (1); # List | |||
my $a = 1; # Int | |||
correct? | |||
wolverian | I have no idea. I hope it's not (1,) ;) | 15:39 | |
let me check the apos. | |||
autrijus | (1,) is sad ;) | 15:40 | |
(and I know where it comes from.) | |||
wolverian | (I share your dirty secret.) | 15:41 | |
autrijus cackles | 15:42 | ||
this is too complex :( | 15:43 | ||
and not well specced. we need tests! | |||
(and post those tests to larry) | |||
starting from | |||
my () = (); | |||
my $a = (); | |||
my ($a) = (); | |||
my ($a) = (1); | |||
my ($a) = (1, 2); | |||
my ($a, $b) = (1); | |||
etc | |||
and also s/=/:=/g | 15:44 | ||
wolverian | hrm. you need to ask this on p6-l | ||
or I can do that, if you want | |||
autrijus | please do that. | ||
autrijus is still catching failing tests left and right | |||
wolverian | as far as I can understand, the apos say that , in scalar context generates a list | ||
autrijus | oh, and also use @ somewhere too. | 15:45 | |
riight... | |||
(1,) then? | |||
wolverian | or list(1) | ||
autrijus shudders | |||
or [1] | |||
wolverian | yes. | ||
autrijus | just to be safe | ||
wolverian | oh, why doesn't mutt have a history of addresses I've sent to :) | 15:46 | |
autrijus | my ($a) is different from my $a it seems... | 15:47 | |
or I'm totally on crack. | |||
my ($a) = (1,2); | |||
my $a = (1,2); | |||
my ($a,) = (1,2); | |||
;) | |||
ingy | hola | ||
autrijus | hola ingy. | ||
I'm on crack it seems :-/ | |||
the blue sugar cubes things | 15:48 | ||
ingy | haha | ||
autrijus | hi Shillo. | 15:49 | |
ingy | going to breakfast& | ||
Shillo | Hullo! | ||
Was reading the IRC logs and then asked myself why wouldn't I just connect. :) | |||
autrijus | =) | 15:50 | |
so, first time here? | |||
theorbtwo | First time caller, long-time listener? | ||
Shillo | Miroslav Silovic from the mailing list... I followed up some of your posts. Not very creatively. ;) | ||
autrijus | =) | ||
cool! | |||
Shillo | First time here... ummm.. don't remember. I think no, but the last time wasn't much happening. | ||
autrijus | now here is a very happening place. | ||
Shillo | Yeah, saw in the logs. | 15:51 | |
autrijus decides to split ruleVarDeclaration into ruleVarDeclarationSingle and ruleVarDeclarationList. | |||
theorbtwo | It tends to be a lot more interesting around here when autrijus is up. | ||
Shillo | Hehe. :) | ||
theorbtwo | ...and about. | ||
autrijus | nah. I also have my fair share of backlogging :) | 15:52 | |
Shillo just wants Perl6 to have CLOS-style method combinators. | |||
Easy to make me happy. ;) | |||
autrijus | write tests! write dialects! :) | ||
or, just try to explain them here :) | |||
Shillo | He! use Lang::CL :) | ||
autrijus | there is no Lang::CL on cpan | 15:53 | |
6pan, maybe? :) | |||
Shillo | CL -> Common LISP | ||
What impressed me about Perl6 is that it's the first mainstream language that has most of it. | |||
(while staying practical) | 15:54 | ||
pjcj | Perl6 is mainstream? | ||
Shillo pjcj: :p More than CL. | |||
autrijus | perl6 is practical? | ||
hcchien_ | t/op/sub_return_values...........ok # cool | 15:55 | |
Shillo | Oh, method combinators... | ||
method bla(Dog $x) is before {...} | |||
method bla(Dog $x) is after {...} | 15:56 | ||
method bla(Dog $x) is around {...} | |||
method bla(Dog $x) { ... } | |||
Order of execution of these would be 4, 1, 2, 5, 3 | |||
wolverian | autrijus: sent. | ||
autrijus | cool. | ||
nothingmuch | 16:40] lumi: The failure is kinda useless, it always gives the testing sub's line number | ||
autrijus | oh. I thought it already has PRE and POST blocks | ||
that you can hook on | 15:57 | ||
Shillo | If around calls next_method();, that is. Otherwise, just the 4th would run. | ||
wolverian | oh, wow, there is already a thread about those. | ||
nothingmuch | this is a bug tested for in t/magical/callerposition.t | ||
wolverian | dammit. :) | ||
Shillo | No, note that all the methods have the same declarations. They're all supposed to run. | ||
autrijus | dammit. sorry. | ||
ah. multiple dispatch that all happens | 15:58 | ||
I like it. | |||
wolverian | well, I'm a bit more specific than Aldo Calpini's post | ||
so I don't think it's dangerous. | |||
Shillo | This becomes important if signatures aren't the same. For example, around method runs first even if it's not the closest match. | ||
(and you want to use these to catch exceptions from all the other methods, or do BEFORE/KEEP/UNDO blocks for the whole thing) | 15:59 | ||
15:59
rafl_ is now known as rafl
|
|||
Shillo | This kinda ties into Luke's post from today, about making MMDs into real objects. | 15:59 | |
autrijus | r561 landed! | ||
* lone blocks without trailing semicolon now runs; multi ple variable assignment now (sort of) works | |||
we're down to 3 failed test scripts. | 16:00 | ||
Shillo | autrijus: Woot! :) | ||
nothingmuch | w00t | ||
autrijus: i started some rules tests | 16:01 | ||
starting with the really really basic crap | |||
then converting t/op/re_tests from perl5 (doing that now) | |||
autrijus | nothingmuch: try reuse ambahal (?)'s tests | ||
he already converted all for us | |||
cls_bsd | great!! | ||
nothingmuch | ah | ||
i didn't know that | |||
where are they? | |||
autrijus | see past p6c topic | ||
a sec | |||
nothingmuch | ah | ||
ok, i'll just play integrator then =) | 16:02 | ||
in that case, i can get on to real grammars =) | |||
autrijus | nothingmuch: www.nntp.perl.org/group/perl.perl6.compiler/131 | ||
ah, so it's our very own malaire | 16:03 | ||
I hear he've generated them by a script | |||
so please coordinate. I'd very much like them to all land to pugs. | 16:04 | ||
nothingmuch | will do | ||
autrijus procs the remaining three failures | 16:06 | ||
nothingmuch ponders how to attack OOP tests | 16:07 | ||
autrijus | no p5 for those? | ||
nothingmuch | there are | 16:08 | |
t/op/method.t | |||
but this is not very, err, perl6ish | |||
autrijus | time to play porters? :) | 16:09 | |
well, another vector is exegeses | |||
nothingmuch | i toyed with unit testing some stuff | 16:10 | |
but i think it's too early to start | |||
the exegesis are purposely broad | |||
and cover a whole lot of everything | |||
autrijus | it's not too early... OO is the next thing in sight | ||
nothingmuch | not for OO tests | ||
for exegesis examples | |||
autrijus | ahh. | ||
A12 also contains many test stuff. | 16:11 | ||
nothingmuch | for example, e02 has autochomping, is constant, my Int, sub sigs, traditional subs | ||
i'll look at a12 more closely | |||
Shillo | Going through tests... #LEAVE { push @leve, [ $i, +@enter ] } <-- should be @leave. Trivial but anyway. :) | 16:12 | |
autrijus | Shillo: if I give you committer bit, will you fix it? :) | 16:13 | |
Shillo | No. I'm behind a firewall, miles high. :/ | ||
This is IRC over http. :( | |||
autrijus | eh? HTTP POST should be fine, no? | ||
pugs uses a http as repository. | |||
Shillo | Hmm... Need to learn svn obviously. | 16:14 | |
Need to /install/ svn, too. ;) | |||
autrijus | subversion.tigris.org | ||
or, tortoisesvn if you're on win32. | |||
Shillo | Just did urpmi subversion. ;) | ||
Mandrake's currently sucking. | 16:15 | ||
autrijus | nod. | ||
Shillo | Sucking as is *sllllluuuuuurrrrppp*, not at in *sux* ;) | ||
*grumble* Need to do urpmi.update | 16:16 | ||
nothingmuch | Shillo: - sorry, i couldn't really syntax check that since the line is commented out =) | ||
i won't fix it though, so that you're forced to install svn/svk ;-) | 16:17 | ||
Shillo | Yeah. I noticed, 'swhy I said it was trivial. | ||
Lemme actually take a good look at the whole thing before I accept the haching rights. | |||
autrijus | Shillo: also give me your email when you're ready :) | ||
Shillo | [email@hidden.address] | ||
(that's for later ;) ) | 16:18 | ||
autrijus | har. | ||
Shillo | Hmm, need ghc, too. | ||
autrijus | ghc should also be part of urpmi'able things. | 16:19 | |
Shillo | MDK repo has it. | ||
Yeah. | |||
autrijus | actually, I think pugs is also urpmiable. | ||
thanks to a certain rgs here. | |||
Shillo | Heh. | ||
Although... I plan to switch to Ubuntu at work soon. | |||
As in, the next 2-3 months. | |||
rgs | mhh | ||
Shillo | MDK 10.1... well... how to say it... Windows ME was positively stable and bug free in comparison. | 16:20 | |
rgs | ubuntu is such a small distro. I'm sure they don't even have ghc. | ||
autrijus looks at rgs :) | |||
rgs | but you have a point. | ||
autrijus | yeah, but it can have debian universe. | ||
Shillo | rgs: I have a 25 gigs of archive.ubuntu.com mirrored on my local drive. :) | ||
arcady | you can have the union of ubuntu and debian | ||
it actually sort of works | |||
rgs | right. | ||
arcady | for such useful things as X.org | 16:21 | |
Shillo | rgs: Although, to be honest, I'm really not sure why 10.1 sucked so badly for me. It just /can't/ be bad QA, some things were way too obvious. | ||
Like, kdm hanging. | |||
Or, zsh dumps core. | |||
rgs | ooh, weird. | ||
Shillo | NForce 2 chipset could be the reason, but that would just introduce flakiness, not insta-deaths. | 16:22 | |
rgs | several in-house developers here use zsh. core dumps would have been noticed. | ||
Shillo | And then there were just plain weird problems. | ||
-- I used prompt module. | |||
Worked without it, but with a strange 1 sec startups. | |||
As for the just plain weird... bluetooth dialup. | 16:23 | ||
Spend 3 days trying to debug that. Traffic dumps were crazy. | |||
It'd connect, exchange network setup, run the ipup script (I could be very wrong about the name of this one - the one that gets run after the machine IP address and DNS come down the pipe) and then it'd promptly disconnect. | 16:24 | ||
(not that Bluetooth dialup is common, but still) | |||
Ick! Need to go, and urpmi ghc has half an hour ETA. Talk to you all in a day or two! :) | 16:25 | ||
nothingmuch | ciao Shillo | ||
those tests won't pass anytime soon anyway! | |||
autrijus grins. | 16:26 | ||
Shillo | nothingmuch: :) | ||
nothingmuch | autrijus: different plans? | ||
autrijus | nothingmuch: no, same w/ you | ||
nothingmuch | ah | ||
autrijus | my plan now is to squash test failures | ||
nothingmuch was getting optimistic | 16:27 | ||
autrijus | and try/catch/given | ||
and reapply newest p6l clarifications. | |||
small things. | |||
but important to get the overall quality up. | |||
nothingmuch | (smartmatch!) | ||
try can be just try, btw | |||
autrijus | I think it's easy enough to be done as an exercise for lambdafolk | ||
nothingmuch | without catch, for the meanwhile | 16:28 | |
PerlJam | nothingmuch: doesn't it almost have to be because catch needs smartmatch semantics to really work? | ||
I guess we could fake it with strings though | 16:29 | ||
autrijus | it's already stubbed w/ strings now | ||
nothingmuch | if catch is not a given block now, but just silently takes anything | 16:30 | |
i.e. try {} | |||
which is eval {} for perl5 heads | |||
then try works | |||
without smartmatch | |||
autrijus | try{} always need to be followed by catch? | 16:31 | |
nothingmuch | no, try without catch is like try with catch anything | ||
autrijus | ahh. | ||
nothingmuch | however, true catch requires given, which in turn requires smartmatch | ||
which probably likes to have isa | |||
and rules | |||
autrijus | nothingmuch: you want to implement try{}? | 16:32 | |
I can walk you thru :) | |||
will take ~2min | |||
nothingmuch | i think my mind is too cooked to understand what i'm doing | ||
so don't waste it on me =) | |||
wolverian | there is no catch | ||
there's CATCH { } | |||
autrijus | there is no spoon | ||
theorbtwo | There is only fork(). | ||
autrijus | ^W^W/me sobs.^W^W^W^W^W^W^W^W^W^Wnice :) | 16:33 | |
gah. control characters. bad ssh. | |||
(or bad screen, or bad irssi.) | |||
theorbtwo | Ah, was just about to ask. | ||
wolverian | try { ...; CATCH { when StupidError { puts "U STOOPID!" } } } | ||
er. s/puts/say/ ... | 16:34 | ||
autrijus parses "ST", "OO", "PID" | |||
wolverian | (too much ruby for me.) | ||
nothingmuch | wolverian: see t/base/try.t | ||
i think it was the first i wrote | |||
PerlJam | autrijus: ^U is your friend though ;-) | ||
nothingmuch | or at least the first i started | 16:35 | |
autrijus | ;) | ||
try{} parsed. | |||
doing eval. | |||
wolverian | nothingmuch: nice :) | ||
gotta run. cheers. | 16:37 | ||
nothingmuch | ciao wolverian! | ||
autrijus | see ya | 16:38 | |
implemented. | 16:40 | ||
testing | |||
nothingmuch | thanks! | 16:41 | |
theorbtwo | Ha! My pearpc box finally has working networking! | 16:43 | |
nothingmuch | theorbtwo++; # subetha <-> xemacs in 8 hours! | 16:44 | |
autrijus | gawd I love ContT. | ||
theorbtwo | 8 hours? | ||
autrijus | "try" -> do | ||
val <- resetT $ evalExp (head exps) | |||
case val of | |||
VError _ _ -> retEmpty | |||
_ -> retVal val | |||
that's all it takes. | |||
theorbtwo | I think that's a little bit optimistic. I'm not autrijus. | 16:45 | |
nothingmuch | ;-) | ||
autrijus | ok($lived, "try weakened death"); | 16:46 | |
nothingmuch dances | |||
autrijus | r562 | 16:48 | |
nothingmuch | yay yay! | 16:49 | |
hcchien_ | should we put t/0*.t to t/base or others? | 16:50 | |
nothingmuch | now you you don't owe me anymore | ||
i'll have to write new tests | |||
16:50
_metaperl is now known as metaperl
|
|||
autrijus | hcchien_: I think so now | 16:58 | |
16:58
hcchien_ is now known as hcchien
|
|||
nothingmuch | base seems to be basic stuff | 17:10 | |
perhaps not base, but something else? | |||
i think it should be put in the blue sugar cube dir | |||
hcchien | nothingmuch: I think so. :) | 17:11 | |
metaperl_ | can I create a hash whose values are arrays and derefence them in pugs? | 17:18 | |
and can I use each or keys on a hash in pugs? | |||
autrijus | 1. multidim is not there. | ||
2. you can use | |||
for %hash.kv -> $k, $v { ... } | 17:19 | ||
malaire | btw, I put my perl5-script which converts (actually: tries to convert...) re_tests into PGE-format to laire.info/markus/perl/re_tests.html , just in case anyone is interested in hacking with them. (I'm currently trying to learn Haskell, and I'm not sure whether I'm going to fix/change these scripts anytime soon...) | 17:20 | |
autrijus looks at nothingmuch | 17:21 | ||
malaire: thanks! | |||
nothingmuch | sorry | 17:24 | |
nothingmuch will ttyl | |||
dada | how do I "cast" an Array to a List? | 17:32 | |
or, how do I get all the elements of an Array? | |||
is enterEvalContext "List" vals enough? | 17:33 | ||
or do I need doSlice? | 17:34 | ||
autrijus | you need a fromValue. | ||
val <- enterEvalContext "List" exp | |||
now val is of "Val" type | |||
dada | mmm ok | ||
autrijus | to get a [Val] from Val: | ||
list <- fromValue val | |||
in fact, you can use fromValue to obtain almost any time. | |||
haskell well figure it out based on how you use it later. | 17:35 | ||
if you want annotation: | |||
(list :: [Val]) <- fromValue val | |||
but you won't need them in most of the casts. | |||
metaperl_ | has the fat comma lost its stringification semantics? | 17:37 | |
my %mates = ( | |||
'jane' => 'joe', | |||
sally => 'bob', | |||
janice => 'bill' | |||
); | |||
autrijus | I think so. | 17:38 | |
metaperl_ | sally => 'bob' # yields parse error | ||
autrijus | not very sure. | ||
metaperl_ | oh | ||
dada | no no | ||
fat comma should still do stringification | |||
autrijus | But C<< => >> still autoquotes any bare identifier to its immediate | ||
left (horizontal whitespace allowed but not comments). | |||
mea culpa. | |||
so, a bug. | |||
gah, even more lookaheads. | |||
autrijus hugs parsec | |||
metaperl_ | autrijus, please look at this: hcoop.net/~terry/perl/talks/p6-junc...pleiter.p6 | 17:39 | |
the for is throwing a long error message | |||
my pugs is for 562 release | |||
theorbtwo | Put parens around the listy bit of the for. | 17:40 | |
Er... Hm. | |||
metaperl_ | bingo | ||
refresh the URL to see a working program | |||
thanks theorbtwo | 17:41 | ||
autrijus | oh btw. feel free to replace eval'' | ||
to try{} | |||
dada | I didn't got it right | ||
autrijus | in tests that has runtime error. | ||
instead of parse error. | |||
dada | vals <- if isaType "Array" exps | ||
then fromValue (enterEvalContext "List" exps) | |||
autrijus | I think the then needs to be indented after if | 17:42 | |
I think. | |||
also, it's monadic | |||
so you need | |||
vals <- if isaType "Array" exps | |||
then do | |||
dada | actually, it says | ||
autrijus | val <- enterEvalContext "List" exps | ||
dada | Probable cause: `isaType' is applied to too few arguments in the call | ||
autrijus | fromValue val | 17:43 | |
i.e. you can't just nest fromValue with enterEvalContext. | |||
need a "do" expression. | |||
(or a =<<) | |||
dada | yes | 17:44 | |
but I still miss a parameter to isaType... | |||
autrijus | you need cxt | ||
I think. | |||
you can obtain it from | |||
cxt <- asks envContent | |||
err wrong | |||
you need cls | |||
cls <- asks envClasses | |||
dada | I see, I see | 17:45 | |
autrijus | ctx <- asks envContext | ||
if isaType cls "Array" cxt | |||
etc. | |||
stevan | so try {} is working, but not CATCH right? | ||
autrijus | please abstract them away. | ||
I want a | |||
bool <- currentContextIs "Array" | |||
or something like that. | |||
but you can roll by hand too. | 17:46 | ||
stevan: yup. | |||
stevan | autrijus: so where is the error? $! $@ | ||
dada | autrijus: no, I don't need the currentContext. I need to know if exps contains an array (or an arrayref) | 17:47 | |
autrijus | stevan: should be in $!. a sec. | 17:48 | |
dada: oh oh. | |||
that won't do then. | |||
you need something more clever... | |||
stevan | autrijus: also this will die pugs -e 'my $val = try { "foo" }; say $val;' | 17:49 | |
autrijus | valType val | ||
this should work | |||
i.e. it's a function that returns a stringified representation of val's type | |||
metaperl_ | can a hash have an array reference as the value of the key? This isn't working as I expect: hcoop.net/~terry/perl/talks/p6-junc...all-all.p6 | ||
stevan | I am not sure if try{} will return anything, but I think it should not die | ||
autrijus | metaperl_: is shape() is not yet implemented. | 17:50 | |
tests welcome! | |||
metaperl_ | so I cannot use array references as hash values? | ||
stevan | metaperl_: t/op/multidimensional_array.t has some tests for this stuff in it, if you want to add to them | ||
autrijus | stevan: try{} is only a construct now | ||
metaperl_ | also, maybe I will create a test case for a hash having a trailing comma | 17:51 | |
autrijus | it's not yet a proper Syn. | ||
stevan: i.e. can't be Expr. | |||
metaperl_ checks | |||
autrijus | stevan: just toplevel Stmt. | ||
stevan | autrijus: ok | ||
metaperl_ | %hash = (a => b,) ; # fails | ||
stevan waits patiently :) | |||
metaperl_ | perl5 allowed that dangling comma | ||
PerlJam | metaperl_: perl6 will too at some point. | 17:52 | |
autrijus | metaperl_: right. it's pugs' bug. just adda test :) | 17:53 | |
or grep for one. | |||
stevan: r563. $! is now set. | |||
autrijus starts to write today's journal | |||
hcchien | there is no $/? | 17:54 | |
PerlJam | um ... perl6's $/ means something different than perl5's $/ which is now a method/attribute on the filehandle (I think) | 17:56 | |
crysflame | journal? public? | ||
PerlJam | crysflame: use.perl.org/~autrijus/journal | ||
crysflame | neet | 17:57 | |
autrijus | larry wants my (). | ||
we'll do my (). | |||
PerlJam | What's my() mean? | ||
dada | sgrunt | 17:58 | |
Couldn't match `Val' against `[Exp]' | |||
autrijus | my () = (foo()) | ||
it could be reduced to | |||
list(foo()) | |||
dada: mm? | 17:59 | ||
dada | vals <- case valType exps of | 18:00 | |
"Array" -> do | |||
I can't do valType exps, because exps is [Exp] | |||
autrijus | yeah. | ||
dada | and valType wants Val | ||
autrijus | that is correct. | ||
so you may wish to persumably evaluate the exps | 18:01 | ||
into val | |||
or something. | |||
you can't tell, from looking at an exp | |||
PerlJam | dada: looks like you need to iterate ... er recurse ;) | ||
dada | in fact, I need to check before that exps contains only 1 thing, and that thing is an array | ||
autrijus | whether it will return a list or not. | ||
obra | 'morning | ||
autrijus | dada: ok. you can do that as: | ||
case exps of | |||
[Val v] | valType v == "Array" -> do | 18:02 | ||
_ -> do | |||
dada | mmm cool | ||
autrijus | yo obra. | ||
dada | now that | 18:04 | |
what is an "Eval a" type? | 18:05 | ||
Expected type: Eval a | |||
Inferred type: [Exp] | |||
autrijus | you can cast a to Eval a | 18:06 | |
via "return" | |||
PerlJam | dada: what are you hacking into pugs? | ||
autrijus | you can cast Eval a into a | ||
via "<-" | |||
dada | PerlJam: unary * | ||
PerlJam | oh! dada++ keep ahcking | ||
er, hakcing | |||
autrijus | "retVal" is also commonly used if you are returning a value. | ||
PerlJam | er, hacking dammit! | ||
Limbic_Region notes autrijus's sleep cycle slowly shifting in phase with the US and notes pretty soon he will be sleeping when everyone else is awake | |||
PerlJam | Limbic_Region: or he just won't sleep. | ||
autrijus | that too. | ||
Limbic_Region | s/everyone else/everyone else in Taiwan/ | ||
obra | that better not happen. since folks from .us and .eu will be in .tw soon | 18:07 | |
luqui | are we going to get slice assignment working soon? | ||
I've been trying to figure out how to do it... unsucessfully | 18:08 | ||
s/c/cc/ | |||
autrijus | luqui: | 18:09 | |
my ($a, $b) = (1,2); | |||
this works now. | |||
($a, $b) = (1, 2); # not. | |||
need to unity both. | 18:10 | ||
now we have a ruling from larry, that is | |||
luqui | 'my' should be an inline operator | 18:11 | |
my ($a, $b) is like do { my $a; my $b; ($a, $b) } everywhere, barring scoping issues | |||
rgs | my($a, $b) would be (my $a, my $b) | 18:12 | |
luqui | right | ||
which is illegal | 18:13 | ||
since you can't use my in an expression | |||
(but it shouldn't be) | |||
Something of a problem for the parser is the ability to do foo(my $x, $x) | |||
you have to be smart about how the parse tree communicates scoping stuff | 18:14 | ||
cabal design call today; is there anything I should mention? | 18:15 | ||
PerlJam | That's an interesting way to say "undef" | ||
luqui | if foo accepts references, it might not be | ||
autrijus | luqui: parrot AST? :) | ||
luqui | er, rw params | ||
autrijus | never mind | ||
luqui: MMD is still blurry. I think it's the most blurry part. | 18:16 | ||
luqui | as you can see, I'm working on fixing that | ||
We'll definitely be talking about my recent thread | |||
autrijus | yes you are. I'm eager to see new specs. | ||
on and get unary = committed in Syns | |||
if you had not yet done that. | |||
s/on/oh/ | |||
luqui | I'm on it | 18:17 | |
autrijus | 1395 tests now. fear | ||
hcchien | tests++ | ||
luqui | wow | ||
how many does perl have? | |||
dada | countless | ||
autrijus | much more. | ||
PerlJam | luqui: is the meaning of ($a,$b) := () well-defined? | 18:18 | |
rgs | the magnitude order is 100 * more | ||
Juerd_ | say "no_plan"; say "$_ ok" for 1...; | ||
Testing infinity ;) | |||
rgs | but it depends on platform, compilation options etc. | ||
autrijus | Juerd_: lol. | ||
hcchien | I need a faster laptop to do so many tests, since I have to make three times a day. :p | ||
luqui | PerlJam: yeah, error | ||
Juerd_ | How else would you test that it really loops from 1 to inf? :) | ||
luqui | it's like sub foo ($a, $b) {...} foo() | ||
autrijus | hcchien: "make clean; perl Makefile.PL; make optimized" | ||
PerlJam | oh good. | 18:19 | |
autrijus | luqui: try write that down! | ||
luqui: I mean, the := and = semantics | |||
the "is like" thing is of crucial importance, yet glossed over in Syns | |||
Juerd_ | autrijus: := uses the same semantics as sub signatures | ||
autrijus | Juerd_: I know. | ||
Juerd_ | ok | ||
luqui | fixing unary = first | ||
but ok | |||
PerlJam | Juerd_: that fact is just sub-documented. | ||
autrijus | ($a, $b) := ($b, $a); | ||
vs | 18:20 | ||
@fib := (1, 1, (@fib Y @fib[1...])).map:{ $^a + $^b }) | |||
(eager vs lazy evaluation) | |||
one is wrong. | |||
not sure which one is. | |||
luqui isn't either | 18:21 | ||
autrijus | @fib := (1, 1, (@fib Y @fib[1...]).map:{ $^a + $^b }) | ||
luqui: so bring it up to cabal :) | |||
that is high level enough I think :) | |||
"abstract policy"-wise, that is | |||
PerlJam | I'd think that second one needs a little more syntactic help to manufacture a generator (but that's just MHO) | ||
luqui starts a list of things to talk about today | 18:22 | ||
autrijus | PerlJam: it Just Works in haskell :) | 18:23 | |
PerlJam: but yeah, if syn help is needed, I'd like to know how it looks like. | |||
luqui | PerlJam: map is a generator | 18:24 | |
another thing is whether it's COW. Not an issue in haskell | |||
dada | autrijus: I don't understand how doSlice works | ||
doSlice :: [Exp] -> [Val] -> [VInt] -> Maybe (Val, [VInt]) | |||
luqui | @fib = (1, 1, (@fib Y ...)) | ||
@fib[3] = 42 | |||
dada | autrijus: why 3 arguments? | ||
luqui | what's @fib[4] | 18:25 | |
Juerd_ | Let's just hard code @fib | ||
The numbers won't change any time soon ;) | |||
PerlJam | heh | ||
autrijus | heh | ||
that's an legacy | |||
just put [] in the first slot. | |||
metaperl_ | so how do I iterate through an array, assigning each element of the array to a variable i and execute a block using i | ||
autrijus | sorry for that, btw. | ||
dada | autrijus: ok | ||
autrijus | I'll refactor it. | ||
autrijus needs to sleep :) | 18:26 | ||
metaperl_: foreach surely? | |||
obra | sleep is good for you, autrijus | ||
PerlJam | and when you say @fib[50] = 42; does it have to generate all of @fib[1..49] first? | ||
obra | you'll be a 10x programmer when you wake up. | ||
Juerd_ | metaperl_: for @foo { my $foo = $_; { ... }($foo) } | ||
metaperl_ | perl6 has no foreach | ||
autrijus | for, then. same difference | ||
Juerd_ | I don't see the point in not using aliasing | ||
luqui | he's only 8x now | ||
metaperl_ checks t/for.t | 18:27 | ||
luqui | Juerd_: what do you mean? | ||
hcchien | 20x, but make some mistakes? :p | ||
autrijus | okay, foreach is now illegal. | ||
committing | |||
luqui is 0.5x with ECC | |||
Juerd_ | luqui: "assigning ecah element ..." | 18:28 | |
Why assign. | |||
autrijus: &foreach ::= &CORE::for; # now it has ;) | |||
autrijus | except for is a Syn | ||
not a App | |||
so doesn't work. | |||
you need macros for that. | |||
now, if you can formulate for into a App... I'm all ears :) | 18:29 | ||
luqui | autrijus: I don't think for is a syn in real perl | ||
PerlJam | autrijus: template haskell :) | ||
autrijus | luqui: oh? | ||
luqui: I'd like to know which is Syn and which is not. | |||
luqui | it's a statement:for, and it has standard statement parsing | ||
wolverian | yay, lwall replied. | ||
autrijus | wait, wait, statement: ? | ||
luqui | or something like that | ||
autrijus | never mentioned anywhere. | ||
certainly not in synopses. | |||
I can only implement specced things :) | 18:30 | ||
luqui | hmm so it's not | ||
luqui adds that to list | |||
metaperl_ | I cant get this program to run... I think the error message is about the wrong lines: hcoop.net/~terry/perl/talks/p6-junc...all-any.p6 | ||
autrijus | I'll really sleep now. have fun, and may your fruitful discussions bore crystal clear semantics! | ||
autrijus waves & | |||
obra | night, autrijus | 18:31 | |
luqui | night | ||
PerlJam | luqui: Are you working with pmichaud on pge? Or just the grammar and specifications? | ||
luqui | try $epsiolon > all(...) | ||
PerlJam: I sortof am, but not actually | 18:32 | ||
I was going to, but pm likes to commit in big chunks | |||
so it's hard to make incremental progress | |||
dada | anybody knows how to coerce a `Maybe (Val, [VInt])' into a `Val'? :-) | ||
luqui | I'm sitting around until we have the machinery to write perl 6 in perl 6 | ||
then I'll get to do some serious work | |||
(I'm already doing a little bit of that) | 18:33 | ||
PerlJam | luqui: That's strange. His other project (pmwiki) gets released early and often (so much so that there will sometimes be multiple releases in a single day) | ||
luqui | hmm, yeah, that is strange | ||
PerlJam | luqui: what pugs work are you doing? | 18:34 | |
PerlJam is interested in "merging" the development effort and thinks that pugs + p6rules is the quickest way to get us bootstrapping | 18:35 | ||
luqui | nothing in particular on the queue right now. I'm gradually doing builtins.kwid | ||
PerlJam: no kidding | |||
dada | luqui: AAARGH | ||
luqui | that's excellent, it's exactly what we need | ||
dada: hmm? | |||
obra | PerlJam: I think that everybody's already drawing from everybody else. patrick's certainly finding pugs useful | ||
dada | luqui: your reply on p6l | ||
luqui: about *$a on LHS being illegal without a bind | 18:36 | ||
PerlJam | obra: sure, but if the people that know p6rules inside and out can get to implementing them in haskell, that would be best IMHO :) | ||
luqui | with my behind it, yes. | ||
dada: why aaargh? | |||
dada | luqui: because I'm trying to make it work :-) | 18:37 | |
luqui | PerlJam: the problem is that those people don't know haskell very work | ||
s/work/well/ :-) | |||
(reading and typing at the same time ;-) | |||
dada | luqui: and you're adding a whole level of complexity I didn't thought of | ||
luqui | the fact that that damn binding needs infinite lookahead kind of complexity? | 18:38 | |
dada | no, the fact that I'm implementing unary * without worrying about where it is used | ||
PerlJam | luqui: indeed. Which is why I'm asking questions. Are you learning haskell? I'm wondering how much prodding I should apply towards pmichaud regarding learning haskell :-) | ||
luqui | PerlJam: I'm doing my best to learn it | 18:39 | |
I actually took a stab at starting the p6rule implementation the other day | |||
and failed | |||
PerlJam | luqui: heh ... me too :) | ||
PerlJam doesn't grok enough haskell yet either | 18:40 | ||
luqui | dada: I'm thinking, since binding creates variables, that we should have a bind operator | ||
that takes special syntax, argument list syntax | |||
Don't worry about the binding unary * yet | |||
it's an ugly part of the language, and it ought to change | 18:41 | ||
luqui adds that to the list | |||
PerlJam | but I was reading about template haskell last night and I'm completely convinced that haskell has all the machinery to not only make it happen, but for someone with the right haskell-fu, to make it happen relatively easily | ||
luqui | template haskell? | ||
PerlJam | www.haskell.org/th/ | 18:42 | |
luqui | We might not even need that | ||
we parse with monads, our return values are other monads | |||
crysflame | PerlJam: you've found autrijus's supply of crack! | ||
crysflame phears | |||
also i agree | 18:43 | ||
luqui | the problem I ran into was embedded codeblocks | ||
because I don't know how Eval works at all | |||
metaperl_ | here is the talk on Perl 6 Junctions I am giving at our Perl Mongers meeting tonight. Thanks guys for all your help: www.hcoop.net/~terry/perl/talks/p6-...index.html | 18:44 | |
luqui | metaperl_: nice | 18:45 | |
metaperl_ | thanks | ||
:) | |||
PerlJam | slide7 seems to have some spurious code at the top | ||
(duped @pacific) | |||
metaperl_ checks | |||
oh yeah, I'm going to comment out the second @pacific | 18:46 | ||
and show how it works differently | |||
I couldnt use a hash with array refs as values or I would've done it that way | |||
luqui & class | 18:47 | ||
PerlJam | seeing "$pass = =$IN" just makes my eyes hurt | ||
(and shouldn't it be $*IN anyway?) | |||
metaperl_ | how about $pass = $IN.next | ||
the * is optional | |||
luqui | in the absence of another declaration of $IN, $IN and $*IN are the same | ||
metaperl_ | but you are right it should be there | ||
PerlJam is a fan of explicitness sometimes | |||
luqui | PerlJam: revel in the fact that $pass = =$IN isn't officially documented yet | 18:48 | |
PerlJam | It would be cool in a sick sort of way if "$pass =$*IN" just worked :-) | ||
luqui & class # really | |||
metaperl_ | wont $IN.next work? | ||
many people are not gong to adjust to all the changes in Perl 6. they are going to be upset | 18:49 | ||
but they will have nowhere to run because Perl will still be the most convenient power tool out there | |||
theorbtwo | Nowhere to run? They won't need to, just stay at perl5. | 18:50 | |
PerlJam | or start using ruby | ||
dada | or (*cough* *cough*) piethon | ||
theorbtwo | But so long as TIMTOWTDI, they will hopefully find one that they like. | 18:51 | |
metaperl_ | all it takes is looking at the usermanual of any other LAMP language for about 5 minutes for me to be grateful for Perl and comeback | ||
PerlJam | the more I look at "$x = =$*IN", the less convienent that shorthand seems. | ||
I'm glad it's not documented. | |||
metaperl_ | compare with $x = <STDIN> | ||
ihb | PerlJam: what does it do? | ||
metaperl_ | ihb, read a line from stdin | 18:52 | |
dada | ihb: what metaperl_ said | ||
PerlJam | ihb: unary = is the "read a record" operator | ||
ihb | wow | ||
metaperl_ | no, it's the iteration thingy | ||
Schwern | I've been confused with Randal. | ||
metaperl_ | oh I guess that's the same thing | ||
Schwern | I don't know if I should be insulted or flattered. | ||
theorbtwo | I'd go with insulted, m'self. | ||
metaperl_ | Randal is a great person. | ||
unless they think you were the one hacking into Intel | 18:53 | ||
Schwern | <Darren_Duncan>Also, about 1.5 years ago, a Linux cruise stopped by in Victoria and I briefly met ... Mike Schwern (name?) ... and I met Linux Torvalds | ||
<Darren_Duncan>not mike schwern ... | |||
<Darren_Duncan>Randal Schwartz I met | |||
PerlJam | heh | ||
Schwern | metaperl: Or if you're within 50 meters of a Karoke club | ||
metaperl_ | i dont get that about karaoke. | ||
PerlJam | Schwern: flattered wouldn't be the right thing. | 18:54 | |
metaperl_ | CGI::Prototype is awesome. Have you tried it? | ||
Schwern | Flattened? | ||
metaperl_ | I think it is what we needed for Perl/CGI long ago | ||
Schwern | metaperl: Randal likes to sing Karaoke. | ||
PerlJam | Schwern: neither would insulted. I'd just chalk it up to Darren_Duncan being really confused and/or drunk ;) | ||
metaperl_ | oh, I didnt know that... I can't imagine Randal singing.. that is terrifying and horrifying | ||
does he have a good voice? | 18:55 | ||
PerlJam | metaperl_: go on a geek cruise and find out! | 18:57 | |
metaperl_ | Schwern and Randal to look very similar though if you ignore the difference in height and hair length | 18:58 | |
and body fat | |||
PerlJam | metaperl_: what?!? | ||
metaperl_ | lol | ||
jusssssst kidding | |||
PerlJam | metaperl_: merlyn and Schwern look the same ... on IRC. If they're using similar nicks. And speak in short sentences. | ||
ingy | Schwern: you should change your nick to schwerlyn | 18:59 | |
PerlJam | ingy: heh! | ||
Though that sounds like something that jock do to geeks in high school. | |||
"Hey man, let's go give that geek a schwerlyn!" | |||
ingy | haha | ||
metaperl_ | schwerlyn.... lol | 19:00 | |
and if every other sentence isn't "see my article on that subject" | |||
Juerd_ | Haha | ||
metaperl_: Have you seen that PM writeup that is a merlyn-bot? | 19:01 | ||
(Old) | |||
metaperl_ | no, I havent | ||
PerlJam | Juerd_: me either, where is it? | ||
PerlJam always downvotes merlyn's nodes if all they contain is "see my article on ..." | 19:02 | ||
Juerd_ | I'll try to find it | ||
metaperl_ | that's not cool: referring to those articles is a good thing | ||
Juerd_ | PerlJam: I don't. I read the article and vote as if the article was the post | ||
metaperl_ | they are well-written and cover the topic | ||
PerlJam | I can see tchrist's point that merlyn is all about self-aggrandizement | ||
Juerd_ | PerlJam: Usually down, because I don't like his programming style :) | ||
PerlJam: I refer people to my own documents too | 19:03 | ||
ihb | PerlJam: "aggrandizement"? | ||
Juerd_ | It's to avoid having to write the same thing over and over | ||
While still helping people | |||
PerlJam | Juerd_: sure. Perhaps I've absorbed tchrist's (and other's) bias against merlyn always referring to his own work rather than the work of others | 19:06 | |
malaire | data: do you still want to know how to coerce a `Maybe (Val, [VInt])' into a `Val'? | 19:13 | |
err,, dada: do you still want to know how to coerce a `Maybe (Val, [VInt])' into a `Val'? | |||
dada | yes! yes! | ||
malaire | myCoerce (Just (val, _)) = val -- seems to be working | 19:14 | |
dada | mmm | ||
malaire | perlbot: nopaste | ||
perlbot | Paste your code here and #perl will be able to view it: sial.org/pbot/perl | ||
pasteling | "malaire" at 217.119.39.217 pasted "coercing a value..." (3 lines, 133B) at sial.org/pbot/8048 | 19:15 | |
"dada" at 193.203.230.22 pasted "Implementation of unary * from Eval.hs" (11 lines, 567B) at sial.org/pbot/8049 | |||
Juerd_ | perlmonks.org/?node_id=437958 | 19:16 | |
Sorry, got distracted | |||
Posts like that one so terribly get on my nerves | |||
dada | malaire: how does that fit in my snippet? | ||
Juerd_ continues the search for the writeup he was looking for | |||
malaire | I'm checking that... (I'm still quite new on Haskell) | ||
ihb | the formatting on that paste page doesn't go well with haskell :-) | ||
malaire | where in that snippet do you need it? | 19:17 | |
dada | malaire: at the end of line 374 | ||
doSlice [] vals 0 is returning that Maybe stuff | |||
doSlice :: [Exp] -> [Val] -> [VInt] -> Maybe (Val, [VInt]) | 19:18 | ||
pasteling | "malaire" at 217.119.39.217 pasted "coercing a value..." (3 lines, 100B) at sial.org/pbot/8050 | 19:19 | |
dada | looks fine | ||
malaire | does that case-code help? You need two cases - whether is has real value or 'Nothing' | ||
Juerd_ | metaperl, perljam: perlmonks.org/?node_id=61933 | ||
metaperl_ | LOL | 19:20 | |
I was going to do something similar with Template Toolkit syntax | |||
[% INCLUDE std_disclaimer.h %] | 19:21 | ||
dada | ouch | ||
src/Eval.hs:375: parse error on input `=' | |||
metaperl_ | [% IF stonehenge.article_on(subject) %] | ||
see my article | |||
Juerd_ | metaperl_: We know the syntax, really | ||
metaperl_ | [% ELSE %] [% INCLUDE snide_insult %] | ||
malaire | dada: sorry, that should be -> instead of = | 19:22 | |
dada | malaire: right | 19:24 | |
I'm having a damn hard time making GHC happy about my code | 19:40 | ||
malaire | can you paste it to sial.org/pbot/perl ? | 19:42 | |
dada | sure | ||
theorbtwo | Stick a 6 on the end of that. | 19:43 | |
pasteling | "dada" at 193.203.230.22 pasted "Eval.hs snippet" (12 lines, 604B) at sial.org/pbot/8051 | ||
dada | theorbtwo: a 6? | ||
theorbtwo | sial.org/pbot/perl6 | 19:44 | |
dada | theorbtwo: ah, ok | ||
now I get: Couldn't match `ContT Val (ReaderT Env IO) t' against `Val' | 19:45 | ||
malaire | I need to quit now... Can't really help there.. | 19:49 | |
dada | oh | ||
I have no hope :-) | |||
Juerd_ | Sex is fun, | 19:50 | |
but it probably doesn't solve all your problems. | |||
-- lwall | |||
Latest quote :) | |||
Odin- | ... uh. | ||
Okay. That doesn't even need context. :) | |||
Juerd_ | Do you mean that sex needs no context? | 19:51 | |
'cause I disagree :) | |||
Odin- | Juerd_: The quote. I wouldn't have a clue on the other matter. :p | 20:02 | |
Juerd_ | Hello Limbic_Region :) | 20:38 | |
LTjake | pugs ascii logo: www.inkdroid.org:8888/391 -- warning, i've already been told it sucks =) | 20:39 | |
hooray for "art". | 20:40 | ||
Limbic_Region suspects he has been caught reading slides | 20:42 | ||
salutations Juerd_ | |||
Juerd_ | Limbic_Region: slides? | 20:44 | |
Limbic_Region: I said hi because of your remark in the PM CB | |||
LTjake: It does | 20:45 | ||
jdv79 | Juerd_, where's the next version of PLP | ||
Juerd_ | jdv79: I won't be working on PLP until my RSI is mostly gone, which can take years. | 20:47 | |
I have better ways to spend the little time I have | 20:48 | ||
The next version of PLP will either have user contributed changes or a complete rewrite. | |||
Patches are welcome, especially a (backwards compatible!!) patch to make it work with apache 2 | |||
theorbtwo | Use one of your daughter's odd input devices? | ||
ihb | Juerd_: i don't remember, what was PLP about? Or: why did you create it? | 20:49 | |
theorbtwo | ...or would that just cause you to get RSIs in other parts of your body? | ||
jdv79 | RSI? | ||
Limbic_Region | oh - which comment - I am kind of all over the place ATM Juerd | 20:50 | |
theorbtwo | Repetitive Stress Injury. | ||
jdv79 | PLP is like PHP | ||
Juerd_ | Limbic_Region: About you going to catch up on #perl6 :) | 20:51 | |
Limbic_Region | oh - well, I found lots of links here that I was following | ||
Juerd_ | ihb: I created it because I needed something template-language-like (PHP-like, if you want) that was both very fast and very easy to use (no weird compilation with subs causing all kinds of problems with lexicals and other subs) | 20:52 | |
s/to use/to start using/ | |||
ihb | Juerd_: which other templates-language-like things existed at invention-time? | 20:53 | |
Juerd_ | ihb: embperl, mason, eperl, iperl, s///e | ||
ihb | Juerd_: in which way/under which circumstances is PLP preferable? | 20:54 | |
Juerd_ | The first incarnation of PLP just used s/<:(.*?):>/'; $1; print '/g; eval "print '$_'", only escaping some more than this :) | ||
ihb: I have no idea. | |||
ihb: I use it for sites I build | |||
ihb | Juerd_: :-) | ||
Juerd_ | ihb: It's in use by the dutch ISP "Internet Online" for their administration of rackspace, switches, routers, servers and bandwidth | 20:55 | |
But that's just because a good friend works there and wrote this system | |||
I will maintain PLP, because it's used in many important production environments | |||
But don't expect too much | 20:56 | ||
If you're writing something big, use Template or Mason or Embperl | |||
If you need the speed, PLP's great, though. | |||
theorbtwo | Juerd, consider finding somebody else to pawn it off on^W^W^W^Wmaintain it. | ||
Juerd_ | Cheap computers have become much faster since PLP was made though | ||
theorbtwo: I don't like that. | |||
ihb | Juerd: thing is i don't write big things, which is why i'm interested in other solutions. | 20:57 | |
Juerd_ | I want to be in control, because everyone who has some opinion about PLP wants to introduce backwards incompatible changes, and someone without an opinion is by definition a bad maintainer. | ||
theorbtwo | Mm, point. | 20:58 | |
If they can find a way to make backwards-compatable changes, then that'd be good. | 20:59 | ||
But loosing back-incompat is a big -- unless you cleanly fork. | |||
Juerd_ | They can't because PLP needs big changes | ||
ihb | Juerd_: would you disrecommend someone starting fresh from using PLP? | 21:00 | |
Juerd_ | ihb: Only if you want mod_perl 2 support or PLP to do something it currently does not. | ||
Feature requests are left unanswered for the time being. | |||
I use PLP all the time | |||
So how could I recommend against using it? | |||
It's PHP-ish in many ways though | 21:01 | ||
And that requires some tolerance for ugliness | |||
And impurity | |||
OTOH, it does use perl and it is fast. | |||
Which are important for me. | |||
dada | I go, goodnight | 21:48 | |
mugwump | hmm, can't commit to svn.openfoundry.org even after completing registration ... will try again later | 21:52 | |
obra | :/ | 22:03 | |
Steve_p | autrijus, are you using the ErrorMonad to implement try...catch? | ||
22:35
buu is now known as perldoc,
perldoc is now known as buu
|
|||
obra | schwern? | 22:44 | |
Coke_ | what abuot schwern? | 23:11 | |
obra | was looking for him | 23:13 | |
Coke_ | I miss purl. | 23:15 | |
theorbtwo | perlbot, tell Coke_ about the meaning of life. | 23:16 | |
perlbot | the meaning of life isn't something I know about, theorbtwo | ||
theorbtwo goes to bed. | 23:17 | ||
metaperl_ | is Sam Vilain here? | 23:57 | |
obra | 18:57 -!- idle : 0 days 2 hours 5 mins 48 secs [signon: Mon Mar 7 | 23:58 |