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