Run Perl6 Now! | pugscode.org ('Overview', 'Journal') | pugs.kwiki.org | chan now logged: xrl.us/e98m Set by theorbtwo on 28 February 2005. |
|||
Steve_p | heh | 00:23 | |
crysflame | hi | 00:25 | |
Steve_p | hi | 00:26 | |
nothingmuch | hola | 00:53 | |
stevan | hey nothingmuch | ||
nothingmuch is writing mail and will get around to the try tesrt | 00:54 | ||
wish me luck | |||
stevan | good luck | ||
nothingmuch | hola autrijus | 01:10 | |
nothingmuch is fidgeting with try-catch | |||
autrijus_ | rehi /\camels | 01:11 | |
ooh. fidgeting as in writing tests? | |||
nothingmuch | yup | 01:12 | |
autrijus_ | nice | ||
nothingmuch | sync darcs? | ||
(automatiically?) | 01:13 | ||
((with a pugs script?)) | |||
autrijus_ | will do when I have a tiny bit more bandwidth | ||
but sure, let me make do for now | |||
a sec | |||
I'll make it per-minute | |||
insetad of per-commit as it is suppsoed to do | 01:14 | ||
clkao giggles at autrijus_ | 01:16 | ||
crysflame | hi, autrijus | ||
are you awake yet? | |||
autrijus_ | in the closed round table session now | ||
weird political foo going on | |||
crysflame | o, guess not | ||
autrijus_ | nothingmuch: darcs is now automagically synched | 01:17 | |
thanks. | |||
stevan | morning autrijus | ||
nothingmuch | woohoo | ||
autrijus_ | hi stevan. | ||
clkao | autrijus_: why can polictical foo go on so early? | ||
stevan | we hit 1000+ tests today :) | ||
autrijus_ | !!! | ||
stevan++ | |||
stevan | it was my goal to hit it before the weekend | 01:18 | |
clkao | how many of them are failing? | ||
autrijus_ | stevan++ | ||
gawd I feel I've been slacking | |||
autrijus_ is looking forward for real bandwidth | |||
stevan | no fails, only todos | ||
ingy | stevan: why amI the copyright holder of Test.pm ? | ||
:) | |||
stevan | autrijus: we are all just catching up to you | ||
autrijus_ | heh. *blush* | ||
stevan | ingy: cause you were the copyright holder of Kwid.pm which I copied and pasted from | ||
crysflame | autrijus: good interview! | ||
autrijus_ | mm some .fr person writes in to ask whether he can use Pugs to script RS232 protocols | 01:19 | |
crysflame: thanks! | |||
ingy | stevan: I'll fix it | ||
stevan | ingy: already did | ||
r432 | |||
ingy: I am torn on kwid | 01:20 | ||
my brain kinda likes it, but my fingers want to type POD | |||
ingy | you must have hard working fingers | 01:21 | |
stevan | the - for list items in particular | ||
crysflame | is there a pod->kwid automunger? | ||
stevan | ingy: they have a mind of their own sometimes | ||
ingy | stevan: I changed that list to * | ||
stevan | ingy: ok | ||
ingy | you use a '-' list when you want the terms to be linkable | 01:22 | |
autrijus_ | crysflame: Pod::Simple::Kwid should not be hard | ||
ingy | this is true in POD too | ||
autrijus_ | crysflame: but it currently is not there. if you can help, that'd be much appreciated | ||
stevan | ingy: hmmm, ok I will have to adjust the docs tomorrow | ||
ingy | just committed more yaht | ||
crysflame | autrijus: ETA probably +3 weeks on coding again | 01:23 | |
i'm starting to be able to focus on code again, at least :) | |||
(and filed an RT ticket!) | |||
(on my own module!) | |||
ingy | I am relaxing the kwid list syntax to allow multiline items | ||
that means .list will be rare | |||
and '-' is allowed outside .list | 01:24 | ||
see yaht.kwid for examples | |||
stevan | ingy: ok | ||
is yaht == Yet Another Haskell Tutorial | |||
ingy | yes | ||
stevan | then i will read it while I look at your kwid :) | 01:25 | |
ingy | it is a good tutorial but sucks in pdf | ||
stevan: you can help me write it. it is tedious | |||
stevan | yeah I have it in pdf, my eyes glazed over when I read it though | ||
ingy: we'll see, i am having fun with the tests right now :) | |||
autrijus_ | ingy: are you not working from pdftotext | 01:26 | |
ingy | you can't even cut and paste the examples | ||
autrijus_ | or pdftohtml? | ||
ingy | mmmm | ||
autrijus_ | i.e. do you _type_ all that stuff? | ||
ingy | autrijus_: it is fairly manual | ||
autrijus_ | stop hurting your fingers! | ||
ingy | ok! | ||
autrijus_ | :) | 01:27 | |
ingy++ | |||
ingy | where is a good converter | ||
autrijus_ | www.bluem.net/downloads/pdftotext_en/ | ||
pdftohtml.sourceforge.net/ | |||
ingy feels silly now | |||
stevan | not sure if this is the same YAHT, but ... www.hyuki.com/haskell/?cat=yaht | 01:28 | |
you might be able to cut and paste some of the code examples | |||
metaperl | ideally the haskell source code would not be in the kwid document. it would be separate and runnable. does kwid have an include file command? | ||
autrijus_ | not the same yaht | ||
stevan | autrijus: ah, wasn't sure, I just saw monad and thought maybe :) | 01:29 | |
autrijus_ | [Example 1|foo.hs] maybe? | ||
metaperl | [cpan://List::Util] | ||
autrijus_ | not sure how to make relative links | 01:30 | |
autrijus_ is reading larry's latest visions on p6l | |||
about Config | |||
$?CPU<speed> | |||
stevan | ok, going to grab something to eat, later all | 01:31 | |
autrijus_ | $?CPU<speed><hz> | ||
$?CPU<speed><cache><l2> | |||
Odin-LAP | That's true Larry, alright. | 01:32 | |
autrijus_ | I want some drug larry's on. I think that will improve my brain | ||
ingy | autrijus++ | 01:33 | |
autrijus_: that reply hurt my brain | |||
buu | autrijus_: Relative links in kwid: [linkname|/link] | ||
nothingmuch | autrijus_: try will need... 1) $! to be implemented (in t/op/die.t i see it isn't), 2) given blocks 3) class is Exception; | ||
ingy | not what I expected at all | ||
autrijus_ | buu: uh no, relative links to files in the same dir | ||
buu | autrijus_: Oh. | ||
autrijus_ | nothingmuch: we can fake class is Exception | 01:34 | |
nothingmuch | are any of these trivial to implement? (i suspect $! maybe?) | ||
autrijus_ | the other two is trivial. do we have tests for them? | ||
nothingmuch | for given no | ||
for $! yes | |||
todo_is in t/op/die.t | |||
autrijus_ | nothingmuch: ok. write one for given and try? | ||
nothingmuch | surely | ||
how liberal should I be with eval '' for unsupported syntax? | |||
ingy | autrijus_: we don't have any object support yet do we? | ||
autrijus_ | ingy: we have multisubs and faked invocant syntax | 01:35 | |
so any sub($foo) can be written as $foo.sub | |||
other than that, no. | |||
6.2 will be all about objects. | |||
ingy purrs | |||
autrijus_ | but I want serious bugs like doubleeval fixed in 6.0 first. | ||
and get I/O really nicely working | |||
ingy: it doesn't stop you from writing pseudocode or tests, though. | 01:36 | ||
ingy | autrijus_: I want to do an IO::All | ||
autrijus_ | ingy: write one! | ||
metaperl | autrijus, did you get my email about my junction examples? | ||
ingy | I need objects! | ||
autrijus_ | metaperl: no, I'm still parsing Larry | ||
ingy: write one and objects will come! | 01:37 | ||
ingy | =) | ||
autrijus_ | ooh so those are blue sugar cubes | 01:38 | |
autrijus_ makes a note to buy some in the night market here | |||
<ingy> Thanks for the mind expanding reply. | |||
<lwall> You're welcome. Next time don't eat blue sugar cubes from my frig. :-) | |||
rgs++ # fellow S5 affictionado | 01:41 | ||
mmm ISO Linux standard | 01:42 | ||
nothingmuch | :w | 01:44 | |
heh, wrong window =) | |||
autrijus_ | :) | 01:45 | |
nothingmuch | do we have ?? :: ? | 01:49 | |
err, i'll just check | |||
autrijus_ | we do. | ||
nothingmuch | =) | ||
(as an lvalue?) | |||
(it's one of my favourite perl features) | |||
autrijus_ | I don't even know that you can do an lvalue :) | 01:52 | |
returns Any is rw | |||
is that an appropriate p6 sig? | |||
mmm asiaforge. | |||
nothingmuch | (cond ? $var : $other) = "Value"; | ||
i especially like doing it for array/hash assignments | 01:53 | ||
for "T", "E", 5 -> my $digit { | |||
autrijus_ | oh, seeing how metaperl and ingy are both here | ||
nothingmuch | i get complaints | ||
is it supposed to work? | |||
autrijus_ | my decree in pod/kwid in the pugs tree is "whatever you like" :) | ||
metaperl | hmmm | 01:54 | |
nothingmuch | i also tried with () | ||
autrijus_ | I think ingy should've asked metaperl before checking in the .kwid, just to be polite and avoid conflicts | ||
but for inlined chunks in .pm and t/* files, both are fine. | |||
metaperl | Ok, so you are getting to the junction code samples I wrote? | 01:55 | |
autrijus_ | I see kwid as merely an alternate POD notation | ||
and whomever writes the doc gets to choose the notation :) | |||
metaperl | pugs/examples/junction | ||
autrijus_ | yup | ||
nice work! | |||
re autochomp: I think synopses really needs to have them covered. | |||
I lose track of autochomping syntax | |||
meanwhile I'll do a chomp() primitive. | 01:56 | ||
(sigh) | |||
nothingmuch: lose the my() | |||
nothingmuch | this is odd | ||
i tried that too | |||
autrijus_ | it's implicit. | ||
nothingmuch | where can i paste 13 lines of code? | 01:57 | |
autrijus_ | pugs -e "for (1,2,3) -> $x { say $x }" | ||
worksforme. | |||
metaperl | www.nomorepasting.com | ||
autrijus_ | losing () too | ||
Coke_ | perlbot, nopaste? | ||
perlbot | Paste your code here and #perl will be able to view it: sial.org/pbot/perl | ||
nothingmuch | t/base/for.t passes | ||
Coke_ | perlbot, nopaste is also nopaste.snit.ch:8001/ | 01:58 | |
perlbot | I already have an entry for nopaste | ||
Coke_ | bah. | ||
nothingmuch | sial.org/pbot/7876 | ||
huh? why did it use my lan IP? | 01:59 | ||
oh well | |||
so? | 02:01 | ||
autrijus_ | reading | ||
metaperl: the chomp() primitive is in. | |||
metaperl | oh ok. | 02:02 | |
autrijus_ | try using it as a bandaid for now | ||
except it's broken. | |||
a sec. | |||
chomp fixed as r434. | 02:06 | ||
metaperl | yes, I just noticed :) | ||
autrijus_ | chop() also implemented. | ||
metaperl | ok resyncing | ||
autrijus_ | mmm reimbursement time | 02:07 | |
autrijus_ is out collecting $$$ | |||
biab | |||
nothingmuch | *cough* | ||
is a bare block '{ some scope }' valid? | 02:15 | ||
i can't find (synopsis|exegis|apocalypse) 4 data on this | |||
02:19
autrijus__ is now known as autrijus_
|
|||
nothingmuch | occasionally i get parse errors after eval ''; | 02:22 | |
where the next characer of a token is "unexpected" | |||
example: | |||
eval 'given 1 { when 1 { $one = 1 } }'; | 02:23 | ||
todo_ok($one, "truth in given { when ... }"); | |||
t is unexpected | |||
metaperl | autrijus can you run pugs/examples/junctions/3.p6 | ||
the first if-then should have said nothing' | 02:24 | ||
autrijus can you run pugs/examples/junctions/3.p6 | 02:29 | ||
the first if-then should have said nothing' | |||
02:32
autrijus__ is now known as autrijus_
|
|||
autrijus_ | checking | 02:32 | |
gah the XiuShui market has been closed :-/ | |||
clkao | autrijus_: got some time for packaging before perl lunch? | ||
autrijus_ | I wonder if I should pack with svn 1.1.0 libs | 02:33 | |
because it all worksforme here | |||
and the only change I've done was updating 1.1.3 | |||
obra | why was it closed? | ||
autrijus_ | seeing how ssleay was a problem, I suspect 1.1.3. oh and lunch is tomorrow with perlchina | 02:34 | |
obra: copyright infringement crackdown. | |||
there is a New XiuShui mall being built with 3,000 hidden camera | |||
so, well. | |||
clkao | autrijus_: no, but the encoding thing wasn't there before | ||
autrijus_ | clkao: if I can only duplicate it :-/ | ||
metaperl | autrijus can you run pugs/examples/junctions/3.p6 | ||
the first if-then should have said nothing' | |||
clkao | autrijus_: try to document the build/package process and i'll try to catch matthewd? | 02:35 | |
obra | this is the tech market I was at? | ||
autrijus_ | clkao: huh, just extract the svk executable, put the svk tree in site/, and run svk.nsi from win32/ | ||
obra: possibly | 02:36 | ||
the nsi file much be run with makensis | |||
metaperl: looking | |||
nothingm1ch | does anybody have any insight about for () -> $topic parse errors? | 02:37 | |
autrijus_ | nothingm1ch: example? | ||
nothingmuch: example? | 02:38 | ||
nothingmuch | sial.org/pbot/7876 | ||
autrijus_ | metaperl: evidently a bug. a sce | ||
sec | |||
nothingmuch | dclone($autrijus) | 02:39 | |
crysflame | i wish | 02:40 | |
metaperl | nothingmuch, that tick mark in front of $result looks odd | ||
eval '$result | |||
oh sorry | |||
crysflame | as soon as we figure out how to capture a quantum state without observing it | ||
metaperl | it is closed 4-5 lines later | ||
crysflame | and then figure a way to observe without collapsing | ||
you can clone autrijus | |||
ingy | hola | 02:41 | |
autrijus_: pdftotext chugged along for a while then finished cleanly. it produced no output and no warnings. Nothing. | 02:42 | ||
autrijus_ | try pdftohtml? | ||
obra | start with the dvi? | ||
ingy | I need text though | ||
metaperl | dvi2tty | 02:43 | |
obra | ingy, have you talked to the author? | ||
metaperl | ? | ||
autrijus_ | ok, let me do a .txt to me | ||
s/to me/locally/ | |||
metaperl | yes, I was wondering what he felt about all this myself :) | ||
autrijus_ | ingy: yeah, please contact Daume; I'm sure he'd agree because YAHT is freely distributable verbatim | 02:44 | |
but you need his consent on kwid being one of verbatim formats | |||
nothingmuch | *sigh* | 02:45 | |
autrijus_ | ingy: autrijus.org/tmp/tutorial.txt | 02:46 | |
enjoy | |||
ingy | thanks | ||
autrijus_ | ingy: minor encoding foobar tho | 02:47 | |
you may need to do minor cleanup | 02:48 | ||
about the ' and " | |||
ingy | I'll write Daume | ||
autrijus_ | fixing | ||
ingy | autrijus_: no worries, I plan to contrast it against the pdf | ||
nothingmuch | crap | ||
ingy | but fixes welcome sure | ||
nothingmuch | todo_ok( unclosed | ||
autrijus_ | ingy: autrijus.org/tmp/tutorial-utf8.txt | 02:50 | |
metaperl | ingy, I am willing to use kwid from this point out | 02:51 | |
ingy | metaperl++ | ||
metaperl: that's really cool :) | |||
autrijus_ | metaperl++ | ||
autrijus.org/tmp/tutorial-utf8-2.txt | |||
finally got it to work | 02:52 | ||
nothingmuch | this doesn't parse: my $expected = (($digit eq "T") ?? 10 :: 11); | 02:54 | |
but my $expected = ($digit eq "T") ?? 10 :: 11; does | |||
Aankhen`` | Ah, that's better. | ||
nothingmuch | does that make sense? | ||
Aankhen`` | Now the quotes aren't messed up. | ||
autrijus_ | ??:: is adhoc. | ||
not part of a proper term. | |||
so the failure is expected. not sure how to treat ternary yet | 02:55 | ||
pm also had no clue :-/ | |||
nothingmuch | should i test for a proper '?? ::' handling in an eval somewhere? | ||
ingy | autrijus_: the utf8 still looks messed up | ||
autrijus_ | yes, please! | ||
ingy | I need to run. bbl | ||
autrijus_ | ingy: it looks okay here | ||
see ya | |||
nothingmuch | err, how would you name such a tesT? | 02:56 | |
or does it go in 03operators.t? | |||
autrijus_ | 03 sounds right. | ||
nothingmuch | oh, it's already tested | 02:57 | |
todo_is(eval '(($str3 eq $str4) ?? 1 :: 2)', 1, "?? :: in parens"); | |||
=D | |||
cls_bsd | wowo | ||
metaperl | autrijus, should I make a test out of the example I showed you? | ||
autrijus_ | :D | ||
it pays to grep the test | |||
nothingmuch | i didn't notice it when i last grepped for '??' | ||
crysflame | autrijus: your testing comment from the interview should be topic | 02:58 | |
autrijus_ | metaperl: yes, definitely | ||
I'll look into that now | |||
chained comparisons suck | |||
nothingmuch is dyslexic and tends to have these idiotisms | |||
autrijus_ | is the interview on air? | ||
crysflame | i have no idea | ||
autrijus_ | oh it is. | ||
crysflame | it was on the air here | ||
autrijus_ | sure | ||
what testing comment? | |||
crysflame | where you said "all features are driven by tests" | 02:59 | |
um, url the interview | |||
nothingmuch | should junctions make sense this way: given "foo" { when "bar" | /foo/ { $foo = 1 } } ? | ||
or should it be a comma? | 03:00 | ||
ah, exegis is less confusing on the subject | |||
autrijus_ | I have no idea :) | ||
cool. so what is it? | |||
nothingmuch | appearantly comma | ||
autrijus_ admits to have not read all the exegesis | |||
nothingmuch | there's a given in apocalypse 4 that has commas | ||
autrijus_ | or rather, read, but not really read | ||
okay, comma is it then | 03:01 | ||
nothingmuch | and then in the bottom it said '[ update: replace , with | ] | ||
autrijus_ | uh. | ||
autrijus_ screams | |||
nothingmuch | so i didn't know if it was 'junctions do the right thing' | ||
or 'in this case a junction is more elegant' | |||
autrijus_ | let's see | ||
nothingmuch | the latter case seems more logical | ||
autrijus_ | "when" is using an implicit smart matcher | ||
as in | |||
$_ =~ "bar" | |||
err | |||
nothingmuch | aye | ||
autrijus_ | $_ ~~ "bar" | ||
if you replcae the RHS with junctions | |||
then it autothread | |||
because when gives a boolean context | 03:02 | ||
it collapses | |||
crysflame | oooh | ||
autrijus_ | so yeah, use junctions | ||
crysflame | ding! | ||
autrijus_ | ding indeed | ||
nothingmuch | is /foo/ done before the junction is built, or after? | ||
because i would (given perl 5 intuitions), look at it like: | |||
"bar" | /foo/ => "bar" | true (since /foo/ matches) | |||
$_ =~ "bar" | bool::true | 03:03 | ||
that's not quite right | |||
autrijus_ | the /foo/ merely constructs a rule obj. | ||
nothingmuch | goody | ||
autrijus_ | that I'm pretty sure of. | ||
nothingmuch | the lazier you are the more knowlege you have when you actually need to get stuff done | 03:04 | |
nothingmuch likes these properties, they make for better DWIMy behavior | |||
autrijus_ | that is indeed the rakudo. | ||
the way of camel | |||
wolverian | woohoo, actually figured out the first yaht exercises :) | ||
autrijus_ | wolverian++ | ||
wolverian | haskell++ # I like weird. | 03:05 | |
nothingmuch | ok | ||
last issue | |||
i have several test cases in t/base/given.t | 03:06 | ||
i want to declare lexicals per cas | |||
e | |||
in perl 5 i would just wrap them in a bare block | |||
and not worry about it | |||
but pugs is not eating this | |||
is it documented somewhere? | |||
(perl ops and constructs are hard to grep for =( | |||
autrijus_ | a bare block should be fine | ||
{ my $x; ... } | |||
is it not working? | 03:07 | ||
nothingmuch | {\nmy ... yields "unexpected m" | ||
the same code works with the curly lines commented out | |||
ah! | 03:08 | ||
{}; | |||
autrijus_ | ah! | ||
nothingmuch | it's more like eval {}, less like a block | ||
autrijus_ | the implicit semicolon | ||
nothingmuch | err, make that do {}; | ||
wolverian | are closures in void context run automatically in perl6? | 03:09 | |
autrijus_ | had not been added. indeed. | ||
write a test for that? | |||
supposedly there is an implicit semicolon | |||
after all statement level bare blocks | |||
yup | |||
always so | |||
but not void context | |||
nothingmuch | will do | ||
autrijus_ | rather, "statement level" | ||
nothingmuch | ugh! | ||
this is confusing | |||
autrijus_ | the difference being that the last {} in a sub | ||
will still run | |||
instead of getting context from caller | |||
wolverian | hmm. why? | ||
autrijus_ | err, in spite of getting ocntext from caller | 03:10 | |
because it's more consistent that way. | |||
sub foo { ... {my $x; $x + 1} } ... say foo() | |||
should say 1 | |||
not a subref. | |||
nothingmuch | oi | ||
autrijus_ | that agrees with my intuition. | ||
wolverian | I would prefer a subref. creating closures without keywords is elegant to me. :) | ||
nothingmuch | they are not running | ||
autrijus_ | wolverian: you can use a "return" | ||
return { my $x } | |||
which will indeed return a closur | 03:11 | ||
e | |||
nothingmuch: they are not?! | |||
wolverian | ah, okay. will a 'sub { .. }' without return() still run immediately? | ||
autrijus_ | post an example? | ||
nothingmuch | { say "foo" }; | ||
autrijus_ | nope. only bares. | ||
nothingmuch | does nothing | ||
wolverian | ah, thanks! | ||
metaperl | junction tests added to 03operator.t ... now to make some more tests for the other junction calls | ||
autrijus_ | oi. I broke it. | ||
nothingmuch: fixing it right now | |||
nothingmuch | wĆ¼nderbar | ||
autrijus_ | but being diverted by policitcal talks | ||
metaperl | autrijus dont talk about politics in PRC. Wait til you get back to Taiwan. | 03:13 | |
we want you to make it back | |||
autrijus_ | ha. | 03:14 | |
no, I'm watching verbal duels between various ministers and their technical advisors | |||
obra | fun! | ||
autrijus_ | yeah! | 03:15 | |
nothingmuch | sent patch for lone blocks test | 03:16 | |
given patch is waiting for you fix (as tested by this patch) | |||
now i'm back to try test | |||
set your darcs repo email, btw | 03:17 | ||
oops, wrong relayhost, sending agian | 03:18 | ||
autrijus_ | yeah, the "sub" Syn broke bare block | 03:19 | |
it's fixed now | |||
nothingmuch: do you prefer darcs much more than svn? | |||
nothingmuch | much much more | ||
but i can flex | |||
autrijus_ | ok... I'll try not selling you to svk :) | ||
nothingmuch | if it's too much trouble synching then i am willing to give it up | ||
autrijus_ | it's easier for me to make you a svn/svk committer | ||
than darcs | |||
nono, you should use your fav tool | |||
wolverian | hrm, why does ghci error when I do a 'foo = bar'? using 'let' works, but why? | 03:20 | |
autrijus_ | it's just I need more bandwidth to make you a darcs committer | ||
wolverian: because it's not in file level | |||
nothingmuch | hmm | ||
wolverian | autrijus_: oh, right. | ||
nothingmuch | so what if i darcs send to a place that is not autrijus.org, but where the repos are? | ||
and procmail lifts it? | 03:21 | ||
autrijus_ | no idea | ||
I'll make you a svn committer now | |||
metaperl | it would've been interesting to make junctions use ? as a sigil | ||
nothingmuch | there's a good example in the manual | ||
autrijus_ | if that's okay with you | ||
nothingmuch | it is | ||
metaperl | my ?address = any(qw(mr mrs sir sire)); | ||
autrijus_ | you can commit to svn if you'd like; otherwise I can make you a darcs committer nex tweek | ||
does it sound ok? | |||
metaperl | if ($address eq ?address) { print "OK" } | ||
wolverian | autrijus_: how do I define two 'foo's then? I'm missing something obvious. it seems like each line is its own lexical scope. | 03:22 | |
nothingmuch | well, i'll have the stuff done in 30 minutes | ||
i'm going to sleep soon | |||
it's already early | |||
so svn access now | |||
autrijus_ | wolverian: you write a test.hs and load it. | ||
nothingmuch | or i can just expose a darcs repo for you to pull from | ||
wolverian | autrijus_: okay. :) thanks. | ||
metaperl | i'm still confused about how one repository can be manipulated by 2 different VCSes | ||
autrijus_ | metaperl: that is clkao's specialty. | 03:23 | |
crysflame | the VCSes manipulate eachother | ||
metaperl | dont they keep records differently | ||
nothingmuch | darcs.net/manual/node4.html#SECTION...0000000000 | ||
metaperl | oh | ||
crysflame | also, clkao : vcs :: autrijus : perl | ||
and i think in similar respects clkao is just as mad | |||
i remember he was writing a JS interface from PErl once | |||
autrijus_ | yup. | ||
nothingmuch: invitation sent | 03:24 | ||
nothingmuch | Reading /home/nothingmuch/.maildir/... 12170 | ||
clkao | who wrote js interface from perl ? | ||
nothingmuch | dum dee dum | ||
clkao | that sounds ingyish | ||
autrijus_ | you'd need to click on the url in it and agree to a term of use wagner.elixus.org/~hcchien/termtouse.html | ||
which is just sf.net's | |||
and then you can commit to svn.openfoundry.org/pugs | 03:25 | ||
nothingmuch: I'll let you commit your own test :) | |||
but it should work. | |||
crysflame | clkao: wait, that wasn't you? | 03:26 | |
it was claes then | |||
my apologies | |||
nothingmuch | i would like real darcs access later on though, since it's cooler. They don't conflict, do they? | 03:29 | |
autrijus_ | nope. | ||
or rather, if they do, we solve it at the svk side. | |||
crysflame | svk is the borg | ||
nothingmuch | =) | ||
ok, so now that i have svn | 03:31 | ||
and i'm installing svk | |||
where can i find a very short svk tut? | |||
clkao grins | |||
svk.elixus.org/?SVKTutorial has a 30sec one | 03:32 | ||
autrijus_ | svk.elixus.org has some links. | ||
yup. the 30sec one is good enough. | |||
"the economies have agreed to establish a study group on studying the structural changes on the future changes of AOSS" | 03:33 | ||
yay for another donothing statement. | |||
autrijus_ has been hearing noops all day long | |||
clkao | it's just half day, how can you be hearing all day long? | ||
autrijus_ | because they Invade My Dreams | ||
I wonder who chromatic did not mark that sky==arther bergman | 03:34 | ||
in the interview | |||
maybe he did not know. | |||
crysflame | entirely possible | 03:36 | |
for the first week of work, i kept waking up from operations in progress and thinking "man, i need to get back to sleep or i'll miss something" | |||
that sealed my belief in dreams as "Brain teaching itself new shit based on recent memories" | |||
after a solid week of sleeping and waking work, i slept and read and watched movies all weekend | 03:37 | ||
nothingmuch | awwe! svk download broke | 03:39 | |
wolverian | hrm, I can't figure out yaht exercise 3.10 :( | 03:51 | |
scw | wagner.elixus.org/~autrijus/svk-overview.png | 04:04 | |
wolverian: What's the problem? I wrote it as my first Haskell program! | 04:05 | ||
wolverian | scw: I can't figure out if I should use 'read' somewhere, and if so, how. | 04:07 | |
well, I do use it in my askForNumbers, but then in the main code I can't figure out how to get at the list returned by it. | 04:08 | ||
autrijus_ | I just did a silly thing | 04:43 | |
(submitted pugs to /.) | |||
so, watch out for troll invasions | 04:44 | ||
lunch now, bbiab & | |||
svk download broke? | |||
clkao | autrijus_: huh? | ||
crysflame | oh gee | ||
autrijus: get some of us with ops, then | 04:45 | ||
autrijus_ | makes sense. will do so after lunch | ||
clkao: <nothingmuch> awwe! svk download broke | |||
it worksforme. | |||
& | 04:46 | ||
scw | wolverian: `read' has a parameter of string and return number | 05:06 | |
wolverian: so I get a line from user by line <- getLine | 05:07 | ||
wolverian | yeah. | ||
scw | wolverian: then use `let num = read line' to get the number :) | ||
wolverian | my problem is that once I return the list of returned numbers, I can't figure out how to sum it | ||
s/returned numbers/read numbers/ | 05:08 | ||
scw | wolverian: try `foldl' or `foldr' | ||
wolverian | GHC complains it wanted [a] there, when it got IO () | ||
scw | Oh! use `numbers <- askForNumbers' instead of equal mark! | 05:10 | |
wolverian | I do. | ||
scw | And did you use `return []' in askForNumbers? | ||
wolverian | yes. | ||
scw | strange, can you post your code somewhere? | 05:11 | |
wolverian | oh, I have a bug in there. give me a second. | ||
hmm, didn't fix anything. yeah, I'll paste. | 05:12 | ||
perlbot: nopaste? | |||
perlbot | Paste your code here and #perl will be able to view it: sial.org/pbot/perl | ||
wolverian | scw: sial.org/pbot/7880 | 05:14 | |
tmoertel | scw: watch the precedence; function application binds tighter than ++ | 05:15 | |
wolverian | hrm. | 05:16 | |
was that for me? :) | |||
tmoertel | wolverian: yes (sorry, scw, I'm sleepy) | ||
wolverian | I think I am too tired for this. | 05:17 | |
tmoertel | wolverian: what is the type of foldl? | 05:19 | |
wolverian | something inanely long. | ||
:) | |||
tmoertel | wolverian: ok, then, how many arguments does it take? | ||
wolverian | oh for the love of god. | 05:20 | |
I am going to kill myself with a teaspoon. | |||
thankyou. | |||
scw | And, you cannot ++ a string and a number. | ||
the number should be cast to string by `show' first :) | |||
wolverian | by show? I didn't see that in this tutorial. | ||
argh. | |||
tmoertel | (I guess the tutorial also didn't mention the "sum" function ;-) | 05:21 | |
wolverian | absolutely not. | ||
tmoertel | well, folds are more fun, anyway :) | 05:22 | |
wolverian | hrm, so how would I cast them? | ||
I just tried map show. :) | |||
tmoertel | show converts a value into its string representation | 05:23 | |
if you map it over a list of values, you will have a list of string representations | |||
wolverian | right. what I need is actually first the number representations, to sum over, then convert that to string. | 05:24 | |
tmoertel | well, askForNumbers has type (IO [Int]), so you have a list of numbers | 05:25 | |
wolverian | hrm. | ||
tmoertel | if you (foldl (+) 0 numbers), you will get back a single number, the sum | ||
and if you show this number, you'll have the string representation of the sum | 05:26 | ||
wolverian | it seems to be complaining that the foldl wants [a], but it gets IO () (that is, numbers <- askForNumbers) | ||
tmoertel | can you re-paste your code? | ||
wolverian | sure. | ||
sial.org/pbot/7881 | 05:27 | ||
tmoertel | ah, how do you think the following expression is parsed: | ||
f x ++ y | 05:28 | ||
wolverian | f (x ++ y) | ||
am I wrong? :) | |||
tmoertel | ah, but function application binds most highly: | ||
wolverian | right. now it is fixed. | ||
tmoertel | the compiler sees this: (f x) ++ y | ||
wolverian | thankyou again. :) | ||
tmoertel | i live to serve :) | ||
wolverian | whoot, it actually runs. | 05:29 | |
metaperl | did my junction tests work out? | ||
metaperl updating now | |||
some of my junction tests failed... i hope they are sane tests | 05:30 | ||
they are in t/03operator.t if someone wants to verify them | |||
they came from an Exegesis | 05:31 | ||
www.perl.com/pub/a/2003/07/29/exege...tml?page=4 | 05:32 | ||
cls_bsd | which tests failed? | 05:34 | |
27 | |||
~29? | |||
number 27: ok( all(@newval2) > any(@oldval), "all test array against any array" ); | 05:36 | ||
ok, we have newval2 (15, 7, 20) and oldval (5, 8, 12) | |||
how do we expect a "ok" when 7 < 8? | 05:37 | ||
tmoertel | wishful thinking, perhaps? :) | 05:38 | |
cls_bsd | so it should be todo_ok? :p | ||
tmoertel | of couse, all of (15,7,20) *are* greater than 5 | 05:39 | |
metaperl | 4 of them starting at line 78 | ||
cls_bsd | but they want "any"? | ||
maybe I was wrong ?_? | |||
besides, the following test is really weird, | |||
tmoertel | what are the semantics of any? | ||
cls_bsd | ok( all(@newval1) > all(@oldval), "all test array against all array" ); | ||
metaperl | there is a link to the article | ||
cls_bsd | yes, checking the article | ||
metaperl | cls_bsd: there is nothing weird about that test per the article | 05:40 | |
www.perl.com/pub/a/2003/07/29/exege...tml?page=4 | |||
tmoertel | my read of the article is that if any of 5,8,or 12 is > than all of 15,7,20, the result is true | ||
cls_bsd | hmm | 05:41 | |
tmoertel | s/>/</ | ||
cls_bsd | just following :p | ||
so the result is wrong | |||
tmoertel | i would agree | 05:42 | |
cls_bsd | semantic kills | ||
metaperl | which test? paste it | ||
cls_bsd | metaperl: in 03operator.t, line 79 | ||
or 78 | 05:43 | ||
?_? | |||
I've confused | |||
metaperl | ok( any(@newval4) > any(@oldval), "any test array against any array" ); | ||
this one? | |||
cls_bsd | hmm, next next one | ||
or next next next one :p | |||
metaperl | can you paste it | ||
cls_bsd | not_ok in my test | ||
metaperl | to cut out ambiguity | ||
cls_bsd | nopaste.snit.ch:8001/1987 | 05:45 | |
metaperl | read the article: | ||
if all(@newvals) > any(@oldvals) { | |||
print "These are all bigger than something already seen." | |||
} | |||
cls_bsd | yap, so the result is wrong | ||
metaperl | if any one of oldval is such that all of newval2 is greater then it is true | ||
the result? | 05:46 | ||
cls_bsd | not ok 27 | ||
# Failed test (03operator.t at line 78, column 1) | |||
not ok 28 | |||
# Failed test (03operator.t at line 79, column 1) | |||
is there any my misunderstanding? | |||
metaperl | no, there is a value of oldval, namely 5, for which ALL of newval2 is greater | ||
I think the tests are right. I just wanted to verify | |||
cls_bsd | hmm | ||
autrijus_ | ugh. my /. submission was rejected immediately. | ||
so, no trolls. | 05:47 | ||
clkao | ha | ||
metaperl | autrijus, I want to make sure my logic is clear in the test I made in 03operator.t | ||
they are based on this article: | |||
www.perl.com/pub/a/2003/07/29/exege...tml?page=4 | |||
they are currently failing | |||
autrijus_ | "and" always autothread first | 05:48 | |
I mean "all" | |||
ok( all(@newval2) > any(@oldval), "all test array against any array" ); | |||
this becomes | |||
all( 15 > any(5, 8, 12), 7 > any(5, 8, 12), 20 > any(5, 8, 12) ) | |||
which is all(true, true, true) | 05:49 | ||
which should be true. | |||
so it's pugs's bug | |||
if it evaluates to false. | |||
afaics. | |||
buu | autrijus_: Did you implement the zip operator? | ||
autrijus_ | buu: I did, but it lost with the hard disk | 05:50 | |
so no | |||
metaperl | autrijus, have you ever been tempted to give up Perl and find a job as a full-time Haskeller? | ||
autrijus_ | buu: write a test? | ||
metaperl | do you think Perl6 is worth your time? | ||
obviously so, I suppose | |||
buu | autrijus_: As soon as I figure out how to actually create that character. | ||
metaperl | sorry to speak heresy amongst the converted | 05:51 | |
autrijus_ | metaperl: err, writing no code at all (with CPAN) beats writing very little code in haskell | ||
buu: nono, you use infix Y | |||
the yen can be written as Y | |||
buu | Oh it can? El33t. | ||
autrijus_ | metaperl: no need to apologize :) | ||
metaperl | ok, well I just wanted to make sure my test cases were sane before going to sleep | ||
autrijus_ | they look sane. great work! | ||
rehi theory. | |||
metaperl | ok thanks! | 05:52 | |
thanks for input cls_bsd | |||
tmoert | |||
autrijus_ | and no it's not heresy; it's one of the FAQs :) | ||
but I didn't list it in PA01 because it's a bit personal :) | |||
justatheory | waddup, autrijus | ||
autrijus_ | nothing much, about to take a nap | 05:53 | |
justatheory | Sounds like a plan. | ||
autrijus_ | :) | 05:55 | |
zzz & | |||
tmoertel hit the close key too many times ... | 06:22 | ||
(any(1,2),any(3,4)) evaluates to (1|2|3|4) | 06:26 | ||
should it be ((1|2),(3|4)) ? | 06:27 | ||
buu | tmoertel: Er, no | 06:31 | |
Or at least, I didn't think so at first, but now I'm considering. | |||
tmoertel | can you give me a ptr to the ref on that? | ||
buu | no =[ | ||
tmoertel | what, then, should the following eval to? | ||
buu | I was thinking: ((1,2),(3,4)) | 06:32 | |
Which is exactly the same as (1,2,3,4) | |||
tmoertel | $a := any(1,2); $b := any(3,4); ($a,$b) | ||
buu | What's the difference between 1|2,3|4 and 1|2|3|4 ? | ||
tmoertel | inside of parens, the first is a 2-elem array and the second a 1-elem array | 06:33 | |
buu | Hrm | ||
Yeah, it does sound like it should be 1|2,3|4 | 06:34 | ||
tmoertel | and, in fact, if you feed pugs "(1|2,3|4)" you ge the expected result | ||
buu | heh | 06:35 | |
Optimization I guess | |||
Or something. | |||
tmoertel | I call it "error injection" ;-) | ||
buu | Crap | 08:58 | |
I need ingy =[ | |||
autrijus_ | tmoertel: damian ruled that | ||
any(), all() and none() | |||
will join the same junctions | 08:59 | ||
inside them | |||
buu | autrijus_: Do you happen to know if: .baz\n should be a format named 'baz' or just a text section? | ||
autrijus_ | it's a format named baz. | ||
buu | k | ||
So you can't have a format named .list ? | |||
Weird. | 09:00 | ||
That's.. really weird | |||
What the hell is wrong with: .format html | |||
autrijus_ | nono you can have a .list | ||
it's just the handler is predefined. | |||
that's all | |||
buu | autrijus_: No, .list is a list section, not a list format. | ||
You see the difference. | |||
autrijus_ | then .baz is a baz section? | ||
autrijus_ not sure seeing the difference | 09:01 | ||
autrijus | <- need blood sugar | 09:06 | |
so, dinner now, be back in a while & | |||
buu | .. | 09:07 | |
bte | |||
bye | |||
jacleo | help | 11:59 | |
clkao | mmm | 13:16 | |
$ ab -clkao- [~/work/pugs] svk up -s | |||
RA layer request failed: PROPFIND request failed on '/pugs': PROPFIND of '/pugs': Could not read response body: Connection reset by peer (svn.openfoundry.org) | |||
hate! openfoundry outage again! | |||
it's like every weekend | |||
scw | clkao: openfoundry is helping spreading svk :p | 13:17 | |
stevan | ahhh | 13:44 | |
openfoundry is down | |||
anyone know of an alternative SVN repo? | 13:45 | ||
clkao | svn.perl.org/perl6 seems to have a mirror | 13:48 | |
stevan | clkao: thanks i will give it a try | ||
hmmm clkao it seems to be behind a few versions | 13:50 | ||
oh well, i suppose I will have to do regular work today :P | 13:51 | ||
my boss with appreciate that Im sure | |||
clkao | now you know the importance of svk | 13:52 | |
stevan | clkao: I have been meaning to give it a try actually, maybe this is a sign | ||
Coke_ ~~ @ autrijus | 14:24 | ||
autrijus_ | greetings! | ||
svn.perl.org/perl6/pugs/trunk/ is the temporary trunk for the next 24 or so hours | |||
stevan: I've fixed the double evaluation bug. | 14:25 | ||
nnunley | Fun. | ||
stevan | cool,.. now I don't have to do real work today | ||
autrijus_ | shift.t and inc.t now all passed. | ||
stevan | autrijus: NICE | ||
jdv79 | weird, i thought that _was_ the trunk | ||
autrijus_ | :D | ||
gugod_: 0rz.net/990cd | |||
stevan: 'fraid you'd need to send patches to p6c for now | 14:26 | ||
as svn.perl.org committership is beyond my control | |||
stevan | autrijus: I think I actually have access | ||
I got it for work I did on the DBI tests | |||
clkao | hi autrijus | 14:27 | |
autrijus_ | oh! | ||
wow. then commit at will | |||
hi clkao | |||
stevan | autrijus: if I can I will :) | 14:28 | |
autrijus_ | stevan++ | ||
I hope I'm not hurting your Real Work too much :) | |||
stevan | autrijus: nah, I was already a week or so ahead of schedule, so its all good | 14:29 | |
autrijus_ | ooh. you r0x0rz | ||
metaperl_: I figured out your junction bug | |||
any(2,5) < all(3,4) | 14:30 | ||
was parsed as | |||
clkao | autrijus_: so, matthewd is able to reproduce insufficient Encode on win32 cp680(?) system | ||
autrijus_ | any((2,5) < all(3,4)) | ||
which is highly weird | |||
but at least that explains all the failures | |||
if you use (2|5) < (3&4) | |||
then it works as expected | |||
I'm looking into it. | |||
clkao: ah, I got it. | |||
clkao: wish I had that information sooner | |||
autrijus_ fixes | 14:31 | ||
clkao | what was that about? | 14:32 | |
autrijus_: actually it was cp850 looking at the log | |||
nnunley | gmail-- # Doesn't correctly remember which messages were downloaded via pop. | 14:34 | |
cls_bsd | well, openfoundry will disappear tomorrow... | 14:41 | |
autrijus_ | well it already did... | 14:43 | |
cls_bsd | iis-- | ||
our cluster machines' gone,too | 14:44 | ||
autrijus_ | sigh. | ||
nnunley downloads svk on gentoo... Successfully for a change. :) | 14:45 | ||
clkao thought nnunley was already using it | 14:54 | ||
stevan | autrijus: apparently i dont have commit access to the pugs dir | 14:59 | |
will svk solve this problem (bascially allow me to commit locally and then sync later) | |||
clkao | that's the whole point about svk | 15:00 | |
stevan | clkao: cool | ||
where is the best place to get svk then? | |||
cpan? | |||
clkao | cpan is fine. or check SVKInstall on the wiki to see if there's already package on your platform | ||
stevan | wiki? | 15:01 | |
Coke_ | seems like you have to be doing a LOT of work with no net connection for svk to be worth it. | ||
clkao | stevan: svk.elixus.org | 15:02 | |
well yes, but just once, and you got plenty of chances to be left offline or to want to be offline ) | |||
:) | |||
nnunley | clkao: Gentoo was failing to merge it in for the longest time. | 15:06 | |
stevan | clkao: installing the svk fink package right now | ||
clkao | ah, osx, you might want the standalone dmg. should be easier. | ||
stevan | clkao: I already have svn installed through fink,.. | 15:07 | |
I didnt want any conflicts between the standalone and my svn install | |||
tmoertel | autrijus: do you have a pointer on damian's rationale for ((any(xs),any(ys)) -> any(xs,ys) ? | 15:09 | |
s/pointer on/pointer to/ | |||
nnunley | Oye. Failed. | 15:10 | |
clkao | autrijus_: when are you heading back | 15:14 | |
nnunley: how did it fail? | |||
nnunley | clkao: Meta data versioning in the sign tests. | ||
clkao: Invalid filesystem revision number: No such revision 5 | 15:15 | ||
clkao | huh? 72sign.t ? | ||
autrijus_ | clkao: 6th morning | ||
nnunley | clkao: Yeap. 72sign.t | ||
clkao | nnunley: can you tell which test in it exactly? | ||
nnunley | clkao: 3-7 | 15:16 | |
clkao | quite strange. that's new to me. | ||
nnunley | clkao: Shall I mail you the failures? | 15:17 | |
clkao | ya, prove -lv output would be great. | ||
and the version of perl, svn, svk | |||
autrijus_ | tmoertel: see the junctive thread on p6l | ||
tmoertel: I think it's been damian's goal that | |||
any(1,2,2,2) ===> any(1,2) | |||
any(1,2,any(2,2)) ===> any(1,2) | |||
i.e. it will avoid trivial duplicates | |||
tmoertel | but how can I create an array of two scalars, both junctions? | 15:18 | |
nnunley | clkao: This is svk-0.29 -- I have limited control how the packaging system runs the tests. :( | ||
That is, the gentoo system. They don't have svk-0.30 pushed up yet as an ebuild. | |||
clkao | uhm. can it be your gpg hates other software? | ||
but i think that's rather harmless failure, just force install it | 15:19 | ||
:p | |||
tmoertel | autrijus_: i asked about ((any(1,2)),(any(3,4))) not (any(1,2,any(3,4))) | ||
autrijus_ | any(any(1,2),any(3,4)) ? | ||
how is it semantically different from any(1,2,3,4)? | |||
from all autothreading point of view | 15:20 | ||
tmoertel | autrijus_: there is no outer any: ( any(1,2) , any(3,4) ) | ||
autrijus_ | oh. | 15:21 | |
that is a parsing error | |||
I've just said that | |||
tmoertel | the one you just fixed? | ||
autrijus_ | pugs misparsed it | ||
no, that's separate | |||
I'm looking into that now | |||
tmoertel | sorry, I was out for the last six hours | ||
PerlJam | good morning pugsateers | ||
autrijus_ | greetings perljam | ||
tmoertel: so, yeah, basically all builtin listops are misparsed | |||
"any(1), all(2)" ===> parsed as | 15:22 | ||
"any((1), all(2))" | |||
PerlJam | um ... is there something wrong with openfoundry? I just tried to "svn up" and got svn: PROPFIND request failed on '/' | ||
autrijus_ | PerlJam: svn.perl.org is the new trunk | ||
for the next 36hrs | |||
PerlJam | why is that? | ||
autrijus_ | openfoundry is down for mantainence. | ||
clkao | because svn.openfoundry = hate | ||
PerlJam | gotcha | 15:23 | |
autrijus_ | which is a fancy word to mean they need to upgrade their hosting facility | ||
for more cooling systems, etc. | |||
PerlJam | (svn switch)++ | 15:24 | |
clkao | i'd be thrilled if svn switch --relocate would work, as i guess the revision number would be slightly different | 15:25 | |
autrijus_ | different repoids | ||
so won't fly | |||
PerlJam | well bumemr | ||
er, bummer even | |||
autrijus_ | so just checkout again | ||
good. we made tpj news | 15:26 | ||
stevan | autrijus: svn.perl.org does not seem to be the latest code | 15:34 | |
autrijus_ | stevan: really. | 15:42 | |
what's missing from it? | |||
stevan | autrijus: the t/op/quoting.t file | 15:43 | |
and the test count is 689 and not 1003 | |||
autrijus_ | it's as recent as my latest sync | ||
stevan | hmmm | ||
autrijus_ | I've added quoting.t | 15:44 | |
committing now | |||
I recalculated the count for two files | |||
stevan | autrijus: recalculated? | 15:45 | |
PerlJam | stevan: He looked to see how many tests were actually run in those files and changed the plan accordingly (I think) | 15:49 | |
autrijus_ | the plan() was affected by reevaluation for two tests | ||
yup. | |||
stevan | ahh, which tests? | ||
autrijus_ | uh. I forgot :) | 15:52 | |
01basic I think | |||
and something in op/ | |||
stevan | ok,.. no big deal | ||
autrijus_ | yup | ||
so have youdiffed your tree with the latest svn.perl.org one? | |||
stevan | autrijus: I am gonna just send patches to p6c, is svn diff okay for that? | ||
autrijus_ | sure thing | ||
stevan | autrijus: I am doing that right now | ||
PerlJam suddenly sees the beauty in svk and carry-your-repository-with-you style SCMs | 15:53 | ||
autrijus_ | PerlJam: eureka! | 15:55 | |
weird parsing foo... fixed | 15:57 | ||
but may cause more breackage | 15:58 | ||
autrijus_ crosses fingers and types "make test" | |||
1/17 unexpectedly succeeded | |||
1/12 unexpectedly succeeded | |||
and so one and so forth | |||
7/31 unexpectedly succeeded | |||
I think I'm doing something right | |||
;) | |||
mister-foo | expect the worst, and all your surprises will be pleasant? | ||
autrijus_ | yeah but I apparently broke push()'s signature | 15:59 | |
fixing | |||
(15 subtests UNEXPECTEDLY SUCCEEDED) | |||
mister-foo | btw, which repository (darcs, svn, ...) is up-to-date? | ||
autrijus_ | at this second, svn.perl.org is the one up to date | 16:00 | |
I'm fixing darcs to pull from it | |||
openfoundry is normally the most up to date one | 16:01 | ||
but is currently down. | |||
stevan | autrijus: I will unTODO those tests once you commit | ||
I already did that for push.t and auto.t | |||
autrijus_ | ok, let me apply your patch first | ||
mister-foo | hence the question... I suppose both VC systems can co-exist in the same directory. Weird, but cool. | ||
autrijus_ | yeah, it can. | 16:02 | |
because svk doesn't use .svn or _darcs or other weird foo. | |||
so it can coexist with pretty much anything :) | |||
mister-foo | Speaking as a staunch CVS man, all these new-fangled contraptions are strange and shiny to me. | 16:03 | |
stevan | autrijus: patch #1 in the mail | 16:06 | |
autrijus_ | got it | 16:08 | |
mister-foo | autrijus: Sean O here, btw. 'sup? | 16:09 | |
16:09
mister-foo is now known as seano
|
|||
autrijus_ | hi Sean O! | 16:10 | |
heya. as you can see we're busily working to clean up todo_* tests as usual :) | |||
I've been thinking about how to tackle BEGIN | 16:12 | ||
seano | The number of tests is truly impressive. | ||
autrijus_ | did P6C tabkle that? | ||
for that matter, I don't think we have tests for BEGIN :) | |||
seano | I looked at doing "my ($x, $y) = ..." last night, but got lost in a twisty maze of monads and Vals, and fell asleep. | 16:13 | |
autrijus_ | ooh. | ||
right, you already knew haskell. | |||
seano | No. Since it was static, it didn't handle inserting perl6 code into the compiler. | ||
autrijus_ | the code that handles my $a = foo | ||
in on Eval.hs | 16:14 | ||
second case of reduceStatements | |||
seano | The most "introspective" feature it got was splicing in new grammar rules according to sub signatures (see the bottom of P6C/Parser.pm). | ||
autrijus_ | | Syn "sym" (Sym sym@(Symbol _ name (Syn "mval" [_, vexp])):other) <- exp = do | ||
that will evaluate RHS, insert it back to the "sym" slot | |||
then redispatch to a normal "sym" case (5th) | 16:15 | ||
| Syn "sym" syms <- exp = do | |||
which will then inject it into the lexical space. | |||
now I don't quite know what | |||
my ($x, $y) = @a; | |||
will work | |||
I mean, in perl5 of course they get @a[0] and @a[1] | |||
but do we need slurpy star in p6? | 16:16 | ||
seano | Rigth, iirc. that needs to be either "my ($x, $y) = *@a" or $y stays undef. | ||
autrijus_ | will that make $x into \@a and $y into undef? | ||
seano | Think so. | ||
autrijus_ | my (*$x, *$y) = @a; | ||
is this anywhere near legal? | |||
my (*$x, *$y) := @a; | |||
seano | I need to get hasktags working here. Man, I hate using grep/isearch supported languages. | ||
autrijus_ | sure. hasktags workedforme | ||
seano | What does a splat on a scalar do? | ||
nothingmuch | Auto-merging (0, 5) /pugs to /mirror/pugs (base /mirror/pugs:3). | 16:17 | |
===> Auto-merging (0, 4) /pugs to /mirror/pugs (base /mirror/pugs:3). | |||
Merging back to mirror source svn.openfoundry.org/pugs. | |||
RA layer request failed: OPTIONS request failed on '/pugs': The OPTIONS request returned invalid XML in the response: XML parse error at line 8: Opening and ending tag mismatch: p line 0 and body | |||
. (/pugs) at /usr/local/svk-0.30/perl/5.8.1/SVK/Command.pm line 155 | |||
autrijus_ | hi, nothingmuch. openfoundry is down for 36 hours. | ||
nothingmuch | sorry, i fell asleep yesterday | ||
ah | |||
ok, | |||
autrijus_ | please channel your patches to p6c. | ||
svk push -P - | |||
will produce such a patch. | |||
nothingmuch | sent | 16:19 | |
autrijus_ | danke. | ||
stevan | morning nothingmuch | 16:22 | |
nothingmuch | morning | ||
autrijus_ | stevan: I've hand 3-way merged the three repos | 16:23 | |
nothingmuch | how do i svk push -P only one patch? | ||
stevan | autrijus: ouch | ||
autrijus_ | stevan: uh, it took me <1min | ||
thanks to svk | |||
nothingmuch | more specifically | ||
autrijus_ | so nothing really ouch :) | ||
nothingmuch: you prolly want "svk desc" | |||
stevan | autrijus: BTW the diff did not show anything odd | ||
svk++ then | 16:24 | ||
seano curses darwinports for deciding to install Perl behind my back to install SVK. | |||
nothingmuch | how do match patches? | ||
nnunley | autrijus_: Well... Not entirely by hand then, eh? | ||
nothingmuch | seano - the binary package is prolly good enough | ||
stevan | seano: I used the binary pkg and it was fine | ||
autrijus_ | nnunley: sure, you can't tweak bits by hand anyway | ||
wilx` | Hmm, I am getting parse error on rt.openfoundry.org/Foundry/Project/.../pugs/rss/ | 16:25 | |
stevan | autrijus: I am seeing something really weird | ||
pugs -e 'sub foo returns List { return [1, 2, 3] }; my $x = foo(); say ref($x)' | |||
nnunley | autrijus_: Well, it would take a bit of concentration... Years of practice to tweak the right ones... | ||
autrijus_ | wilx`: it's down | ||
stevan | prints 'Int' | ||
wilx` | Oh. | ||
seano | stevan, autrijus: thanks. | 16:26 | |
stevan | autrijus: even weirder | 16:27 | |
pugs -e 'sub foo returns List { return [ 'foo', 'bar' ] }; my $x = foo(); say ref($x); say $x' | |||
sends PUGS into a CPU eating spiral of death | |||
autrijus_ | !!. | ||
just a sec. | |||
nothingmuch | ack! I have svk log talk about r6 | 16:28 | |
and then i'm trying svk push -f (r6|6) -P - | |||
it says 6 is not a depot path | |||
autrijus_ | the junction bug has gotten into you? | ||
nothingmuch | no, that was human oriented junctioning | 16:29 | |
or rather, regexing | |||
autrijus_ | makes sense | ||
nothingmuch | without having to learn svk from scratch, how do i just do this? | ||
i want to get back to what i was doing | |||
autrijus_ | darcs revert ? | 16:30 | |
err | |||
svk revert? | |||
nothingmuch | no, in the sense "i want to finish saving this patch to a file so i can continue my work" | ||
stevan | autrijus: in the interactive PUGS environ | ||
sub foo returns List { return [ 'foo', 'bar' ] }; my $x = foo(); say(ref($x)); say($x) | |||
does not spiral into death :) | |||
autrijus_ | oh. | 16:31 | |
stevan | however, it does print 'Str' (for the ref()) then 'bar' | ||
and not 'List' like it should | |||
autrijus_ | nothingmuch: use svk log to find the local rev you wnat to push | ||
nothingmuch: then "svk desc 123 > foo.patch" | |||
nothingmuch | i found out, it's 6 | ||
ah | |||
so what's svk push -P ? desc all the patches since last real push? | 16:32 | ||
autrijus_ | essentially that. | ||
nothingmuch | ok | ||
ok, patch #2, given tests, sent | |||
now back to try-catch | |||
autrijus_ | woot. I'm still sorting thru my mismerges | 16:33 | |
nothingmuch | note that t/base/given.t depends on t/base/anon_blocks.t passing (todo tests too) | 16:34 | |
or wait, it doesn't | |||
crap, scrap that patch | |||
uncrap, i typed the wrong email address, so it bounced anyway =D | 16:35 | ||
autrijus_ | hehe | ||
stevan hands nothingmuch some coffee | |||
nothingmuch just had coffee + baklawe | 16:36 | ||
mui bien | |||
stevan hands nothingmuch his medication :P | |||
nothingmuch | where is that svk/darcs comparison table? | 16:37 | |
autrijus_ | there is many ones | 16:38 | |
nothingmuch | how can i zap a patch? | ||
autrijus_ | in svk? | ||
nothingmuch | uhuh | ||
or maybe that comparison was for tentative features? | 16:39 | ||
autrijus_ | in darcs? unpull? | ||
nothingmuch | more like unrecord | ||
unpull = unrecord + revert, sort of | |||
i want the changes to be made active again | |||
autrijus_ | sure | ||
unrecord in svk is impossible. | |||
which is why I learned haskell | |||
nothingmuch | oi | ||
autrijus_ | in the first place. | ||
you can apply the reverse patch easily | |||
nothingmuch | i'll zap the svk tree, and apply my sent patch to a fresh repo and just go on from there | 16:40 | |
autrijus_ | via svk merge | ||
but that's not the same thing. | |||
that sounds sane. | |||
I should've been working on SVK post-1.0 task now | |||
if not for this pugs thing :) | |||
nothingmuch | oh wait, will i be able to check out now? | ||
autrijus_ | sure, from svn.perl.org/perl6/pugs/trunk | 16:41 | |
nothingmuch | so why did i checkout from another repo yday? | 16:42 | |
autrijus_ | because openfoundry was the main repo | ||
and it was down for maintanence | |||
for the next 36 hours. | |||
which sucks, but we deal | |||
nothingmuch | autrijus: the implicit colon stuff is not working | 16:47 | |
anon blocks now execute | 16:48 | ||
so two parts of the nest are passing | |||
s/nest/test/ | |||
autrijus_ | wait wait | 16:49 | |
we're talking about your p6c patch? | |||
stevan: I've finished 3way merge; some tests fail due to misprototyping of unshift() and push() vs the new parsing; I'll deal | 16:50 | ||
r553 svn.perl.org | |||
stevan: but you may commence unTODOing | |||
stevan | autrijus: will do | 16:51 | |
nothingmuch | yes | ||
this test pases: eval '{ $one = 1 }' | |||
stevan | autrijus: I am also writing a t/base/subs.t test to document that weirdness I pasted in | ||
autrijus_ | +plan 9; # from outer space | ||
roflmao! | |||
okie. | |||
nothingmuch++ | 16:52 | ||
nothingmuch | and this test half passes: eval '{ $one = 1 } { $two = 2 }' | ||
todo_is($two) is ok | |||
but not $one | |||
autrijus_ | implicit semicolon is Not There. | ||
but the trailing final semicolon is optional anyway. | |||
that explains the result you see. | |||
nothingmuch | ah | ||
i thought you fixed | |||
ok, so you fixed not executing, but not implicit semi | 16:53 | ||
nothingmuch will wait | |||
autrijus_ | I fixed "lone block" | ||
yup. | |||
committing your test | |||
nothingmuch | wait | ||
untodo tests 7 and 9 | |||
they pass now | |||
stevan | nothingmuch: I can do that,.. I am already un-TODO-ing | 16:54 | |
autrijus_ | I did. | ||
nothingmuch | and rename test 8 to "blah blah implicit semi" | ||
autrijus_ | r555 is untodoing. | ||
nothingmuch | bueno | ||
autrijus_ | I'll leave renaming to stevan. | ||
I'm fising the push/unshift bug now. | |||
s/fis/fix/ | |||
and then maybe implicit semicolon. | |||
nothingmuch | wonderful | ||
autrijus_ | TPJ says we are moving at "breakneck speed" :) | ||
crysflame | woo | 16:55 | |
the whiplash from the commit mails nearly broke my neck, man | |||
nothingmuch | how do i do the opposite of svk push -P - ? | ||
autrijus_ | svk patch apply - | ||
? | |||
nothingmuch | i guess | 16:56 | |
grazie | |||
autrijus_ | no prob | ||
clkao | do people like svk? | 16:57 | |
nothingmuch prefers darcs so far | |||
oh crap | 16:58 | ||
(cd ../pugs-svk.broke/; svk desc 5) | svk patch apply - | |||
autrijus_ | nothingmuch: for svk help, #svk is the place and clkao is the author | ||
clkao | svk patch doesnt like your usual unidiff, thanks. | ||
nothingmuch | locks | ||
autrijus_ | (and for darcs help, #darcs is the place and... well droundy isn't around here) | ||
jdv79 | autrijus, maybe its because you are moving that fast :) | ||
clkao | but now i'm off to bed | 16:59 | |
nothingmuch | i don't need darcs help anymore | ||
=) | |||
autrijus_ | hah. | ||
yeah, darcs is much more intuitive. | |||
clkao | (for people like autrijus that is not using cvs 10 years ago) | 17:00 | |
autrijus_ | exactly. | ||
for bugward ui compatibility (and for non-fragility, and speed), svk is wonderful. | |||
nothingmuch started with cvs and found it unintuitive | 17:01 | ||
PerlJam | nothingmuch: It's a little hard to find anything you have no experience with "intuitive" ;-) | 17:02 | |
nothingmuch | i had experience with cvs | ||
i used it for about 2 years | |||
oi vey, now i'm having trouble creating temp files | |||
*whine* | |||
17:03
_metaperl is now known as metaperl
|
|||
autrijus_ | oi. | 17:03 | |
greetings metaperl-san | |||
PerlJam | Yeah, I know what you mean by intuition. I've used CVS off and on for many years now and the biggest problem I've had is remembering the esoterica to get useful work done. With svn (and presumably svk) the interface has a more regular structure and design such that there is no esoterica | 17:04 | |
nothingmuch | i haven't really used svn, and svk has been getting treated unfairly by me in the past several hours | ||
i'm biased, since openfoundry is down, and now my checkouts are confused | 17:05 | ||
PerlJam | nothingmuch: indeed. It's a pain. It's too bad that svn.perl.org wasn't an online, realtime mirror of openfoundry | ||
autrijus_ | nothingmuch: darcs repo now closely mirrors svn.perl.org | 17:06 | |
so if you'd like to sw to darcs now, that's entirely fine | |||
:) | |||
nothingmuch | i work in darcs | ||
when i edit | |||
i have real patches | |||
do you want them instead? | |||
autrijus_ | sure! | ||
I work in both :) | |||
so you can "darcs send" me stuff | 17:07 | ||
nothingmuch | ok, i thought you had bandwidth issues with that | ||
a)ll, h)ead, -count, revision? [a] Interrupted. | |||
=D | |||
autrijus_ | wtf? | ||
nothingmuch | ^C | ||
autrijus_ | ahh :D | ||
seano | PerlJam: wtf? 'co, add, commit, update' What can be more natural? If you put an infant in front of a machine and told it to hack, it will naturally start producing these utterances! | 17:08 | |
PerlJam | seano: :-P | ||
seano | nothingmuch: svk's a chatty bastard, isn't it? | ||
crysflame | haha | ||
seano++ | |||
c co, c a, c ci, c up | |||
C CO C CA | 17:09 | ||
seano | "unpull" isn't even a word! | ||
PerlJam | you know what this channel doesn't need? A bot that tells us when commits have been made to pugs. | ||
nothingmuch | autrijus: add an email file to wagner.elixus.org/~autrijus/darcs/pugs | ||
crysflame | seano: but it leads directly to its meaning | ||
integral | PerlJam: configure CIA :-) | ||
crysflame | "reverse the pull" | ||
PerlJam wanders off to a graduate student's presentation | |||
nothingmuch | ok, patch for given.t also sent | 17:10 | |
seano | I guess it's the push/pull vs. checkout/checkin thing that gets me. People talk about the greatness of "distributed version control", but in my experience it's only been used in a centralized way. | ||
nothingmuch | now i'm finally resuming work on try.t | ||
nothingmuch uses darcs very distributedly... | 17:11 | ||
autrijus_ | seano: until... the main repo goes down | ||
then, svk and darcs will survive | |||
seano | ...and centralized, "pull" is just a weird way to say "co" | ||
nothingmuch | public repos are on mine and others's websites | ||
autrijus_ | cvs and svn will go crashing down | ||
nothingmuch | but i normally share to other places | ||
patch flow looks like a graph | |||
seano | autrijus_: then we have the current cock-up with me having to put 40M of SVK glop on my machine to keep up with the latest. | ||
autrijus_ | seano: 40M? | 17:12 | |
crysflame | seano: hey, GHC is at least 10M | ||
60 if you go for source | |||
autrijus_ | 40M!? | ||
seano | That's what the installer says... | ||
crysflame | OS X installer disk space estimate? | ||
autrijus_ | I don't think the installer knows what it's talking about. | ||
seano | You're probably right. Still, it's slow enough to make me think it's 40M. | ||
autrijus_ | but maybe it does. not using OSX currently :) | ||
crysflame | the OS X installer is totally on crack | 17:13 | |
seano | But the point remains that our development model is completely centralized. | ||
autrijus_ | sure. the main selling point is not decentralization | ||
seano | (and yes, the disk space winge is completely bogus, since GHC is utterly ginormous). | ||
autrijus_ | it's offline commits. | ||
nothingmuch | well, distributed devel must still correlate somewhow | ||
autrijus_ | i.e. being able to view logs and commit thingswhen you have no bandwidth | ||
or like me, with 2400bps. | |||
crysflame | oooh | 17:14 | |
nothingmuch: there's algorithms that govern the correlation effectively | |||
iirc, darcs uses some variant of quantum math | |||
seano | ok. the problem for which my solution is to keep both local and remove CVS repositories ;). | ||
nothingmuch | no, not that kind | ||
seano | crysflame: "it's ... science!" | ||
autrijus_ | seano: which is exactly what svk does, only automatically | ||
I tried googling for fa*lu*gon* today and I was promptly disconnected. | |||
crysflame | seano: i like science. star trek helped me understand the alcubierre warp field. | 17:15 | |
nothingmuch | i mean, you can't just put a patch somewhere, and google spiders it and commits it to everyone's repos | ||
autrijus_ | and google.com had not been working so far. | ||
crysflame | autrijus: errr, eh? | ||
autrijus_ is working without google :-/ | |||
nothingmuch | you need, as a group of developers, to decide what is the place stuff goes to | ||
crysflame | nothingmuch: that place can be many places | ||
nothingmuch | with distributed VCS this place can change more easily | ||
and that place can be more than one | |||
crysflame | autrijus: /m phenny .g foo | ||
nothingmuch | but you can | ||
t control revisions without sharing somewhere | 17:16 | ||
the central paradgim was so successful not because it's easier or something | |||
it was just the obvious choice since no need for an altrnative was evident | |||
crysflame | you know, i've worked out the plans in my head for an internet worm that uses google and slashdot comments and steganography to update itself | 17:17 | |
so distributed vcs over the net doesn't actually scare me so much | |||
nothingmuch | a p2p virus with a packaging format will probably be the end of microsoft | ||
each virus comes with an initial public key | |||
and new modules are signed | |||
so the virus can't be made to kill itself | 17:18 | ||
crysflame | metasploit + web spider + stego | ||
you got it | |||
nothingmuch | then exploits are just added over time | ||
and you have a platform that spreads | |||
crysflame | stir in a bit of code yellow, and you have 12 minutes to total infection of all public boxes for each new exploit | ||
nothingmuch | then you run folding@home on it | ||
autrijus_ | yay. push() is now a proper binop. | ||
nothingmuch | exactly | ||
crysflame | screw that. climateprediction.net | ||
the earth is going to kill us long before cancer does | |||
nothingmuch | i didn't know about that one =) | 17:19 | |
crysflame | they're simulating climates over boinc | ||
nothingmuch | anywho, i think the real issue is that anyone with the brains to design this properly knows that the likelyhood of getting cought is a bit too big | ||
another important issue is DoS modules | 17:20 | ||
that bring down windowsupdate et al more intelligently than a hardcoded IP | |||
starting at least with the DNS level | |||
crysflame | don't bring down windows update, man | 17:21 | |
the point is to get people to fix their stuff, not to hack it | |||
nothingmuch | i don't want to do it | ||
crysflame | well, let me rephrase | ||
my suggestions are not intended to be used to harm | |||
nothingmuch | i'm just noting what will really be vicious | ||
ah | |||
crysflame | you can cancel out the DoS module with a reporter module | ||
nothingmuch | my prophecy is dark | ||
crysflame | i harness dark for light | 17:22 | |
autrijus_ | stevan: how's unTODO going? | ||
nothingmuch | i'm not going to harness, so ;-) | ||
crysflame | a distributed network of sploited boxes that call their upstream providers using whois.arin.net and say "Hi, I'm infected with an exploit. Here's my user's information; please contact or disconnect me immediately. Thanks!" | ||
stevan | autrijus: just finshed lunch,.. should be done soon | ||
autrijus: I am getting some errors for push and unshift, should I ignore them for now? | 17:23 | ||
autrijus_ | I've just fixed them. | 17:24 | |
stevan | ok | ||
autrijus_ | the fix broke grep and map | ||
in a good way | |||
stevan | sending patch now | ||
autrijus_ | so I'm fixing that too | ||
I'll roll yours and mine together | |||
and commit | |||
(and sleep) | |||
in 10 hours I'll meet with ~1dozen people from perlchina | 17:25 | ||
and spread pugs some more | |||
stevan | nice | ||
nothingmuch | good luck! | ||
autrijus_ | I sold haskell to hideki-san yesterday | 17:26 | |
I really hope he can find the time to play with haskell/pugs :) | |||
hideki-san == super productive hacker | |||
rjbs | not like you? O_o | ||
:) | |||
nothingmuch | rjbs++ | ||
autrijus_ | uh, actually much more prolific than me | 17:27 | |
# www.freestandards.org/modules.php?n...amp;pid=20 | |||
rjbs | so, approaching singularity? :) | ||
autrijus_ | in a few decades :) | ||
rjbs | impressive! I put my hopes with yours. | 17:28 | |
autrijus_ | with help from perl6 | ||
I hope. | |||
crysflame | singularity! | ||
stevan | autrijus: I sent another patch to you | ||
rjbs | productivity singularity: any project contemplated is immediately implemented | ||
autrijus_ | I thought that is already the case | ||
stevan | autrijus: this one is for the sub returning array ref issue I was talking about earlier | ||
autrijus_ | you just need to run some sleep() | 17:29 | |
stevan: okie | |||
I just fixed grep and map. | 17:31 | ||
crysflame | rjbs: in the FUTURE | ||
autrijus_ | nothingmuch: have you send me anything? | 17:32 | |
havn't received your darcs send stuff | |||
nothingmuch | yes | ||
i'll check mailserver logs | |||
autrijus_ | cool. autrijus at autrijus dot org | ||
or preferably | |||
send to p6c | 17:33 | ||
nothingmuch | ok, p6c it is | ||
autrijus_ | stevan: | ||
nothingmuch | set the _darcs email file | ||
autrijus_ | todo_ok(42 < 12 & 20 & 32, "test the all infix operator"); | ||
this looks _very_ suspicious | |||
nothingmuch: how do I reset that again? | |||
I mean, 42 is > all of 12,20,32 | |||
nothingmuch | either echo "foo@bar" > _darcs/email | ||
or _darcs/prefs/email | |||
i forget | |||
Mar 4 05:19:38 pasta postfix/smtp[28463]: C43D8382C2: to=<autrijus@autrijus.org>, relay=mail.autrijus.org[220.132.132.105], delay=12, status=sent (250 Ok: queued as BD7D5D4C78) | 17:34 | ||
autrijus_ | k, no worries, will figure it out | ||
stevan | autrijus: not my tests, I am not sure where that crept in | ||
autrijus_ | got it. | ||
Fri Mar 4 05:14:52 IST 2005 Yuval Kogman [email@hidden.address] | |||
* Test that lone blocks with implicit semicolons actually execute | |||
nothingmuch: looks correct? | |||
nothingmuch | yes | ||
that is i | |||
autrijus_ | stevan: ok, I'll reverse the dir of < | ||
super. | |||
stevan | junctions are metaperl's thing :) | ||
nothingmuch | it is even signed | ||
but our gpg path is about 8 keys apart | 17:35 | ||
autrijus_ | I try to trust the code not the person :) | ||
nothingmuch | good point | ||
autrijus_ | shift.t is now all pass. | 17:37 | |
stevan | nice! | 17:38 | |
autrijus_ | may I request a nomenclature? | ||
it's "Pugs" :) | |||
PUGS only came as a retronym. | 17:39 | ||
it's a minor issue anyway :) | |||
seano | But I'm sure it will spawn endless usenet discussion like "PERL" vs. "Perl" vs. "perl". | 17:40 | |
stevan | autrijus: do you want a patch for un-TODOing shit? | ||
metaperl_ | how about REPL | ||
seano | I think we need more alterna-capitalizations. "PuGS" -- "Purely Good Stuff". | 17:41 | |
metaperl_ | relative expression-based parsing language | ||
stevan | s/shift/shit/ | ||
seano | stevan: shit.t passed? | 17:42 | |
autrijus_ | ... | ||
stevan | seano: that has been renamed to movement.t | ||
autrijus_ | stevan: no, I unTODOed them myself | ||
comitting | |||
(with yours as well) | |||
stevan | cool | ||
seano giggles | |||
autrijus_ | * unTODO from stevan; fixed grep/map/push/unshift parsing so they are properly binOp now; push() and unshift() now really distinguishesthe inv from the args | 17:43 | |
r556. enjoy! | |||
now, journal time and finally sleep :) | |||
Limbic_Region | night night autrijus_ | ||
nothingmuch | wait wait! | ||
try.t in 5 mins | |||
autrijus_ waits... | |||
sure. | 17:44 | ||
send it before I finish writing the journal :) | |||
nothingmuch | hmm | 17:45 | |
how would i say isa_ok in Test? | 17:46 | ||
patch Test? | |||
stevan | nothingmuch: I usually do is(ref($x), '..." | ||
nothingmuch | or ignore it for now due to lack of object support? | ||
autrijus_ | just write isa_ok using ref() | 17:47 | |
I think. or punt and use todo_ | |||
nothingmuch | delayed | ||
is the right place for try t/op/try? | |||
i'm not sure wither it takes an block and tries it (hence op) | 17:48 | ||
or if it's a control structure | |||
conceptually | |||
autrijus_ | wow, one week passed durgin 6.0.9 and now | ||
I can hardly feel it | |||
t/base/try perhaps | |||
s/perhaps/definitely/ | |||
nothingmuch | ok | ||
autrijus_ | I guess it's time for 6.0.10. | ||
tomorrow then. | 17:49 | ||
autrijus_ tries to keep up with weekly releases | |||
nothingmuch | hmm | ||
autrijus_ | there's simply too much changes in one week. :-/ | 17:50 | |
but I probably can't afford to do 2 release per week. | |||
so 1 week per release sounds right | |||
stevan | autrijus: we can split up the responsility maybe | ||
nothingmuch | oh, i forgot $! has trouble parsing | ||
autrijus_ | stevan: that works; except it's not much work in prepping a release | 17:51 | |
stevan | not much work, but does take time | ||
autrijus_ | true. | ||
actually 80% of the work is on the ChangeLog. | |||
I can easily handle the rest with tools | |||
stevan | yeah | ||
autrijus_ | so if you are willing to write a ChangeLog in the next 10 hours | ||
then I'd be very very grateful :) | 17:52 | ||
stevan | autrijus: I am not sure all that you have done | ||
autrijus_ | that'd be a great gift for perlchina | ||
I think just browse the logs and the diary | |||
I usually simply use the diary as skeleton | |||
stevan | autrijus: ok, will do | ||
autrijus_ | and fill in details from the log | ||
that's all info I was working with anyway | |||
the majority of changes are now not done by me :-) | |||
stevan++ | 17:53 | ||
autrijus_ turns back to "Day 32: Breakneck speed!" | |||
metaperl_ | so what do I type to update from svn.perl.org | 17:55 | |
but we already defined a function | 17:56 | ||
nothingmuch | ok, patch for try.t sent to p6c | ||
autrijus_ | metaperl: "svn up"? "svk pull" | ||
metaperl_ | return = (\a -> (\s -> (s, a) ) ) | ||
oops | |||
autrijus_ | that sounds very monadic. | ||
metaperl_ | :) that is what I am studying | 17:57 | |
should the kwiki or pugscode contains some of this technical info? | 17:58 | ||
stevan | is diary the darcs term for svn log? | ||
metaperl_ | since we have 1 whole day wihtout openfoundery | ||
nothingmuch | darcs changes | ||
;-) | |||
metaperl_ | what is the whole cmdline to update from svn.perl.org? anyone know? | ||
stevan | nothingmuch: can you send me the list of all darcs changes since Feb 28th | 17:59 | |
svn co svn.perl.org/perl6/pugs/trunk | |||
nothingmuch | reverse chrono order, si? | 18:00 | |
perlbot, nopaste? | |||
perlbot | Paste your code here and #perl will be able to view it: sial.org/pbot/perl | ||
metaperl_ | I think that should go in the topic for the next day... dont you guys? | ||
autrijus_ | the darcs changes are duplicated in svn.perl.org. :) | ||
metaperl: sure, feel free to set it | |||
stevan | autrijus: very cool,.. svk I assume | ||
autrijus_ | i.e. the svn log should be a superset. | ||
Khisanth | ... so pugs is now using 3 repos?! O_O | 18:01 | |
nothingmuch | sial.org/pbot/7891 | ||
autrijus_ | Khisanth: by neccessity not by choice! | ||
nothingmuch | why doesn't /invite pasteling | ||
integral | you need to be opped to invite pastling afaik | ||
nothingmuch | bummer | 18:02 | |
Khisanth | sial.org/pbot/ instructions for inviting pasteling are on the bottom of that page :P | ||
could always ask thrig ... | |||
autrijus_ | nothingmuch: I changed email for darcs/pugs/ | ||
I think I did, anyway | |||
nothingmuch | yay! | ||
autrijus_ | verify it for me? | 18:03 | |
nothingmuch | autrijus: give me a tiny task | ||
Khisanth | integral: well you just need some way to /invite probably :) | ||
autrijus_ | nothingmuch: do you have a cpan ID? | ||
integral | Khisanth: true ;-) | ||
nothingmuch | ~NUFFIN | ||
autrijus_ | good | ||
so the task is adding yourself to AUTHORS | |||
now implement it :) | |||
nothingmuch | ok | 18:04 | |
obra | hah | ||
nothingmuch | ooh! i get to use conflict merging for the first time in real life, with darcs | ||
nothingmuch only faked cases before | 18:05 | ||
metaperl_ | Run Perl6 Now! | pugscode.org ('Overview', 'Journal') | pugs.kwiki.org | chan now logged: xrl.us/e98m | openfoundry down. svn co svn.perl.org/perl6/pugs/trunk | 18:05 | |
nothingmuch | autrijus: try again | 18:07 | |
move email file to to the other logical place | |||
autrijus_ | ok, try again? | 18:08 | |
greetings luqui-san! | |||
luqui | hello | 18:09 | |
yay, the week is over | |||
nothingmuch | =( | ||
stevan | hey, should "unshift @unshift3, @val2;" flatten @val2? | ||
luqui | yes | ||
stevan | oops | ||
nothingmuch | this is odd | ||
stevan | autrijus: I am going to send you some test patches :) | 18:10 | |
nothingmuch | ah! | ||
now it works | |||
luqui | get_stuff ==> unshift @array | ||
nothingmuch | Creating patch to wagner.elixus.org/~autrijus/darcs/pugs... | ||
Found email to send to [email@hidden.address] | |||
autrijus_ | woot. | 18:11 | |
stevan: go ahead :) | |||
stevan | autrijus: BTW the unshift issue is now just reversed | ||
instead of ",42", its printing "42," | 18:12 | ||
so the undef is just the second element | |||
but you need to post your journal and sleep,.. so that is for another day :) | |||
luqui | is openfoundry down? | 18:13 | |
autrijus_ | yup. | ||
stevan | luqui: yes | ||
nothingmuch | luqui - yes, see chat toppic | ||
autrijus_ | use svn.perl.org instead for the next 36 hours | ||
luqui | okay | ||
nothingmuch | tr/p/p/s | ||
luqui | that stupid "@a" bug still isn't gone | 18:17 | |
stevan | luqui: which one is that? | ||
luqui | try: my @a = (1,2,3); say "@a"; vs. say " @a" | ||
basically "@a" is acting like @a, not ~@a | 18:18 | ||
autrijus_ | huh? | ||
I fixed it | |||
stevan | weird | ||
luqui | You said you did... and the patch looked like it should have | ||
but it's still broken | |||
autrijus_ | ah. I found it. | ||
luqui++ | |||
nothingmuch | should I test? | 18:19 | |
stevan adds another bullet point to the change log | |||
luqui | oh yeah, we test things that are broken... | ||
stevan | nothingmuch: put it in t/op/string_interpolation.t | ||
nothingmuch | not 02atoms where other interps are? | ||
luqui | I just put them there because that's where other basic tring stuff is | 18:20 | |
stevan | nothingmuch: the 0n.t are for synopsis stuff | ||
luqui | oh, okay | ||
nothingmuch | ah | ||
stevan | but the t/op/ tests are more specific | ||
luqui | didn't know that | ||
metaperl_ | thanks for fixing the junctions... now I can give a demo at our local perl mongers meeting next wednesday on them! | ||
all the tests just passed | |||
luqui | we should move the other interpolation stuff from 02atoms into there too | 18:21 | |
stevan | luqui: it really doesnt matter, but with the number of tests growing its easier to break them into smaller peices | ||
nothingmuch | huh? | ||
luqui | right | ||
nothingmuch | say "@a"; | ||
"123" | |||
autrijus_ | luqui: I fixed your bug now. | ||
it now says "1 2 3" | |||
committing | |||
luqui | nice. | ||
autrijus_++ | |||
svn diff -r558:559 | 18:22 | ||
nothingmuch | sent | ||
luqui | oh, that's pretty close to how I fixed it the first time | ||
except I threw a prefix:~ on the front of the whole thing | 18:23 | ||
stevan | what are we gonna do when autrijus is sleeping, we need a svn.perl.org commiter in here | ||
luqui | I am one | ||
nothingmuch | is("@a", ~@a, "Interpolation of array is in string context"); passes | ||
stevan | luqui++ | ||
autrijus_ | woot. | 18:24 | |
nothingmuch | without synching | ||
autrijus_ | luqui: yeah, prefix~ is wrong | ||
it's not really wrong | |||
luqui | why? | ||
autrijus_ | but I don't like the reliance on the binding | ||
because user may redefine it | |||
luqui | we're relying on ~"" | ||
autrijus_ | and we should not use the userdefined one, I think | ||
(I think) | |||
luqui | but interpolation is defined as concatenation | ||
autrijus_ | yeah, p5 currently uses binary ~ overloading too | ||
but not unary ~ | 18:25 | ||
unary ~ has nothing to do with concat. | |||
luqui | yeah I think yours is a little more right | ||
autrijus_ | =) | ||
sorry for being pedantic. | |||
metaperl_ | could you run examples/junctions/3.p6 please ? | ||
i think it is returning true when it should not | |||
the first case should not return true | |||
autrijus_ | only one at least 1 newval is less than oldvals | ||
not two | |||
it now works | |||
as expected. | |||
nothingmuch | luqui: can you help me fail the test? | ||
metaperl_ | nothing in @newval1 is < @oldval | 18:26 | |
nothingmuch | your example works for me | ||
metaperl_ | @newval1 = (15, 17,14); | ||
luqui | nothingmuch: hmm? | ||
metaperl_ | each of these values is greater than any in @oldval | ||
luqui | what rev are you at? | ||
metaperl_ | @oldval=(5,8,12); | ||
luqui | oh I know why | ||
metaperl_ | 559 revision | 18:27 | |
luqui | Do sub foo (*@a) { return +@a } | ||
in 559 it is fixed | |||
metaperl_ | you want me to do that? what the hey does that mean? | ||
:) | |||
luqui | and then ok(foo("@a") == 1) | ||
metaperl_ | luqui were you talking to me? | ||
luqui | no, to nothingmuch | ||
oh, I'm confusing who I'm talking to | 18:28 | ||
metaperl_ | what does the * infront the @a mean? | ||
luqui | flatten | ||
autrijus_ | ok, journal up. zzz | ||
have fun, lambdacamels :) | |||
luqui | flatting context, rather | ||
autrijus_ | & | ||
stevan | night autrijus | ||
metaperl_ | night aut | ||
luqui | night | ||
nothingmuch | night | ||
explain please, luqui | |||
luqui | if "@a" is identical to @a, then it should flatten into foo | 18:29 | |
but ~@a won't | |||
nothingmuch | foo gets array items flattenned into @a, and then makes numeric context (== count) | ||
oh | |||
luqui | right | ||
(we technically don't need the +) | |||
er, we should have it | |||
nothingmuch | that was a parse error | ||
"@a" was passed as really @a? | 18:30 | ||
luqui | yeah? | ||
yeah | |||
nothingmuch | sorry, s/$/?/ | ||
i see, i get 3 | |||
synch will probably tell fix | |||
luqui | I wonder if we can do +"@a" == 3 to avert the sub call | 18:31 | |
nothingmuch waits for svn<=>darcs synch | |||
metaperl_ | ah heck, I dont have commit access on svn.perl.org | ||
stevan | metaperl: we have just been sending patches to p6c | ||
metaperl_ | canwe commit via darcs? | 18:32 | |
stevan | no idea | ||
ask nothingmuch | |||
luqui | who is yuval? | 18:33 | |
stevan | yuval == nothingmuch (AFAIK) | ||
metaperl_ | stevan you have a second to look at examples/junctions/3.p6 | ||
? | |||
stevan | metaperl: junctions are not really my thing, so I am not sure I would know what I am looking at | 18:34 | |
metaperl_ | let me give you a URL | 18:35 | |
stevan | that works | ||
metaperl_ | www.perl.com/pub/a/2003/07/29/exege...tml?page=4 | ||
no, I dont htink it does | |||
:) | |||
I dont think the first if-then should say anything... it should fail | |||
that Exegesis shows junctions quite nicely | 18:36 | ||
brb | |||
ok it's ok if you aren't interested. but I have to get this nailed down somehow | 18:39 | ||
luqui | nothingmuch: accidentally lost your string interpolation mail, but I committed the test that we worked out | 18:40 | |
nothingmuch | i am yuval | ||
luqui | I heard :-) | ||
nothingmuch | sorry, i was cleaning up | 18:41 | |
ok, so what was committed? | |||
i have a small patch, is("@a", ~@a) | |||
that was sent | |||
and i wrote is(foo("@a"), 1) | |||
and now i'm waiting for autrijus's fix | |||
to make sure it passes, | |||
luqui | It does | ||
nothingmuch | ok, so should i just commit that? | 18:42 | |
ingy | hola | ||
nothingmuch | or did someone else already do that? | ||
luqui | it's already done | ||
I did | |||
nothingmuch | wĆ¼nderbar | ||
metaperl_ | ingy are you into junctions at all? | 18:43 | |
luqui | I can help you with your example | ||
metaperl_ | ok | 18:44 | |
it's examples/junctions/3.p6 | |||
in release 559 | |||
luqui | I'm at 561 | ||
metaperl_ | oh ok | ||
luqui | should be fine right? | ||
metaperl_ updates | 18:45 | ||
im at 561 | |||
so anyway the first if-then should not fire | |||
luqui | it doesn't | ||
ingy | metaperl_: I used a junction in a test I wrote for COnfig | ||
but I'm no expert | |||
metaperl_ | no value in @newval1 is less than the values in @oldval1 | ||
ingy | far from it actually | ||
metaperl_ checks the script again | 18:46 | ||
ingy: ok thanks anyway | |||
ingy | sure | ||
luqui | you should mark the two "say"s so you know which one happened | ||
metaperl_ | luqui it prints twice | ||
luqui | really? | ||
not for me | |||
metaperl_ | i did change the say()s but couldnt commit | ||
luqui | what does svn stat for you say? | ||
metaperl_ | more relevant is what does pugs -v say | 18:47 | |
metaperl_ checks pugs -v | |||
old pugs | |||
luqui | ahh... that'll do it | ||
metaperl_ | make install did not overwrite with new build | ||
luqui | weird | ||
(oh, you can install it? neat, I'm going to do that) | |||
metaperl_ | ok thanks | 18:48 | |
luqui | committed 3.p6 with changed says | ||
metaperl_ | perl Makefile.PL PREFIX=~/perl; make ; make test; make install | ||
luqui | off to class | ||
metaperl_ | your PREFIX may vary or be non-existent | ||
cya | |||
thanks | |||
luqui | back in three hours | 18:49 | |
nothingmuch | hmm | 18:51 | |
for (1, 2, 3, 4) -> $odd, $even is not there yet | |||
is this a bug? or does it depend on zip in terms of implementation somehow | 18:52 | ||
stevan | nothingmuch: I think that needs to have a zip() in there | ||
nothingmuch | well, unzip, actually | ||
will zip((1, 2, 3), (5, 6, 7)) work with that exact syntax? | 18:55 | ||
stevan | I think, but I am no expert | ||
nothingmuch | i mean, in perl6 () is not flat, like in perl 5, right? | ||
(list) in list context | |||
stevan | nothingmuch: best to ask luqui for the real answer ;) | 18:56 | |
nothingmuch | who is luqui, btw? | ||
stevan | Luke palmer | 18:57 | |
nothingmuch | ah | ||
stevan | zh-cn is chinese and zh-tw is taiwanese right? | 18:58 | |
PerlJam | nothingmuch: yes, your zip should work | 18:59 | |
nothingmuch | good | ||
compare: | 19:08 | ||
eval 'my $t; $t = (1 == 1) ?? 1 :: 0; $t'; | |||
eval 'my $t = (1 == 1) ?? 1 :: 0; $t'; | |||
hmm | |||
that's not it | |||
say eval 'my $t; $t = (1 == 1) ?? "true" :: "false"; $t'; | |||
say eval 'my $t = (1 == 1) ?? "true" :: "false"; $t'; | |||
first is 1, second is "true" | 19:09 | ||
wolverian | autrijus: your perl.com link on your journal is broken; missing http:// | ||
nothingmuch | is the first a bug? | ||
stevan | wolverian: he is asleep | ||
PerlJam | nothingmuch: $t should be "true" in both cases. | 19:10 | |
nothingmuch | where would you test this? | ||
stevan | nothingmuch: this is weird | 19:11 | |
nothingmuch | given.t has a false todo ok because of this | ||
hlen_ | what does my @array = @anotherarray; do in perl6? does @array become a list with a single element, in this case the reference to @anotherarray? | 19:12 | |
nothingmuch | i made a patch that uses if { } else { if {} else {} } instead | ||
stevan | nothingmuch: I saw that false todo | ||
hlen_ | s/a list/an array/ | ||
nothingmuch | i have a patch to fix it, but i'm considering not submitting it | ||
due to the fact that it isn't my fault | |||
stevan | hlen: I believe it copies @anotherarray into @array | ||
PerlJam | hlen: no. The intuitive thing happens. | 19:13 | |
hlen_ | PerlJam, copying? | ||
stevan | nothingmuch: if a bug in pugs distorts the test results, we should adjust the test to avoid the bug | ||
unless of course we are testing for the bug | |||
nothingmuch | ok | ||
well, we'll be testing for the bug as soon as i figure out a proper place to test that bug | 19:14 | ||
stevan | maybe we need a ??::.t file? | ||
in t/op/ | |||
nothingmuch | i think this is rather with my | ||
integral | I thought there was a cond.t already? | ||
nothingmuch | or assignment in general | ||
stevan | nothingmuch: can you reproduce it with other operators? | 19:15 | |
my guess is that you are getting the boolean back | |||
nothingmuch | i don't really know what's going on, but i'll try | ||
stevan | pugs -e 'my $t; $t = (1 == 1) ?? "true" :: "false"; say ref($t)' | 19:16 | |
try that | |||
you are getting the Bool back | |||
ref() is your friend :) | |||
nothingmuch | good to know | ||
stevan | pugs -e 'my $t = (1 == 1) ?? "true" :: "false"; say ref($t)' | ||
that prints Str | |||
the other Bool | |||
so I am guessing that it is a ??:: bug | |||
nothingmuch | so is "$t = " without the my enforcing boolean context? | 19:17 | |
autrijus | just fwi: darcs sync has been restarted now. | ||
back to sleep & | |||
nothingmuch | heh | ||
had a nightmare? | |||
stevan | nothingmuch: I am not sure what you are asking | ||
autrijus is sleep syncing | |||
PerlJam | stevan: why would you guess it's a ??:: bug? It seems to me that the difference is between initialization and assignment. | 19:19 | |
stevan | PerlJam: my thought is that its the ret val of ??:: | 19:20 | |
but I am just guessing :) | |||
nothingmuch | sial.org/pbot/7894 | ||
i think this is a bug in parsing | 19:21 | ||
because it doesn't get boolianized "false" which is true | |||
stevan | nothingmuch: how so? | ||
nothingmuch | of assignments | ||
qmole | i don't understand why it's printing 1 anyway | ||
stevan | qmole: that is how bool::true is printed | 19:22 | |
nothingmuch: so do you want to put it in my.t? or ??::.t | |||
PerlJam | qmole: because it's parsing as ($t = (1==1)) ?? "true" :: "false" so $t gets the value of the conditional | ||
nothingmuch | but rather the (1==0) or (1==1) | ||
look closely at that past | |||
e | |||
qmole - that's a bug | |||
now were trying to find out where | |||
i'd put it in my.t | |||
stevan | nothingmuch: ok I will paste it in, I have a big patch building already | 19:23 | |
nothingmuch | great | ||
qmole | aha | ||
nothingmuch | wow, darcs' conflict resolution is so much fun when it's for real | 19:25 | |
crysflame | heh | 19:26 | |
that is not a reaction i have ever had to cvs | |||
but boy howdy does p4 merge work well with P4MERGE=FileMerge.app | |||
nothingmuch | i don't get much merge errors at work when we use p4 | ||
Khisanth | hmm | ||
nothingmuch | even though i'm the integrator and build monkey | 19:27 | |
Khisanth | nothingmuch: your pastes keep showing up in #perl :) | ||
nothingmuch | oh shit! | ||
now i get it | |||
nothingmuch blushes | |||
stevan | 19:29 | ||
my $t works ok | |||
it's assignment without my that is broken | |||
it doesn't belong in my.t | |||
hlen_ | are the pipe operators already implemented? | ||
nothingmuch | ==> ? | ||
PerlJam | you mean <== and ==> ? | ||
hlen_ | yes | ||
nothingmuch | no | ||
hlen_ | ok =\ | 19:30 | |
i'm going to love those | |||
stevan | nothingmuch: where should we put it them if not my.t | 19:31 | |
nothingmuch | i think they are, next to stacking comparisons (1 < 2 < 3) one of the best language features | ||
i'll create t/op/assign.t | |||
i think | |||
well i did, i just didn't commit yet | |||
stevan | nothingmuch: the my.t test has a number of test where a my var is assigned to | ||
mostly to test its scoping though | |||
can we duplicate this issue with our? | 19:32 | ||
nothingmuch | right | ||
my point is unrelated though | |||
my $t works ok | |||
it's the already declared var assignment that's causing trouble | |||
stevan | pugs -e 'our $t; $t = (1 == 1) ?? "true" :: "false"; say ref($t)' | ||
Bool | |||
yup | |||
nothingmuch: i agree, create that asssign.t | 19:33 | ||
nothingmuch oddly finds himself cw'ing one char integers in vim, instead of r'ing them, due to the fact that ints are not "strings"... | |||
rjbs | nothingmuch: relax your typing system ;) | 19:35 | |
nothingmuch | well, appearantly my head has a bad relaxed type system optimisation thing | 19:36 | |
my head takes a string, integerizes it, replaces it entirely with an integer, and stringifies that | |||
just because looks_like_number($string) is true | |||
maybe it's a percedence thing | 19:38 | ||
my $var = is higher percedence than $var = | |||
sorry, lower | |||
stevan | nothingmuch: maybe | ||
nothingmuch | i will try to investigate, but i may require hand holding | ||
pjcj | Hello Nicholas | 19:40 | |
qmole | it looks like it | ||
nothingmuch | hmm | ||
nwc10 | Hello | ||
nothingmuch | ok, given my $e = ($t = (1 == 1) ?? "true" :: "false") e is not defined | 19:41 | |
qmole | oh | ||
nothingmuch | i suspected the expr got parsed as (($t = (1 == 1)) ?? "true" :: "false") | ||
and thus $t would be 1, and $e would be "true" | |||
but that's not the case | |||
stevan | nothingmuch: have you looked at the parse tree? | ||
qmole | i'd also expect "true" there | 19:42 | |
nothingmuch | should i paste it? | ||
stevan | paste what? | ||
nothingmuch | the parse tree | 19:43 | |
stevan | my $t; my $e = ($t = (1 == 1) ?? "true" :: "false"); wont even parse for me | ||
nothingmuch | sial.org/pbot/7896 | ||
oh, that's why the eval didn't work | |||
that's another, unrelated parse bug | |||
look at the top of t/03operators.t | |||
i think percedence is right | 19:44 | ||
if ($t = (1 == 1)) { "true" } else { "false" } is what i make of it | |||
or maybe not | |||
19:44
edgewalk1r is now known as edgewalker
|
|||
nothingmuch | i don't know how to read the parse tree | 19:45 | |
{ Syn op { opnds } }, right? | |||
if that's the case, than the "true" and "false" are under the assignment tree | |||
stevan | nothingmuch: I just guess on stuff like that | ||
nothingmuch | the "significant" part of either version's (my $t; $t = or my $t = ) parse tree seems rather similar | 19:46 | |
oh, i get it now | 19:47 | ||
with my $t = we have {Var "$t"; | |||
Syn "if" | |||
in terms of order | |||
in the other if comes first, and { Var $t is discussed later on | |||
i conclude that it is a percedence issue | 19:48 | ||
stevan | look at the bottom of the tree output | 19:49 | |
qmole | ah | ||
stevan | Var "$t" | ||
*** Evl: Syn "=" | |||
{Var "$t"; | |||
App "&infix:==" (1, | |||
1)} | |||
*** Evl: App "&infix:==" (1, | |||
1) | |||
*** Ret: bool::true | |||
*** Ret: bool::true | |||
*** Evl: App "&infix:~" ('true', | |||
'') | |||
*** Ret: 'true' | |||
*** Ret: bool::true | |||
bool::true | |||
versus | |||
Var "$t" | |||
nothingmuch | that's the exec tree, not the parse tree, right? | ||
stevan | *** Evl: Syn "if" | ||
{App "&infix:==" (1, | |||
nothingmuch | i did '.my $t; $t = (1 == 1) ?? "true" :: "false"; $t. | ||
stevan | 1); | ||
Syn "cxt" | |||
{'Str'; | |||
App "&infix:~" ('true', | |||
'')}; | |||
nnunley | That's an AST. | ||
stevan | Syn "cxt" | ||
{'Str'; | 19:50 | ||
App "&infix:~" ('false', | |||
'')}} | |||
*** Evl: App "&infix:==" (1, | |||
1) | |||
*** Ret: bool::true | |||
*** Evl: App "&infix:~" ('true', | |||
'') | |||
*** Ret: 'true' | |||
*** Ret: 'true' | |||
*** Ret: 'true' | |||
'true' | |||
what does the '.' do? | |||
oh I see | |||
nothingmuch | parse tree without execution, appearantly | ||
stevan | neat, i didnt know that | ||
yeah that is the exec tree | |||
nothingmuch | uh, less neat | ||
exec tree is both | 19:51 | ||
stevan | nothingmuch: it seems to me that my $t; $t = | ||
is actually getting the value of (1 == 1) | |||
nothingmuch | yes, that tests show that | ||
stevan | and not the valyue of (1 == 1) ?? 'true' :: 'false' | ||
nothingmuch | got '1' expected "true", got '' expected "false" | 19:52 | |
stevan | but I think that is how it is executing it too | ||
nothingmuch | uhuh | ||
stevan | I agree, this is a parsing bug | 19:54 | |
where are you going to put the test? | |||
nothingmuch | i put it in t/assign.t | ||
even if it's a parse bug it's a parse bug about assignment | |||
stevan | t/op/ or t/ | ||
nothingmuch | t/op/assign.t, sorry | 19:55 | |
stevan | ok, sounds good to me | ||
thats an ugly one :) | |||
nothingmuch | where is percedence defined? | ||
Prim.hs? | |||
stevan | yeah I think,.. all the way at the bottom | 19:56 | |
nothingmuch | what is 'my', | ||
from a parser POV? | |||
stevan | no idea | ||
nothingmuch | grep -r 'my' src/ | 19:57 | |
src/Posix.hs: In my own land, in the country of Fangorn, | 19:58 | ||
=( | |||
qmole | heh | ||
nnunley | Too many elves. | ||
nothingmuch | isn't that Treeberad himself? | ||
i thought only ents and tree things lived in Fangorn | 19:59 | ||
stevan - how lazy is pugs? | |||
i conclude from the exec tree that in $t = (1 == 1 ) ?? the ?? :: is not even evaluated | 20:00 | ||
stevan | yeah that sounds right | 20:01 | |
nothingmuch: I am not sure how lazy it is | |||
nothingmuch | it sort of makes sense | 20:02 | |
because it's in void context | |||
and the cond /has/ been evaluated | |||
ok, i shoved "=" way down to the end of Prim.hs | 20:04 | ||
assuming that percedence has to do with the place in the file | |||
and it still doesn't pass | |||
qmole | hmm | 20:05 | |
i'd have thought adding extra parens would have worked if it was a precedence issue | 20:06 | ||
nothingmuch | theoretically it does, qmole | ||
stevan | qmole: the whole parens-controlling-precendence thing is not quite there yet (AFAIK) | ||
nothingmuch | but we have another bug with that | ||
qmole | ah | ||
nothingmuch | at the top of t/03operator.t there's a test for that, with ?? ::, which doesn't pass | 20:07 | |
qmole looks | |||
hmm | 20:13 | ||
the second one you mean? it passes here | |||
nothingmuch | todo_is(eval '(($str3 eq $str4) ?? 1 :: 2)', 1, "?? :: in parens"); | ||
line 26 | 20:14 | ||
anyway, i am going to get drunk till i can dance | 20:15 | ||
and then i'm going to dance | |||
qmole | cool | ||
that's not my line 26 :( | 20:17 | ||
stevan | nothingmuch: have fun | 20:29 | |
I am outta here as well, have a good weekend all | |||
jdv79 | i'm doing some work...and I'm not a WOMAN! | 20:31 | |
Yaakov | Feh. | 20:33 | |
nothingmuch looks for the parse bug some while he dries up | 20:39 | ||
nothingmuch considers a chrooted pugs-smoke repo | 21:00 | ||
where anyone can commit | |||
if the patch passes tests | |||
well, my liver is asking for it. Ciao | 21:01 | ||
jdv79 | Will we have Python via PUGS? :) | 22:00 | |
buu | Pugs will eat python. | 22:03 | |
qmole | what's the up-to-date repository now? | 22:07 | |
Khisanth | jdv79: well if you consider "Perl6::Pugs - A Perl6 Implementation" getting python out of it would be an extremely odd twist | 22:15 | |
jdv79 | better leave that task up to parrot then | 22:16 | |
PerlJam | jdv79: python implemented in haskell would be called "pygs" :) | 22:19 | |
Khisanth | swines | ||
sorje | PerlJam, is that the next target? ;-) | 22:23 | |
crysflame | python on parrot on pugs | 22:44 | |
PerlJam | a snake wrapped around a bird perched on a dog | 22:45 | |
That's some interesting imagery | |||
jdv79 | how bout a png of it;) | ||
crysflame | do it! do it now! | ||
PerlJam | Well, a more accurate image would have a snake and a dog fighting on the back of really large parrot. | 22:46 | |
(assuming pugs ever produces parrot asm) | 22:47 | ||
crysflame | heh | 23:07 | |
perl6 is a mongrel | |||
buu | PerlJam: How about a giant parrot holding a snake in it's beak and a dog in it's claws? | 23:17 | |
qmole | lol | ||
Limbic_Region | welcome revdiablo - first time here? | 23:29 | |
revdiablo | yes, just wanted to see what goes on. | ||
Limbic_Region | bit quiet this time of night | ||
revdiablo | I'll idle for a few days. | 23:30 | |
buu | revdiablo: Not much | 23:39 | |
Khisanth | hmm |