Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-05-26

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:00 drbean IF I substitute system 'svk info' for qx/svk info/, I get asked if I
00:00 theorbtwo If it sends TCP/IP packets, it's good enough for me.
00:00 drbean want to create a depotmap for root
00:01 drbean But it doesn't hang
00:01 theorbtwo What OS?
00:01 coet has quit IRC ("Changing server")
00:02 coet has joined #perl6
00:02 drbean Fedora 2, I think
00:02 theorbtwo Try changing the command to qx(svk info </dev/null)
00:02 theorbtwo Does that hang?
00:02 drbean Wait
00:03 RndmTngnt has quit IRC (Read error: 110 (Connection timed out))
00:05 drbean No, it still hangs. I think it is an output problem. Probably to stderr
00:06 drbean As it is an error message about no depotpath.
00:08 theorbtwo Stderr at this point should be the same as when you invoked make.
00:08 Forth has joined #perl6
00:08 drbean Anyway ctrl-c lets the build continue too.
00:09 theorbtwo What's the output when you run it by hand?  What do you mean by "it asks..."?
00:09 autrijus hey
00:10 theorbtwo Hey, autrijus!
00:10 autrijus anyone having account on feather?
00:10 autrijus I'd like to find people to try this
00:10 autrijus svk depot '' /home/autrijus/.svk/local
00:10 autrijus svk co //mirror/pugs
00:10 autrijus -- and see if it works
00:10 * theorbtwo doesn't (but may ask for one if he can't get this perl5 embedding thing working... it's really strange).
00:10 drbean By hand: path /usr/local/cpan/5.8.3/build/Perl6-Pugs-6.2.5 is not a checkout path.
00:11 eric256 has left
00:11 AtnNn Depot '' already exists; use 'svk depotmap --detach' to remove it first.
00:11 Limbic_Region autrijus - on winbugs?
00:11 autrijus AtnNn: hm, you already having a svk?
00:11 autrijus Limbic_Region: no, on feather
00:11 autrijus a svk repo, that is
00:11 Limbic_Region oh - nevermind then
00:11 AtnNn no, i dont
00:11 * Limbic_Region is just happy to have net access again
00:11 autrijus ok try this
00:11 autrijus svk depot --relocate '' /home/autrijus/.svk/local
00:12 autrijus svk co //mirror/pugs
00:12 drbean using system instead of qx//, svk asks me if I want to set up .svk/local
00:12 theorbtwo Could you please provide the exact output?  I'd like to grep SVK for it, so I can figure out how to keep it from asking.
00:12 theorbtwo It seems quite odd that it asks when run from make, but not when run by hand.
00:13 drbean I copied the exact output into the line starting > By hand:
00:13 autrijus AtnNn: does that work?
00:13 pasteling "AtnNn" at 66.36.154.23 pasted "svk errors" (18 lines, 1.1K) at http://sial.org/pbot/10416
00:13 drbean Try running svk info on an arbitrary directory
00:14 autrijus AtnNn: ok, try this
00:14 theorbtwo Er, no, what's the output when you run it via system?
00:15 drbean Sorry, when substituting system for qx//
00:15 autrijus AtnNn:
00:15 autrijus cp ../autrijus/config .svk/config
00:15 autrijus svk co //mirror/pugs
00:15 AtnNn U  pugs
00:16 drbean As root or as /me, who has a svk repo
00:16 drbean That was a question.
00:16 autrijus AtnNn: so that worked :D
00:16 AtnNn yep :)
00:16 autrijus AtnNn: now cd into pugs
00:16 autrijus svk pull
00:16 theorbtwo As root.
00:16 mrborisguy has joined #perl6
00:16 svnbot6 r3885, mugwump++ | Various Parts of the Perl class model moved from docs/src/ to ext/Perl-MetaModel/lib/Perl/;
00:16 svnbot6 r3885, mugwump++ | Pugs-based classes moved from ext/Perl-MetaModel/lib/Perl to ext/Perl-MetaModel/lib/Pugs
00:16 svnbot6 r3886, Limbic_Region++ | Added missing . in hyper deref tests
00:17 AtnNn seems to work
00:17 autrijus yay.
00:18 drbean As root from the command line: path /usr/local/cpan/5.8.3/build/Perl6-Pugs-6.2.5 is not a checkout path.
00:19 autrijus Juerd: can you add the comments in ~autrijus/config to MOTD?
00:19 autrijus Juerd: that will likely save lots of bandwidth
00:19 drbean That was sudo /usr/bin/perl -Iinc util/version_h.pl src/Pugs/pugs_version.h
00:19 Limbic_Region has quit IRC ("tiuq\")
00:20 theorbtwo Um, you mentioned something earlier about it asking you a question.
00:20 drbean But run as part of make as root: Repository /root/.svk/local does not exist, create? (y/n)7
00:20 theorbtwo There we go, thank you.
00:20 drbean Sorry about the 7.
00:21 AtnNn maybe you can put the svk config in /etc/skel?
00:24 theorbtwo Uff, svk tries to open /dev/tty if STDIN isn't a TTY.
00:24 svnbot6 r3887, autrijus++ | * Method invocation into Perl 5 now carries the current
00:24 svnbot6 r3887, autrijus++ |   context around.
00:24 svnbot6 r3888, autrijus++ | * fix double-evaluation bug for Perl 5 method invocation;
00:24 svnbot6 r3888, autrijus++ |   reported by Gruber.
00:24 svnbot6 r3889, clkao++ | Basic Benchmark.pm.
00:25 autrijus clkao++
00:25 autrijus clkao++
00:25 clkao autrijus: where's hashref and call_later ?
00:25 clkao karma clkao?
00:25 jabbot clkao: clkao? has neutral karma
00:25 clkao karma clkao
00:25 jabbot clkao: clkao has karma of 46
00:25 autrijus clkao: I've been fixing a insidious double-eval bug and cxt propagation
00:26 clkao you should have asked me
00:26 clkao hah
00:26 autrijus clkao: now perl6 cxt carries over to perl5
00:26 clkao cool.
00:26 mrborisguy does a name with ++ increase karma, or what?  clkao++
00:26 autrijus mrborisguy: right
00:26 mrborisguy arbitrarily...
00:26 theorbtwo mrborisguy: Yep
00:26 theorbtwo perlbot, help
00:26 perlbot Syntax: (fact) :: tell (who) about (what) :: (who) > (what) :: learn (what) as (info) :: relearn (fact) as (info) :: facts (search term) :: shorten (url) :: shorten it :: search (module) :: docs (module) :: perldoc -f (function) :: math :: fortune :: flip :: host (type) (record) :: rot13 :: roll (die) :: tempconv (temp) :: scramble (text) :: 8ball :: slap :: diss :: what time is it :: highest karma  :: lowest karma
00:26 theorbtwo perlbot, highest karma
00:26 perlbot The top 5 karma entries: autrijus: 442, iblech: 317, C: 316, stevan: 123, nothingmuch: 76
00:26 clkao now i should sleep.  you want to see bin/svk in perl6 right? :)
00:26 mugwump perlbot, what time is it?
00:26 perlbot Wed May 25 17:26:58 2005 Pacific Time
00:27 autrijus changes topic to: Feather users: http://perlcabal.org/~autrijus/ | http://pugscode.org/ <Overview Journal Logs> | http://pugs.kwiki.org
00:27 autrijus clkao: right :)
00:27 vcv has joined #perl6
00:27 clkao also Getopt::Long would be a good example. as it will modify p6 data
00:27 theorbtwo Allo, vcv-without-dashes.
00:27 _metaperl has quit IRC (Read error: 60 (Operation timed out))
00:27 clkao i guess rewriting getopt::Long is hateful.
00:27 autrijus the MOTD should say "We apologise that this machine's svk is still in Perl 5. This situation will be remedied"
00:28 clkao lol
00:28 clkao ha, should put a link to my paypal after that
00:28 autrijus XD
00:28 theorbtwo clkao++ # Not so arbitaraly.
00:29 mrborisguy theorbtwo: hahaha
00:29 svnbot6 r3890, mugwump++ | Sorry, more moves - being more consistent
00:29 clkao autrijus: ok, see what you can get me before i wake up :)
00:30 autrijus clkao: prolly not much but I'll try
00:30 autrijus sleep well!
00:30 clkao the working call_later example willbe extremely helpful
00:30 clkao nite!
00:30 autrijus hm come to think about it
00:31 hlen has joined #perl6
00:31 autrijus my $cv = eval_perl5('sub { $_[0]->() }');
00:31 autrijus $cv.({ say "callback" });
00:31 autrijus if I get _this_ to run
00:31 autrijus you should be home free right?
00:31 clkao dear autrjus
00:31 clkao please look at method.t
00:31 clkao that has the same thing
00:32 autrijus yeah but you was using meth
00:32 autrijus principally the same, sure
00:32 clkao try. but.
00:32 theorbtwo autrijus: Looked into the p5emb problem, and not liking what I'm seeing.  When I directly include the header for the crypt thing, it doesn't help.  The header in question makes it conditional on __USE_GNU, which AFACS should def. be set.
00:32 clkao but if call_later makes it simpler you can do that and i do the ugly perl5 part
00:32 broquaint has quit IRC (Read error: 60 (Operation timed out))
00:32 autrijus clkao: ok ok. you want a thunk in perl5 land. I get that much
00:33 autrijus clkao: I'll see what I can do.
00:33 autrijus you know, a genuine thunk like that carries the entire context around
00:33 clkao i am trying to keep you away from perl5guts :)
00:33 autrijus so you can do continuations :)
00:33 * clkao giggles
00:33 autrijus or coroutines
00:33 autrijus since pugs controls the runloop
00:34 autrijus not p5
00:34 autrijus clkao++ # embperl == good idea
00:34 autrijus theorbtwo: hrmph.
00:34 autrijus theorbtwo: I wish I have a machine to debug :-/
00:34 autrijus theorbtwo: try replicating it on perlcabal?
00:34 autrijus I mean, feather
00:35 clkao autrijus: just trying the usual thing to make use of existing stuff and do things via the fastest path
00:36 cdpruden theorbtwo: I ran into the same problem earlier; I use a binary install of ghc(non-debian), and installed the hs-plugins (and it's requirements) from source, all of those in /usr/local -- and I no longer get the _crypt problem
00:36 cdpruden but I do get a different compile problem now
00:36 autrijus clkao: ok. sure. also we need to handle vararg return
00:36 theorbtwo I don't have a feather account.
00:36 autrijus but that's another story for another time. you sleep
00:36 theorbtwo You still have an account on lilith, I think.
00:37 theorbtwo Oh, no, you don't.  Recreating it.
00:38 vcv has quit IRC (Nick collision from services.)
00:39 vcv has joined #perl6
00:39 vcv has quit IRC (Nick collision from services.)
00:39 vcv- has joined #perl6
00:44 jql has joined #perl6
00:44 metaperl has quit IRC (Client Quit)
00:45 mrborisguy anybody know if there is perl6 syntax highlighting for vim yet?
00:45 autrijus mrborisguy: see util/perl6.vim
00:45 autrijus $ ./pugs -e 'say eval_perl5("wantarray ? LIST : SCALAR")'
00:45 autrijus LIST
00:45 autrijus $ ./pugs -e 'say scalar eval_perl5("wantarray ? LIST : SCALAR")'
00:45 autrijus SCALAR
00:45 autrijus fun!
00:45 mrborisguy autrijus: okay, thanks!
00:46 theorbtwo Woo, cool, autrijus!
00:46 theorbtwo mrborisguy: There's a file for that in the pugs svn.
00:46 theorbtwo util/perl6.vim
00:47 Juerd Compiling Pugs.Embed.Perl5 ( src/Pugs/Embed/Perl5.hs, src/Pugs/Embed/Perl5.o )
00:47 Juerd src/Pugs/Embed/Perl5.hs:18:23: Not in scope: type constructor or class `CInt'
00:47 Juerd make: *** [unoptimized] Error 1
00:47 Juerd autrijus: Thanks for the svk instructions
00:47 Juerd autrijus: Can you change "../autrijus" to "~autrijus", and add "mkdir ~/.svk"?
00:47 theorbtwo Juerd: Can I get a feather account?  (Username theorb, please.)
00:47 Juerd theorbtwo: Yes, email me.
00:51 metaperl has joined #perl6
00:51 svnbot6 r3891, autrijus++ | * perl5_eval now honours Perl 6 side context too.
00:55 Juerd ls -l
00:55 Juerd eh
00:55 Juerd that doesn't work on irc :)
00:55 * Juerd meant /names :)
00:55 theorbtwo Heh.
00:55 Juerd theorbtwo: I haven't received your email yet
00:56 theorbtwo Hm, I sent it...
00:56 autrijus Juerd: fixed. looks ok?
00:57 vcv-- has joined #perl6
00:57 svnbot6 r3892, autrijus++ | * p6ify Benchmark's pod
00:57 svnbot6 r3893, autrijus++ | * fix nonembed build
00:57 svnbot6 r3894, autrijus++ | * really fix nonembed, as reported by Juerd
00:57 theorbtwo Hm, I think I'm going to go away for a while and read, and possibly sleep.
00:58 theorbtwo Later, guys.
00:58 autrijus theorbtwo: sleep well
00:58 Juerd autrijus: We'll see in 1 minute, when the next autobuild goes
00:58 Juerd :)
00:59 Juerd autrijus: Its stderr is redirected to ~juerd/auto/autobuild.err, should you want to inspect it
00:59 Juerd autrijus: It runs every 15 minutes
00:59 Juerd autrijus: And /usr/local/bin/pugs is a symlink to ~juerd/auto/pugs/pugs
01:00 knewt Juerd: what's the fingerprint of feather supposed to be please, as an authenticity check
01:00 autrijus Juerd: I meant the svk instruction :)
01:00 autrijus knewt: 74:fb:62:f5:86:3b:61:cd:f4:87:94:56:14:a6:2e:59.
01:01 Juerd autrijus: Where do you get that fingerprint?
01:01 knewt Juerd: ssh-keygen -l -f /etc/ssh/ssh_host_rsa_key
01:01 mrborisguy Juerd: you just gotta guess
01:01 autrijus Juerd: by typing "ssh localhost" on feather
01:01 mrborisguy Juerd: okay, i guess nevermind
01:01 Juerd autrijus: Almost - it's better if you don't assume it's done from one's homedir at all, I think :)
01:01 Juerd autrijus: ~ is always the user's homedir (and ~foo is foo's)
01:02 Juerd OTOH, it does say it's suppose to be run from the homedir
01:02 Juerd I overlooked that
01:03 autrijus fixed that too.
01:03 autrijus now it's all ~/
01:03 Juerd autrijus: Thanks
01:03 autrijus np :)
01:03 autrijus please verify it works :D
01:04 Juerd verified
01:04 autrijus cool
01:04 Juerd And the automatic build went well too
01:06 knewt Juerd: ok, ssh key put in place and password randomized to something i have absolutely no idea of whatsoever
01:08 autrijus Juerd: I see no ~juerd/auto/pugs/pugs
01:09 Juerd autrijus: That means the last build failed, which is correct, because I'm fooling around trying to get parrot compiling
01:09 Juerd parrot needs c++, which wasn't installed
01:09 stevan Juerd++ # just got my feather account info
01:10 * autrijus chuckles good-naturely at castaway's "Perl 5 mostly didn't have significant syntax change, right?" post
01:10 autrijus # http://perlmonks.org/?node_id=459818
01:10 theorbtw1 has joined #perl6
01:10 autrijus Juerd: parrot does not need c++
01:11 autrijus Juerd: or it really does? where?
01:11 Juerd autrijus: It does complain if it's not installed, and it no longer complains when it is.
01:11 Juerd Configure.pl complained
01:11 autrijus ah. then that complaint is out of date.
01:14 Juerd What's the right separator for PUGS_EMBED?
01:14 autrijus anything not \w
01:15 castaway_ has joined #perl6
01:15 autrijus Juerd: you okay if I host pugs's darcs repo on feather too?
01:15 autrijus seeing how you have darcs installed
01:15 Juerd Anything that doesn't use wild bandwidth, and has to do with perl 6, is allowed
01:16 autrijus sure. darcs repo is quite bandwidth friendly overhttp
01:16 Juerd We have to try and stay under 100 GB per month
01:17 autrijus sure, that's easily done
01:17 autrijus normal dev can't use that much
01:17 autrijus not at least until we have ext/Net-Torrent/
01:18 Juerd :)
01:18 autrijus oh. I'd need gnu screen
01:18 Juerd It should be installed
01:18 Juerd But it isn't. Weird
01:18 Juerd It was on the requests list though
01:18 autrijus 'kay
01:19 Juerd Installed now.
01:19 theorbtwo has quit IRC (Read error: 60 (Operation timed out))
01:19 autrijus danke
01:20 Juerd Heh
01:20 Juerd It's probably wise to enable autoflush for embedded perl 5
01:20 Juerd pugs -e'eval_perl5 q[$a = 42; *b = *a; print $b;]; say'
01:21 Juerd automatic build cycle now includes parrot, and embeds perl 5 and parrot in pugs
01:23 Juerd autrijus: Do you know if something like ccache exists for ghc?
01:25 mrborisguy anybody know what this error is all about: /tmp/ghc25611.hc:1740: warning: implicit declaration of function `boot_DynaLoader'
01:25 mrborisguy when trying to compile Pugs.Embed.Perl5
01:26 autrijus Juerd: not sure
01:26 mrborisguy i guess this is the only line that says "error", but it's before about 20 lines of errors: /usr/lib/perl/5.8/CORE/reentr.h:611: error: field `_crypt_struct' has incomplete type
01:26 mrborisguy (i mean, 20 lines of warnings)
01:27 autrijus mrborisguy: it's not error and the lack of prototype is normal
01:27 autrijus but the _crypt_struct is error and I'm not sure how or why
01:27 cdpruden I got that until I installed the hs-plugins package
01:28 cdpruden but now I get a different problem building
01:28 castaway has quit IRC (Connection timed out)
01:30 kelan jabbot karma
01:30 kelan hmm
01:31 Juerd finished mailing lots of people their passwords...
01:31 Juerd That sucked :)
01:31 autrijus Juerd++
01:31 autrijus Juerd++
01:31 Juerd :)
01:32 autrijus dev.pugscode.org also aliased to feather aka perlcabal.org
01:33 autrijus new darcs repo up at http://perlcabal.org/~autrijus/darcs/pugs/
01:33 autrijus syncing not yet in place
01:33 mrborisguy hmm... does Perl5 use a specific crypt library or something?
01:33 autrijus mrborisguy: that's possible
01:36 Juerd mrborisguy: I think not
01:37 robkinyon has joined #perl6
01:38 robkinyon anyone gotten the svk co procedure outlined in ~autrijus/config to work on feather?
01:38 knewt yes
01:38 * Juerd wonders why robkinyon's user name shows up as his uid when you do "ps aux"
01:38 Juerd It says 1001 where it should say robkinyon
01:38 * robkinyon has no idea, juerd
01:38 Juerd Oh, hi, robkinyon
01:38 Juerd robkinyon: Yes, I tested it
01:38 Juerd robkinyon: Where do things go wrong?
01:39 robkinyon it's telling me that /mirror/pugs is not a URL
01:39 mrborisguy Juerd: check if robkinyon is in the passwd file
01:39 autrijus robkinyon: //mirror/pugs
01:39 robkinyon i'm in /etc/passwd as user 1001
01:39 autrijus did I type it wrong? it should be double slash
01:39 Juerd mrborisguy: It is.
01:39 robkinyon 1;0 robkinyon@feather:~$ svn co //mirror/pugs ~/pugs
01:39 robkinyon svn: '/mirror/pugs' does not appear to be a URL
01:39 Juerd robkinyon: svK
01:40 autrijus did you use svk?
01:40 autrijus you may need to alias svn to svk for a bit
01:40 autrijus ;)
01:40 robkinyon wow ... n vs. k
01:40 * robkinyon feels dumb
01:40 Juerd autrijus: Maybe add "# That's svk, not svn."
01:40 robkinyon yeah ... my fingers type "svn" w/o thinking
01:40 * Juerd made the same mistake the first time
01:40 autrijus Juerd: not going to help people in the long run :)
01:40 Juerd robkinyon: Same here :)
01:40 autrijus but sure
01:40 robkinyon oh - anyone know vim functions well?
01:41 robkinyon my perlide.vim works w/gvim, but not vim
01:41 Juerd robkinyon: I do, well enough, but don't really feel like spreading the gospel today :)
01:41 * robkinyon is a cut'n'paste master
01:41 Juerd robkinyon: If you want another editor, ask for one
01:41 robkinyon i love vim ... i just never bothered learning its scripting language
01:41 Juerd I see
01:42 Juerd I don't use scripts for it.
01:42 autrijus added
01:42 * robkinyon has only been using g?vim? for over a decade ...
01:42 autrijus I'm glad I switched to bash ;)
01:42 autrijus the .bashrc and .vim worked perfectly
01:42 Juerd bash rocks :)
01:43 autrijus I can't go anywhere without minibufexpl.vim
01:43 mauke what does it do?
01:43 autrijus mauke: it is the tabbed browsing extension for vim.
01:44 autrijus see my ~/.vim* on feather :)
01:44 robkinyon tabbed browsing extension?
01:44 autrijus robkinyon: editing multiple files at once
01:44 robkinyon isn't that what buffers are for?
01:44 autrijus displaying a row of tabs of the opened files
01:44 autrijus well yes, but I can't remember buffers well
01:45 robkinyon :buffers
01:45 autrijus sure, but it's like tabs vs multiple windows :)
01:45 robkinyon nomap ,b :b<cr>
01:45 robkinyon nomap ,b :buffers<cr>
01:45 autrijus anyway, a tab row is nonmodal
01:45 autrijus it's always there
01:46 autrijus so it fits my brain better :)
01:46 robkinyon ahhh ... vim or gvim?
01:46 autrijus both works
01:46 robkinyon huh
01:46 mrborisguy cdpruden: where did you get hs_plugins?
01:47 autrijus robkinyon: http://www.wavell.net/vim/vim_screenshot.gif
01:47 cdpruden from the pugs readme,     ftp://ftp.cse.unsw.edu.au/pub/users/dons/hs-plugins/snapshots/
01:47 autrijus I put them at bottom, though
01:48 robkinyon oh, wow. That just looks ... weird. I'm from 80-col/23-line vt220 land. I still barely can handle X, let alone all this craziness. :-)
01:48 mrborisguy cdpruden: thanks
01:48 cdpruden nopaste?
01:48 cdpruden pastebot?
01:50 cdpruden mrborisguy, it has a couple of prereqs, too
01:50 cdpruden I think they're listed in it's readme
01:51 pasteling "cdpruden" at 68.248.14.17 pasted "Now I get this when trying to build" (10 lines, 1.5K) at http://sial.org/pbot/10419
01:52 autrijus cdpruden: did you rerun perl Makefile.PL?
01:52 mauke hmm, looks like minibufexpl.vim is buggy
01:53 cdpruden autrijus; yes -- even have been making distclean each time
01:53 autrijus cdpruden: ok, I committed something
01:53 cdpruden oooh
01:53 autrijus try running Makefile.PL again
01:53 mauke vim kamil-1.pl; :e kamil-2.pl (minibufexpl window appers); :q (kamil-2.pl and minibufexpl disappear), kamil-1.pl is displayed without syntax coloring
01:53 svnbot6 r3895, autrijus++ | * add package eval
01:54 Juerd ccache++
01:54 autrijus Juerd: you got it working with ghc?
01:54 cdpruden ahh, yes... unknown package: eval at compile time... where should I look for eval?
01:54 Juerd autrijus: No, I wouldn't know how
01:55 autrijus cdpruden: "make register"
01:55 autrijus in hsplugins
01:55 autrijus I think I said that somewhere :)
01:55 cdpruden right; I actually did that already
01:55 autrijus strange then.
01:56 autrijus did you install first?
01:56 cdpruden yup; repeating that and register just in case
01:56 mrborisguy so in hsplugins... make, make register, make install?
01:57 cdpruden make, make install, make register, actually
01:57 mrborisguy oh, okay
01:57 autrijus cdpruden: I see
01:57 autrijus gimme a sec
01:57 cdpruden so, is there a ghc equivalent to perl -MModule::I::THINK::I::HAVE ?
01:57 autrijus ghc-pkg
01:59 autrijus cdpruden: are you in AUTHORS? :)
01:59 svnbot6 r3896, autrijus++ | * don't keep tmp files anymore.
01:59 cdpruden nope :)
02:00 autrijus ok. please add yourself in :)
02:00 autrijus (and give me your email addr so I can make you a committer to add yourself in, if that's okay by you)
02:00 Juerd robkinyon: Please use nice
02:01 robkinyon sorry bout that.
02:01 Juerd It's okay
02:01 cdpruden autrijus, could you paste your ghc-pkg -l so I can compare it to mine?
02:01 robkinyon can i default my nice to something?
02:02 robkinyon i'd like to default it to 19, if possible
02:02 autrijus cdpruden: try r3898 first?
02:02 Juerd robkinyon: 19 means your process'll hardly ever get a chance :)
02:02 robkinyon heh
02:02 robkinyon it seems to be going ok
02:03 cdpruden oooh!  Rock!
02:03 Juerd I don't think there's a way to set a default
02:03 cdpruden it works, err... farther :)
02:03 cdpruden one problem down
02:03 autrijus heh :)
02:03 cdpruden do you use a threaded perl or not?
02:03 autrijus cdpruden: invitation sent, please add yourself to AUTHORS, welcome aboard!
02:03 cdpruden thanks!
02:03 autrijus I don't
02:04 cdpruden (I kind of thought it might be a bad idea to use a threaded perl for this, but I did it anyway)
02:04 autrijus so what was the errmsg?
02:04 japhy juerd - your perl6 server will be fully stocked?  that is, it'll have all the tools needed to develop and submit updates?
02:04 Juerd japhy: What do you mean, "will be"?
02:04 svnbot6 r3897, autrijus++ | * fix hs-plugins build; cdpruden++ for catching this.
02:04 svnbot6 r3897, autrijus++ |   We now require a newer "-package plugins" version of hs-plugins.
02:04 svnbot6 r3898, autrijus++ | * even more fix
02:04 japhy oh, you've got it already?
02:05 Juerd japhy: Is anything you need missing?
02:05 Juerd yes :)
02:05 japhy last I heard, people were bitching over the name.
02:05 japhy well then, I'd like an account :)
02:05 Juerd That was so yesterday.
02:05 robkinyon like 6 people are building on it simul.
02:05 pasteling "cdpruden" at 68.248.14.17 pasted "Threaded perl build error message" (33 lines, 2.8K) at http://sial.org/pbot/10420
02:05 Juerd japhy: Email me
02:05 robkinyon that was so this morning, you mean. :-)
02:05 japhy will do.
02:05 Juerd If you do it now, I'll create an account for you just before I go to bed
02:05 Juerd (it's 4:11 am
02:05 robkinyon ahhh
02:05 japhy ok :)
02:05 robkinyon only 10p here
02:05 autrijus cdpruden: same bug as theorbtw1's then
02:06 Juerd and I've been busy with feather since 17:00...)
02:06 autrijus cdpruden: I'm 'fraid until that's fixed you need to build w/o embperl :-/
02:06 autrijus cdpruden: we'll eventually figure it out. you're also welcome to trace and ask around
02:06 cdpruden sure; let me know if there is anything I can do to help -- I'll try again with a non-threaded perl and such
02:06 autrijus that'd rock.
02:07 japhy what should I put in the email?  u/p request?
02:07 Juerd japhy: just the request and a username
02:07 japhy ok
02:07 Juerd password will be made for you, and you'll have to change it yourself
02:07 japhy gotchya.
02:07 kelan what is hs-plugins?
02:08 mrborisguy i still get this: /usr/lib/perl/5.8/CORE/reentr.h:611: error: field `_crypt_struct' has incomplete type even after hs-plugins
02:08 autrijus kelan: it's the thing that makes eval_haskell() and using haskell modules work
02:08 japhy ok
02:08 autrijus mrborisguy: yeah, seems you cdpruden and theorbtw1 got the same problem
02:08 japhy err.....
02:08 japhy pay no attention to the public message.
02:09 autrijus currently embperl is verified to work on freebsd and osx
02:09 autrijus and verified as broken on linux and win32
02:09 mrborisguy yeah, i guess i can say mine's on linux
02:09 mrborisguy so chalk that one up
02:10 mrborisguy and i won't take it so hard on myself anymore ;)
02:10 autrijus but somehow Juerd got it working on feather
02:10 autrijus which is debian sid
02:10 autrijus so I'm not at all sure what's involved
02:10 mrborisguy a'ight... i'm on debian sarge i'm pretty sure
02:10 japhy ah, perl6.nl
02:10 mrborisguy but i installed perl from source
02:11 mrborisguy so i'll just wait i guess, see what comes of it.  as for now, i'm out... too much failure for one night!  ;)
02:11 mrborisguy has quit IRC ("went for an evening jog")
02:13 Juerd autrijus: "somehow"?
02:13 Juerd autrijus: It just worked.
02:13 Juerd autrijus: I did nothing special for that :)
02:14 autrijus ok :)
02:16 kelan i thought you used elfish magic!
02:16 kelan isnt there a special incant for embperl?
02:17 metaperl has quit IRC (Client Quit)
02:19 autrijus env PUGS_EMBED=perl5
02:19 autrijus env PUGS_EMBED=perl5 perl Makefile.PL
02:20 kelan but how do you say that in elfish :)
02:21 Juerd Good night
02:22 elmex has quit IRC ("gn8")
02:22 autrijus Juerd: nite!
02:22 svnbot6 r3899, cdpruden++ | <autrijus> cdpruden: invitation sent, please add yourself to AUTHORS, welcome aboard!
02:22 autrijus kelan: «Ar Eru ontanë i altë ëarcelvar ar ilya i úvë cuinë onnaiva i rihtar i nenissen, nostalentassen, ar ilyë rámavoiti onnar nostalentassen»
02:22 autrijus (okay, not quite that. ;))
02:22 kelan hah
02:25 autrijus but I really need to nap a bit.
02:25 autrijus see ya! &
02:25 kelan bye
02:27 robkinyon how do you make the hyperoperators in vim?
02:27 robkinyon nm - i figured it out
02:27 kelan two angles?
02:27 kelan ctrl-k!
02:28 robkinyon Ctrl-K,>>
02:37 meppl gute nacht
02:40 robkinyon Shouldn't the following be identical:
02:40 robkinyon my @y = [[@x],[@x],[@x],[@x],[@x],[@x]];
02:40 robkinyon my @y = [ map [@x], 0..+@x ];
02:40 robkinyon where my @x = (undef,0..4);
02:41 kelan map always takes a code ref
02:41 robkinyon thanks
02:41 kelan so your second would probably die
02:41 robkinyon it has been :)
02:51 mugwump autrijus, would it be very hard to have a debug version of the EvalMonad that calls a function each time the EvalMonad steps?
02:51 svnbot6 r3900, autrijus++ | * usual props on Benchmark.pm
02:52 mugwump preferably DB::db().  Oh, and it should pass other information in bizarre and unusual places, so that in 10 years' time people can spend hours poring over the code
02:54 mugwump Obviously this needs to be a non-reentrant hook, so that within the hook code it doesn't keep calling itself :)
02:57 cdpruden has quit IRC ("Sleepy time")
03:00 * mugwump adds the request to autrijus' journal and PerlMonks posting
03:18 rafl has quit IRC (Read error: 54 (Connection reset by peer))
03:18 vcv-- has quit IRC (Read error: 54 (Connection reset by peer))
03:19 rafl has joined #perl6
03:24 rafl has quit IRC (Read error: 54 (Connection reset by peer))
03:24 rafl has joined #perl6
03:27 drbean t/oo/class/TestFiles didn't make it into 6.2.5 so those tests didn't pass
03:28 drbean the tests in t/oo/class/nested_use.t
03:32 TheBeast has joined #perl6
03:35 jql has quit IRC (Read error: 110 (Connection timed out))
03:36 robkinyon has quit IRC ("Chatzilla 0.9.68.3 [Firefox 1.0.4/20050511]")
03:36 vcv- has quit IRC (Read error: 110 (Connection timed out))
03:39 vitaminmoo has joined #perl6
03:39 vitaminmoo has quit IRC (Remote closed the connection)
03:39 vitaminmoo has joined #perl6
03:40 vitaminmoo has quit IRC (Read error: 104 (Connection reset by peer))
03:40 vitaminmoo has joined #perl6
03:40 vitaminmoo has quit IRC (Remote closed the connection)
03:54 jql has joined #perl6
03:59 xinming has joined #perl6
04:04 meppl has quit IRC (Remote closed the connection)
04:04 svnbot6 r3901, autrijus++ | * Perl 6 values now roundtrip into Perl 5 land and back.
04:05 TheBeast when is perl6 going to be released?:)
04:11 jql what part do you want?
04:11 svnbot6 r3902, autrijus++ | * oops, .isa() check was broken
04:12 jql perl6 is a fluid thing. some works now. some will work later. some will need to wait till 6.1.0
04:12 jql :)
04:13 TheBeast oh
04:18 IshaCocoa has joined #perl6
04:24 TheBeast has left "Leaving"
04:33 Khisanth jql: so ... what will perl 7 be like? :)
04:41 revdiablo isn't perl 7 supposed to be perfection, completeness?
04:42 japhy perl 6.6.6.... the programming language of the beast
04:43 japhy aww, thebeast left the channel.
04:43 japhy bummer.
04:47 Khisanth wasn't it recently discovered the number of the beast was some other value?
04:47 xinming has quit IRC ("I really love GNU")
04:50 ihb Khisanth: ah, like that?
04:50 ihb err, s/t/w/
04:52 uuuu has joined #perl6
04:53 coet has quit IRC ("leaving")
04:59 mugwump well, 666 is a lucky number in the Orient where pugs svn is held
05:00 Khisanth it is?
05:00 vcv-- has joined #perl6
05:00 mugwump or, rather, 6 is a lucky number and 666 has it three times!
05:01 vcv- has joined #perl6
05:01 mugwump 444 would seem more evil
05:01 mugwump or 4444
05:02 Khisanth 1453! :)
05:05 xinming has joined #perl6
05:08 mugwump the end of Constantinople's reign?  or something else?
05:12 nnunley has quit IRC (Read error: 54 (Connection reset by peer))
05:13 kakos has quit IRC (Read error: 110 (Connection timed out))
05:13 nnunley has joined #perl6
05:15 simcop2387 has quit IRC ("Client exiting")
05:16 IshaCocoa has quit IRC (Read error: 104 (Connection reset by peer))
05:19 IshaCocoa has joined #perl6
05:21 f0rth has quit IRC ("leaving")
05:22 f0rth has joined #perl6
05:34 Khisanth mugwump: depending on the dialect it can mean "certain death" :)
05:40 mugwump hmm, interesting.  I know that the word for "4" (sì) sounds like the word for "death" (si, not sure of tone), is that phonetic?
05:42 Khisanth that is correct in at least a few places :)
05:52 jql has quit IRC (Read error: 110 (Connection timed out))
05:52 vcv- has quit IRC (Read error: 110 (Connection timed out))
05:55 Khisanth mugwump: do you know if there has been any change to system() in p6?
06:03 xinming has quit IRC (Client Quit)
06:10 stevan has quit IRC (Read error: 110 (Connection timed out))
06:11 Shachaf has quit IRC ("[<>]")
06:15 Jouke has joined #perl6
06:16 Jouke has left
06:20 gaal so, anyone had any luck with embdperl5 on win32?
06:20 gaal ...or on debian?
06:24 mugwump sorry Khisanth, I've got no idea :)
06:27 SM_ax has joined #perl6
06:29 wolverian Khisanth: 616 (re: number of the beast)
06:31 gaal building the latest hs-plugins package, i get an error about Data.List. ideas?
06:31 gaal ghc-6.4, debian
06:33 _metaperl has joined #perl6
06:36 knewt gaal: yes. download hs-plugins-20050424 instead, there's known problems building more recent stuff
06:36 gaal thanks!
06:36 nnunley has quit IRC (Read error: 113 (No route to host))
06:38 uuuu has left
06:50 saorge has quit IRC (Read error: 110 (Connection timed out))
06:50 nothingmuch has joined #perl6
06:52 _metaperl has quit IRC (Read error: 110 (Connection timed out))
06:56 nothingmuch morning
06:59 gaal i'm getting "Could not find module `System.Eval':" whether i embperl5 or not. this is after a clean co.
07:01 gaal hmm, r3897 say ' We now require a newer "-package plugins" version of hs-plugins.' <- any explanation about what this implies?
07:07 scook0 has joined #perl6
07:07 metaperl has joined #perl6
07:11 Juerd svk-- svn--
07:12 Juerd They ought to exit 1 instead of 0 when there are no updates :(
07:12 Juerd Then you can script against it, and skip the compile phase
07:12 wolverian Juerd: send a patch?
07:13 Juerd I can't imagine this is a bug or oversight, to be honest
07:13 Juerd There's probably a good reason
07:13 wolverian me neither, really. I'd ask the mailing list/equivalent
07:17 Aankhen`` has joined #perl6
07:22 jql has joined #perl6
07:22 vcv- has joined #perl6
07:23 nothingmuch Juerd: look in util/smoke_loop.sh
07:23 nothingmuch it works reliably enough
07:23 Juerd ah, thanks
07:23 nothingmuch it's ugly though
07:25 iblechbot has joined #perl6
07:26 IshaCocoa1 has joined #perl6
07:27 gaal Juerd, should we only make unoptimized on feather?
07:27 Juerd Probably
07:27 gaal k
07:27 Juerd Though you can try an optimized build if load is low
07:27 Juerd But please do nice it :)
07:27 Juerd (nice -n 5 make)
07:27 gaal sure :) is there a %ENV<PARROT_PATH> i can reuse?
07:28 Juerd automated builds are in ~juerd/auto
07:28 Juerd of parrot and pugs
07:28 gaal k
07:29 Juerd nothingmuch: That won't trigger anything if only onefile changed, and that is a likely thing.
07:29 nnunley has joined #perl6
07:30 Aankhen`` Morning.
07:30 nothingmuch okay, in that case maybe 'svn up -q' printing nothing means no update
07:30 nothingmuch i'll test
07:30 Juerd Ah, that's a good one
07:31 gaal feather is a hella fast!
07:31 nothingmuch • [syeeda:/usr/local/src/pugs] nothingmuch % svn up -r 3672 README
07:31 nothingmuch U  README
07:31 Juerd gaal: Really? :)
07:31 nothingmuch Updated to revision 3672.
07:31 Juerd gaal: What are you used to then?
07:31 nothingmuch 2 lines
07:31 Juerd nothingmuch: Oh, hm
07:32 gaal slow, i guess! :)
07:32 Juerd nothingmuch: I thought there'd be no Updated... line
07:32 nothingmuch both on out, btw
07:32 gaal aaah, no -- i forgot, i did make unoptimized ;)
07:32 gaal *that*'s fast.
07:32 nothingmuch so need to even redirect err... how's that for good interface design... peh
07:33 Juerd sh--  # stupid :)
07:33 Juerd [ foo ], but not [foo]
07:33 nothingmuch oh, sh is very stupid sometimes
07:33 Juerd anyway, it appears to work
07:33 nothingmuch but you get used to typing that stuff after a while, and forget it's a problem
07:33 Juerd We'll see if we start lagging behind updates ;)
07:34 nothingmuch Juerd: smoke loop
07:34 nothingmuch ?
07:34 nothingmuch or are you trying something else
07:34 Juerd No, ~juerd/autobuild.sh
07:34 Juerd Which caters /usr/local/bin/{parrot,pugs}
07:34 nothingmuch no acct yet
07:34 nothingmuch in that case:
07:34 Juerd Request one then :)
07:34 nothingmuch nothingmuch, [email@hidden.address] Yuval Kogman
07:34 gaal juerd, i suspect we need a little more than your auto/parrot
07:34 Juerd By email please
07:34 nothingmuch allrightey then
07:34 gaal because while it builds, other people can't build against it :)
07:34 Juerd eh
07:34 Juerd You did request an account
07:34 Juerd And you have it.
07:34 nothingmuch oh, coolness
07:35 Juerd And I mailed you a password early this morning...
07:35 nothingmuch i don't recall getting a mail though
07:35 Juerd weird
07:36 Juerd gaal: Perhaps a local svn mirror would be nice. Would you set one up for others to use?
07:36 Juerd I don't think disk space will be a problem soon
07:37 Juerd Everyone needs their own working copy anyway, because your build will be very, ehm, "interesting" if your tree is updated midbuild :)
07:37 gaal true.
07:38 wolverian heh.
07:38 gaal my scm-fu is limited, so i'd rather someone else take up this task
07:41 gaal oaky, why doesn't this work? env PERL5LIB=/home/gaal pugs -e 'use Hello5--perl5; say Hello5.greet'
07:42 gaal oh, because i forgot to end the module with '1;'
07:42 gaal use --perl5 doesn't die on module load errors.
07:42 wolverian "modules must return a true value";
07:42 gaal bugs find bugs :)
07:44 IshaCocoa has quit IRC (Read error: 110 (Connection timed out))
07:45 gaal juerd, on feather perl and ghc are just the vanilla debian perl and ghc-cvs ?
07:46 clkao Juerd: with svk you can up -C first, see if there's menaingful update
07:46 masak has quit IRC ("masak has no reason")
07:49 masak has joined #perl6
07:52 Juerd gaal: Yes
07:53 gaal i just don't understand why my linux machine isn't embedding perl5 then
07:53 gaal its config is almost identical
07:53 clkao lazy autrijus :p
07:53 Juerd clkao: That's very useful - thank you
07:53 Juerd clkao: But it also works with output rather than exit codes, so it doesn't simplify scripting
07:54 Juerd gaal: Do you have libperl-dev installed?
07:54 clkao *nod* but it's not really a failure when there's empty update.
07:54 Juerd clkao: I know.
07:54 gaal yes
07:54 Juerd clkao: But sometimes one has to be creative in order to support nice features :)
07:55 Juerd clkao: Especially MS-DOS programs made good use of this feature
07:55 Juerd IF ERRORLEVEL 4 GOTO four
07:57 * metaperl wonders how far from an interpreted C++ perl6 will be
07:58 Juerd metaperl: Why do you say such mean things?
07:58 metaperl mean? C++ appears to rock...
07:58 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
07:58 metaperl look at all the apps written in c++
08:00 nnunley_ has joined #perl6
08:00 webmind lol
08:00 Juerd C++ is often seen as a needless upgrade to C, that makes things much worse in many ways
08:01 Juerd C++ proponents usually respond saying that the C hippies just aren't ready for more advanced mechanisms yet
08:01 metaperl there are beautiful languages and practical languages. talkers and doers
08:01 Juerd And then flame wars begin.
08:01 osfameron has joined #perl6
08:01 scook0 karma C
08:01 jabbot scook0: C has karma of 74
08:01 Juerd Perl 6 has been called perl++ in the negative context of C++ some times already.
08:01 metaperl what time is it in England? 2 fotango people in the last 5 minutes have come n
08:02 Juerd 9 am :)
08:02 metaperl what is your opinion on that Juerd? is Perl 6 an improvement? A big one?
08:05 Juerd It's a big and important improvement that I think the world isn't ready for
08:05 Juerd I fear that Perl 6 is much too complex (it has to be, though), and that this will be a reason for many decision makers to use other languages.
08:05 metaperl ok Juerd, one more question. if it were your choice, would method invocation use "." or "->" ?
08:06 Juerd ., definitely.
08:06 scook0 "->" is such a pain to type
08:06 nnunley has quit IRC (Read error: 60 (Operation timed out))
08:06 Juerd Although -> communicates action, while . is a full stop, . is MUCH easier to type, and easier on the eyes as well, if you chain them.
08:06 metaperl hmm, I _love_ "->"
08:07 metaperl I am going to miss it... if p6 ever makes it into the real world
08:07 Juerd Yes, but hadn't we already established that even for a Perl guy, you're pretty weird?
08:07 metaperl :)
08:07 metaperl s/weird/unique
08:07 Juerd Whatever you wish to call it.
08:08 metaperl lol
08:08 scook0 it is kind of funny how . has been associated with member access & method calls
08:08 osfameron Juerd: will Perl 6 really be too complex?
08:08 metaperl scook0, funny?
08:08 osfameron I can imagine using [+], but will probably leave [>>^+<<] well alone,
08:08 osfameron and I guess a lot of really complex idioms will be possible, but probably not much used in the wild.
08:09 Juerd osfameron: The mere possibility of using it is scary for many
08:09 scook0 I remember looking at an old Algol book which used . in regular identifiers
08:09 Juerd osfameron: I think things like .?, .+ and .* are unneeded, and make things to complex
08:09 nothingmuch has joined #perl6
08:09 scook0 It was /really/ hard to read :)
08:09 metaperl hi Yoval
08:09 Juerd Many things in the OO system are very complex.
08:10 metaperl like roles
08:10 osfameron Juerd: oh, I've not really followed that: where is .? etc documented? (I see that as a regex quantifier right now)
08:10 Juerd osfameron: S12
08:10 Aankhen`` Building Pugs seems to be even slower than usual. o_O
08:10 Juerd The whole private method|attribute thing is highly inconsistent
08:10 scook0 The OO system as a whole is pretty scary, but most people should be able to get by with just a sane subset of it
08:10 Juerd And for that, you don't even get real privacy in return.
08:11 osfameron ghci-- # doesn't respond to quit/exit/q/x/Ctrl-C
08:11 Juerd scook0: Yes, to write software.
08:11 Juerd scook0: But to *understand* written software, you have to simply know all routes to a certain point.
08:11 scook0 Juerd: the Perl curse...
08:11 nothingmuch morning
08:11 nothingmuch damn connection
08:11 Aankhen`` Hi nothingmuch.
08:12 nothingmuch Juerd: i think the best way to manage feather source code wise is:
08:12 nothingmuch svn mirror
08:12 Juerd scook0: Yes, and it's made many times worse. Some of that is needed, some of that I think is utter bloat.
08:12 nothingmuch everyone compiles their own version
08:12 nothingmuch but theres a ccache
08:12 nothingmuch wrapped with a shell script that does umask 0
08:12 nothingmuch and writes to a public dir
08:12 Juerd I had ccache public yesterday, but forgot the umask thing
08:12 Juerd :)
08:12 osfameron Juerd: I can get .? - shortcut for $obj->meth if $obj->can('meth')
08:12 Juerd You don't need to have a wrapping shell script
08:13 Juerd There's an env variable you can use to have ccache use a certain umask
08:13 nothingmuch ah
08:13 nothingmuch that's cool
08:13 Juerd osfameron: But I don't think that's what it does.
08:13 osfameron Juerd: in that case, I'm scared
08:13 nothingmuch anyway, back to work
08:13 Khisanth osfameron: didn't try ctrl+d? :)
08:13 Juerd osfameron: .?, .* and .+ really have to do with 0-or-1, any-amount and 1-or-more.
08:14 Aankhen`` Is Pugs.Parser taking an abnormally long time to compile for anyone else?
08:14 Juerd Likewise, .., ^.., ..^, ^..^
08:14 Juerd I think .. is more than enough to have.
08:14 osfameron Khisanth: heh, nor Ctrl-z
08:14 osfameron Juerd: but how can you have any number of methods with the same name
08:14 osfameron unless they have different type signatures
08:15 Juerd osfameron: multimethods, inheritance, roles
08:15 osfameron in which case, presumably only one of those signatures would match the argument list anyway?
08:15 Juerd osfameron: I don't know the exact semantics. I, for one, am too intimidated by the sheer size of S12 and the numerous complexities in it.
08:15 Aankhen`` `nmake` has been running for about 45 minutes now, out of which atleast 15 have been spent on Pugs.Parser alone.
08:16 metaperl S12 is the kind of thing that you look at and realize how much S12 is strongfrom S12:
08:16 metaperl from S12
08:16 metaperl .doit.()    # okay, no arguments, same as .doit()
08:16 metaperl why is the second "." ok?
08:16 Juerd metaperl: .(), .<>, .[], .{} can all be written without their dots.
08:17 Aankhen`` IIRC, any sub/method can be called by appending either () or .()...
08:17 Aankhen`` Like he said. :-P
08:17 Juerd metaperl: But syntactically, they're all subscripting, including the sub calling ().
08:17 Juerd Don't see the . in these as dereferencing
08:17 Juerd Dereferencing is done, if needed, but not by the dot.
08:18 metaperl I am very grateful to have been in #perl6 and talking with you guys. It has renewed my interest in getting away from Perl and into Haskell... perl6 is going to be huge mess
08:18 Juerd (It's okay to explain to perl 5 people that it is, to make things simpler for them)
08:18 metaperl and very poorly received
08:26 BigBear has joined #perl6
08:31 rgs has joined #perl6
08:31 Juerd Hi, rgs
08:31 rgs hi Juerd
08:36 sekimura has joined #perl6
08:43 nnunley_ is now known as nnunley
08:43 wolverian metaperl: it's very logical and unmessy that .() is a method.
08:43 svnbot6 r3903, rgs++ | * More accurate display of the "Thread support disabled" configuration message
08:43 svnbot6 r3903, rgs++ | * indent nits
08:54 ihb without giving this a second thought: perhaps "logicity" (word?) in a language can make it seem messy? before you see the logic it doesn't seem like sane construction, just (perhaps poor) arbitrary rules. people are perhaps used to non-to-logical rules but that makes instant (shallow) sense?
08:57 wolverian that is a deep thought. :)
08:58 scook0 so if the logic isn't immediately intuitive, people will think it's messy/illogical, because they don't understand the logic behind it
08:58 alright has joined #perl6
08:58 sekimura has quit IRC (Read error: 54 (Connection reset by peer))
08:58 wolverian fortunately people don't _have_ to mess with these OO properties to write perl6 code.
08:58 wolverian _that_ is why java and such are so horrible.
08:59 ihb has quit IRC (Nick collision from services.)
09:01 ihb has joined #perl6
09:05 broquaint has joined #perl6
09:06 * alright quite likes java
09:06 alright is now known as Ummbop
09:07 * f0rth is poor java user
09:13 broquaint_ has joined #perl6
09:14 umbop has quit IRC (No route to host)
09:14 Ummbop is now known as umnop
09:14 umnop is now known as umbop
09:15 scw has quit IRC (Read error: 54 (Connection reset by peer))
09:15 scw has joined #perl6
09:16 ihb broquaint++ for Switch::Perlish
09:17 rgs has quit IRC (Remote closed the connection)
09:17 rgs has joined #perl6
09:19 rgs anyone got pugs working compiled against a shared perl 5 (with libperl.so) ?
09:20 broquaint_ Thanks, ihb, I hope it's useful and not too buggy :)
09:21 broquaint has quit IRC (Read error: 60 (Operation timed out))
09:22 broquaint_ is now known as broquaint
09:23 Gruber rgs, yes
09:24 iblechbot has quit IRC (Read error: 60 (Operation timed out))
09:24 rgs any special trick ? my ./pugs says "error while loading shared libraries: libperl.so: cannot open shared object file: No such file or directory"
09:27 rgs apparently pugs doesn't take ccdlflags from perl 5's config
09:27 Gruber rgs, what os, and what does ldd say?
09:27 Gruber and what perl5?  :-)
09:27 rgs $ perl -V:ccdlflags
09:27 rgs ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.7/i386-linux/CORE';
09:27 rgs on linux
09:28 sekimura has joined #perl6
09:29 rgs ld doesn't say anything, a pugs executable is produced, except that its rpath doesn't contain the above mentioned directory
09:29 Gruber ldd
09:29 Gruber ldd pugs
09:29 rgs wait a minute...
09:30 rgs $ ldd pugs|grep perl
09:30 rgs        libperl.so => not found
09:30 Gruber hmm, interesting;  rgs, just in case, have you tried to make realclean before build with perl5 embed?
09:30 IshaCocoa has joined #perl6
09:30 rgs yes. and also from the cpan tarball (just in case :)
09:33 broquaint Make sure libperl.so is in your library path too.
09:33 Gruber broquaint: no, that should not be necessary
09:33 rgs broquaint: obviously this will work but I'd rather not doing it
09:33 Gruber -rpath is supposed to take care of that
09:34 rgs and it seems to be ignored
09:34 Gruber rgs: uh well, "it just works" here (FreeBSD)
09:35 * broquaint eyes -rpath suspiciously
09:36 dada has joined #perl6
09:36 rgs well, -Wl,-rpath isn't passed on the ghc command line
09:38 IshaCocoa1 has quit IRC (Read error: 110 (Connection timed out))
09:39 * rgs tries to patch the Makefile.PL
09:46 Juerd Heh
09:46 Juerd My driving instructor called me to ask how things were going
09:46 Juerd I've had my license for 6 months now
09:46 Juerd "Do you have a car yet?" "Yea - my 2nd even."
09:46 Juerd That was funny :)
09:50 Aankhen`` has quit IRC ("Reboot [Time wasted online: 2hrs 32mins 53secs]")
09:53 rgs woot
09:54 rgs Gruber: by adding -optl $Config{ccdlflags} on the ghc command line it works
09:55 rgs Gruber: I'll commit and see if everything else breaks :p
09:59 Gruber whee
09:59 svnbot6 r3904, scook0++ | * Haddocks for Internals.hs
09:59 svnbot6 r3904, scook0++ | * Renamed 'enterLoop' to 'enterWhile'
09:59 svnbot6 r3905, rgs++ | * Fix linking with embedding perl 5 against shared libperl.so (at least on
09:59 svnbot6 r3905, rgs++ |   Linux) by adding -optl $Config{ccdlflags} to the ghc command-line
10:03 elmex has joined #perl6
10:06 Juerd Because svnbot6 lags, by the time the messages arrive on irc, feather's automatically built pugs already has the changes compiled in :)
10:07 osfameron has quit IRC (Read error: 60 (Operation timed out))
10:16 Aankhen`` has joined #perl6
10:20 IshaCocoa has quit IRC ()
10:27 osfameron has joined #perl6
10:28 larsen has joined #perl6
10:30 nnunley has quit IRC ()
10:33 Aankh|Clone has joined #perl6
10:36 locksy has joined #perl6
10:37 cdpruden has joined #perl6
10:38 autrijus rgs++
10:38 svnbot6 r3906, autrijus++ | * starting single-invocant feature branch.
10:38 svnbot6 r3906, autrijus++ |   (maybe laso do multi-level MMD param here?)
10:38 svnbot6 r3907, autrijus++ | * Correct parsing for invocants; there can at most be one invocant.
10:38 svnbot6 r3908, autrijus++ | * repair $obj.isa("Type")
10:38 * autrijus finally implemented half of Damian's blasted new revelation
10:39 rgs hey autrijus
10:39 autrijus yo rgs
10:40 autrijus hm, does that mean parrot-config can use a similar fix?
10:40 autrijus in Makefile.PL
10:41 nnunley has joined #perl6
10:42 rgs probably
10:43 rgs no parrot here to test
10:47 Gruber rgs, I am happy to report that your fix did not break FreeBSD compilation of pugs  :-)
10:47 locksy has quit IRC ("Terminated with extreme prejudice - dircproxy 1.0.5")
10:47 Juerd rgs: You can request access to feather if you want a parrot to test with :)
10:48 locksy has joined #perl6
10:48 rgs Juerd: I have this project to make an rpm of parrot, too
10:49 Juerd For which of the many RPM-based systems?
10:49 Juerd Or statically compiled?
10:51 rgs for only one rpm-based system : the one my employer makes :)
10:52 Aankhen`` has quit IRC (Read error: 110 (Connection timed out))
10:52 Juerd Who is your employer?
10:53 rgs mandriva
10:53 Juerd Rings no bell TBH
10:53 rgs formerly known as mandrakesoft
10:53 rgs and conectiva
10:53 nnunley_ has joined #perl6
10:54 metaperl has quit IRC (Client Quit)
10:54 Juerd Those do ring bells
10:55 nnunley has quit IRC (Read error: 60 (Operation timed out))
11:10 Juerd ls -l
11:10 autrijus Juerd: hey
11:10 Juerd argh :)
11:10 Juerd Wrong /names again
11:10 Juerd Hey
11:10 autrijus $foo.blah()
11:10 autrijus $foo is inv
11:10 autrijus blah($foo)
11:10 autrijus is $foo inv?
11:10 autrijus (inv = invocant)
11:10 Juerd If there is no &bar in scope, yes.
11:10 autrijus &blah you mean?
11:10 Juerd Yes.
11:11 autrijus but that's a runtime check
11:11 Juerd Indeed
11:11 autrijus because you may eval blah into existence
11:11 autrijus right before blah()
11:11 autrijus so it's safest to put it as a arg
11:11 Juerd I don't think you may.
11:11 autrijus and promote to inv?
11:11 autrijus hm?
11:11 autrijus eval '&*blah = sub { ... }';
11:11 autrijus blah($foo);
11:11 Juerd Oh, that's allowed?
11:12 autrijus I don't know, I'm asking you :)
11:12 Juerd I thought that when undeclared, you had to use symrefs to get to it
11:12 autrijus but if blah is not in scope
11:12 autrijus blah($foo, $bar)
11:12 autrijus will not promote any of $foo or $bar as invs
11:12 autrijus because there can be atmost one inv
11:12 autrijus so that's wildly inconsistent
11:12 Juerd Do note that I don't understand why invocants would be much different from normal arguments
11:13 Juerd And how multiple invocants can work
11:13 autrijus neither I.
11:13 autrijus there's no multiple invocants in the caller side
11:13 Juerd And why on earth this flexibility in syntax exists.
11:13 autrijus thanks. :-/
11:13 Juerd Well, I know why it exists, but I don't agree that that is a good reason.
11:15 autrijus ok. so this is what I'll do
11:15 autrijus $foo.bar; # $foo is invocant
11:15 autrijus bar($foo); # $foo is always argument; but on runtime, if bar is not in scope, $foo is promoted to inv.
11:15 autrijus because that's the only sane way I see it working.
11:16 autrijus all other ways require much earlier binding than perl is accustomed to do
11:16 autrijus (unless we are now suddenly an early binding language)
11:22 Aankhen`` has joined #perl6
11:27 jql has quit IRC (Read error: 110 (Connection timed out))
11:27 vcv- has quit IRC (Read error: 110 (Connection timed out))
11:29 autrijus yay, all syntax level invocation fixed for perl5 method calls
11:31 autrijus bbl &
11:33 Aankhen`` How should a module like CGI, which supports both function style and OO style, be translated into Perl 6?
11:33 svnbot6 r3909, autrijus++ | * `bar($foo)` is now never parsed as `$foo.bar()`; it's only
11:33 svnbot6 r3909, autrijus++ |   promoted to invocant during runtime.  So this now works:
11:33 svnbot6 r3909, autrijus++ |     use Digest--perl5;
11:33 svnbot6 r3909, autrijus++ |     say Digest.SHA1.add("Pugs!").hexdigest;
11:34 nothingmuch oh crap
11:34 nothingmuch that's wonderful
11:34 nothingmuch if only my laptop could keep up with pugs
11:35 nothingmuch the problem is that by the time it finishes compiling a new major feature is already in
11:35 Aankhen`` Heh, same with m.
11:35 Aankhen`` s/m\.$/me/
11:35 Aankhen`` I decided that I'll just compile once a day (in the morning).
11:35 nothingmuch maybe i ought to take binaries out of eris
11:36 nothingmuch the problem is that my computer is very weak
11:36 nothingmuch 400mhz
11:36 Aankhen`` Hrm, mine isn't quite that bad.
11:36 nothingmuch it's a portal basically
11:36 nothingmuch it has 1gb of ram
11:36 Aankhen`` module CGI { class CGI { ... } } -- does that create the class CGI or CGI::CGI?
11:36 nothingmuch and a pretty good uptime, despite having been dropped on the floor on several occasions
11:37 nothingmuch so i get to have my  50 browser windows, and 10 terminals, and 30 VIs
11:37 nothingmuch gvims, actually
11:37 Aankhen`` Perhaps it would be better if I asked: does that create the class ::CGI or CGI::CGI?
11:37 nothingmuch but if i try to actually compute anything, i better have something else to do
11:37 nothingmuch IIRC it creates CGI::CGI
11:37 Aankh|Clone has quit IRC (Connection timed out)
11:37 autrijus nothingmuch: you can use feather :)
11:37 Aankhen`` OK.
11:37 nothingmuch autrijus: i have eris at home, and feather
11:37 autrijus pugs -MDigest--perl5 -e 'say Digest.MD5.add("Pugs!").hexdigest'
11:37 autrijus f08bcb32d6eea3d3c9ec2f924ce33067
11:37 nothingmuch and i have safta here, which is a real work horse
11:38 nothingmuch i also have aix, hpux, sunos, tru64 and windows work horses
11:38 Aankhen`` So then how should it be translated if it needs to support both the OO interface and the functional interface
11:38 Aankhen`` ?
11:38 autrijus bbiab. :)
11:38 nothingmuch very fat hw (8gb ram mostly, etc)
11:38 svnbot6 r3910, autrijus++ | * `pugs -MFoo` should mean `use Foo` not `require Foo`.
11:38 Aankhen`` Or should one of those interfaces just be scrapped
11:38 Aankhen`` ?
11:38 nothingmuch but it's lots of overhead
11:38 nothingmuch i do pugs nonesense mostly on eris
11:38 nothingmuch s/here/at work/
11:43 iblechbot has joined #perl6
11:47 bd_ has quit IRC (Read error: 110 (Connection timed out))
11:49 bd_ has joined #perl6
11:52 pjcj Aankhen``: You're porting CGI?
11:53 pjcj Please take the opportunity to clean up the interface.
11:54 nothingmuch yeah, like not making it do HTML
11:54 pjcj Maybe creating a number of specialist modules which can interact well together
11:54 nothingmuch pjcj++
11:54 nothingmuch reuse of HTTP::Headers, etc is a nice example
11:54 nothingmuch in existing p5 lib i love the consistency
11:54 umbop has left
11:54 Juerd 13:58 < pjcj> Aankhen``: You're porting CGI?
11:54 Juerd 13:59 < pjcj> Please take the opportunity to clean up the interface.
11:54 nothingmuch that LWP uses the same header library as Mail::Box and Catalyst
11:55 Juerd Please take the opportunity to re-use ABSOLUTELY NOTHING from the p5 CGI.pm
11:55 Juerd And don't call it CGI.pm
11:55 nothingmuch CGI::Query makes sense
11:55 nothingmuch to encapsulate the request data
11:55 Juerd For query parsing, yes
11:55 Juerd But that too is NOT CGI specific.
11:55 Juerd It has to do with HTTP
11:55 nothingmuch makes sense
11:55 nothingmuch CGI::Response should maybe be an HTTP::Response that knows where it came from
11:55 nothingmuch HTTP::Query is nicer, but it's got two meanings
11:56 Juerd (partly URI, but POST isn't in the uri, so the URI:: namespace isn't good)
11:56 nothingmuch the request you send, and the one you receive
11:56 nothingmuch are they symmetrical?
11:56 nothingmuch i think they are...
11:56 Juerd nothingmuch: This way of sending things has a name. Look it up and let it inspire :)
11:56 nothingmuch HTTP::Request isa HTTP::Query
11:56 nothingmuch Juerd: eh?
11:56 nothingmuch damnit! 1540-5215 (I) No licenses available. Contact your program supplier to add additional users.  Compilation will proceed shortly.
11:56 nothingmuch i hate AIX
11:56 Juerd I personally don't see a special need for a Query class if that can just be in Request/Response
11:57 nothingmuch is a request the same thing on both sides of the socket though?
11:57 nothingmuch does that make sense API wise?
11:58 nothingmuch btw, i think a CGI.pm is useful for tying this object cluster together
11:58 nothingmuch my $q = query;
11:58 nothingmuch builds an HTTP::Request from $ENV{QUERY_STRING}, STDIN, etc
11:58 nothingmuch do you think that's a bad thing?
12:00 BigBear has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]")
12:09 Juerd nothingmuch: A request is the same thing on both sides.
12:09 nothingmuch well, ok,
12:09 Juerd nothingmuch: It may have an extra header added, or be munged a bit
12:09 Juerd But its structure is equal
12:09 nothingmuch true that
12:10 nothingmuch okay, that's neat
12:10 nothingmuch work calls
12:11 pjcj My big concern with porting Perl5 modules is that we don't miss the opportunity to learn from our mistakes.  Or the opportunity to enhance interfaces based on new Perl6 features.
12:11 Juerd And re CGI.pm, no, any common technology should not have its top level thing
12:11 Juerd DBI is the name of the module, not an existing protocol
12:12 Juerd CGI is a protocol. It has no good reason to be toplevel.
12:12 Juerd Just like HTTP.pm would be bad.
12:12 cdpruden has quit IRC ("Oops. This machine just fell asleep")
12:12 Juerd Yes, HTTP::something is okay.
12:12 Juerd pjcj: I share that concern
12:13 wolverian me too.
12:13 Juerd pjcj: And I'm very, very much for prefixing Perl5 to existing modules, loaded via embedded perl 6, via ponie, or even when ported
12:13 osfameron when ported?
12:13 Juerd Loading CGI--perl5 as CGI:: is wrong...
12:13 Juerd osfameron: Yes - to indicate it's temporary, a direct port, without any thought put in a redesign.
12:14 Juerd Which may be necessary for all old crufty modules.
12:14 Juerd Like DBI, like CGI
12:14 osfameron surely it should still be CGI--(porter's name) ?
12:15 Juerd It shouldn't look like it's final if it's not.
12:15 osfameron to distinguish it from running a version in embedded p5/ponie?
12:15 Juerd I'm talking about the namespace
12:15 Juerd Not the long name of the module.
12:15 Aankhen`` I don't mind changing the interface -- I agree that it could be cleaned up a lot -- but I'm wary of breaking backward compatibility... if we can use P5 modules directly, though, that wouldn't matter, right?
12:15 Juerd When porting a project from perl 5 to 6, there will be a stage in which you need both the old and the new module
12:15 Juerd And if the porter of the module was smart, he probably didn't use the exact same interface.
12:16 Juerd So the two modules MUST have different namespaces.
12:16 wolverian I agree with you, Juerd.
12:19 * Juerd would even not mind having a wholly different namespace separator
12:19 Juerd :: sucks anyway :)
12:20 osfameron . !
12:20 Juerd osfameron: Certainly possible, but probably very confusing
12:20 wolverian Foo.Method.new; # ouch
12:20 osfameron yeah yeah, not serious (but how it is in Java)
12:21 wolverian yes, it does look clean, but that's only the surface.
12:21 Aankhen`` Speaking of namespaces, I think grammars ought to have a seperate namespace from packages/modules/classes.
12:22 Aankhen`` But that's just me. :-P
12:22 Juerd I'd like dropping ^ for one(), and like, visually, stuff like WWW^Mechanize
12:22 wolverian ewhg.
12:22 osfameron I'm not sure I like grammar's being split from modules
12:22 osfameron 'cos isn't that the "secret regexist attitude" that we're supposed to be moving away from.
12:23 Juerd Aankhen``: rule foo { ... } sub bar { $^foo =~ /<foo>/ } bar(...)
12:23 Aankhen`` Well... if you have `module XML { grammar XML { ... } }`, how do you access the grammar?
12:23 Juerd Aankhen``: It's rather convenient that they do share namespace.
12:24 Juerd Aankhen``: Well, a "grammar" has rules, a "class" or "role" has methods, a "package" has subs, but that's all just theory. In practice, a "namespace" has rules, methods and subs.
12:24 wolverian I'm not sure I like a module called XML
12:25 Juerd I don't like a module called XML, for the reason I described a few minutes ago.
12:25 Aankhen`` wolverian >> I picked that as one example.
12:25 wolverian Aankhen``: sure, but I think it generalises.
12:25 Juerd Unless you're *creating* the technology, don't make the technology's name the only part of the module name.
12:25 wolverian whenever you have a grammar for a protocol/format, the class/module is _not_ called the same
12:25 Aankhen`` OK.
12:26 nnunley_ has quit IRC ("Leaving")
12:27 Aankhen`` [17:26:19] <nothingmuch> HTTP::Request isa HTTP::Query # shouldn't that be the other way around?
12:27 Juerd Neither, I think.
12:27 nothingmuch i have no clue
12:27 wolverian what is a http query?
12:27 Aankhen`` Perhaps I didn't understand HTTP::Query in that case.
12:27 nothingmuch Juerd: knows much more
12:28 Juerd $request->query should return the query string
12:28 Juerd or better: a query object, that stringifies as the original query string
12:28 Aankhen`` Maybe the part of CGI.pm that deals with generating HTML ought to be in HTML::Writer instead.
12:28 Juerd $request->post should return a filehandle/query object hybrid
12:28 Juerd And never should POST data be parsed automatically.
12:29 wolverian CGI.PM WILL NOT GENERATE HTML
12:29 Juerd (Never ever.)
12:29 wolverian EVER AGAIN
12:29 Aankhen`` wolverian >> Indeed.
12:29 Juerd wolverian++
12:29 Aankhen`` I'm just suggesting a name for the replacement.
12:29 Aankhen`` (for that portion of P5's CGI.pm)
12:29 wolverian Juerd: what is the 'query string'?
12:29 Juerd wolverian: Whatever comes after the question mark
12:29 Aankhen`` index.cgi?foo=bar&baz=quux
12:30 Aankhen`` In that, the query string would be: foo=bar&baz=quux
12:30 Juerd foo=bar&baz=quux in Aankhen``'s example
12:30 Juerd $request should play hash, for easy access to variables
12:30 Juerd And this shortcut can perhaps combine get with post, if in the creation of the object, that was requested.
12:31 Aankhen`` Juerd >> Have you looked at the port so far?
12:32 Juerd That is: $request<foo> is short for $request.param('foo'), which does either $request.query<foo> (which does $request.query.param('foo')) or $request.post<foo> // $request.query<foo>
12:32 Juerd And perhaps query should be called get, for symmetry and huffman-happiness
12:32 Juerd Aankhen``: Not at all.
12:32 Aankhen`` OK.
12:32 Aankhen`` If it is to be split up into seperate modules, perhaps that is a good thing. :-)
12:33 Juerd What exactly do you mean, "perhaps".
12:33 Aankhen`` Because so far it's a straight port -- whoever's worked on it has tried to emulate P5's CGI.pm as closely as possible.
12:33 Juerd Straight port be bad, especially in the case of CGI.pm
12:34 wolverian KILL IT WITH FIRE
12:34 Juerd autrijus: Is there a way yet to have an object be used as a hash, the hash being tied?
12:34 Aankhen`` Hmm, how about if ::CGI was a class which used delegation to glue together all the modules that CGI--perl5 is split into?
12:34 Juerd Aankhen``: No, the interface must be different.
12:34 wolverian Aankhen``: no. if you want that, just use the perl5 CGI.pm
12:34 Juerd Aankhen``: CGI.pm is wrong on too many levels.
12:35 wolverian Aankhen``: perl6 will never have that kind of cruft in the core. never.
12:35 Aankhen`` Alright.
12:35 Juerd Aankhen``: The name, the interface, the bloat, the programming, the documentation
12:35 Aankhen`` That's perfectly fine by me.
12:36 Juerd None of these must find its way into a Perl 6 equivalent
12:36 * Aankhen`` salutes. "SIR YES SIR!"
12:36 Juerd Except perhaps a backwards compatible port, which should be named Perl5::CGI, not CGI.
12:37 Aankhen`` I was wondering whether a backwards compatible port is required -- if backwards compatibility is necessary, can't people just `use CGI--perl5;` and be done with it?
12:37 wolverian I don't like the author being called perl5. that's not the author.
12:37 wolverian I'd rather use Perl5::CGI
12:37 wolverian or else add a language field to the long name
12:37 osfameron use Perl5 qw/CGI/; ? ;->
12:37 Aankhen`` Well, whatever way is chosen to refer to Perl 5 modules when importing them...
12:38 Aankhen`` I like the idea of an adverbial modifier, personally.
12:38 Aankhen`` Though that's somewhat mitigated by the fact that `use:perl5` looks a little ugly to me.
12:39 Juerd I think Perl5 must be part of the *namespace*, not just the long name.
12:39 Juerd It must be visible in every call
12:39 Juerd And if someone doesn't want that, they can alias manually
12:39 Juerd ::CGI ::= ::Perl::CGI
12:39 Juerd s/Perl/Perl5/
12:39 osfameron yes, which is why somehthing like a "use Perl5" module would be cool
12:39 Juerd osfameron: Why?
12:39 osfameron 'cos it could automatically do that aliasing for you.
12:40 Juerd It could, but it shouldn't.
12:40 svnbot6 r3911, autrijus++ | * castFail from SV no longer segfaults.
12:40 svnbot6 r3911, autrijus++ | * all save one from method.t passes.
12:40 Juerd The Perl 5 stuff must be kept separate
12:40 Juerd And if someone chooses to intergrate it, that must be an explicit choice. This must not be made too easy.
12:42 * Aankhen`` goes to peruse the CGI.pm documentation and plan the modules.
12:43 Aankhen`` (let me say here that if anyone feels (s)he would be better able to do it, (s)he should feel welcome to)
12:47 Aankhen`` Juerd >> May I PM you?
12:49 _metaperl has joined #perl6
12:49 Juerd Aankhen``: Yes, always.
12:50 nothingmuch the memory could not be "read"
12:50 nothingmuch got to love those windows errors
12:51 nothingmuch otherwise you get frustrated
12:51 nothingmuch *sigh*
12:51 nothingmuch at least it's not as bad as "i could not load the page, the error could be one of these: dns is broken, you don't have ssl, the server is down, it's tuesday", without it being mentioned that the return code was 5xx
12:51 autrijus Juerd: aha, Tieable. if you can write a test, I can write an implementation.
12:51 autrijus Juerd: you know how it works :)
12:52 clkao morning autrijus
12:52 Juerd autrijus: I have no idea what the syntax would be
12:53 clkao i was so sad not being able to do much aboujt bin/svk this morning
12:55 autrijus clkao: ...actually most of your pieces are in.
12:55 autrijus I was dealing with damian's blasted change of syntax.
12:55 vcv- has joined #perl6
12:55 jql has joined #perl6
12:56 autrijus dinner, bbiab
12:57 autrijus clkao: all Val<->SV now roundtrips
12:57 clkao not hash?
12:57 clkao mmm.. i don't see the code doing actualy invocation from p5, what's the magic?
13:04 clkao mmm
13:04 clkao src/perl5/perl5.o(.text+0xc): In function `xs_init':
13:04 clkao : undefined reference to `boot_DynaLoader'
13:07 meppl has joined #perl6
13:07 _metaperl has quit IRC (Read error: 110 (Connection timed out))
13:09 autrijus clkao: you don't have Dynaloader.a linked in?
13:09 autrijus also rgs tweaked something -- not sure if it's relevant -- also make sure your pugs_config.h is gone
13:09 cdpruden has joined #perl6
13:10 autrijus I'm working on the last test of method.t
13:10 rgs clkao: I had that this morning, but make distclean made it work again
13:11 autrijus rgs: hey, say I want to make all the blessed p6 val thing in p5 land dispatch back for all operations
13:11 misc has quit IRC (Read error: 54 (Connection reset by peer))
13:11 misc has joined #perl6
13:11 nothingmuch autrijus: the perl 5 support is amazingly goof for advocacy
13:11 nothingmuch autrijus++
13:11 nothingmuch i made 3 people say 'wow! cool' today
13:11 autrijus rgs: will it be simpler to put a global dispatch-back to %OVERLOAD -- sort of like a AUTOLOAD where you pass in the op, args back to p6 land
13:12 autrijus rgs: or will it be better to not rely on overload and set up the neccessary mg by hand?
13:12 autrijus I'm not sure from looking at mg_type on how the various mg interact w/ each other
13:12 autrijus and %OVERLOAD looks one level more abstracted
13:12 elmex_ has joined #perl6
13:12 rgs magics are executed in chain... but %OVERLOAD isn't by cup of tea
13:13 autrijus actually, s/(?=rgs:)/clkao:/ too
13:13 rgs s/by/my/
13:13 rgs misc !
13:13 autrijus the chain is like an apache handler chain?
13:13 autrijus where each MGVTBL may do something then pass on to next MG?
13:13 clkao owrks now
13:14 rgs sort of
13:14 cdpruden has quit IRC (Remote closed the connection)
13:14 rgs autrijus: what do you want to dispatch exactly ? overload won't handle method calls
13:14 autrijus so, a concrete example
13:14 autrijus say I want to overload &{}
13:14 clkao Not a CODE reference at (eval 2) line 21.
13:15 autrijus clkao: I'm asking that :)
13:15 clkao right, so i wasn't blind
13:15 autrijus I don't see a MG that deals with that
13:15 cpruden has joined #perl6
13:15 clkao so.
13:15 autrijus clkao: what's preserved is stableptr; the casts from both sides aren't there yet
13:15 clkao you need to bless things into specialnamespace in p5 land. have to namespace with autolaod in the p5 init code
13:15 autrijus I'm trying to avoid %OVERLOAD->{&{}}
13:15 clkao anyway
13:16 autrijus clkao: sure they are already blessed as pugs
13:16 autrijus "pugs" SvRVs
13:16 clkao give me the call_later implemented
13:16 clkao *nod*
13:16 autrijus give me the prototype of call_later again?
13:17 autrijus THUNK call_later(SV *fun, SV* inv, SV** args);
13:17 autrijus like that?
13:17 autrijus and assume all the SV* there are SvRV to pugs?
13:17 autrijus SV* force_call(THUNK *thunk);
13:17 autrijus like that?
13:18 clkao don't need to be sv (perl5 specific)
13:18 clkao just make something into c and callback to pugs.
13:19 autrijus ok, then I'll use PugsVal*
13:19 autrijus and PugsExp*
13:19 autrijus good enough for you?
13:19 autrijus I think use PugsVal* first
13:19 * autrijus has this feeling that we're doing pugsembed api
13:20 * autrijus discovers tryAMAGICunDEREF
13:20 autrijus rgs: hm, seems that in $foo->() position
13:20 autrijus the only working magic is A
13:20 autrijus aka PERL_MAGIC_overload
13:20 autrijus sad
13:21 autrijus nothingmuch: thank you! 3 real people or 3 online people?
13:21 rgs $foo being ?
13:21 clkao autrijus: oh, i got 3 real people yesterday. or 4
13:21 autrijus rgs: $foo being a SV that represents PugsVal*
13:21 nothingmuch 1 person I know IRL but talked to online
13:21 autrijus rgs: currently using SvIV(SvRV)
13:21 rgs ok
13:21 nothingmuch 1 person wwho i ahve not met but is pretty real (he mailed me chocl0olate once)
13:21 autrijus but that is implementation detail
13:21 rgs SvIV(SvRV) ? that's evil
13:22 autrijus rgs: I need to stuff a void*
13:22 autrijus better suggestions welcome
13:22 nothingmuch and the other - well, I told him, but he didn't say "wow cool" yet, because he's asleep
13:22 autrijus rgs: the point being that SV carries the haskell side StablePtr
13:22 autrijus nothingmuch: ok. still good :)
13:22 autrijus clkao: you are in a concentration of mad orange ninjas; your real people are mad anyway :)
13:23 clkao bwah
13:23 * rgs agrees with autrijus
13:23 * autrijus stresses that Perl5 integration is there for Normal People
13:23 autrijus rgs: so, better ideas to carry a PV around?
13:24 rgs autrijus: well, the Core does that already anyway.
13:24 autrijus I'm using
13:24 autrijus SV *
13:24 autrijus perl5_newSVptr ( void * ptr )
13:24 autrijus {
13:24 autrijus    SV *sv = newSV(0);
13:24 autrijus    sv_setref_pv(sv, "pugs", ptr);
13:24 autrijus    return(sv);
13:24 autrijus }
13:24 rgs and you don't plan to embed pugs in ponie, do you ?
13:24 nothingmuch Error: The function "alloca" must have a prototype.
13:24 nothingmuch beh!
13:24 rgs or vice-versa (head hurts)
13:24 autrijus rgs: embed ponie in pugs is indeed my goal
13:24 autrijus rgs: but that will couple with a pir runloop
13:24 nothingmuch why couldn't this error look like what GCC says when it doesn't know what function you want?
13:25 autrijus so won't be like that, so don't worry :)
13:25 autrijus i.e. the ptr will be a PMC already
13:25 rgs autrijus: so you need to tell Nicholas about this PV thing, since it'll be wrapping pmcs
13:25 rgs ah ok, well :)
13:25 autrijus so we can restrict ourselves of dealing with a bad C-based runloop that is perl5 vm
13:25 autrijus bad, as in bad ass, not as in bad quality
13:26 elmex has quit IRC (Read error: 110 (Connection timed out))
13:30 stevan has joined #perl6
13:34 autrijus clkao:
13:34 autrijus PugsVal pugs_Eval ( PugsVal sub, PugsVal inv, PugsVal *args );
13:35 autrijus PugsVal pugs_Apply ( PugsVal thunk );
13:35 autrijus PugsVal pugs_IvToVal ( IV iv );
13:35 autrijus PugsVal pugs_NvToVal ( NV iv );
13:35 autrijus PugsVal pugs_PvToVal ( char * pv );
13:35 autrijus PugsVal pugs_SvToVal ( SV * sv );
13:35 autrijus SV * pugs_ValToSv ( PugsVal val );
13:35 autrijus PugsVal pugs_MkSvRef ( SV * sv );
13:35 autrijus SV * pugs_MkValRef ( PugsVal ptr );
13:35 autrijus how's that for a start?
13:38 clkao so that is exported and i can call from c land?
13:38 autrijus yeah
13:38 autrijus that's the idea
13:38 autrijus makes sense?
13:39 autrijus the Mk*Ref always creates ref (boxes)
13:39 autrijus the SvToVal and ValToSv form unboxes when it can
13:39 clkao sur and the blessed scalar is the one i can use for pugs bacl right?
13:39 autrijus otherwise boxes
13:39 clkao pugs val
13:39 autrijus you can obtain a PugsVal using pugs_SvToVal on that blessed scalar.
13:39 autrijus or you can manufacture one using pugs_MkSvRef
13:40 autrijus or any of the ToVal calls
13:40 autrijus but in general, _any_ SV can be made into Val using pugs_SvToVal
13:40 autrijus it promotes when it's bare SV
13:40 autrijus demotes when it's a ValRef
13:40 clkao ok, i think that should work.
13:40 clkao don't accidentally take my fun!
13:40 autrijus heh.
13:40 clkao just implement the above and no more please XD
13:40 autrijus XD
13:41 autrijus you are mean
13:41 clkao no, you are mean!
13:41 autrijus alright. we are all the arithmetic mean of insanity
13:42 rafl_ has joined #perl6
13:43 rafl has quit IRC (Read error: 101 (Network is unreachable))
13:44 kolibrie has joined #perl6
13:45 clkao autrijus: ping me when you get that committed
13:45 autrijus k.
13:45 autrijus it's not exactly trivial ;)
13:46 nothingmuch 3 minutes instead of 1?
13:46 autrijus heh
13:48 nothingmuch woww... what fun!
13:49 nothingmuch const char **descrArr = static_cast<const char **>(alloca(sizeof(const char *) * allDescriptionsNumber));
13:49 scook0 has quit IRC ("Leaving")
13:50 autrijus clkao: pugsembed.h is in. start coding!
13:50 svnbot6 r3912, autrijus++ | * pugsembed API, draft #1
13:50 nothingmuch 5 minutes, 3 minutes, what's the diff
13:51 nothingmuch hah, i knew it
13:57 clkao autrijus: damnit! i'm still working!
13:57 clkao but just .h. bah
13:59 Limbic_Region has joined #perl6
14:06 SM_ax has quit IRC ("ChatZilla 0.9.61 [Mozilla rv:1.7.7/20050420]")
14:11 autrijus clkao: I'm thinking about how to carry execution context.
14:11 autrijus clkao: I mean, if you do
14:11 autrijus pugs_Eval("$x");
14:11 autrijus obviously it needs to resume the lexical context
14:11 autrijus pugs_Eval("return 1");
14:11 autrijus will need to resume the control context
14:12 integral my $ctx = Pugs::Context->new; $ctx->eval("return 1");
14:12 autrijus both are, amazingly, trivial
14:12 autrijus but the other way is _hard_
14:12 autrijus perl5_eval('$x')
14:12 autrijus perl5_eval('return 1')
14:12 autrijus I don't think perl5 can reify them
14:12 autrijus or do I just store SP?
14:12 autrijus nah. have to undump
14:12 * autrijus blames C
14:13 * Limbic_Region is playing hookie from work today
14:13 integral autrijus: doesn't Coro manages to reify the stack?
14:13 autrijus integral: ah. right.
14:13 autrijus but I don't want to duplicate Coro code
14:13 autrijus so maybe we just depend on Coro.
14:13 autrijus that would actually rock.
14:14 autrijus each language can see each other's lexical scope transparently
14:14 autrijus and yield control to each
14:14 integral autrijus++
14:14 autrijus so it looks like a single runloop
14:14 autrijus whilst it's actually reified ContT serving as context annotators thru IO calls
14:15 * autrijus thinks monadic typing is an excellent way to actually grok interepreter/compiler theory
14:15 Limbic_Region is current build b0rk on Win32?
14:15 autrijus Limbic_Region: I don't know, what's the error?
14:15 Limbic_Region perlbot nopaste
14:15 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
14:16 pasteling "Limbic_Region" at 24.35.57.240 pasted "Error Building Pugs on Win32" (20 lines, 1.3K) at http://sial.org/pbot/10429
14:18 Limbic_Region VoIP++ btw
14:19 autrijus Limbic_Region: try building without embperl.
14:20 Limbic_Region was in the process of doing that now
14:20 Limbic_Region ;-)
14:22 Limbic_Region so far so good
14:22 osfameron gah, I still get makefile errors on Win32...
14:23 nothingmuch autrijus: what's the situation with the O(1) serializable continuations and pugs?
14:23 BigBear has joined #perl6
14:23 autrijus nothingmuch: I've got the design done; oleg provided the code; just need to get it into place
14:24 autrijus nothingmuch: basically the Eval context will become a Zipper with (initially) one cursor
14:24 autrijus over the Exp structure
14:24 Limbic_Region autrijus - I am going to go out on a limb and say that not enabling p5 embedding is gonna make it work
14:24 autrijus instead of the current way of embedding ContT as functions
14:24 autrijus Limbic_Region: nod.
14:25 nothingmuch autrijus: 3rd person just said "does pugs have continuations" instead of "wow! cool"
14:25 nothingmuch and I said "yes, see t/unspecced/cont.t"
14:25 nothingmuch so he said "are they serializable?"
14:25 nothingmuch i said "autrijus was working on it"
14:25 autrijus you can reply that it's already reified
14:25 autrijus (in memory)
14:25 autrijus dumping that reification to disk is in the works. I'm pretty sure it can work.
14:26 nothingmuch so then i quoted chat
14:26 nothingmuch and i said "so come join the fun"
14:26 nothingmuch and now he said "breakfast first"
14:26 autrijus heh
14:26 nothingmuch C++ is driving me insane!
14:26 nothingmuch maybe once I lose it I can start grokking haskell
14:27 autrijus you can program solely in the functional subset of C++ ;)
14:27 autrijus I know of people who do that.
14:27 nothingmuch no i can't, because I'm doing maintenance work
14:27 autrijus (that subset is known as templates)
14:27 autrijus ah. sad
14:27 nothingmuch our project forked off into a new version
14:28 nothingmuch people have been doing code cleanup & review for 2-3 months now
14:28 nothingmuch compiling it with VC++
14:28 nothingmuch so today someone tells me "i need a linux build"
14:28 nothingmuch i finished making linux compile after 4-5 hours
14:28 nothingmuch then did solaris
14:28 q[merlyn] cool.  after rebuilding ghc to not need a local dlopen, I'm now in "make test" of Perl6::Pugs!
14:28 nothingmuch now working on aix and hpux
14:28 q[merlyn] it took about 4 hours to rebuild ghc. :)
14:29 nothingmuch q[merlyn]: you can use dlcompat on OSX
14:29 nothingmuch which IIRC you are using
14:29 q[merlyn] the problem was too many of those
14:29 q[merlyn] I had one in /usr/lib and one in /opt/local/lib
14:29 q[merlyn] so I got problems duing link
14:29 q[merlyn] rebuilding ghc got rid of that.
14:29 nothingmuch hah
14:29 nothingmuch darwinports + makeshift?
14:30 q[merlyn] just darwinports
14:30 q[merlyn] ghc built a few monhts ago
14:31 nothingmuch oh, so yyou're on tiger
14:31 nothingmuch and /opt/local/lib is leftover darwinports dlcompat?
14:31 q[merlyn] it was
14:31 q[merlyn] until I removed it
14:31 q[merlyn] but that required rebuilding ghc
14:32 autrijus q[merlyn]: cool! and since you're on osx, you can actually enjoy embperl
14:32 crysflame has joined #perl6
14:32 autrijus (as well as embparrot)
14:32 crysflame stupid irssi
14:33 autrijus DBI applications would work fine in pugs already... except you can't dereference the result set in perl 6 land yet. working on that
14:33 autrijus <- applying all this to $job soon
14:33 Limbic_Region_ has joined #perl6
14:34 kungfuftr anyone recommend any documentation on using shift_jis characters within vim? (specifically encodings)
14:34 svnbot6 r3913, fireartist++ | * more tests for array/hash slices
14:35 crysflame is your vim compiled with multibyte char support?
14:36 q[merlyn] so far, all tests seem OK
14:36 kungfuftr crysflame: yes
14:37 crysflame that's all i know about shiftjis.
14:37 q[merlyn] Hmm.  program_that_does_not_exist.exe: command not found
14:37 q[merlyn] is that a problem?
14:37 autrijus no.
14:37 autrijus that's intentional
14:38 q[merlyn] any way to not get that to be output during testing?
14:38 autrijus we should add _please_ignore_this
14:38 crysflame s/does_not/should_not/
14:38 crysflame yeah, and /_really_this_isnt_a_bug/
14:38 autrijus maybe by closing $*ERR.
14:38 autrijus want to investigate a bit? :)
14:38 q[merlyn] I'd have to learn Perl6 first. :)
14:39 q[merlyn] there should be a book on it.  Maybe called "Learning Perl". :)
14:39 hlen_ has joined #perl6
14:39 autrijus :)
14:39 q[merlyn] Teach Yourself Perl6 in [nnn] Days. :)
14:39 q[merlyn] s/Teach/Write/
14:39 autrijus the test is t/builtins/system.t
14:40 autrijus what will you do if this is in perl5?
14:40 zuulvin_ has joined #perl6
14:41 q[merlyn] smile? :)
14:41 autrijus ok :)
14:41 * autrijus smiles
14:43 Tekhne has left "Client getting unjiggy."
14:44 q[merlyn] t/oo/class/nested_use failed 1-9 of 9
14:44 hlen has quit IRC (Read error: 110 (Connection timed out))
14:44 q[merlyn] is this known?
14:45 * q[merlyn] hears crickets
14:46 autrijus q[merlyn]: yes... you're using release tarball :)
14:46 q[merlyn] correct.
14:46 autrijus so yes, and fixed.
14:46 q[merlyn] I mirror the SVN, but I install only the releases
14:47 autrijus nod.
14:47 Limbic_Region_ yep - built fine without embedding p5
14:47 Limbic_Region_ is that a known issue?
14:47 masak has quit IRC ("masak has no reason")
14:48 autrijus on win32? yeah
14:48 autrijus don't know why though :-/
14:49 Limbic_Region has quit IRC (Read error: 110 (Connection timed out))
14:49 svnbot6 r3914, iblech++ | svnlog2graph.pl -- Updated scaling, as we're close to r4000.
14:49 svnbot6 r3915, iblech++ | * Usual svn properties added to ext/Benchmark, and
14:49 svnbot6 r3915, iblech++ |   ext/Perl-MetaModel/Perl-MetaModel, and t/unspecced/p5/roundtrip.t.
14:49 svnbot6 r3915, iblech++ | * Fixed anon_block.t (the usual eval_is with lexival vars thing).
14:52 svnbot6 r3916, iblech++ | Makefile.PL -- Minor cosmetical fix (Makefile.PL outputted two instead of one
14:52 svnbot6 r3916, iblech++ | blank line between the "*** notes".
14:52 svnbot6 r3917, iblech++ | * Unbreak [+]«, [+]<<, and &::("infix:<+>").
14:52 svnbot6 r3917, iblech++ | * Usual svn properties added to src/perl5/.
14:54 nothingmuch has quit IRC ()
14:56 q[merlyn] "rules support appears to be missing".
14:57 autrijus q[merlyn]: you don't have parrot in path.
14:57 autrijus nor bulit with embparrot
15:02 q[merlyn] ahh yes.  I also mirror parrot, but don't install it eeither. :)
15:03 autrijus :)
15:03 autrijus you don't need to install it
15:03 autrijus just symlink it somewhere or add it to PATH
15:04 q[merlyn] well, I'd have to build it, then. :)
15:04 drbean I missed the notice about PUGS_EMBED with 6.2.5
15:05 drbean and about PARROT_PATH
15:12 autrijus I need to run a bit. bbiab :)
15:18 Limbic_Region_ is now known as Limbic_Region
15:20 Limbic_Region (106 subtests UNEXPECTEDLY SUCCEEDED) (816 subtests TODO), 311 subtests skipped.
15:20 Limbic_Region 106 subtests is quite impressive to unexpectedly succeed
15:20 Limbic_Region ;-)
15:21 autrijus Limbic_Region: nice. what were they?
15:21 crysflame heh
15:22 autrijus oh wait. I bet TODO is broken.
15:22 autrijus ;)
15:22 autrijus clkao: now with stub code too. you have no excuses! :)
15:23 autrijus really &
15:24 Southen[a] has quit IRC (Client Quit)
15:24 svnbot6 r3918, autrijus++ | * new pugsembed API with code!
15:28 clkao autrijus++
15:29 crysflame yay
15:30 Southen has joined #perl6
15:32 kolibrie has quit IRC ("leaving")
15:34 Limbic_Region has quit IRC ("leafChat IRC client: http://www.leafdigital.com/Software/leafChat/")
15:34 zuulvin_ has quit IRC ("Leaving")
15:38 eric256 has joined #perl6
15:44 nothingmuch has joined #perl6
15:47 theorbtw1 is now known as theorbtwo
15:47 theorbtwo G'afternoon, nothingmuch.
15:55 nothingmuch hullo theorbtwo
15:57 ingy hi theorbtwo and nothingmuch
15:57 vitaminmoo has joined #perl6
15:58 theorbtwo nothingmuch, you were having problems building with p5 embedding too, right?
15:58 nothingmuch no, not yet
15:59 nothingmuch i can try to have trouble now
15:59 * theorbtwo chuckles.
16:00 theorbtwo No, that's OK.
16:01 clkao autrijus! you didn't hook that as exported pugs function! only stubs!
16:04 vitaminmoo has quit IRC ("Leaving")
16:04 Shachaf has joined #perl6
16:04 vitaminmoo has joined #perl6
16:04 vitaminmoo has quit IRC (Read error: 104 (Connection reset by peer))
16:04 vitaminmoo has joined #perl6
16:10 nothingmuch gaal++; # yet another happy user of the mysql utf8 fix
16:14 BigBear has quit IRC (SendQ exceeded)
16:18 kungfuftr nothingmuch: url?
16:18 nothingmuch kungfuftr: of?
16:19 kungfuftr mysql utf8 fix
16:19 kungfuftr =0)
16:19 nothingmuch ah
16:19 nothingmuch there's an old patch
16:19 BigBear has joined #perl6
16:19 nothingmuch i'll link you to a tarball of 2.9007 i merged a few weeks ago
16:19 nothingmuch http://nothingmuch.woobling.org/DBD-mysql-2.9007-utf8-fix.tar.gz
16:20 kungfuftr nothingmuch: http://lists.mysql.com/perl/3006 ?
16:21 nothingmuch yep
16:21 nothingmuch you can find the patch in that tarball
16:21 nothingmuch and the garbage caused by applying it
16:21 nothingmuch and the merged files
16:23 nothingmuch btw, the patch is very cute
16:23 nothingmuch it is recursively self referntial
16:23 nothingmuch to one level
16:29 kungfuftr memory leakage?
16:37 simcop2387 has joined #perl6
16:38 eric256 perl5 embeding only works if you built your own perl5?
16:38 rgs no
16:39 rgs using the system one is fine
16:39 eric256 "the system one" ??? i use activestate. is that fine too?
16:40 rgs your system doesn't come with perl ? :)
16:40 rgs I don't know, then.
16:41 vcv- you should be fine eric
16:41 rgs has quit IRC ("Forced to")
16:43 misc_ has joined #perl6
16:44 eric256 hmm it worked here... at home it didn't odd...
16:44 elmex_ has quit IRC ("leaving")
16:49 misc has quit IRC (Read error: 60 (Operation timed out))
16:49 gaal hi
16:50 _metaperl has joined #perl6
16:50 gaal nothingmuch, http://www.livejournal.com/users/gaal/163162.html - you're invited.
16:51 gaal so is everyone else on #perl6, but i think it may be a little too far for 'em :)
16:51 nothingmuch i am not 100% sure I can make it
16:51 nothingmuch mom's department is undergoing review
16:51 nothingmuch and the car is very busy driving people around between meetings
16:51 nothingmuch if it ends before saturday, i'll be glad to come
16:51 nothingmuch s/glad/happy/ ?
16:52 gaal yay, glad ta 'ave ya.
16:52 nothingmuch " but it's better to arrive by bike if you can.)"
16:52 nothingmuch =)
16:52 gaal heh heh heh
16:52 nothingmuch maybe if i leave today
16:52 gaal you'll be in good shape if you do!
16:53 IshaCocoa has joined #perl6
16:53 Chris62vw has joined #perl6
16:53 Chris62vw has left
16:54 eric256 i have to put :: in front of the module names to get them to work... does that make any sense?
16:54 eric256 pugs -e"use v6;use CGI--perl5; my $c = ::CGI.new; $c.perl.say;"
16:56 misc_ has quit IRC (Read error: 54 (Connection reset by peer))
16:56 misc has joined #perl6
16:56 eric256 hmmm or not... i don't know what is happening now.
16:57 eric256 the example autrijus gave in the journal doesn't work for me though. i get "No compatible subroutine found: "&add""
16:58 gaal eric, are you sure the module loads successfully? do you have it installed? lasi i checked use doesn't fail if the module load fails.
16:59 eric256 in pugs how do i tell what modules are loaded?  say @INC; ?
17:00 gaal what's a known good version of hs-plugins? i couldn't build the latest (knewt said there's a problem) and i couldn't build pugs with the second-newest one
17:00 eric256 hmm not @inc but there must be something
17:00 gaal in p5, it'll be print for keys %INC
17:01 eric256 yea but %INC is undeclared in pugs
17:01 gaal hmm, how do you access a p5 global from pugs?
17:02 gaal do you have Digest::SHA1 installed? :)
17:02 eric256 i tried with CGI too. which i do have installed.
17:02 gaal are you on feather?
17:04 misc has quit IRC (Read error: 54 (Connection reset by peer))
17:06 misc has joined #perl6
17:14 eric256 nope. it looks like the perl6 include path needs my perl5 include path added to it. which makes sense
17:14 nothingmuch has quit IRC (Read error: 104 (Connection reset by peer))
17:14 eric256 why doesn't 'use' die on a failure to find the file though?
17:17 Corion has joined #perl6
17:18 masak has joined #perl6
17:22 BigBear has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]")
17:22 nothingmuch has joined #perl6
17:29 Limbic_Region has joined #perl6
17:37 lart_expert has joined #perl6
17:48 IshaCocoa has quit IRC (Read error: 110 (Connection timed out))
17:52 gaal beh, the open situation is kinda troubling. on the haskell side, the standard openFile is limited (eg., no +>> mode); but the alternative POSIX version returns an Fd which we'll have to somehow keep track of
17:52 gaal not to mention win32 pugs doesn't build with POSIX now...
17:53 gaal ....which i don't really understand! isn't win32 supposed to support most of POSIX?
17:53 nothingmuch is +>> more than just open and seek to end?
17:54 nothingmuch yes, fork, and uh, shmget, all that good stuff is there
17:54 gaal you can increase the file size too.
17:54 Limbic_Region gaal - Corion seems to be doing a lot of the Win32 stuff
17:54 Limbic_Region you want I should ping him?
17:54 gaal i'm working on the p6 interface to this
17:54 nothingmuch gaal: what I mean, if you open append twice
17:54 nothingmuch and you write on one
17:54 nothingmuch and write on the other
17:54 Corion I am not using msys and thus can't really help gaal.
17:54 nothingmuch and then write on the one again, where does the other write to the one go?
17:55 Limbic_Region oh
17:55 Limbic_Region well then nevermind what I just said in the CB
17:55 gaal Corion, i'm no longer using msys myself.
17:55 Corion gaal: You aren't? Oh - because I infected you with tools free as in beer ! :)
17:55 gaal look at what we're missing. http://haskell.org/ghc/docs/latest/html/libraries/unix/System.Posix.IO.html#t%3AOpenFileFlags
17:55 gaal but you know, except that we both are, because that's what our ghc is built with.
17:55 Corion Limbic_Region: If I'm here then I get notified when my name is mentioned. So there is no need to summon me from elsewhere.
17:56 Corion gaal: Yes - I'm pondering how to remedy that :)
17:56 Corion gaal: You want Perl-style open flags?
17:56 Corion I'm not really getting the problem, but that's likely because I don't know the APIs involved :)
17:57 gaal i want perl capabilities first :)
17:57 gaal the problem? you don't have that library in your ghc.
17:58 gaal perl builds with PUGS_HAVE_POSIX undefined
17:59 Corion gaal: Yes, but likely there are equivalent APIs, and/or ways to implement what you want. Likely by looking at what Perl5 does and replicating that in Haskell.
17:59 gaal *pugs* builds that way that is :)
17:59 elmex has joined #perl6
17:59 Corion I look at win32/win32.c in such situations
17:59 Corion (from the Perl5 source)
17:59 * nothingmuch goes to buy beer
18:00 gaal Corion, is anyone working on the haskell side of this? I'm just wokring on src/perl6/Prelude.pm, ... and noticed Prim.hs uses openFile, which isn't powerful enough.
18:01 Corion gaal: No, at least not yet. If you can tell me what you want, I can go and hunt down the relevant Perl5 code
18:02 gaal 1. i'm currently thinking about the p6 language level; working on open and some closely related builtins
18:03 gaal 2. i want support for everything p5 open can do, barring possibly fork; even if i don't end up putting it in p6 open
18:04 gaal 3. the language side of this being unspecced, i'm experimenting --  and want to focus on that experiment :) i know if i dig into POSIX emulation on Windows in Haskell, i'll never finish this
18:04 gaal so i'm not sure the p5 code really helps me
18:05 Aankhen`` I have a question about P6: what is the point of parameterizing roles?
18:07 Corion gaal: I thought you wanted the POSIX API calls. Perl5 reimplements these API calls, at least as far as Perl5 itself needs them. So I'd imagine if you want the API calls, they can be ported.
18:07 Corion But then again, I might just not undestand your goal.
18:07 PerlJam Aankhen``: do you understand why you might parameterize a class?
18:08 Corion ... so if you have a specific function in Haskell POSIX.Whatever.Module , tell me and I will try to find an equivalent.
18:08 Aankhen`` Not really, perlbot.
18:08 Aankhen`` Er, PerlJam.
18:09 gaal Corion, basically most of what's in  http://haskell.org/ghc/docs/latest/html/libraries/unix/System.Posix.IO .
18:09 * eric256 can't get p5 modules to work...curses! lol
18:09 lart_expert has left
18:09 gaal is perl6 meant to run on patently non-POSIX systems?
18:09 Corion gaal: Hmm. That's quite some chunk. I'll see if I get any of that as low hanging fruit.
18:10 eric256 just me being stupid agian. n,
18:10 Corion gaal: If not, then Perl6 will become unusable.
18:10 eric256 nm
18:10 Corion (and unused)
18:10 Corion VMS is patently non-POSIX, and Win32 is partially non-POSIX.
18:10 gaal Corion, re that library, let's begin with openFd :)
18:10 Corion But there are lots of other systems people use. I guess that Symbian also is basically non-POSIX.
18:11 Corion Ah. Will look at openFd a bit then.
18:11 vcv- linux is not fully POSIX either
18:11 eric256 has anyone had any success with pugs + perl5 ActiveState
18:11 vcv- eric it works fine here
18:11 vcv- i havent tried linking with parrot yet though
18:11 Aankhen`` PerlJam >> Still there? Or did you give up on me? :-(
18:11 gaal We need to define a minimum level of service we're going to provide then, and we're committed to emulating it on other platforms
18:12 Corion gaal: Just like Perl5 does, eh?
18:12 eric256 pasteling help
18:12 gaal opening files is pretty basic. :/
18:12 Corion I've seen programs open files on Win32. Even Perl5.
18:12 PerlJam Aankhen``: I'm around.   Just having a hard time coming up with a simple explanation.
18:12 gaal um. duh
18:13 Aankhen`` OK.
18:13 gaal thing is, GHC things windows is not POSIX, and doesn't even try
18:13 PerlJam Aankhen``: I mean I can think of something jargony but that won't help you much  :)
18:13 Aankhen`` If there's any reading involved, point me in the right direction and I'll stop bothering you.
18:13 misc_ has joined #perl6
18:13 misc has quit IRC (Read error: 54 (Connection reset by peer))
18:13 PerlJam Aankhen``: we parameterize roles and classes for the same reason that we parameterize subroutines: to modulate the behaviour based on the paramters
18:14 PerlJam Aankhen``: does that help?  ;-)
18:14 Aankhen`` Heh, okay, now I know *why* we can parameterize roles and classes. =)
18:14 integral hmm, why not simply have a function that returns an anonymous role/class ?
18:14 PerlJam Aankhen``: actaully, that's what I was looking for was some good reference material to point you at.
18:14 integral introspection?
18:14 Aankhen`` That sounds simple enough.
18:15 Aankhen`` Thanks for the explanation. :-)
18:15 Aankhen`` Hrm.
18:16 Aankhen`` I think maybe now I understand that portion of A12.
18:16 Corion gaal: Do you have a proper manpage for openFd that lists the values of the parameters?
18:16 Corion My guess is that OpenFile() ( http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/openfile.asp ) does what you want, but I don't know as I don't know the other API.
18:16 PerlJam the problem with documents pertaining to parameterized types is that they all use languages like C++ or Java or something where the reasons for parameterization don't really exist in perl :)
18:17 Aankhen`` Heh.
18:17 PerlJam I.e. in C++ you can have a List class that's parameterized on the type of things in the List.  Perl doesn't need that because arrays can hold any "type" in perl.
18:17 integral hmm, I can only think of type safety reasons
18:17 Aankhen`` OK.
18:17 gaal Corion, I think we have an impedance mismatch.. are you proposing to write C code for GHC, C code for Pugs to load on win32?
18:18 Corion gaal: Neither.
18:18 gaal What then?
18:18 Aankhen`` Basically, it's something I don't forsee worrying about any time soon. :-D
18:18 Corion gaal: GHC can load Win32 API functions and include them in Haskell.
18:18 PerlJam Aankhen``: sure ... just know that it's there.
18:18 Aankhen`` Indeed.
18:18 Corion So I would write the necessary Haskell so you get nice Haskell code implementing openFd for Win32.
18:19 gaal Sure, but we'll need a lot of Compat work
18:19 gaal exactly
18:19 Aankhen`` One of those features that (from here :-) looks like it was included mostly to avoid the whole OO system being called a hack.
18:19 PerlJam Maybe a compiler building an AST would be a good example?  You're parameterize the "nodes" of your AST by the "type" of thing in the node
18:19 dada has quit IRC ("Schneeschlag")
18:19 Corion gaal: If you look at win32.c of Perl5, you can gauge how big Compat.Win32.hs will need to grow.
18:20 Corion Hmmm. It could be a nice feature to make all Pugs IO asynchronous :-))))
18:20 Aankhen`` Hrm... so it sort of eliminates the need to create seperate classes for each and every type of node?
18:20 PerlJam right
18:20 erxz_paste "alexg" at 62.85.112.174 pasted "robot" (108 lines) at http://erxz.com/pb/738
18:20 Aankhen`` Cool.
18:20 integral hmm, but isn't that what roles are fo?
18:20 gaal I'm looking right at it, and although 5kloc of c isn't THAT bad, this is touchy code.
18:20 PerlJam But in perl, it's richer than that because you aren't limited to just "types"
18:20 Corion Hmmm. If we do that, we lose support for Win9x, which would be bad :)
18:20 Aankhen`` integral >> Wouldn't you still need to create roles for each type of node?
18:20 Corion gaal: Yes, the code gets less ugly when rewritten in Haskell instead of C.
18:21 integral yes, but you need to create the things you're parameterising on!
18:21 Corion And I won't port certain parts like fork() emulation.
18:21 Aankhen`` Ah, right.
18:22 Corion fork() emulation should be done directly in Pugs, via async{} blocks.
18:22 integral hmm, I suppose unlike c++ you can have: sub foo($n) { my Foobar[$n] = ... }
18:22 * Aankhen`` goes back to assuming it's something he doesn't need to keep in his consciousness.
18:23 Aankhen`` Whatever else, I love @Larry's writing style. =)
18:25 Khisanth will perl6 have to run on all the platforms that perl5 runs on? some of them look pretty dead
18:25 Limbic_Region has quit IRC (Read error: 110 (Connection timed out))
18:26 PerlJam Khisanth: I don't think it will *have* to.  But, the more the merrier.  :)
18:26 ninereasons has joined #perl6
18:26 PerlJam Luckily we can run perl6 where ever we can run parrot.
18:27 Limbic_Region has joined #perl6
18:27 integral assuming that a parrot configure system materialises...
18:27 PerlJam And all the languages that target parrot get the benefit of running anywhere parrot runs.  surely python, php, ruby, etc. see the benefit there.
18:27 PerlJam integral: patches welcome!  :)
18:28 * integral feels parrot is unapproachable
18:28 vcv- Corion: losing support for 9x would be good. very good.
18:29 * eric256 feels haskel is unapproachable.  ;)
18:31 PerlJam integral: why do you feel this way?  Are you not conversant in C?
18:31 Aankhen`` PHP on Parrot == dirty. -_-
18:32 integral I'm conversant in C,  but I don't like navigating around the C projects.   Everything's so spread out that it's even harder than in Pugs to figure out what everything does
18:32 x86 hmm
18:33 x86 i wonder if you can run Parrot inside of Parrot
18:33 x86 that'd be schweet
18:33 osfameron has quit IRC ("Leaving")
18:40 _metaperl has quit IRC (" HydraIRC -> http://www.hydrairc.com <- Get hot chicks here!")
18:41 larsen has quit IRC ("later")
19:01 vcv-- has quit IRC (Read error: 54 (Connection reset by peer))
19:01 Aankhen`` Hmmm... should the contents of t/builtins/lists/enum.t actually be in t/data_types/enum.t?
19:13 Corion has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]")
19:13 jql has quit IRC (Read error: 110 (Connection timed out))
19:14 osfameron has joined #perl6
19:18 masak x86: why would you want to do that, save for the coolness factor?
19:26 x86 just the coolness factor ;)
19:26 x86 i still think it'd be cool to make an entire operating system into parrot bytecode :)
19:26 x86 talk about write once, run anywhere... there you go ;)
19:28 Aankh|Clone has joined #perl6
19:28 revdiablo but you'd still need the VM running somehow
19:31 vcv- has quit IRC (Read error: 110 (Connection timed out))
19:32 Aragone has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 jabbot has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 gugod_ has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 clkao has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 Juerd has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 autark-jp has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 jiing has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 Steve_p has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 amahabal has quit IRC (kornbluth.freenode.net irc.freenode.net)
19:32 Aragone has joined #perl6
19:32 jabbot has joined #perl6
19:32 gugod_ has joined #perl6
19:32 clkao has joined #perl6
19:32 Juerd has joined #perl6
19:32 autark-jp has joined #perl6
19:32 jiing has joined #perl6
19:32 Steve_p has joined #perl6
19:32 amahabal has joined #perl6
19:35 gaal_ has joined #perl6
19:36 ninereasons Juerd, or any interested: in map() as in for(), so in  ... : the default topic $_ should be rw by default, correct?
19:36 Aankhen`` has quit IRC (Read error: 60 (Operation timed out))
19:37 Juerd ninereasons: The default is "-> $_ is rw"
19:37 ninereasons  but, e.g. @arr, as a param is not rw by default: sub incr (@arr is rw){ @arr.map:{$_++}} # yes ?
19:37 Juerd ninereasons: Although I'm hoping that this can be spelled as "<-> $_"
19:37 ninereasons but sub incr (@arr){ @arr.map:{$_++}} # no ?
19:37 Juerd So that not right-arrow-with-is-rw is default, but instead simply double-arrow
19:37 Odin-LAP Hmm.
19:38 ninereasons I do like the double arrow.
19:38 Juerd Greatly simplifying the language, the explanations, and other uses of non-readonly arguments.
19:38 Odin-LAP It might confuse people...
19:38 ninereasons I can visualize what it means, Odin-LAP
19:38 Juerd Odin-LAP: No, it might not.
19:38 Juerd Odin-LAP: for @thingies <-> $thingy { ... }
19:38 Odin-LAP ninereasons: I can too. :>
19:38 Juerd What does that tell you, purely visually?
19:39 Juerd If you know that @ is for arrays and $ is for single values
19:39 ninereasons Juerd, "I write to the RHS to make changes to the LHS"
19:39 Juerd It tells you the same thing that for @thingies -> $thingy { ... } does
19:39 Odin-LAP Juerd: Once I thought it over a bit more, I realised a simple reply to what I'd been thinking of.
19:39 Juerd HOWEVER, if you know both -> and <-> exist, the difference is immediately obvious and does not require ANY explanation
19:39 Juerd ingy: Indeed.
19:39 Juerd eh
19:39 Juerd s/in<tab>/ni<tab>/
19:39 Juerd ingy: Sorry, not for you
19:40 Juerd ninereasons: Indeed.
19:40 Odin-LAP (Which, incidentally, wasn't this. I got the visual distinction quite well. ;)
19:40 Juerd The only reason given for not having <-> is that there might already be too many (that's two) ways to create a sub.
19:40 Juerd Which I think is utter bollocks
19:40 Juerd As <-> and -> aren't seen or learned as separate things
19:41 Juerd Only technically they are
19:41 ninereasons Juerd, still, we're talking about specifying rw, rather than rw by default, right?.  what about <ninereasons> but sub incr (@arr){ @arr.map:{$_++}} # no ?
19:42 Juerd ninereasons: With ->, there is no rw by default. -> does communicate unidirection.
19:42 Juerd Even without a <-> counterpart.
19:42 ninereasons ok.
19:42 Juerd And that code snippet fails because $_ is readonly.
19:43 wolverian I thought that $_ is rw if there is no argument list
19:43 ninereasons sub incr (@arr)->$_ is rw { @arr.map:{$_++}} # ?
19:43 Juerd ninereasons: That makes no sense
19:43 gaal has quit IRC (Read error: 60 (Operation timed out))
19:43 ninereasons or must it be: sub incr (@arr is rw ){ @arr.map:{$_++}}
19:43 Juerd ninereasons: "-> $foo { bar }" and "sub ($foo) { bar }" are the same thing.
19:44 wolverian ninereasons: sub incr(@arr) { @arr.map(-> $_ is rw { $_++ }) }
19:44 Juerd (Except that "return" only returns from an explicit "sub")
19:44 Juerd ninereasons: You probably have to specify "is rw" on both @arr and $_
19:45 wolverian $_ is copy
19:45 Juerd Note that mapping with mutation should almost always be written very differently.
19:45 wolverian since we're returning the new list
19:45 Juerd With "is copy" it does make sense.
19:45 wolverian (or @arr is copy and the map doesn't need further "is copy" or "is rw", I think)
19:45 Juerd Too bad => is taken
19:46 Juerd It could communicate "is copy" in two ways :)
19:46 Juerd = has two lines, the second a copy of the first
19:46 Juerd And = is the assignment operator, which copies :)
19:46 Limbic_Region has quit IRC (Read error: 104 (Connection reset by peer))
19:46 wolverian .map should copy by default, maybe
19:46 ninereasons wolverian spelled what I meant correctly.
19:46 wolverian and .=map would mutate
19:47 wolverian then the whole sub doesn't need 'is copy' anywhere
19:47 Juerd wolverian: No way - that's terribly inefficient, and exactly why ruby and python can't compete with perl on speed level.
19:47 wolverian or 'is rw'
19:47 Juerd wolverian: Performance is not the most important thing in the world, and premature optimization is in fact the root of all evil, but this is not premature.
19:47 wolverian Juerd: not if the user can implement the mutating version
19:47 wolverian (both versions separately)
19:48 Juerd wolverian: When you're creating *generic* functions, always take into account both 1 character variables and 50 MB strings.
19:48 Juerd wolverian: foo.=bar must be read as foo = foo.bar
19:48 Juerd not foo.bar_with_other_semantics, ever.
19:49 wolverian but it wouldn't
19:49 Juerd It would.
19:49 wolverian although of course one would have the ability to do so
19:49 Juerd $_++ returns the OLD value.
19:49 wolverian which I guess is what you're saying
19:49 wolverian hmm. right.
19:49 Juerd And thus the result of the map is a list of OLD values.
19:49 Juerd In fact, @original = map { $_++ } @input;
19:50 wolverian yes.
19:50 Juerd Which does @original = @input; @input>>++;
19:50 Juerd So you can't just add weird behaviour to .=
19:51 SamB has joined #perl6
19:51 wolverian maybe we should add an .apply or something like that as a copying .map?
19:51 Juerd Why?
19:51 Juerd All you need is -> $_ is copy
19:51 wolverian true enough.
19:51 Juerd or, simply, surprise: map { my $_ = $OUTER::_; ... }
19:51 wolverian do we have a @arr.copy? :)
19:51 Juerd Or just: map { given $_ -> $_ is rw { ... } }
19:52 Juerd wolverian: That's spelled [@arr]
19:52 wolverian or @new=@old?
19:52 Juerd Or just @arr when assigning anyway.
19:52 wolverian right.
19:52 Juerd wolverian: @new = @old;  $naref = [ @$oaref ]
19:53 kungfuftr moo
19:53 Juerd wolverian: The biggest problem with copying by default is that you don't catch the numerous bugs it inspires
19:53 Juerd Same goes for rw by default
19:53 Juerd Only ro by default works well
19:54 Juerd If in a certain program, you really need to copy very often, you just mix in a cmap method, or you write a macro
19:55 Juerd Also, good old fashioned map { my $copy = $_; $copy++ } isn't going away.
19:56 Juerd And, the only thing you use this for in practice anyway, s///, is already available in copying fashion: @bar = @foo.map:{ .subst(/foo/, "bar") }
19:56 Juerd afk
19:56 wolverian @foo>>.subst(...);
19:56 SamB where is the pugs repo at now?
19:57 Juerd re
19:57 Juerd wolverian: That too
19:57 Juerd SamB: see pugscode.org
20:01 geoffalot has joined #perl6
20:02 geoffalot has left
20:02 geoffalot has joined #perl6
20:07 IshaCocoa has joined #perl6
20:11 simcop2387 has quit IRC (Remote closed the connection)
20:11 simcop2387 has joined #perl6
20:14 Limbic_Region has joined #perl6
20:20 broquaint has quit IRC ("teh b33r")
20:21 saorge has joined #perl6
20:24 Limbic_Region salutations saorge - is skynet.be a fairly large ISP?
20:26 clkao e/win29
20:26 clkao Limbic_Region: seen benchmark?
20:26 jabbot clkao: I havn't seen benchmark , clkao
20:26 Limbic_Region clkao - I am about to play with it now
20:27 Limbic_Region what I really need is a profiler
20:27 Limbic_Region but as the point of this exercise is more than just making it go fast
20:27 clkao it's quite rough
20:28 clkao no, it's not profiler
20:28 Limbic_Region Benchmark.pm will fit the bill
20:29 Limbic_Region I may have to figure out how to dig into Haskell myself to figure out how to get @foo>>.<bar> working
20:29 Limbic_Region that's the first thing I want to Benchmark and AFAIK, it isn't implemented yet
20:29 ramzi has joined #perl6
20:30 clkao [>>-<<] some_func(all($a,$b))
20:31 clkao does this work?
20:31 Limbic_Region dunno
20:31 Limbic_Region I am building pugs ATM
20:31 clkao hmm i guess i should use [>>-<<] map some_func ($a, $b)
20:38 Limbic_Region any hints as to where I should start looking to make : next if none( @combo>>.<val> ) == 5;
20:38 Limbic_Region work?
20:38 cpruden has quit IRC ("Leaving")
20:41 vcv-- has joined #perl6
20:41 jql has joined #perl6
20:43 ninereasons clkao, pardon a guess ? I think that the hyperoperators will only work on lists unless some_func returns lists - maybe references to lists would work - then your snippet doesn't look like it makes sense
20:43 Aankh|Clone Pugs doesn't have any time functions?
20:44 clkao Aankh|Clone: time and times
20:44 ninereasons time() ?
20:44 Aankh|Clone localtime()?
20:44 * Aankh|Clone momentarily wonders why he's a clone.
20:44 Aankh|Clone is now known as Aankhen``
20:45 Corion has joined #perl6
20:45 Aankhen`` Dot's better.
20:48 * clkao decides to rename svk to svl. because lambda is the future. oh it was was the past.
20:49 * Aankhen`` stares at clkao.
20:50 SamB lambda is the ultimate
20:51 geoffalot has quit IRC (Client Quit)
20:52 autrijus it is the past _and_ the future
20:52 Corion (at least as long as you have continuations)
20:52 autrijus that's right.
20:53 eric256 anyone know the right #! line for the feather sever to run pugs?
20:54 Juerd which pugs
20:55 eric256 the system installed one
20:55 clkao hello autrijus
20:55 clkao /win13
20:55 Juerd eric256: $ which pugs
20:55 eric256 LOL. sorry.
20:55 autrijus hey clkao. I'm marshalling pugs context in perl5 now
20:55 autrijus about to check in
20:56 clkao autrijus: oh ok. i'm about to have some fun now
20:56 clkao just had supper
20:56 ramzi has quit IRC (Read error: 110 (Connection timed out))
20:57 autrijus cool
20:57 autrijus my plan is as this:
20:58 autrijus whenever I enter p5 runloop
20:58 autrijus I'll alwyas
20:58 clkao autrijus: so, im not sure why you have those stuff in pugsembed.c aren't they just interface with what's exported by pugs?
20:58 autrijus ENTER; local $pugs::env = <opaque>; LEAVE
20:58 clkao ok..
20:58 autrijus then whenever perl5 land want to eval or apply, I can look $pugs::env up from haskell land
20:58 clkao eek
20:58 autrijus and resume evaluation context
20:59 autrijus I think that's how continuations are supposed to be used
20:59 autrijus clkao: the NULL things are just stub
20:59 integral it's like having two processes
20:59 clkao stub as in i will call them, not fill them, right:)
20:59 autrijus clkao: but they may become wrappers. anyway I'll refactor away
20:59 autrijus right.
20:59 autrijus just call them. they will materialise as soon as you call them
21:00 autrijus it's known as call-by-need
21:00 autrijus just don't be strict with them!
21:00 clkao call by autrijus
21:01 vcv- has joined #perl6
21:01 clkao i need to dig out my ooold code
21:01 clkao autrijus: do you happen to have melix repository mirror ?
21:05 autrijus clkao: http://autrijus.org/tmp/melix.tbz
21:05 * SamB wonders if there is any point in using the darcs mirror at all
21:05 osfameron_ has joined #perl6
21:05 clkao autrijus+++
21:05 clkao keeping my old crap
21:05 kcwu i don't know where to report this.. http://use.perl.org/~autrijus/journal/rss is not a valid xml document
21:06 clkao you want to report to pudge
21:06 SamB kcwu: should it be?
21:06 Juerd That's because building valid xml is hard for perl people
21:06 kcwu the HTTP header appear after the document ...
21:06 SamB I guess it should, its got rdf: stuff everywhere
21:07 SamB that IS odd.
21:07 Juerd Nah
21:07 Juerd It just means some mod_perl handler uses the wrong code
21:07 Juerd (s/means/probably means/)
21:07 SamB what kind of module is it if it is so easy to get stuff wrong?
21:08 autrijus the sad kind
21:08 SamB oh
21:08 eric256 has anyone started porting CGI to perl6?
21:08 Limbic_Region CGI.pm
21:08 Limbic_Region yeah
21:08 Juerd SamB: Well, it's probably some return OK where return DONE should have been
21:08 Limbic_Region look in ext/
21:09 autrijus eric256: also look at examples/cgi/
21:10 Limbic_Region [eq] 'foo', 'bar', 'blah', 'asdf'; # does what I think right?
21:10 Limbic_Region returns true if they are all the same
21:10 Limbic_Region returns false as soon as they are not?
21:10 SamB that isn't even giving a valid HTTP responce, nevermind being valid XML...
21:10 autrijus Limbic_Region: yes.
21:10 Juerd Limbic_Region: Dude, you KNOW they're different :)
21:10 SamB the first line out of the server is <?xml version="1.0" encoding="ISO-8859-1"?>
21:11 autrijus Juerd: lol
21:11 Limbic_Region autrijus - I think the cribbage project is going to make a mighty fine example
21:11 autrijus Limbic_Region: oh?
21:11 autrijus what's new?
21:11 Juerd Limbic_Region: BTW - if you wish, you may leak the info to pm now
21:11 Juerd Limbic_Region: re feather
21:11 Juerd Limbic_Region: in your advocacy program :)
21:12 Limbic_Region I have been working with Rob on p6ifying
21:12 Juerd Limbic_Region: As long as you note that it's for actually interested people, and for perl 6 development only
21:12 Limbic_Region since the "challenge" didn't go as well as expected
21:12 Limbic_Region I have decided to show what a little effort can do
21:12 Limbic_Region Juerd - will do if someone hasn't already by tomorrow
21:13 Juerd Oh, and people can request accounts only by email
21:13 autrijus clkao: so you'll handle all these overloading crap?
21:13 autrijus clkao: I just need to implement the embed api?
21:13 autrijus that sounds too good to be true
21:13 Juerd Someone who can't figure out my mail address doesn't deserve access anyway :)
21:13 clkao overloading? you mean typemapping?
21:13 autrijus clkao: no, I mean getting $val->() work
21:13 Limbic_Region ok - well I am off
21:13 clkao right
21:13 autrijus $val is already blessed
21:13 Limbic_Region TTFN all
21:13 Limbic_Region has quit IRC ("tiuq\")
21:13 Juerd Bye, Limbic_Region
21:13 Juerd JIT :)
21:13 autrijus so you just need to hack our xsinit
21:13 clkao of course
21:13 autrijus yay!
21:14 autrijus clkao++
21:14 autrijus clkao++
21:14 autrijus clkao++
21:14 clkao why am i asking for melix? i had that code there
21:14 autrijus riiight. we took great pains so it works in Perl 5.7.3
21:14 * autrijus still vividly remembers having to add two empty assignments to get %SIG working
21:15 clkao it was even using swig 1.1
21:15 svnbot6 r3919, autrijus++ | * marshall pugs execution environment into $pugs::env.
21:15 autrijus how very advanced
21:16 SamB swig? ew!
21:16 clkao ok... take shower and then... let clkao <- hack
21:16 SamB of course, maybe it works better for Perl...
21:16 clkao SamB: NO!
21:16 autrijus clkao: you can't mix let form with monadic assignment form...
21:16 clkao it's hateful
21:16 SamB cool
21:16 clkao i'm a newbie, don't complain
21:17 autrijus it's either
21:17 autrijus let clkao = hack
21:17 autrijus or
21:17 autrijus clkao <- hack
21:17 clkao but hack produceds different things
21:17 autrijus mmm.
21:17 Juerd clkao: no warnings; no strict;
21:17 clkao Juerd++
21:17 Juerd clkao: use No::Die;
21:17 Juerd clkao: I hate the "I'm a newbie, don't complain" approach
21:17 Juerd Just for the record.
21:17 autrijus use On::Error::Resume::Next;
21:21 Aankhen`` Can someone confirm that the tests for Benchmark.pm pass?
21:24 osfameron has quit IRC (Read error: 110 (Connection timed out))
21:29 Aankhen`` No one?
21:30 autrijus Aankhen``: it worksforme.
21:31 Aankhen`` OK, thanks.
21:31 Aankhen`` I guess I'll need to recompile before they pass.
21:35 autrijus clkao: the pugsembed things are too easy ;)
21:35 svnbot6 r3920, autrijus++ | * pugsembed callback #1 -- pugs_MkSvRef -- finished
21:37 Aankhen`` G'night.
21:37 Aankhen`` has quit IRC ("Two heads are more than one! [Time wasted online: 2hrs 8mins 35secs]")
21:40 autrijus 3 done, 3 to go
21:47 IshaCocoa has quit IRC (Read error: 110 (Connection timed out))
21:47 svnbot6 r3921, autrijus++ | * iv/pv/nv to Val promotion done.
21:50 * clkao goes offline and hack
21:51 Corion has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]")
21:53 autrijus all casting done.
21:53 svnbot6 r3922, iblech++ | * Pugs.Parser -- Unbreak "$hash<key>" in double-quoted strings.
21:53 svnbot6 r3922, iblech++ | * Pugs.Run.Perl5 -- Usual svn properties.
21:53 svnbot6 r3923, iblech++ | Moved three suceeding pugsbugs tests out of pugsbugs.
21:53 autrijus doing eval and apply now
21:53 clkao you now what, i think maybe you don't really need all casts
21:53 autrijus clkao: note if you want a CV, just do
21:53 autrijus pugs_Eval("{...}")
21:53 autrijus and use it as 1st arg to apply
21:54 clkao if i give you a sv back to Perl5SV isn't haskell supposed to to the conversion in that direction you already did?
21:54 autrijus sure, but I have to promote it to Val
21:54 autrijus that's essentially what it's done
21:54 clkao ok :)_
21:55 autrijus eval and apply about to land
21:55 autrijus you sure you want to go offline now? ;)
21:56 clkao gah. alright. because i have to keep my laptop and me in weird position to use $neighbor's network
21:56 autrijus oh ok. gimme 3 mins
21:56 autrijus this is too easy and not fun ;)
21:56 * wolverian hums and codes C
21:56 autrijus also remember to null-terminate the args field
21:56 autrijus since I don't rely on argc
21:57 clkao k
21:57 autrijus in Apply, that is
22:04 autrijus eval done
22:04 svnbot6 r3924, autrijus++ | * iv/nv/pv two-way casting all done.
22:04 autrijus oh also, if you don't have invocant
22:04 autrijus pass in NULL as inv
22:04 autrijus that's the way to distinguish method invocation with sub call
22:04 autrijus (also in Apply)
22:07 autrijus also you can pass in a simple string val (pvToVal)
22:07 autrijus as first arg to Apply
22:07 autrijus in which case it will be looked up as a sub
22:07 autrijus eg: "&say"
22:11 autrijus all done!
22:11 autrijus (so it was longer than 3 mins.)
22:14 autrijus enjoy
22:14 autrijus you may go offline now :)
22:15 clkao autrijus: do you have generic convertor stuff for hash and others?
22:16 autrijus clkao: huh?
22:16 clkao /usr/local/lib/perl5/5.8.5/mach/CORE/pp.h:130:1: warning: "RETURN" redefined
22:16 clkao In file included from /usr/include/readline/keymaps.h:36,
22:16 clkao                 from /usr/include/readline/readline.h:39,
22:16 clkao                 from /usr/local/lib/ghc-6.4/include/HsReadline.h:5,
22:16 clkao bad
22:16 autrijus clkao: I'll probably just declare PerlSV as IHash
22:16 svnbot6 r3925, autrijus++ | * Pugs's eval/apply exported to C space.
22:16 svnbot6 r3926, autrijus++ | * remove all stubs
22:16 autrijus and IArray
22:16 autrijus and call into p5 land using tied methods
22:16 clkao i mean into perl5 land
22:16 clkao hmm. no
22:17 autrijus no, I'm thinking just exporting av_fetch and friends
22:17 clkao bless them into pugs.
22:17 autrijus eh sure
22:17 clkao can do the overload and tie in perl5
22:17 autrijus HV is just a SV
22:17 autrijus right
22:17 autrijus so I'll just bless them
22:17 autrijus you call into my eval/apply cycle
22:17 clkao and coderef, can you make it pugs::code ??
22:17 clkao er
22:17 clkao i mean
22:17 autrijus hm?
22:17 autrijus you mean bless differently?
22:17 clkao no
22:18 clkao before
22:18 clkao er
22:18 clkao before getting into perl5 land, do a call_method
22:18 clkao pugs->makecode(yourval)
22:18 autrijus huh.
22:18 clkao so i have a closure
22:18 clkao that knows yourval
22:19 clkao which can be used when invokikng
22:19 autrijus you don't need me to do this
22:19 autrijus just hack pugs_MkValRef
22:19 clkao oh ok ))
22:19 autrijus there's a reason why there's pugsembed.c
22:19 clkao mer eads
22:19 clkao src/perl5/perl5.o(.text+0x98): In function `pugs_Eval':
22:19 clkao : multiple definition of `pugs_Eval'
22:19 clkao src/Pugs/Run/Perl5_stub.o(.text+0x2bc): first defined here
22:19 clkao /usr/bin/ld: Warning: size of symbol `pugs_Eval' changed from 106 in src/Pugs/Run/Perl5_stub.o to 10 in src/perl5/perl5.o
22:19 autrijus the two functions are there because they need to defined in C space
22:19 autrijus clkao: svn up, rm src/perl5/perl5.o
22:19 autrijus then remake
22:20 autrijus if you need other API from my side... just ask. but I have this feeling that you can hack src/Pugs/Run/Perl5.hs already
22:20 clkao autrijus: no.
22:20 Jonathan_ has joined #perl6
22:20 autrijus it's just type-safe C code ;)
22:20 clkao autrijus: how do i know val isa code?
22:20 autrijus clkao: eh, you do a apply
22:20 clkao cool
22:21 autrijus pugs_Apply("&isa", val, {pugs_PvToVal("Code"), NULL});
22:22 clkao how do i test ok-ness of val?
22:22 autrijus you use pugs_ValToIv
22:22 autrijus and see if it's 0
22:22 autrijus I'll commit in a sec
22:22 autrijus see, there is a need for casters ;)
22:23 clkao :)
22:25 clkao code written
22:25 clkao : undefined reference to `pugs_ValToIv'
22:25 clkao waiting for you :)
22:25 autrijus done. committing
22:26 autrijus hm, let me abstract it a bit
22:29 mrborisguy has joined #perl6
22:30 autrijus done. it should be usable for all non-ref types
22:30 autrijus I'm working with refs
22:30 autrijus but you can test already
22:31 IshaCocoa has joined #perl6
22:33 autrijus ref type handled. *V->SV->Val->SV->*V roundtrip should be fine now
22:33 * autrijus praises FFI for utmost sanity
22:34 svnbot6 r3927, autrijus++ | * pv/nv/iv caster from Val.
22:34 svnbot6 r3928, autrijus++ | * handle ref types in Val casting.
22:35 clkao src/perl5/pugsembed.h:20: error: conflicting types for 'pugs_ValToSv'
22:35 clkao src/perl5/pugsembed.h:17: error: previous declaration of 'pugs_ValToSv' was here
22:35 autrijus er. typo. fixed and committed.
22:35 clkao bah, compile before you commit!
22:36 autrijus ;)
22:36 clkao pugs: user error (cannot fetch $pugs::env)
22:36 autrijus ok. initting env
22:37 autrijus (you're not inside a perl5_eval)
22:37 clkao no
22:37 clkao i am calling isa when making val to p5
22:37 autrijus ok. I'll give you tabulaRasa
22:37 autrijus a sec
22:37 clkao coderef needs to be handled
22:38 luqui has joined #perl6
22:38 clkao meanwhile pugs::AUTOLOAD to pugs::guts:: in xs works
22:39 * clkao goes to make tea
22:41 clkao ./pugs -Iext/Test/lib t/unspecced/p5/method.t
22:41 clkao hello, perl5
22:41 clkao perl5 glue compiled at (eval 1) line 1.
22:41 clkao Error init perl: hate software at (eval 1) line 1.
22:41 svnbot6 r3929, autrijus++ | * typo.
22:41 clkao quick!
22:42 autrijus done. committing
22:43 clkao your commit is slow. i thought you are close to the svn server!
22:43 clkao did i tell you to get next flight
22:43 autrijus you did ;)
22:43 autrijus you can meet me at .au ;)
22:44 autrijus and leo will be there too
22:44 autrijus what fun!
22:44 autrijus (committed btw)
22:44 clkao .at you mean. i told you about visa
22:44 iblechbot has quit IRC (Read error: 110 (Connection timed out))
22:44 autrijus sigh etc.
22:45 autrijus # you need r3931
22:45 autrijus ok, tabulaRasa should be in perl5 land too
22:46 clkao what's tabularasa?
22:46 svnbot6 r3930, autrijus++ | * initialise $pugs::env with tabulaRasa.
22:46 svnbot6 r3931, autrijus++ | * err, typo.
22:46 autrijus empty env
22:46 autrijus initial env
22:46 clkao ok
22:46 clkao where's tumbolia?
22:46 autrijus it's in your hiccups
22:46 clkao /tmp/ghc4368.hc: In function `__stginit_PugsziRunziPerl5_':
22:46 clkao /tmp/ghc4368.hc:2913: warning: implicit declaration of function `getStablePtr'
22:47 autrijus yeah. that's fine
22:49 clkao still the same
22:50 autrijus hm?
22:50 clkao pugs: user error (cannot fetch $pugs::env)
22:50 autrijus did you rm src/perl5/perl5.o?
22:50 autrijus how about you commiting your code?
22:52 clkao coming
22:53 clkao committed. basically i'm only trying to call isa on the val
22:53 clkao before it gets into perl5land
22:55 autrijus k.
22:55 autrijus got it. fixing
22:55 metaperl has joined #perl6
22:55 elmex has quit IRC ("leaving")
22:57 autrijus the initenv uses MkValRef ;)
22:57 autrijus no wonder ;)
22:57 svnbot6 r3932, clkao++ | WIP p5 ducktape.
22:58 clkao gah
23:00 clkao quick! invoker mostly done
23:02 autrijus fixed with weird functorM foo... testing
23:05 Khisanth ducKtape? :P
23:05 * Khisanth calls PETA
23:05 clkao crap you are including .c
23:05 autrijus feel free to fix them
23:05 clkao Khisanth: fnord you don't see it fnord
23:05 autrijus I have no C fu
23:06 clkao quick, i'm almost done
23:06 autrijus I'm still seeing segfaults
23:06 broquaint has joined #perl6
23:06 revdiablo Khisanth: duck tape is the original brand
23:07 autrijus committed
23:07 autrijus but doesn't work -- I think setsv_ref is borked
23:07 clkao ok hang on
23:07 autrijus set_svref rather
23:08 autrijus trying to debug (in vain)
23:08 * autrijus hates C
23:09 broquaint C is your friend, autrijus.
23:09 broquaint Whether you like it or not.
23:09 clkao young autrijus, your dark side is growing
23:10 clkao it segfault at the very beginning
23:10 clkao #0  0x0830ea9e in deRefStablePtrzh_fast ()
23:10 svnbot6 r3933, autrijus++ | * still segfaulting... WIP
23:10 autrijus C is not stronger... Quicker, easier, more seductive
23:11 autrijus yeah I see that
23:12 clkao autrijus: how do i make a PerlIO Val from sv ?
23:12 autrijus clkao: IO Val?
23:12 autrijus in haskell land?
23:12 autrijus there are two APIs
23:12 clkao you have that in haskell already
23:12 autrijus MkSvRef refs
23:12 clkao can i type a val to PerlSV and just let haskell do the reset?
23:12 autrijus and SvToVal potentially derefs
23:13 autrijus do the rest of what?
23:13 clkao oh ok. so PerlSV in pugs == setrev'ed pugs in perl5
23:13 clkao is that right?
23:13 autrijus not really. PerlSV stands for any SV*
23:14 autrijus whether they are setref'ed or not
23:14 autrijus I think I know the problem. sec
23:14 clkao right. how can i make the sv from c land into val that pugs will see it as PerlSV then?
23:14 Khisanth revdiablo: now that you mention it, I do recall seeing that brand in stores
23:19 osfameron has joined #perl6
23:20 autrijus 07:17 < autrijus> omg
23:20 autrijus 07:17 < autrijus> pugs_Apply("&isa", val, isa)
23:20 autrijus 07:17 < autrijus> dear clkao this is so borked
23:20 autrijus 07:17 < autrijus> check prototype
23:20 autrijus clkao: you use SvToVal
23:22 clkao gr
23:22 clkao pugs_Apply(HsPtr a1, HsPtr a2, HsPtr a3)
23:23 clkao i told you to give an example :)
23:23 autrijus k k. sec
23:23 clkao there are so many types involved
23:23 autrijus sadly they are all neccessary
23:24 osfameron_ has quit IRC (Read error: 110 (Connection timed out))
23:25 autrijus I'm almost fixed
23:25 clkao ok
23:25 clkao i'm done with invoker. can't test
23:27 autrijus got a code!!
23:27 clkao cool
23:27 clkao commit!
23:27 clkao quick!
23:28 clkao svk needs easy way to setup tmp p2p branch
23:30 autrijus done
23:30 svnbot6 r3934, autrijus++ | * segfault solved
23:30 clkao jit svnbot6
23:30 clkao botsnack
23:30 clkao more tea while compiling
23:32 clkao svtrue: *rv is a pointer..
23:32 clkao it's a typo? or some magic?
23:32 autrijus where? likely typo
23:32 clkao ok
23:33 clkao now, where was this first got a code called?
23:33 clkao i haven't init my perl yet
23:33 autrijus it's in pugs.embed.perl5 line 124
23:33 autrijus hm, no. weird
23:33 autrijus anyway I'm fixing eval_perl5
23:35 * SamB wonders why his pull is hanging here:
23:35 ninereasons has quit IRC ("bye")
23:35 clkao src/perl5/pugsembed.c: In function `pugs_SvToVal':
23:35 clkao src/perl5/pugsembed.c:11: warning: cast to pointer from integer of different size
23:35 SamB Thu May 26 07:30:52 EDT 2005  <autrijus@autrijus.org>
23:35 SamB  * r3909
23:35 SamB Thu May 26 06:39:02 EDT 2005  <autrijus@autrijus.org>
23:35 SamB  * r3908
23:35 SamB Thu May 26 05:59:04 EDT 2005  <autrijus@autrijus.org>
23:35 SamB  * r3905
23:35 SamB Thu May 26 05:57:43 EDT 2005  ^[[6~^[[6~^[[6~^[[6~^[[6~^[[6~^[[6~^[[6~^[[6~^[[6~^[[6~^?^?
23:36 SamB (all that ^[[6... stuff is me hitting keys and accomplishing nothing)
23:36 * SamB guesses it has something to do with the stuff coming over the wire...
23:37 ijoyce has joined #perl6
23:38 justatheory has joined #perl6
23:40 clkao *** No compatible subroutine found: "&callcode"
23:40 clkao autrijus: ? it doesn't seemto dispatch
23:41 mugwump during discussion of Tangram, we have discovered the correct capitalization of O/RM
23:41 mugwump oRM
23:42 autrijus clkao: sec
23:42 clkao that looks ugly
23:42 vcv- has quit IRC (Read error: 110 (Connection timed out))
23:43 autrijus clkao: I got it
23:43 clkao pugs bug?
23:44 clkao quick, almost there
23:46 chromatic has joined #perl6
23:46 * chromatic ponders DESTROY
23:48 chromatic It looks like adding an op1 "DESTROYALL" in src/Pugs/Prim.hs makes that much available, but I'm a little bit lost at how to detect that an object has gone away.
23:49 autrijus chromatic: GHC's generational GC handles that for you
23:49 autrijus clkao: fixed!
23:49 autrijus committing
23:49 chromatic Are there end-of-life hooks?
23:50 autrijus chromatic: sure
23:50 autrijus addFinalizer in System.Mem.Weak
23:50 autrijus for foreign objects use ptr finalizer in Foreign
23:50 IshaCocoa has quit IRC (Read error: 110 (Connection timed out))
23:50 chromatic I'm brainstorming here.
23:50 chromatic Is the right answer to use addFinalizer somehow on VObject?
23:51 chromatic Then, somehow, have it call the "DESTROYALL" method?
23:51 autrijus sure.
23:51 autrijus that sounds just right
23:51 chromatic Alright, let me dig a bit
23:51 svnbot6 r3935, autrijus++ | * init perl5 as part of prepareEnv to avoid loop
23:52 clkao dear autrijsu
23:52 clkao ok 5 - invoke method
23:52 clkao er. no
23:52 clkao still
23:52 clkao *** No compatible subroutine found: "&callcode"
23:53 clkao on the line:     my $r = $obj.callcode($callback);
23:53 autrijus so the .can failed
23:53 autrijus double check things?
23:53 autrijus ahh. I know
23:53 autrijus .call is not initted w/ env
23:53 autrijus sec
23:54 eric256 has left
23:56 broquaint has quit IRC ("'z' x 3")
23:56 metaperl has quit IRC (Client Quit)
23:57 clkao *** cannot cast from SV (CODE(0x83c0314)) to Pugs.AST.Internals.VCode
23:57 clkao i thought this was done already
23:58 stevan :)
23:58 stevan you two are crazy
23:59 chromatic Hmm, given a VObject, how can I call a method on it?
23:59 stevan backlogging is so much more fun now
23:59 stevan hey chromatic :)
23:59 autrijus clkao: no that wasn't... I'll fix
23:59 clkao ok. quick. i've wrriten more test
23:59 clkao s
23:59 autrijus chromatic: you can use the simple thing
23:59 stevan it's like some insane C vs. Haskell game of ping-pong

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo