6.2.2 is airborne! | pugscode.org <Overview Journal Logs> | pugs.kwiki.org
Set by autrijus on 1 May 2005.
webmind that sounds horrible confusing ? 00:00
arcady iff is like an if that goes both ways 00:01
if a then b and if b then a
Juerd arcady: That doesn't seem to be true in the places where I read iff.
arcady where is that?
Juerd p6l
arcady hm. 00:02
pjcj no, I think it is used correctly: "Clearly, xor is true iff *exactly* one of its arguments is true"
arcady example of proper usage: a number is divisible by 5 iff its last digit is 5 or 0 00:03
pjcj which is also why it can't short circuit
arcady yeah
Juerd pjcj: Oh, duh, I for some reason confused short circuiting with returning the true value
arcady I still say perl6 should have a short-circuiting xor 00:04
nothingmuch =)
to make our semantics even "cooler" we could autothread xor 00:05
arcady well, or just use magic
nothingmuch then we can eval both args together
instead of short circuiting we have something more akin to copper wires melting together 00:06
it's just as safe, too!
we could have a whole array of 'fuse-free' operators 00:08
where newbies can get burned
Juerd Let's make every operator dangerous by default
nothingmuch then we'd be nearly as good as pascal!
Juerd "Of course they're not friendly to you. Treat them with respect, show them some love! Cuddle them, ((+)) and you'll see everything will just do what you want!" 00:09
nothingmuch huraah!
pjcj use AntiStaticWristStrap; 00:10
Juerd Which of course results in $fh((.))say((("Hello, ")) ((~)) $world)((;))
We have (op) and {op} still available
nothingmuch that looks like lisp, except that the oatmeal/toenails are all over the place
Juerd What shall we think of for these meta operators?
nothingmuch good night 00:14
Juerd nn
ingy ola 02:01
pmichaud hello 02:02
ingy hi pmichaud 02:13
I need to leave irc and hack it hard
meppl gute nacht 02:22
robkinyon I have a question ... 02:24
pmichaud ask away
robkinyon I've figured out how to fix a bug on Cygwin, but I don't know enough Haskell to make the fix work 02:25
pmichaud ah, I'm definitely not the one to ask about that -- I'm not doing much of the haskell stuff
robkinyon :-(
pmichaud I leave that to autrijus :-)
robkinyon I emailed P6-compiler, but was Warnocked 02:26
crysflame Warnocked?
robkinyon The thread died
pmichaud oh, I can definitely help with warnocking
what was the topic?
crysflame etymology
also hi :)
pmichaud or when was the post?
robkinyon 1 sec 02:27
"Pugs on Cygwin" is the subject
crysflame - Andy Warnock was a guy who posted a lot on p5p and no-one ever responded. Became a running joke.
pmichaud well, it's a little soon to assume it was warnocked -- usually warnock would imply more than a day or so :) 02:28
robkinyon Thread was started May 2nd.
22 hours since my last post on how to fix Cygwin
:-)
obra also, it's friday
robkinyon I was hoping to get it fixed this evening. 02:29
pmichaud saturday
robkinyon :-(
pmichaud where many of the perl6 folks are, it's saturday
s/perl6/pugs/
obra and they just went to bed a couple hours ago ;)
robkinyon ah
*shrugs* Oh, well 02:30
pmichaud give it another day and see if there's still no response. Or keep asking here
robkinyon can i ask again now?
robkinyon winks
pmichaud if you still haven't gotten a response by Sunday then I'll post it directly to the folks
crysflame oh, ok 02:32
Juerd It's 4:46 am here 02:43
And I'm going to bed
stevan robkinyon: ping 03:08
ingy: ping
ingy pongish 03:09
what's up stevan 03:10
stevan ingy: I am looking for the kwid docs that used to be in docs/
ingy hmmm
stevan basically I hacked a quick Kwid parser (event based like the POD one I did) 03:11
it works, so-so
ingy nice
stevan but I need to know more kwid-ish to finish it
basically it parsed all of the Test.pm kwid (mostly) correctly up until the last line or so 03:12
ingy I find only these files:
./docs/class/mission-statement.kwid
./docs/src/Junc.kwid
./docs/yaht.kwid
./examples/games/hangman.kwid
stevan yeah I am looking for that kwid.kwid you did back in the early days of pugs 03:13
ingy not sure if there were more
I'm working on my Kwid parser now actually
stevan the ones about kwid itself :)
ingy they might've got moved to freepan
stevan ok I will check there
ingy tpe.freepan.org/repos/ingy/Pugs-Documentation/ 03:15
is somewhat empty
grrr
robkinyon yes, stevan?
stevan hey rob :)
ingy fyi, gugod and I will be hacking on Freepan next week
robkinyon haskell isn't easy to read
ingy need to go shopping... 03:16
&
stevan robkinyon: I have to agree, but the more i read the more i understand
ingy: thanks, i will keep looking
robkinyon only been reading it for like 15min :-)
stevan robkinyon: $ has to do with Monads
robkinyon Ok ... is that important?
stevan robkinyon: it took me a long time to figure that out :P
robkinyon heh 03:17
stevan robkinyon: it is, but in what way, I am still trying to grok :)
Khisanth robkinyon: Perl isn't easyto read either :)
robkinyon 10 minutes makes haskell hard to read. 10 years makes perl easy to read. :-) 03:18
sproingie $ has nothing to do with monads 03:24
stevan sproingie: really? what is it for then?
sproingie in haskell? it's a grouping operator
stevan it always seems to be around monads
sproingie: can you explain more please? I am still learning 03:25
sproingie argh, been so bloody long 03:28
if i explain it, i'll probably get it wrong
robkinyon waves
stevan sproingie: ok, well just to know it is not monad related helps 03:29
sproingie naw it's simpler. it's basically an infix apply operator 03:30
damn tutorials dont seem to cover it tho
stevan sproingie: hmmm, that was one of my earliest suspicions actually, but for some reason I decided it was something else
sproingie yah it's apply. f $ x is the same as f x 03:33
but it's lower precedence
stevan sproingie: so how does that change the order of evaluation (or does it not change it) 03:34
sproingie so "foo bar $ baz frotz" is the same as (foo bar) (baz frotz)
stevan sproingie: ahhhh, I see
sproingie which lets you do stuff like pipelines 03:35
sorta ... still reverse order
stevan so it makes sure that each side evaluates in full
before applying to one another
sproingie yep
stevan sproingie: you have shed new light on this code for me :)
sproingie++ 03:36
sproingie so you could write something like "map uppercase (words mystring)" to "map uppercase $ words mystring"
conal.net/pan/haskell-primer.htm
one of the few primers that covers $
stevan thanks :) 03:37
sproingie it doesnt force evaluation, it's lazy like everything else
stevan yes, but forces the order of eval, right?
sproingie it's just syntactic shorthand for what you'd otherwise have to use parens for
i guess yeah, it forces the order
right to left
i've heard of similar tricks in C++ using the shift operators 03:39
since they're also low precedence and right associative
jabbot pugs - 2801 - cleaning up some of the kwid docs 04:03
pugs - 2802 - updating the changelog
pugs - 2803 - made change to reflect some recent Perl
pugs - 2804 - adding the haskell mini-primer, which ta
pugs - 2805 - adding in the first (still buggy) versio
sproingie does pugs do objects yet? 04:04
Limbic_Region coming soon 04:05
stevan sproingie: not proper ones :)
Limbic_Region of course - you could always get on board with "using OO before it existed"
stevan - did you get a chance to look at the hash reference potential bug? 04:06
sproingie would have a hard time with getting "self" passed in right
unless you can curry a sub 04:07
with a reference to the hash that contains it
hm. come to think of it that would be possible in perl5
gaal ping -1 06:34
the build is broken on cygwin. 06:35
07:45 chady_ is now known as chady
Aankhen`` perl Makefile.PL is sure taking a long time. :-( 07:56
scook0 worked fine for me not so long ago... 07:57
Aankhen`` r2805 here, if that makes a difference.
scook0 r2805 here too -- but I didn't notice anything
Aankhen`` What's your system's config
?
scook0 Ubuntu Hoary - Perl 5.8.4 - Duron 700 - 256MB ram 07:58
I'll try it again just to be sure...
Aankhen`` That's strange...
I'm running on Windows XP - Perl 5.8.6 - AMD Athlon XP 2000+ - 512MB RAM.
scook0 I just ran it again -- works fine for me 07:59
Aankhen`` Ah well.
It's over and done with now.
scook0 weird
this never happened before?
Aankhen`` Well, of late it's been taking a while.
I haven't built in a couple of days.
scook0 is stumped 08:00
Aankhen`` Ah, it's alright. 08:01
Not a big deal.
I'm just a whiner.
jabbot pugs - 2806 - * when `eval_parrot` is passed any strin 08:13
pugs - 2807 - * Added EOLs at EOFs to src/ and ext/. 09:53
meppl guten morgen 10:28
jabbot pugs - 2808 - * Change Syck.hs to Syck.hsc to get rid 10:53
pugs - 2809 - * Note "make unoptimized" in Makefile.PL
pugs - 2810 - Minor fixes to mklivecd.pl.
pugs - 2811 - Updated tsanta.p6 to use unique filename 11:03
11:04 chady is now known as chady_
scook0 autrijus: ping 11:18
I think r2808 broke make... "Could not find module `Data.Yaml.Syck'" 11:21
jabbot pugs - 2812 - Initial Haddocks for Bind 11:53
pugs - 2813 - Added a nice welcome screen to the live 12:23
Corion (build is broken for me too, even after a wiped src/ ) 12:24
r2813, that is 12:25
Yo broquaint ! 12:33
jabbot pugs - 2814 - Small optical fixes to mklivecd.pl. 12:43
Corion "mklivecd.pl" ? Do we now have PugsOS, based on HaskellOS ? :) 12:44
Indeed. Curiouser and curiouser 12:45
nothingmuch www.cse.ogi.edu/~hallgren/House/ 12:47
Corion nothingmuch: This seems to call for an emergency port of the Perl Power Tools, so we get an unixlike environment ;) 12:49
nothingmuch to perl 6 or to haskell? 12:50
Corion nothingmuch: I would prefer Perl6 ;)
nothingmuch heh
Corion nothingmuch: It would be larger than Busybox, but ;)
(it wouldn't be GPL-encumbered either, and doesn't need static linking, or other weird tricks) 12:51
nothingmuch: The PPT isn't really complete... But I believe it's got a working tar, and with LWP::Simple, we could fake a half-working wget ;)
... so all we'd need is make. And, maybe, a shell. 12:52
nothingmuch well, you're free to start ;-)
nothingmuch is too busy to give pugs any real time
Corion nothingmuch: Heh. Well, I think I won't. At least, not today, as I've moved a piano around, and have to party the evening. And in the meantime, fetch some groceries, and stuff. Too bad ;) Oh. And I have to work on the DB/model for my MUD/system-interface-database (thus combining $play and $work) 12:53
nothingmuch well, have fun 12:54
i have to go teach pascal
*whine*
Corion nothingmuch: Ah, Pascal isn't that bad IMO - and I programmed in it for ten years or so ... 12:55
nothingmuch i hate it... never got any benefit from it 12:56
all it did is lower my scores on my tests
(counted arrays from 0 instead of 1 for example)
and now it's making it difficult for me to teach
=P 12:57
Corion Ah, well - Pascal has the nice feature of letting you define your index types for arrays. type tWheel = (whlLeftFront,whlLeftBack,whlRightFront,whlRightBack); var Tires : Array[ tWheel ] of tTire; 13:00
(which made sure you couldn't use Just any integer...) 13:01
But I'm sure you'll manage to transfer your enthusiasm to your pupils :)
nothingmuch in a 1st year intro to pascal you don't write such things
heck, I don't even know it
i'm teaching programming
not pascal
but I have to use pascal to teach programming, and it's slowing me and her down 13:02
jabbot pugs - 2815 - Reduced the default initrd size. 13:23
13:26 Corion_ is now known as Corion
autrijus hm 13:40
is build still broken for you guys?
Corion autrijus: Yep, but will recheck 13:41
yep
r2815
Could not find module `Data.Yaml.Syck':
nothingmuch seems like it's building for me 13:42
Corion nothingmuch: What did you do? Should I wipe src/ again, to be on the safe side?
Corion nukes src/ from orbit
nothingmuch i dunno
just the smoke loop
the last build is 3 hours old
autrijus fixed
Corion Hmmm. There is src/Data/Yaml/Syck.hsc - maybe my GHC doesn't like .hsc and wants .hs ? 13:43
autrijus r2816. sorries.
Corion: right, the .hs needs to be in @srcfiles
Corion Aaah.
autrijus jhorwitz hard coded it for Parrot.hsc
which is bad
so I fixed it generally
Corion Build in progress now
autrijus cool
jabbot pugs - 2816 - * fix build by explicitly include hsc in
Corion My arms hurt. I shouldn't help people when moving. Especially when pianos are involved. Or even a single piano. 13:44
autrijus aww.
autrijus , meanwhile, is studying Ruby's internals
Corion autrijus: Well, better the arms hurt from lifting than from RSI :)
autrijus they got lots of things right 13:45
Corion autrijus: You are a mad mad person. Rubys internals are ugly.
nothingmuch ciao!
autrijus uh. compared to perl5...
Corion I thought the parser and evaluator were a tightly intertwined mess?
autrijus is perl5 not like that? :)
Corion autrijus: Yes, but nobody looks at the Perl5 internals for fun, right? Well, I know one person, Yves Orton, who looks at the RE engine for fun, but otherwise ... 13:46
autrijus sadly I do, too
<- responsible for many Tolkien poetry comments there, too
scook0 autrijus: build is fixed for me now -- cheers!
Corion Oh - btw, he did some cool Trie optimization for Perl5 - is there any chance of Just moving these patches over to PCRE, or are Perl5 and PCRE totally different RE engines?
autrijus complete different 13:47
scook0: thanks and sorry
Corion autrijus: Too bad ... He's now working on even better enhancements to the Perl5 engine... Is the long-term plan to keep PCRE, or will we reimplement P5 REs as P6 rules?
"we" -- heh
autrijus Corion: I think keep pcre up until p6rules can emulate p5 13:49
scook0 autrijus: I was planning on picking your brain, but I think I'll get some sleep instead 13:50
Corion autrijus: Yeah - that is, "ditch as soon as possible, but no sooner" ;)
autrijus pcre is lightweight and fast... the only thing it can't do is (?{})
scook0: go sleep then :)
Juerd autrijus: And (??{}) ;)
scook0 see you later
jabbot pugs - 2817 - More Haddocks for Bind 13:53
autrijus nothingmuch: any chance of adding a "make haddock" run to make smoke run? 13:54
and put the docs/haddock/* somewhere on the web 13:55
that way I can point people there easily
Juerd Is there a short guide that explains how to get parrot and pugs to know eachother?
autrijus Juerd: sure. it goes like this
export PUGS_EMBED=parrot
cd pugs
perl Makefile.PL
make
./pugs -e 'eval_parrot("print 123")'
Juerd Where does it get parrot from, then?
autrijus Juerd: it gets it from ../parrot/ 13:56
Juerd Ah, thanks
autrijus if not there, then you need to set PARROT_PATH but Makefile.PL will tell you that
bbiab
nothingmuch pops in for a second, and notices highlight word... 14:01
autrijus: i'll look at it
autrijus thanks 14:06
nothingmuch i was planning on doing that, but it wasn't ready yet 14:07
at the time
nothingmuch needs a vacation
haddock didn't compile out of the box, i'll look at it later 14:09
now I have to go again
Corion r2816 - datenzoo.de/pugs/win2k.html - 4764 ok, 61 failed, 899 todo 14:10
gaal th build is still broken for me. 14:19
autrijus rerun Makefile.PL?
gaal but i did convert from fat32 to ntfs recently, maybe i have some weird permissions problem
autrijus, did, of course.
autrijus what was the error? 14:20
pasteling "gaal" at 192.115.25.249 pasted "cygwin build error" (5 lines, 265B) at sial.org/pbot/9985
cognominal do ghc, parrot and pugs withstand gcc4.0? 14:21
14:21 sbkhh is now known as Odin-
autrijus cognominal: no idea 14:21
cognominal I got gcc 4.0 by default on madnriva cooker 14:22
autrijus gaal: what happens when you run that by hand?
cognominal: cool, then you can try
gaal the same.
strace doesn't work i'm afraid.
autrijus gaal: -I src/syck instead of -Isrc?
drop the -o? 14:23
just /c/apps/ghc/ghc-6.4/bin/hsc2hs -Isrc/syck src/Pugs/Embed/Parrot.hsc
gaal the last suggestion works.
autrijus I attempted a fix. try r2818 14:24
gaal (re co'ing to make sure it's clean) 14:25
on unix shells, does * not glob hidden files? i don't understand how rm -rf * works otherwise.
autrijus, your fix works. thanks! 14:26
autrijus np
right, * does not glob files beginning with dot.
gaal is that the case in newish p5 File::Glob::glob as well? 14:27
autrijus yes.
gaal makes a mental note to readdir the next time
autrijus you can glob for .* * 14:28
gaal good point, but now i'm beginning to wonder if maybe this breaks on huge directories? 14:30
autrijus probably not.
not under File::Glob, at least
gaal wow, the difference between build times for optimized and non- makes is huge. 14:32
hey, and someobedy fixed 'make smoke' not to relink needlessly! somebody++ 14:33
jabbot pugs - 2818 - * fix hsc2hs for cygwin
pugs - 2819 - Added a really small logbot.
autrijus ours is a project full of somebodies :) 14:37
gaal however, the yaml harness now overeagerly looks for test output in concurrency mode. :) 14:38
jabbot pugs - 2820 - * Dropped "add_command_handler" and "add 14:43
gaal forum2.org/gaal/pugs/smoke-cygwin.html r2818 1unexok 14:45
Juerd gaal: That's your chance to be somebody ;) 14:49
gaal i'm looking into the concurrency issue (which doesn't happen when -j is specified on the command line) 14:50
drbean I can't sync a remote svk repos on which I did a delete and mkdir 14:58
sorry. Wrong channel
gaal okay, this is rather odd. 15:05
the problem happens ony in run-smoke.pl, not vanilla yaml-harness.pl. 15:06
and then, only when you run the smoke with the PUGS_SMOKE_UPLOAD env option.
it looks like when you do that with concurrency on, the call to system that runs the harness finishes before all tests are gathered. 15:07
impossible, i know.
but like i said, when PUGS_SMOKE_OPTION is not set, this does not happen. 15:08
so what the user sees is that testgraph is started before the last chunk of tests completes; testgraph naturally fails. 15:09
talk about voodoo fork emulation :) 15:10
could someone with SMP and a real OS please check to see whether this happens?
misc_ test what ? 15:11
gaal env PUGS_TESTS_CONCURRENT=3 PUGS_SMOKE_UPLOAD='echo 23412341324' make smoke
misc_ gaal: from svn snapshot ?
gaal and see if you end up with a 'smoke.html'.
yes.
misc_ mhh, ok, i just need to grab one :) 15:12
gaal thanks
(you don't really need SMP, it just makes things faster. smoke on my linux box with make unoptimized takes 24 minutes): 15:14
misc_ mhh, too bad, i have smp, i tought it was related to some concurency issue 15:15
gaal has anyone used colinux here? i wonder if it's worth the trouble to set up properly.
misc_, it is, but not so tightly that you really need more than one cpu. 15:16
misc_ gaal: some cpan modules are missing 15:26
gaal cpan Test::TAP::HTMLMatrix and allow it to fetch deps please 15:27
misc_ yes, i am on it :)
Limbic_Region stevan ping 15:29
salutations all
misc_ gaal: make test doesn't work 15:30
gaal try make smoke like in the line above 15:31
wait, waht platform are you on?
misc_ gaal: linux, mdk cooker
5.8.6
( perl version )
gaal interesting, wht doesn't make test work, what does it say? 15:32
misc_ t/uri...............ok 2/12Can't locate object method "new" via package "Test::TAP::Model::File::Visual" at t/uri.t line 29.
gaal oh, T:T:M's make test :)
T:T:Htm really 15:33
looking.
misc_ oh yes, sorry , i forget to precise
Shillo Hullo, all. :) 15:35
stevan Limbic_Region: pog 15:37
pong
Limbic_Region pog 15:39
hmmm
stevan Limbic_Region: I have not had time to investigate the hash issue sorry
Limbic_Region no worries
are you using svn or svk?
stevan svn 15:40
gaal misc_, this worksforme but i am investigating. can you force install in the meantime, just so we can double check the pugs bugs?
pugs bug that is.
misc_ gaal: ok
Limbic_Region hmmm
I am wondering why svk log isn't working correctly
it tells me log is too big - starting from revision 5
and it only lists a couple of revisions 15:41
Limbic_Region tries to remember who else is using svk
stevan Limbic_Region: maybe try limiting the revisions?
Limbic_Region nothing I tried worked
svk help log
-l
-r
etc
gaal misc_, did the cpan run install Test::TAP::Model for you successfully prior to the error you saw? 15:42
jabbot pugs - 2821 - * Automated nick permuting if chosen nic 15:43
pugs - 2822 - Updated ext/Algorithm-TokenBucket/Change
pugs - 2823 - * Updated svn:ignores in src/.
misc_ gaal: yes, i think, i didn't see anything suspicious 15:44
gaal because ->new comes from Test::TAP::Model::File, which you oughta have had installed. 15:45
what does this say? perl -MTest::TAP::Model::File -e1 15:46
misc_ cannot locate the module 15:47
however, i used install as simple user, maybe i am missing something 15:48
gaal i think you are missing superuser privs :)
....and cpan is missing a peek at META.yml, which does require T:T:M :( 15:49
(your cpan shell that is)
misc_ should'nt it also work as simple user ? 15:50
gaal brb
depending on where your perl looks for modules.
Khisanth you can add some paths to PERL5LIB 15:51
gaal b 15:58
stevan hmmm, an odd bug maybe 16:03
pugs -e 'my @a = 1, 2, 3; say isa(@a, @a);'
it returns undef
shouldn't that fail?
and this: 16:04
pugs -e 'my @a = 1, 2, 3; say isa(@a, ("Array" | "List"));'
returns 'any(1)'
Limbic_Region right - which is something I don't like very much 16:05
i.e. - boolean true false but not "what matched" 16:06
stevan Limbic_Region: but that isnt even a boolean
it is a junction
(which matches any true boolean)
which I suppose is acceptable, but I would expect a true boolean
Limbic_Region hmmm
first one not sure 16:07
second one - depends on if isa() is specced fully yet
stevan Limbic_Region: I am consulting the bible on it right now 16:08
stevan starts mumbling in latin and dips some unleavened bread into a cup of grape juice
misc_ gaal: no, i see another error : Argument ">= 0.03" isn't numeric in numeric eq (==) at /usr/lib/perl5/5.8.6/CPAN.pm line 4623.
gaal: i have foolowed the faqq of CPAN.pm and perl module are installed in ~/myperl, PERL5LIB is correct too 16:09
stevan Limbic_Region: it seems (if you look at the Introspection section of S12), that .isa() should actually do many more things that it currently does. 16:10
However, before I go off an write tests, I am going to see if I cannot find more details on @arr.isa()
misc_ gaal: in fact, it seems that Test::TAP::Model doesn't install, with ; t/comprehensive....ok 22/113Operation `eq': no method found,
Limbic_Region stevan - I lack the motivation to do anything ATM 16:12
so "you go"
stevan Limbic_Region: :) I will (at least until the coffee wears off)
Juerd: ping 16:20
Limbic_Region Does this behavior make sense to anyone? 16:22
my %hash; %hash<foo> = hash {}; for values %hash { say }
or even better 16:23
my %hash; %hash<foo> = hash {}; %hash<foo><bar> = 42; for values %hash { say }
stevan Limbic_Region: it makes sense, but doesnt seem to work right :) 16:25
oddly enough (not really that odd, it's just auto-vivification) this work: pugs -e 'my %hash; %hash<foo>; %hash<foo><bar> = 42; for values %hash { say }' 16:26
as does this: pugs -e 'my %hash; %hash<foo>; %hash<foo> = { bar => 42 }; for values %hash { say }'
Limbic_Region stevan - I don't think so 16:27
stevan and this too
pugs -e 'my %hash; %hash<foo> = hash; %hash<foo><bar> = 42; for values %hash { say }'
Limbic_Region consider
stevan I think the {} is getting interpreted as a sub
Limbic_Region my %hash; %hash<foo> //= hash {}; print ref %hash<foo>;
stevan pugs -e 'my %hash; %hash<foo> //= hash {}; say ref %hash<foo>; say %hash<foo>' 16:28
Array
<SubBlock(<anon>)>
it looks like the "hash" does nothing
Limbic_Region which it is supposed to 16:29
stevan and the {} is treated as a block
Limbic_Region right
so WTF Array?
I already have submitted a test that partially exposes this
stevan what do you see as the bug? in "hash"?
Limbic_Region at least in hash 16:31
but I still can't see why ref sees an empty anonymous sub as an array either
which it doesn't in other cases
so I don't know where the Array is coming from 16:32
and here is something that is really weird
pugs -e "my $foo = hash {}; say ref $foo; # Hash"
stevan pugs -e 'my %hash; %hash<foo> //= {}; say ref %hash<foo>; say %hash<foo>'
this prints # Block
it seems that 'hash {}' is interpreted as 2 elements 16:33
does "hash" return anything?
Limbic_Region ahhhhh
interesting
this does the right thing pugs -e "my $foo = hash {}; say ref $foo; # Hash"
stevan pugs -e 'say ref hash' # prints Hash
Limbic_Region well, my brain just isn't working ATM 16:34
Limbic_Region wanders off to listen to some classic rock and wishes everyone happy hacking
stevan :) 16:35
Limbic_Region stevan - WRT %hash<foo> = hash {}; # being seen as two items, you are correct though I think it is incorrect behavior 16:51
pugs -e "my %hash; %hash<foo> = hash({}); say ref %hash<foo>;"
Hash
stevan Limbic_Region: ah hah 16:55
so it looks as if the parser is getting confused
Limbic_Region yeah - so my test does indeed expose a bug - just not the one I thought 16:56
and I think that explains the other behavior I couldn't track down because it disapeared when I wrote a minimal test case
so with that - there is only 1 other thing I think is still wrong 16:57
hash refs as values to keys should modify the hash they reference when properly dereferenced
stevan Limbic_Region: I am still not sure about the details of auto-de-ref-ing myself 16:58
Limbic_Region well - I am not sure I am doing it right
consider
stevan Limbic_Region: re: the hash {} vs. hash({}) test case, please label it :todo<parsefail>
Limbic_Region pugs -e "my %foo; my %bar=('key'=>\%foo); say ref %bar<key>;"
that prints Scalar 16:59
pugs -e "my %foo; my $bar= \%foo; say ref $bar;"
that says Hash
stevan pugs -e "my %foo = ('baz' => 42); my %bar=('key'=> %foo); say ref %bar<key>;" 17:00
print 'Pair'
and so does this
pugs -e "my %foo = ('baz' => 42, 'baz' => 2); my %bar=('key'=> %foo); say ref %bar<key>;"
Limbic_Region *shrug* dunno if that's wrong or right but isn't what I am after
stevan same issue when I put the \%foo in there as well 17:01
I think the Hash and Pair types are still not totally finished
Limbic_Region ok - so where do you think the hash parsefail test should go?
and why label it as :todo<parsefail> ? 17:02
stevan beacuse that is what it is :)
at least I am pretty sure it is
Limbic_Region right - but why not just leaving it as failing
since it doesn't fail to parse
it just fails to parse correctly
stevan Limbic_Region: well actually if you put it in t/pugsbugs I suppose you can leave it failing 17:03
I guess I am just in the habit of labeling things TODO now
Limbic_Region ok - so the io test that is failing should go into pugsbugs too?
since I intentionally left that as failing too 17:04
stevan Limbic_Region: well this is a good question
I think behavior which is truely a bug, should go in an isolated pugsbugs test
and maybe after it is fixed, can be moved into a more approriate location 17:05
Limbic_Region ok
will move 2 tests to pugsbugs and add 1 more
stevan ok
alright, lunch time for me :) 17:06
&
robkinyon Any lambda'ers around? 17:13
jabbot pugs - 2824 - Added a small "Monads in Perl 6" example
pugs - 2825 - [BUG] Found another bug concerning map a
robkinyon peers about 17:15
Limbic_Region grrr - today isn't working out 17:39
perlbot nopaste 17:40
perlbot Paste your code here and #<channel> will be able to view it: sial.org/pbot/<channel>
elmex wohooo 17:43
perlsex
pasteling "Limbic_Region" at 69.250.48.119 pasted "svk is blowing up on me when attempting to check in - would appreciate someone making the following test changes" (226 lines, 5.7K) at sial.org/pbot/9993 17:46
Limbic_Region If someone could make those changes for me I would be really appreciative 17:47
in the meantime - I am going to kill this computer
TTFN
robkinyon any lambda'ers around? 17:50
sorje robkinyon, what do you need lambda'ers for? ;-) 17:51
robkinyon i have a fix for Pugs on Cygwin, but it requires changes to Prim.hs and I don't know haskell
I'm fixing pugscc to work on cygwin, but that's Perl
robkinyon sighs 17:53
elmex does the parrot backend work again? ;-) *G* 18:00
jabbot pugs - 2826 - Applied Limbic_Region's test fixes with 18:13
pugs - 2827 - * C-based PGE is now obsolete. 18:43
pugs - 2828 - * remove unused variable in sieve.p6. 18:53
Limbic_Region iblech ping 18:54
wonder why iblech thought the io_finalize tests would create but not delete the file 19:06
Limbic_Region also wonders why the t/pugsbugs/parse_hash_ref.t test didn't get checked in
wonder if my %h1; my %h2; %h2<key> = \%h1; # isn't a bug 19:07
but
my %h1; my %h2 = ( 'key' => \%h1 ); # is a bug
since they do different things 19:08
revdiablo what's the bug? 19:12
jabbot pugs - 2829 - * if it's pod... call it pod. :) 19:13
pugs - 2830 - Changed t/pugsbugs/io_finalize tests bac
wolverian I thought just assigning it without the explicit \ is enough in perl6. 19:14
Limbic_Region revdiablo - in the latter case - it ref %h2<key> says Scalar 19:15
in the former - it says Hash
IOW - assigning a reference to a hash as a value to a hash key when creating the hash breaks
doing it after the fact works
I had a pugsbugs test for it - but iblech didn't check it in (my svk kept blowing up until I hit it with a LART) 19:16
so was wondering if it wasn't a bug afterall but just a mistake in my reasoning
wolverian - regardless, I think there is a bug 19:17
since
my %h1; my $h_ref = \%h1; my %h2 = ('key' => $h_ref); # also says Scalar
but
ref $h_ref; # says Hash 19:18
pasteling "revdiablo" at 66.218.36.163 pasted "Limbic_Region -- this is what I see from Pugs" (4 lines, 165B) at sial.org/pbot/9995
revdiablo I get Pair, not Scalar
heh
maybe something has changed, my pugs is more than 24 hours old 19:19
Limbic_Region let me test again here locally
revdiablo - my test is a bit different then yours 19:21
let me see what I get when I run yours exactly
19:22 lightstep is now known as for, for is now known as lightstep
Limbic_Region revdiablo - when creating %h1 - try just my %h1; 19:22
revdiablo ah yeah, Scalar 19:23
robkinyon any lambda'ers around? 19:24
Limbic_Region revdiablo - further more - even with your version that says Pair - you still can't modify %h1 by dereferencing %h2
TIAS
revdiablo *nod* there's definitely something weird going on 19:26
Limbic_Region but if you don't try and do it when defining the hash (after the fact) - it works as expected 19:27
revdiablo if you do: my %h1; my %h2; my %h3 = ("h1" => \%h1, "h2" => \%h2); say ref %h3<h1>; 19:28
it says List, and still doesn't work
heh
maybe more stuff to add to your tests 19:29
Limbic_Region salutations chromatic
chromatic Howdy.
Who wants P6 Test::Builder?
obra hey chromatic
chromatic Hello.
Limbic_Region revdiablo - I assume that when the underlying problem is fixed that the weird results from ref() will disapear as well
obra chromatic: do you have commit bits?
Limbic_Region but if not - please add more tests
chromatic That's kind of a personal question.
obra :P
revdiablo Limbic_Region: yeah, probably be something good to test for sanity later 19:30
Limbic_Region grrrr - svk is back to blowing up again
revdiablo - mind adding it for me?
revdiablo Limbic_Region: you mean committing, or actually writing the tests?
pasteling "Limbic_Region" at 69.250.48.119 pasted "t/pugsbugs/parse_hash_ref.t" (34 lines, 859B) at sial.org/pbot/9996
Limbic_Region committing 19:31
I already wrote the tests
revdiablo ok, no problem
Limbic_Region feel free to add the weird ref() results too if you want
in fact, please do
chromatic - I should have the revisions you asked for by tomorrow night - I am supposed to be taking a day off
you can see how well that is working :-)
chromatic I'm taking tomorrow off too, so don't worry. 19:32
Limbic_Region chromatic - mind if I /msg you an idea for the aricle 19:33
chromatic Go ahead. 19:34
obra hands chromatic commit bits 19:36
revdiablo Limbic_Region: I'm going to wrap each chunk in {} to avoid having to make new variables every time
Limbic_Region revdiablo - be my guest 19:37
revdiablo ok, the results are coming out different with %h3<h1> vs %h3<'h1'> -- are those supposed to be different? 19:43
Limbic_Region revdiablo - yes - <> is autoquoting 19:44
{'h1'} = <h1> != <'h1'>
revdiablo oh, so %h3<'h1'> is %h3{"'h1'"}? 19:45
Limbic_Region I think so
Limbic_Region is really really tired right now
chromatic Now where should I check in these modules?
Limbic_Region chromatic probably in ext/ 19:46
revdiablo afaik, ext/ for modules that work
Limbic_Region see the other examples
chromatic Dunno if they ~work~ work. 19:47
obra the beauty of svn is that if they're not in the right place they can be moved with no penalty
chromatic True. 19:48
obra I think ext is the right place for now
And if not, I'm sure someone who knows better will fix it. 19:49
chromatic Alright, there you are. 19:52
revdiablo Limbic_Region: ok, checked in
jabbot pugs - 2831 - checked in parse_hash_ref.t on behalf of 19:53
chromatic Hm, should I have checked in to SVN? My # was 2885. 19:54
Limbic_Region chromatic - after "svn add <file>" 19:55
"svk ci -m 'message'"
at least that's all I do
sproingie hm, does {} no longer autoquote then?
chromatic I did svn commit.
revdiablo chromatic: which repo did you commit to?
chromatic I don't think I have svk on ghostwheel.
Authentication realm: <svn.perl.org:80> perl.org
Password for 'chromatic':
Limbic_Region sproingie - correct
revdiablo I've been committing against svn.openfoundry.org/pugs 19:56
sproingie Limbic_Region: bleh. guess i'll be using <>
chromatic I'll wait for obra to panic then.
If he runs about, screams, and shouts, we'll figure something else out.
sproingie Limbic_Region: actually i've always liked javascript's way of doing it: hash.key
obra Why am I supposed to panic? 19:57
chromatic It's funny.
I commited to the perl.org repository. Is that groovy?
revdiablo sproingie: but in Perl, you can have a hash that also has methods on it :)
or can you in Javascript too? 19:58
sproingie revdiablo: then the method should override it
obra oh. no. perl.org is a read-only mirror of the foundry mirror.
sproingie hashes have some builtin methods in javascript. they can always have functions as members 19:59
obra though autrijus' svk is iirc set up to merge nicely.
chromatic It wasn't all that read-only when I tried.
Do I need to reparent my svn repository?
sproingie revdiablo: i suspect someone will come up with a behavior for perl6 hashes that makes them work the same way
a module or something
obra foundry is generally the canonical source for pugs development. it's automatically mirrored to svn.perl.org 20:00
chromatic Alright. How do I retarget?
obra so if you'll be hacking on pugs, it's probably best to use the foundry repo.
revdiablo sproingie: well, larry said something in p6l about opaque objects allowing method access via hash subscripts, but that's sort of the opposite of what you are asking for :)
obra svk or svn?
chromatic svn
obra svn help switch
chromatic Alright, now it's #2833. 20:08
Limbic_Region thanks revdiablo 20:09
chromatic Thanks, obra. 20:11
obra cool
Welcome to the insanity, chromatic.
Limbic_Region thanks chromatic for writing the module
chromatic Thanks, but I already knew insanity.
Multiple modules, actually.
revdiablo Limbic_Region: no problem.
Limbic_Region: I wonder if accessing a shell would violate your work's policies? 20:12
Limbic_Region revdiablo - I can no longer ssh out
revdiablo Limbic_Region: aye, not even on a non-standard port?
Limbic_Region in fact - everything but HTTP has been locked down and that now has stricter use policies
revdiablo I used to ssh out on the https port :) 20:13
Limbic_Region it really is for the best
revdiablo - everything http and https related needs to go through a proxy
obra Limbic_Region, where do yo uwork?
Limbic_Region obra - secret government agency
obra that was actually sort of what I figured
revdiablo Limbic_Region: ah, nice.
Limbic_Region revdiablo - which breaks any web site that doesn't use standard ports
obra "Virginia or Maryland?"
Limbic_Region Maryland
revdiablo Limbic_Region: that's about the only way they can really lock it down, though 20:14
Limbic_Region well - it isn't like I couldn't subvert it if I *really* wanted to
but it would be pretty hard to plead ignorance
robkinyon any lamda'ers around? 20:15
obra syncs svk to see if he can merge back chromatic's changes safely
clkao *yawn* 20:16
Limbic_Region rob - you don't use your typical alias on IRC?
salutations btw
robkinyon dragonchild is 2 characters too long.
i'm thinking of having my PM alias switched, anyways. 20:17
on irc, it'd have to be drgnchld (or some such nonsense)
Limbic_Region following the IRC RFC - impressive
not all networks follow the standard
freenode for instance
Limbic_Region works just fine here
robkinyon no - the first 3 servers refused to display the last 2 chars. :-/
revdiablo I don't think *any* networks follow the RFC to the letter 20:18
Limbic_Region Efnet is by the book I believe
err WRT handle length
robkinyon i'm not an IRC-fanatic. i only use it for specific channels, like #apprentice back in my magic days and #perl6 now 20:19
Limbic_Region has been using IRC for about a year now and it really has just been #perl #parrot and #perl6
of course, I don't hang out in #parrot anymore
revdiablo remembers Limbic_Region's first forays onto IRC 20:20
robkinyon has no time for such frivolities as IRC
at least, that's what my wife says
revdiablo she's right
:)
Limbic_Region hangs his head in shame
robkinyon i seriously just need a lamda'er for like 2 minutes to explain how to do this one fix
Limbic_Region won't suggest #haskell 20:21
obra chromatic: test::builder is now merged back to the pugs repo as 2885
er 20:22
2834
chromatic What was the conflict?
obra There were no conflicts. I just read the wrong line out of the svk output ;) 20:23
chromatic Hm, now we have doubles.
obra doubles?
chromatic I put mine in ext/Test/lib and you put yours in ext/Test/
obra oh. I actually just did an svk sm from the perl6 repo. 20:24
obra didn't realize you did a double commit
chromatic Yeah, I relocated the repository.
Then I commited to the openfoundry one.
obra misunderstood. sorry.
chromatic S'okay, it's partially my fault too.
obra not at all a big deal 20:25
chromatic Let's just edit history.
obra ok. so should the Test::Builder stuff live in the Test distribution or in its own distribution?
chromatic I have no particular preference. 20:26
obra nods
chromatic When OO works enough for T::B to run, it might be nice to switch Test to use it as a backend.
obra are any of the test crew about?
obra nods
I suspect that since they're not currently integrated a separate Test-Builder in ext/ makes the most sense 20:27
chromatic That's fine with me.
That means revert what I commited and move Test/Builder... to ext/Test-Builder/lib ?
obra I think so 20:28
chromatic Which of us should do it? Only one should...
obra yeah. it's your baby. if you're up for it, go for it
chromatic Doing it.
obra Cool
jabbot pugs - 2832 - * some more formatting and fixes to hang 20:34
pugs - 2833 - Added Perl 6 port of Test::Builder.
pugs - 2834 - r16123@hualien (orig r2885): chromatic
pugs - 2835 - Moved Test::Builder to its own distribut
pugs - 2836 - * bless() takes an argument... I think
pugs - 2837 - * it's lib/Test/Builder.pm, not lib/Buil
pugs - 2838 - * adverbial block 20:53
Shillo Hullo, folks! 21:31
shapr bok Shillo 21:32
Shillo Ej. :) 21:33
Juerd stevan: pong
shapr Juerd: Hey, I quoted you in my blog. Dunno if you'll agree with what I said but I still quoted you.
Shillo Chasing modules from: src/Main.hs 21:35
Could not find module `Text.PGE': 21:36
^^^ Is this a known problem?
Shillo just tried to build the latest checkout.
lightstep is it a clean build?
Juerd shapr: URL?
stevan Juerd: ping
Shillo lightstep: Yeah 21:37
lightstep: Well, I did make clean and retried when it failed the first time.
lightstep then try rm -
Juerd stevan: poing
stevan Juerd: I had a p6l question, you being the resident expert I wanted to ask before taking to the list
but you werent around, so I sent it to the list :)
lightstep that is, try deleting src and re-updating 21:38
Shillo ghc-pkg: cannot find package plugins <-- this is the first complaint I get, from perl Makefile.PL
Juerd stevan: The list has much more expertise than I do.
Shillo But it doesn't seem to be an error
stevan Juerd: but I was hoping you might be more immediate :)
Shillo Hmm, don't think it's corrupted src, it's more likely I'm missing something.
lightstep o 21:39
i'll try
shapr Juerd: www.scannedinavian.com/2005-05-03.html
Shillo tries re-checkout, though...
Juerd shapr: Oh, that. That appeared in a Google Alerts message days ago :) 21:40
Shillo Uh... what was the URL for the svn archive? 21:41
shapr Hm, hadn't thought of using Google Alerts for that purpose. Interesting.
lightstep Shillo, i seem to have the same problem 21:42
Shillo lightstep: Now you tell me. :p
:)
lightstep well, the reason is obvious: somebody cleared src/Text/ 21:43
Shillo Heh. :) 21:46
lightstep: You checked 'em back? 21:51
I saw the file on my re-checkout. 21:52
lightstep me? no, probably the offender did it herself
i'm too slow tonight
Shillo Oh. 21:53
lightstep i was gonna fix it in 5~10 minutes, though
Shillo will svn history once it's done compiling.
Pugs.AST takes forever.
lightstep longer than Pugs.Parser ?
Shillo Yes. 21:54
Well, I didn't benchmark, but it felt longer.
Built, this time. 21:55
lightstep it does feel longer, but i never know if it's just psychological (on optimized build, though, AST definitely is much longer)
Shillo The rev number increased from 2838 to 2885, though. 21:58
I think it was just a big changeset landing and breaking stuff. 21:59
Shillo pictures LAND *CRRRUUUNCH* *CRASH* sounds... 22:00
lightstep i see 2839 here 22:01
which didn't fix src/Text/
Shillo Hmm, did you use the mirror? 22:02
lightstep don't think so. how do i check?
Shillo Uh.
lightstep i think i use the main repo
also rt.openfoundry.org (the web ui) only sees 2839 22:03
jabbot pugs - 2839 - more detailed tests for t/builtins/array
Shillo grep url .svn/entries
lightstep url="svn.openfoundry.org/pugs" 22:04
Shillo svn.perl.org/perl6/pugs/trunk <-- I switched to this one
Oh, duh. I'm on the older version, then.
Shillo switches back... 22:05
jabbot pugs - 2840 - adding tests, documentation and a Change 22:53
integral should builds be failing with Text.PGE being not found? 22:55
PerlJam What's Text.PGE and who's looking for it? 22:56
integral it was the interface to the C PGE afaik, and that's been removed. It's used in Pugs.Internals
integral tries just removing it from Internals.hs 22:57
hmm, well pugs now builds when I remove it from Pugs.Internals and one use of parseRule from Pugs.Eval. 23:05
integral wonders whether to commit 23:07
PerlJam integral: if you're wondering then you should do it. 23:08
integral *nod* it's just weird everything was so broken
revdiablo fix the build? nah, don't commit that. :) 23:15
integral pokes jabbot
revdiablo he only polls every 10 minutes, I think 23:16
integral hmm, do we have shaped arrays? 23:17
jabbot pugs - 2841 - Removing the last few traces of Text.PGE 23:23
Corion r2841 - golf.t is broken, or rather the subprograms are - datenzoo.de/pugs/win2k.html 23:52
Hmm - actually, it's no more broken than ever, but it outputs more stuff to stderr at the moment. Oh well :) 23:53
Good night ! ;)