Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-01-16

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:03 frodo72 joined perl6
00:06 K__ joined perl6
00:11 JavaManIssa joined perl6
00:22 gaal joined perl6
00:28 dduncan joined perl6
00:42 theorbtwo Hmm: We implement print and sprintf, but not printf.
00:43 Khisanth isn't that just print + sprintf?
00:43 theorbtwo Yes.
00:43 theorbtwo Should be easy to do, but I don't want to shave that yak.
00:45 Juerd I don't think having printf is good.
00:45 Juerd Because if we have printf, we might as well have printuc
00:45 Juerd And printsubstr
00:47 theorbtwo And that's the other reason not to go ahead and write it, because it might be not there on purpose.
00:47 Juerd I think it'll be there, because of historical reasons
00:47 Juerd But I actually don't agree it's good to have.
00:47 Juerd Especially now that we have .as(format), and { } interpolation
00:48 theorbtwo Hm, is there a short way of writing that .as turned around?
00:48 theorbtwo I rather like the sprintf way of listing the format string, then the things going into it, at least sometimes.
00:48 Juerd printf "%.2f %s", $foo, $bar reads much better as print "{ $foo.as('%.2f') } { $bar.as('$bar') }" anyway
00:48 Juerd theorbtwo: Sure.
00:49 theorbtwo I think the first version reads better.
00:49 theorbtwo OTOH, $foo.as('%.2f')." ".$bar reads better then either.
00:49 Juerd theorbtwo: as "%.2f %s" <== $foo, $bar
00:49 theorbtwo OK, that second works for me.
00:50 Juerd In fact, I'd think sprintf itself can go, now that we have as :)
00:50 Juerd as is nicely short too.
00:50 Juerd print as "%.2f %s", $foo, $bar
00:50 Juerd Isn't worse than printf "%.2f %s", $foo, $bar
00:51 Juerd One very good reason to NOT use interpolation is clarity
00:51 theorbtwo Hmm, I'm going to go for a while... I'll probably be back sometime before an hour, or not till morning.
00:52 Juerd I find qq[<a href="%s">%s</a>], ... incredibly more clear than any version of that using interpolation.
00:52 Juerd It's 2am here. I'm going to bed now :)
00:52 Juerd Good night, or whatever localtime you prefer.
00:57 scook0 joined perl6
01:04 DaGo joined perl6
01:06 Cryptic_K joined perl6
01:13 theorbtwo Back.
01:22 joepurl joined perl6
01:52 * theorbtwo wonders why there are both "if" and "unless" syns.
02:14 stevan joined perl6
02:27 \xe6var joined perl6
02:56 \xe6var joined perl6
03:27 putter joined perl6
03:27 putter http://lamp.epfl.ch/~odersky/papers/ScalableComponent.pdf Scalable Component Abstractions.  Re modules, Scala.
03:32 stevan_ joined perl6
03:39 putter Paper pointer was from LtU via http://chneukirchen.org/anarchaia/ , a nice blog.
03:42 dduncan hmm, it seems that the problem I reported 1-2 days ago, about version numbers not updating, is persistent
03:42 dduncan it was fixed temporarily by a clean rebuild
03:43 phredmoyer joined perl6
03:43 dduncan but once again, Pugs reports r8674, while pugs_version.h contains the correct 8695
03:44 dduncan so the darwin/haskell report saying 8674 was actually 8695
03:44 dduncan I'm not sure if this could be caused by my system clock being wrong (beginning of time) during an update 1-2 weeks ago
03:45 dduncan if it is, then fixing this may not be so simple short of dumping my local repository and redownloading
03:46 dduncan or there is some build system problem that didn't exist a few days ago
03:46 dduncan the version problem only appeared a week after the date was normal again, and meanwhile I think the reported versions may have been correct
04:17 putter curious
04:24 putter left perl6
04:51 tewk
05:31 gaal theorbtwo: there is an "unless" Syn in the hs runcore. probably not in PIL!
05:31 gaal oh you said "why", not "whether"
05:45 Medvekoma joined perl6
06:10 phredmoyer joined perl6
06:16 r0nny joined perl6
06:21 Medvekoma joined perl6
06:40 GeJ joined perl6
07:24 iblechbot joined perl6
07:47 elmex joined perl6
07:48 DesreveR joined perl6
08:00 K_ joined perl6
08:04 audreyt it's experimentally verified: ammonia and peroxide can inhibit coding productivity
08:04 audreyt (hair colouring)-- # interferes with hacking
08:05 clkao orz
08:11 Debolaz Hair coloring.. pff.. that's for people with hair.
08:13 * audreyt ponders scalp colouring
08:13 clkao just get rid of them and buy some new hair
08:19 nothingmuch joined perl6
08:19 nothingmuch morning
08:22 Khisanth colored wigs?
08:22 Khisanth audreyt: scalp tattoos :)
08:23 audreyt mmm tattoos.
08:23 audreyt probably not going to get them before my ear piercing heals
08:24 Khisanth a pug on the left and a camel on the right! :P
08:41 putter joined perl6
08:42 putter hi all
08:42 putter some notes on r8696
08:48 putter it is currently necessary to set LD_LIBRARY_PATH for embedded parrot&perl5.  my recollection is this was previously unecessary.  the current Makefile contains a -rpath line to find perl5's libperl.so, but apparently (doesn't find it by default) somethings wrong.  PARROT_PATH is apparently not (no longer?) used to find libparrot.
08:48 putter the old desirable behavior should ideal be restored.  or at least, INSTALL updated to reflect current requirements.
08:49 putter s/ideal/ideally/
08:49 G2 joined perl6
08:51 putter in INSTALL, in might be worth mentioning next to the usual perl Makefile.PL; make; make test, that unlike most perl builds, "make and make test can both take several hours.".  Shall I add the line?
08:52 audreyt sure
08:52 audreyt or echo it as first thing in make test
08:53 audreyt may be more polite
08:53 putter k
08:54 putter in make output,
08:54 putter Warning: ignoring unrecognised input `/usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/auto/DynaLoader/DynaLoader.a'
08:54 putter ghc-6.4.1: user specified .o/.so/.DLL could not be loaded.
08:54 putter and
08:54 putter Couldn't run '/usr/bin/ghc -H0  -i. -isrc -isrc/pcre -isrc/syck -isrc/cbits -I. -Isrc -Isrc/pcre -Isrc/syck -Isrc/cbits -static  -Wall  -fno-warn-name-shadowing  -isrc/perl5 -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/CORE /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/auto/DynaLoader/DynaLo
08:55 putter these may reflect the absence of Template Haskell installation.
08:57 putter Syck is apparently still being sloppy about C types...
08:57 putter Compiling Data.Yaml.Syck   ( src/Data/Yaml/Syck.hs, dist/build/src/Data/Yaml/Syck.o )
08:57 putter /tmp/ghc11864.hc: In function `slzC_ret':
08:57 putter /tmp/ghc11864.hc:1806: warning: passing arg 2 of `syck_emit_item' makes integer from pointer without a cast
08:57 putter /tmp/ghc11864.hc: In function `slzA_ret':
08:57 putter /tmp/ghc11864.hc:1857: warning: passing arg 2 of `syck_emit_item' makes integer from pointer without a cast
08:57 putter /tmp/ghc11864.hc: In function `slzl_ret':
08:57 putter /tmp/ghc11864.hc:2199: warning: passing arg 2 of `syck_emit_item' makes integer from pointer without a cast
08:58 putter I don't recall if this is the same problem which occurred previously, the fix for which was pushed upstream.
08:59 putter
08:59 putter The usual Pugs.Embed.Perl5 warnings.  And general ghc pointer warnings.
09:00 putter sigh.  this one I know got fixed previously,
09:00 putter gram.c: In function `syckparse':
09:00 putter gram.c:1115: warning: implicit declaration of function `sycklex'
09:00 putter src/syck/syck.c: In function `syck_parse':
09:00 putter src/syck/syck.c:492: warning: implicit declaration of function `syckparse'
09:00 Medvekoma joined perl6
09:02 putter Ah, _that's_ why pugs startup has been slow.  Without LD_LIBRARY_PATH set _before_ make, precompiled prelude creation fails.  also, the make process stops there.  blarg.
09:03 putter now make test taking a couple of hours no longer seems surprising. ;)
09:03 kane_ joined perl6
09:04 putter When make test got around to creating the JS prelude,
09:04 putter *** Compiling PIL to JavaScript...
09:04 putter substr outside of string at /home/net1/perl6/pugsxpl2/perl5/PIL2JS/lib/PIL.pm line 349.
09:04 putter Use of uninitialized value in concatenation (.) or string at /home/net1/perl6/pugsxpl2/perl5/PIL2JS/lib/PIL.pm line 349.
09:08 putter Test result isnt so great.  Perhaps a Prelude issue?  Cant find elems() or splice().  Lots of fails and dubious.
09:08 putter Failed 105/511 test scripts, 79.45% okay. 1401/9347 subtests failed, 85.01% okay.
09:09 putter 2 unexpected successes.
09:09 putter Summary:
09:11 putter It looks like there is a build system regression.  -rpath is not being successfully set to find libperl and libparrot for embedding.  this then break make.  Needs to be either be fixed or documented in INSTALL.
09:30 putter joined perl6
09:30 kanru joined perl6
09:31 svnbot6 r8697 | putter++ | INSTALL - added the "expectation management" line
09:31 svnbot6 r8697 | putter++ | Both make and make test can take a long time (perhaps hours).
09:33 putter oh, I'm blind. most of the Syck pointer warnings are ghc warnings.  Which, for whatever reason, are a known problem.  The only real syck C code bugs are the sycklex etc pointer warnings.
09:34 putter fixing...
09:37 putter putter--  :(  4 hours sleep insufficient.  syckparse warning is merely an implicit declaration warning.  I'll fix it, but it's unlikely to be a real problem.
09:40 nnunley joined perl6
09:44 nnunley_ joined perl6
09:46 putter Ok, re syckparse implicit declaration.  no, it doesnt matter.  merely cosmetic.  and it's arguably bison which is dropping the ball.  I note gram.c was generated by bison 1.875d.  which is also the current rev on FedoraCore3.  but apparently current stable is 2.1.  I suggest, punt!
09:46 nothingmuch audreyt: help
09:46 nothingmuch EU::AI is giving me the heebie jeebies
09:46 nothingmuch i'm installing stuff with g-cpan
09:46 nothingmuch which basically runs 'make' in the module
09:46 nothingmuch and then merges into my gentoo box's tree
09:47 nothingmuch i don't want to use CPAN.pm for installation
09:47 nothingmuch because that will not work well with my dependency management stuff
09:51 audreyt nothingmuch: first, M::AI
09:52 nothingmuch ?
09:52 nothingmuch oh wait, i see
09:52 nothingmuch ==> ExtUtils::AutoInstall 0.45 required. Install it from CPAN? [Y/n] n
09:52 audreyt next, export PERL_EXTUTILS_AUTOINSTALL=--skipdeps
09:53 nothingmuch how do i get it to just bark out "i need this and that" like a traditional Makefile.PL?
09:53 audreyt export PERL_EXTUTILS_AUTOINSTALL=--skipdeps
09:53 audreyt and advise that author to ditch EU::AU
09:53 audreyt EU::AI
09:53 audreyt and use the more modern Module::AutoInstall (now part of Module::Install)
09:54 nothingmuch i think it's using it
09:54 nothingmuch it uses MI, and does 'auto_install' in there somewhere
09:55 nothingmuch hmm
09:56 nothingmuch it seems like it's not telling that the deps are missing
09:56 audreyt it must be an old MI then
09:56 audreyt very old
09:56 nothingmuch is MI bundled in the module's tarball?
09:56 audreyt yes, and so is M::AI
09:56 audreyt but not EU::AI
09:56 audreyt not automagically anyway, which is why EU::AI should be deprecated
09:58 nothingmuch please join us on $catalyst
09:58 nothingmuch #catalyst
10:00 nothingmuch audreyt: please see paste on #catalyst
10:03 putter hmm... rpath (for libperl) is used when creating ./pugs... r6840 didnt have the problem...
10:32 theorbtwo Morning, all.
10:36 putter good morning
10:54 cookys joined perl6
11:03 DesreveR is now known as r0nny
11:10 * putter wonders if  make unoptimized  makes sense any more.  it seems to result in a >1GB ghc, perhaps a 2x increase, and thus for many, swapping.
11:12 blm joined perl6
11:24 DaGo joined perl6
11:27 * theorbtwo grrrs.
11:28 theorbtwo I seem to be getting a lot of Prelude.undefined with my current build.
11:28 audreyt indeed?
11:28 theorbtwo Oh, stranger -- only with -CParse-YAML.
11:28 theorbtwo ./pugs -I blib6/lib -CParse-YAML t/data_types/mixed_multi_dimensional.t
11:29 audreyt fixing
11:30 audreyt putter: unoptimised makes little sense for Run.hs (precomp prelude) and makes sense for other thing
11:36 putter a new  make quickly  target? ;)
11:39 audreyt "make ghci" does that...
11:43 putter *chuckle*
11:46 putter INSTALL says "Pugs needs Parrot 0.3.1 or above to support Perl 6 Rules and PIR evaluation."  Is 0.3.1 really still sufficient?
11:47 audreyt no, we absolutely need 0.4.1
11:47 audreyt 0.4.0 was broken; pre-0.4.0 use different lexpad
11:51 putter updating...
11:52 audreyt theorbtwo: I notice the same error with -CPIL1-Yaml too, seems to be triggered on closures
11:52 audreyt fixing
11:58 \xe6var does perl 6 have named arguments to functions for internal functions?
11:58 \xe6var i.e. internal_func(foo => 1, bar => 2) ..
11:59 svnbot6 r8698 | putter++ | INSTALL - parrot dependency changed to 0.4.1 for all of external and embedded, rules and pil.
11:59 svnbot6 r8697 | putter++ | INSTALL - added the "expectation management" line
11:59 svnbot6 r8697 | putter++ | Both make and make test can take a long time (perhaps hours).
12:01 audreyt \xe6var: yes.
12:01 putter why does svnbot6 _do_ that?  r8697 was quite a while ago.
12:01 audreyt no idea...
12:03 putter ok, r8600 with embedded parrot-0.3.0 and perl does _not_ have the cant-find-libperl problem.  so whatever broke has happened since (or is a function of using a more recent parrot; or... sigh)
12:06 audreyt parrot 0.4.1 has a libparrot.so
12:06 audreyt 0.3.0 did not -- it as .a
12:06 audreyt s/as/was/
12:07 audreyt theorbtwo: fixed. committing
12:11 svnbot6 r8699 | audreyt++ | * DrIFT.YAML: Do not die when the Typeable instance is undefined.
12:14 svnbot6 r8700 | audreyt++ | * t/operators/inc.t: all passes.
12:16 audreyt bbiab...
12:16 * audreyt starts test triaging
12:17 mjl69 joined perl6
12:28 putter ok, its not a parrot issue.  between r8600 and r8698, parrot-0.3.0&perl embeds started not finding libperl.
12:32 putter (the joy of doing binary search in background while working on something else:)
12:45 azuroth left perl6
12:54 putter ...parrot appears irrelevant.  HEAD cant find libperl even with external parrot...
13:02 chris2 joined perl6
13:07 frodo72 left perl6
13:20 iblechbot joined perl6
13:29 leo_ audreyt: please check parrot r11212 (package-scoped closures)
13:33 putter theorbtwo: you might look at http://wingolog.org/archives/2006/01/02/slime  Maybe http://www.cliki.net/SLIME  http://www.common-lisp.net/ is having dns issues - just s/.net/.org/.  http://common-lisp.net/torrents/slime.torrent
13:34 putter the torrent is for a movie showing slime being used.  has drawn favorable comment.  i havent seen it yet.
13:34 mjl69 joined perl6
13:36 putter Slime is a nice emacs CommonLisp development environment.  the wingolog article is a python person's reflections on it.
13:38 Odin-LAP Slime is cool.
13:39 putter yes.  we should have one for p6 :)
13:40 putter with an elisp backend for piln, could even be written in p6...
13:41 * Odin-LAP seconds that.
13:41 Odin-LAP P6 = CL with syntax. :D
13:44 putter slime has really poor web pr though.  broken links, very little in the way of prostelytization, "lots of people downloading slime.mov? oh no, can't have that, let's remove it and have only a torrent".  sigh.
13:45 putter re CL w syntax, :)
13:45 putter there seem to be atleast a couple of people interested in having a CL frontend for p6.
13:48 Odin-LAP Front end? O_o
13:50 putter ...r8670 was still finding libperl...
13:52 putter Odin-LAP: use Language::CommonLisp::OnPerl6;  ...cl...    pugs -c foo.cl -o foo.p6
13:52 Odin-LAP Hm.
13:52 Odin-LAP I see.
13:52 Odin-LAP That's ... interesting.
13:52 * Odin-LAP would've figured on the other way around.
13:53 putter that too :)
13:53 Odin-LAP I mean, I would've thought that would be a more common request. :)
13:54 nnunley Compile to common lisp, and have it optimize with declarations?
13:54 putter basically, just write a small kernel of CL in p6, and a CL->p6 transliterator (in CL), and snarf most of the code from existing CL implementations.
13:54 putter (that was re "other way around")
13:58 putter re common request... I'm not sure which, if either, direction would be common.  I suspect the perl and CL communities will get along fine.  ->CL would give them CPAN; ->p6 gives us CL code (hmm... how about MACSYMA on CPAN ;).  ??
13:59 Rolan joined perl6
13:59 nnunley Or Axiom
14:00 Odin-LAP I think it's called Maxima these days.
14:00 Odin-LAP And a p6-controlled CAS would be just brilliant. ;)
14:01 putter re compile, the current plan is to compile pil2 down to a small piln.  one would then write a piln implementation in CL.  scalar,array,code,environment pads,etc.
14:01 * putter googles for Axiom...
14:02 clkao rww8rwr  
14:02 nnunley putter: http://wiki.axiom-developer.org/FrontPage
14:03 chris2 axiom truly is a bitch to build
14:03 * nnunley nods.
14:03 chris2 esp on osx, it seems
14:03 putter neat.  yes.
14:03 chris2 but it sounds rather powerful from the descriptions
14:05 * putter has been eyeing CAS languages like GAP's, thinking "oo, what tasty things too eat once p6 has rules and objects..."
14:06 * nnunley grins.
14:07 putter Anyone know if company-which-will-remain-nameless (starts with Mathem) still claiming intellectual property in the language it self (ie, stomping on alternate implementations)?
14:09 nnunley Not sure.  I dimly recall seeing something that offered a compatible language layer.  Similiarly declaritive, etc.
14:13 nnunley putter: Not what I remembered, but found this in my bookmarks: http://www.cs.berkeley.edu/~fateman/mma.mailer
14:14 iblechbot joined perl6
14:16 putter looking...
14:17 nnunley The directory above has a catalog of integrals for use with something like MockMMA/Mathematica.
14:20 chris2 hmm, what happened to jacal
14:20 putter nifty.  it would be nice if we ended up being able to  use Lang::CL::Versions::AlegroNNN;  so one can simply snarf and run.
14:22 putter Ahoy!  Thar she blows!  r8674 * in building the final pugs.exe, we don't need to put embed flags in again.
14:22 putter Apparently, we do.
14:24 putter ah, there it is http://swissnet.ai.mit.edu/~jaffer/JACAL.html
14:35 putter chris2: looking at the change log http://cvs.savannah.gnu.org/viewcvs/jacal/jacal/ChangeLog?rev=1.77&amp;view=auto  it seems a couple of times a year, Jaffer puts in a couple of days work.  So while Jacal2 http://swissnet.ai.mit.edu/~jaffer/JACAL2-plan looks interesting, it may be a "dont hold your breath".
14:37 putter audreyt: the build seems to be broken at the moment (r8700).
14:38 putter src/Pugs/AST/Internals.hs:1954:45:
14:38 putter    No instance for (YAML PerlSV)
14:38 putter      arising from use of `asYAML' at src/Pugs/AST/Internals.hs:1954:45-50
14:46 kolibrie joined perl6
14:47 rantanplan_ joined perl6
14:48 vel__ joined perl6
15:09 petdance joined perl6
15:10 eric256_ left perl6
15:11 eric256 joined perl6
15:20 hexmode joined perl6
15:24 gaal audreyt: ping
15:25 nnunley_ joined perl6
15:30 eric256 left perl6
15:44 audreyt pong
15:45 * audreyt finally recovers from intoxination
15:46 clkao hmm audreyt, the xul files aren't working in my firefox.. :/
15:46 clkao js console says Presentation not defined
15:46 audreyt putter: weird... fixing
15:47 vel__ joined perl6
15:47 audreyt putter: sorry, it was broken only for parrotembed
15:47 audreyt committing the fix now
15:48 audreyt clkao: which url?
15:48 petdance left perl6
15:48 clkao any xul under perlcabal/~autrijus
15:48 audreyt try http://pugscode.org/osdc/pugs.xul
15:48 ingy hi audreyt
15:49 svnbot6 r8701 | audreyt++ | * move YAML instance to PerlSV to fix build on parrot embed.
15:49 svnbot6 r8702 | putter++ | Revert r8674 - "* in building the final pugs.exe, we don't need to put embed flags in again.".  Apparently we do - now embedded libperl is again found.
15:49 ingy clkao: where are you?
15:49 jhorwitz joined perl6
15:49 theorbtwo Re SLIME: sounds good, of course, but I've got to start somewhere.
15:50 hcchien ingy: how are your eye?
15:50 hcarty joined perl6
15:50 gaal re: http://pugscode.org/osdc/pugs.xul - we have -CJRE? :)
15:52 clkao ingy: somewhere near you
15:52 audreyt gaal: no -- note the question mark
15:52 clkao audreyt: ok, works
15:52 ingy hcchien: better, thank you
15:52 audreyt gaal: or do you mean the picture... those are just source tree language counts
15:53 ingy clkao: why do you want to come to our house?
15:53 audreyt (misc/org.perl6.metamodel/)
15:53 gaal ooh
15:53 putter audreyt: thanks
15:54 ingy audreyt: I have some interesting ideas on parsing
15:54 ingy at least I think they are interesting
15:54 ingy going to try to write my own parser framework
15:54 putter theorbtwo: :)  sure.  I just stumbled on the pythoner's description, and thought I'd pass it on.
15:55 ingy also i have figured out my talk for YAPC::Asia
15:56 audreyt ingy: which would be?
15:58 chris2 joined perl6
15:58 * Juerd just spent 10 minutes figuring out why, in Perl 5, rx/[foo|bar]/ didn't work.
15:59 * audreyt chortles :)
15:59 ingy audreyt: I can't say. sorry.
16:00 ingy maybe I'll tell you privately
16:00 audreyt ok... I'll keep it s3kr1t then
16:04 svnbot6 r8703 | audreyt++ | * unTODO some passed rules tests.
16:04 putter nice talk.  "I didn't realize we has a mini-parser!" ;)
16:05 audreyt putter: you hadn't seen my 4 talks? :)
16:06 putter yes... but... I don't know.  maybe I didn't really notice that slide in previous ones.
16:07 audreyt *nod*
16:07 putter the sigils accumulating with reving perl slide sequence was a laugh.
16:07 audreyt hmm, 2105 failed tests. this is going to be a long night
16:07 audreyt though last time I remember it was something like 3500
16:07 putter or a long day tomorrow.  sleep good.
16:08 putter bah.  embedded perl ok.  embedded libparrot still not found.  back into the... plumbing.
16:12 putter s/sleep good/sleep is good/   (as putter demonstrates the concequences of not having enough)
16:14 gaal are all those red tests regressions? or were they untodoed after the last release?
16:14 audreyt they are all regressions.
16:15 audreyt I'm implementing "env" now... should just take a couple mins
16:15 elmex joined perl6
16:16 rantanplan_ joined perl6
16:17 elmex joined perl6
16:17 gaal remind me which S that is?
16:17 gaal I want to reread it
16:18 audreyt 02
16:18 gaal ah, 2
16:18 gaal :)
16:24 putter pugs: internal error: ARR_WORDS object entered!  Please report this as a bug to glasgow-haskell-bugs@haskell.org.
16:24 putter Progress! ;)
16:25 qmole_ nice
16:27 audreyt env implemented
16:27 * audreyt ponders turning $_ into env
16:34 putter I gather embedding parrot on Win currently works, so I'm doing a non-Win-only fix?  (the equivalent code in embed perl is non-Win)
16:38 ingy is there a proposed way to write Perl 6 without curlies (ala Python)
16:38 \xe6var ingy: like perl5?
16:38 \xe6var use Acme::Pythonic
16:39 ingy I'm aware of that module, yes
16:39 * \xe6var would like more less-curlyness
16:39 theorbtwo Modify the gramatical definition of block?
16:39 \xe6var like ruby!
16:40 integral I'd have said 'like haskell'...
16:40 ingy has anyone tried this yet?
16:40 ingy integral: that too
16:40 integral since haskell takes the approach of specifying how whitespace is used to infer missing {, } and ;
16:40 ingy as does javascript
16:40 ingy although not to the level of haskell
16:41 audreyt ingy: no, a set of layout rules would help.
16:41 integral wow, javascript must have changed a lot since it first came out :-/  it sounds totally different
16:42 ingy audreyt: where would be the appropriate place to hack on this?
16:42 audreyt ingy: as a perl 6 macro modules
16:42 theorbtwo audreyt: Your CPAN signing key doesn't have your new name on it, BTW.
16:43 audreyt theorbtwo: --recv-key  agian.
16:43 audreyt ingy: you can take eg. the parse tree from -CParse-YAML and transform it... or wait till a better match tree is exposed to p6 (which chromatic claims pmichaud already got it in his private repository somewhere)
16:43 ingy audreyt: ie, wait for a while?
16:43 theorbtwo Did, still doesn't.
16:44 audreyt ingy: you can also write, like, English :)
16:44 audreyt ingy: i.e. spec how it may work.
16:44 * ingy passes for now.
16:47 theorbtwo Odd -- YAML::Syck tests seem to be completely hosed.  They use t::TestYAML, which I do not have.
16:48 audreyt which version?
16:49 theorbtwo 0.25
16:49 audreyt that is prehistoric
16:49 theorbtwo Hm, 0.28 is out, why didn't CPAN.pm fetch it...?
16:52 * audreyt goes implementing $+outerval
16:52 audreyt ...all this to fix two subtest fails
16:55 * putter cowers in Makefile.PL hell...
16:57 ingy audreyt: can you use UseHeader instead of Headless?
16:57 ingy I can patch for you :)
16:58 ingy also $YAML::Syck::SortKeys should default to $YAML::SortKeys first
16:59 ingy audreyt: maybe you could join #yaml for this kind of stuff
17:00 ingy plus it's lonely there
17:01 bernhard joined perl6
17:04 audreyt er, uhm, Syck uses Headless
17:05 robkinyon joined perl6
17:05 robkinyon seen stevan_
17:05 jabbot robkinyon: stevan_ was seen 4 days 15 hours 32 minutes ago
17:09 clkao are we going to use the ported parse::rule for rules?
17:10 putter does anyone have parrot on Win right at hand?  i've a question
17:11 putter seen stevan
17:11 jabbot putter: stevan was seen 1 days 13 hours 24 minutes 10 seconds ago
17:13 marmic joined perl6
17:13 Vutral joined perl6
17:14 Qiang joined perl6
17:14 xinming joined perl6
17:19 svnbot6 r8704 | putter++ | pugs can again find libparrot.
17:19 svnbot6 r8704 | putter++ | Makefile.PL - parrot's rpath_blib configuation variable is -optl'ified and added to $ccdlflags.
17:20 putter If someone on Windows could try r8704's Makefile.PL with embedded parrot, that would be great.  At least on linux, one can simply update Makefile.PL, delete ./pugs (aka pugs.exe), and run make.  Any errors?  ./pugs start up ok?  Thanks.
17:22 putter At least on linux, pugs is now happily loading libparrot and libperl without the user jumping through LD_LIBRARY_PATH hoops.  yay.
17:23 putter audreyt: two subtests, but neat features. ;)  whether it's the right triage is your call of course.  -Ofun ;)
17:24 audreyt and it's one of the things that dduncan has asked for some time
17:28 putter clkao: re parse::rule, don't know.  the very next step is, with piln and such, to get "real" rule objects (whatever they are, maybe multis).  that will make the rule namespace non-flat, and any rx/engine will be able to play with them.
17:28 putter audreyt: :)
17:40 putter bbl &
17:44 xinming why is pugs so slow please? :-/
17:44 audreyt xinming: because it uses Haskells's [Char] type for strings
17:45 xinming hmm, the loading prelude procedure is soooooo slow...
17:45 audreyt and IntMap for arrays
17:45 audreyt and a very inefficient Prelude generation backend (-CPugs)
17:45 audreyt all three will be fixed by 6.28.0
17:46 xinming audreyt: hmm, can you estimate the time when it will be released? :-P
17:47 audreyt xinming: probably a month from now
17:47 audreyt I think
17:47 xinming It seems that pugs had been delayed soo much time as you ever epected. :-)
17:47 SamB audreyt: looked into using FPS?
17:48 audreyt xinming: indeed, I've been caught up in $job
17:48 SamB ... since the license was clarified?
17:48 audreyt SamB: already switched to FPS in PILN (new ruuncore)
17:48 SamB ah
17:48 audreyt I worked with dons in ICFP to clear up FPS :)
17:49 justatheory joined perl6
17:50 SamB I worked with dons in #haskell to make the BSD license obvious
17:51 audreyt excellent
17:52 gaal parrot embedding still doesn't work with msvc, right?
17:52 gaal (rehi)
17:52 audreyt hadn't tested ever since
17:52 audreyt now they build .dll, that may just work
17:53 * gaal uncomments the guard in the makefile
17:53 SamB I felt kinda wierd re-writing the license to fit the situation, though
17:54 SamB I wish somebody would come up with an equivalent license which was about what the Open Source Definition is to the DFSG...
17:55 theorbtwo Huh?
17:56 SamB er, +"to the BSD3"
17:57 theorbtwo And what is the short BSD to the OSD?
17:58 theorbtwo There are certianly less onerous licenses that fufil the OSD -- public domain.  There are more onerous -- the mozilla license, for example.
17:58 svnbot6 r8705 | audreyt++ | * Support for $+var as shorthand for $CALLER::var.
17:58 svnbot6 r8705 | audreyt++ | * CALLER now only sees lexical variables in the outer dynamic
17:58 svnbot6 r8705 | audreyt++ |   scope declared with the "env" scope specifier.
18:01 theorbtwo Doesn't that make CALLER less useful for debugging?
18:04 gaal urp? ghc is compiling every file twice!?
18:05 audreyt theorbtwo: it does
18:06 audreyt theorbtwo: (however, that is the spec.)
18:06 audreyt it can potentially make function calls faster, though, in the future.
18:14 SamB theorbtwo: I mean a version of the BSD3 that doesn't need to be configured for each project
18:14 audreyt aw. it's #parrotsketch time
18:14 * audreyt is in t/pugsbugs/... fixing random PCRE problem
18:15 gaal putter: with MSVC (nobody said it oughta work), *** Wasn't able to find 'Parrot_stub.o', aborting...
18:17 theorbtwo Ahh!
18:24 gaal oh, looks like a cleanup problem, retrying
18:24 svnbot6 r8706 | audreyt++ | * TODOify array captures for PGE
18:24 svnbot6 r8707 | audreyt++ | * ditto for captures.
18:24 petdance joined perl6
18:26 * audreyt ponders t/pugsbugs/io_close_with_scope.t and frowns
18:26 svnbot6 r8708 | audreyt++ | * Prim.Match: When rx:P5/(...)?/ captures nothing, do not set
18:26 svnbot6 r8708 | audreyt++ |   the submatch variable into something that has a true boolean
18:26 svnbot6 r8708 | audreyt++ |   values.  Reported by yiyihu.
18:26 audreyt we need a way to mark variables as requiring end-of-scope timely destruction.
18:26 * audreyt ponders adopting parrot's DOD_lazy_FLAG
18:27 gaal audreyt: where can I read up on how GC works in GHC? does pugs inherit that directly?
18:27 gaal even in the new runcore?
18:28 audreyt gaal: you can read a certain spj's paper
18:29 gaal we need that mark to be infectuous too, so that the caller of open doesn't have to remember to use it.
18:29 audreyt http://www.mm-net.org.uk/workshop190404/GHC's_Garbage_Collector.ppt
18:29 audreyt sure, it's attached to object
18:33 stevan_ theorbtwo: you might want to try Lispbox (http://www.gigamonkeys.com/book/lispbox/)
18:33 stevan_ is now known as stevan
18:33 stevan hello all :)
18:35 hexmode joined perl6
18:35 audreyt hey!
18:36 hexmode ho!
18:36 stevan now put yah hands in the air, and wave em like yah just dont care! auuuhhh yeah
18:37 * stevan has been playing with CLOS a lot lately
18:37 * stevan is pondering MetaModel 3.0 :P
18:38 gaal audreyt: very interesting design! funny conclusion though
18:38 gaal # "too many knobs"
18:38 tewk svn best practices question, how do I quickly find the recent checkin that fixed libparrot.so linking? Anyone use a gui svn tool for browsing past revisions and ci messages?
18:39 stevan tewk: svn log -v would probably be helpful
18:39 xinming hmm, what does env declarator do? What's the difference between env and my? :-/
18:39 stevan tewk: but best to set a revision depth so you don't dump the entire log
18:39 * xinming is really following the synopsis for some time.
18:39 stevan tewk: there is always the openfoundry UI too
18:40 gaal urp, no luck with MS C and emb parrot unfortunately
18:40 tewk stevan: thanks I used to use cervisa, mod_parrot need the same fix and I would like to see the pugs diff
18:40 gaal it
18:40 audreyt xinming:
18:41 gaal 's gcc + ld that try to do the final phase of linking, but -lparrot doesn't find the path.
18:41 audreyt sub f { say $+x }; env $x = 5; f();
18:41 audreyt # prints 5
18:41 audreyt sub f { say $+x }; my $x = 5; f();
18:41 audreyt # fails
18:42 jhorwitz_ joined perl6
18:43 xinming hmm, thanks, I'll try to read the Synopsis more. :-)
18:47 svnbot6 r8709 | audreyt++ | * note that for Parrot 0.4.2, our vivifySub hack is no longer needed.
18:48 putter joined perl6
18:51 putter tewk: there is also http://rt.openfoundry.org/Foundry/Project/Source/index.html/pugs/browse/ ;)
18:52 putter gaal: ah, I didnt realize parrot embedding never worked.  was afraid I might break it.  while were here though, if you want to pursue, I've a question for you...
18:54 putter r8704: (1 subtest UNEXPECTEDLY SUCCEEDED) (1039 subtests TODO), 879 subtests skipped. Failed 104/511 test scripts, 79.65% okay. 1396/9347 subtests failed, 85.06% okay.
18:54 audreyt which unexpected success was that?
18:55 putter that's amd64 linux FC3 embedded parrot and p5.  checking...
18:56 putter t/operators/arith...
18:57 putter ok 160 # TODO 1**Inf == 1
18:58 audreyt hm it's NaN here
19:01 putter oo, another for my collection: pugs: internal error: EVACUATED object entered!
19:02 putter pugs> 1**Inf
19:02 putter 1.0
19:03 _SamB_ joined perl6
19:05 putter but 1**-Inf gives an Internal error while running expression:
19:05 putter 1**(-Inf) works
19:07 dduncan joined perl6
19:07 audreyt dduncan: greetings. env support is in
19:07 audreyt dduncan: hadn't had time to turn $! and $/ and $_ into envs
19:07 _SamB_ is now known as SamB
19:07 audreyt dduncan: but I think that's the way to go... if feasible I'll give it a run tomorrow
19:08 audreyt but you can already use $+foo now.
19:11 dduncan audreyt, currently $! is the only should-be-env thing that affects me at the moment
19:12 audreyt dduncan: your code doesn't expect $_ to be global then?
19:12 dduncan I've also already resigned that my modules won't run until 6.28.0
19:12 dduncan I don't think it ever expected $_ to be global
19:13 dduncan currently the most pressing issue, maybe fixed, concerns private methods not being called
19:13 dduncan I can re-test now
19:14 audreyt k
19:15 dduncan similar issues, regarding subs or methods being called, seemed to affect a lot of ext items recently
19:15 dduncan "can't find" errors and such
19:15 dduncan I am now resyncing ...
19:17 audreyt putter: can you type
19:18 audreyt ghci
19:18 audreyt exp (0/0)
19:18 audreyt and see what it is?
19:18 audreyt (also 1**(0/0))
19:19 dduncan audreyt, result of first is : NaN
19:19 dduncan ditto the second: NaN
19:20 audreyt same here, yet putter reports on amd64 "1"
19:20 dduncan that's GHC 6.4.1
19:20 dduncan on darwin
19:20 audreyt nod
19:20 audreyt I wonder if this is an amd64 specific thing
19:20 dduncan either way, I would expect such a difference to be a GHC bug
19:21 audreyt I think GHC merely uses the underlying gmp
19:21 audreyt but yeah, it shouldn't vary for p6
19:21 dduncan well, as long as that's clearly documented in GHC
19:23 putter pugs> NaN == NaN  bool::true.  sure...
19:23 audreyt putter: what's exp(0/0) and (1**(0/0)) in yoru ghci?
19:24 putter Prelude> exp (0/0)
19:24 putter NaN
19:24 putter Prelude> 1**(0/0)
19:24 putter 1.0
19:24 audreyt try this
19:24 audreyt perl -e 'print 1**(9**9**9)'
19:25 putter perl -we '$inf=1000**1000*1000;print 1**$inf,"\n";'
19:25 putter 1
19:25 putter :)
19:25 * audreyt shrugs
19:26 audreyt in that case... ;)
19:28 theorbtwo 1**Inf being 1 makes sense to me.
19:28 audreyt do we intercept ** and hardcode that case?
19:29 dduncan the question is, is there value for having special cases that are known to be rational being output as such?
19:30 dduncan likewise, anything divided by itself is 1, even if its zero or infinity
19:30 dduncan or true with zero anyway
19:30 dduncan but I'm not a mathemetition
19:31 dduncan however
19:31 audreyt ok, I hardcoded 1**Inf into 1.
19:31 wolverian seems to me that 0 and 1 are always special cases :)
19:31 dduncan I think it is more reasonable for even zero/zero to fail if the variable is not an intege
19:31 dduncan because the seeming zero could in fact be a rounding error
19:31 dduncan in which case treating it zero in the special case would be incorrect
19:34 dduncan so it is a less error prone and faster performing system where anything divided by zero is always NaN/error, even zero, I think
19:34 svnbot6 r8710 | audreyt++ | * 1**Inf is now hardcoded to 1.
19:35 dduncan unless, perhaps, both numbers are known to be exactly zero and not approximately zero
19:35 dduncan as is the case with integers, but not floats
19:46 Juerd Is Inf**0 always 1?
19:48 gaal putter: maybe with MSYS it does work. I'm not checking today :-)
19:48 dduncan logically, anything**0 is 1
19:48 gaal audreyt + putter: one of the Inf/NaN tests is platform specific, I remember.
19:49 gaal dduncan: logically any number ** 0 is 1, but Inf is not a number.
19:49 audreyt gaal: it's now made nonspecific by hard coding :)
19:50 audreyt ok, I think I need some sleep now :)
19:50 gaal hardcoding++ :-)
19:50 audreyt I'll continue triaging tomorrow. any releng help (triage, chglogging, etc) would be appreciated :)
19:50 audreyt g'nite!
19:50 gaal I'm out of wakies, myself, but yeah, tomorrow :)
19:51 gaal night.
19:51 dduncan nightey
19:55 putter g'night
19:57 hcarty left perl6
19:58 audreyt stevan: oh btw, t/pil currently runs (and fails)even if the pil exectuable is not here
19:58 audreyt stevan: maybe make it probe (and skip_rest if not found?) or move it away? or something?
19:59 * audreyt goes back to sleep :) &
20:13 Juerd 20:56 < dduncan> logically, anything**0 is 1
20:13 Juerd dduncan: Except 0**0, which is impossible.
20:13 dduncan I hear that
20:16 gaal but see http://en.wikipedia.org/wiki/Empty_product#0_raised_to_the_0th_power
20:19 ingy one should take 0**0 = 1
20:23 putter (dead tree cost bucks standards)--
20:23 ingy hi putter
20:23 ingy buying specs?
20:25 putter well, if were doing 754,  inf**0 == nan.  but various pages are claiming a concensus developing around {0,inf,nan}**0 == 1.  754 is being updated (20yrs old).  who knows.
20:26 putter hi ingy.  my approach for years, of finding a line from a standard and googling, to find someone who left it online, is working increasingly less frequently. :(
20:27 putter our current nan == nan is definitely wrong though.
20:27 putter but you know, we have much bigger fish to fry.  lets punt this cruft till later.
20:28 ingy putter++
20:29 Juerd http://en.wikipedia.org/wiki/Empty_product#0_raised_to_the_0th_power
20:29 Juerd Eh
20:29 Juerd 1 pixel more and it'd have been in my browser.
20:35 svnbot6 r8711 | audreyt++ | * adjust unexpected success in capture.t.
20:35 ingy audreyt: sleep indeed
20:51 nnunley joined perl6
20:53 kanru joined perl6
20:57 svnbot6 r8712 | putter++ | :todo<bug>'ed my relatively unimportant t/pugsbugs/global_subst_with_lookbehind.t.  However, its an entirely local, straightforward haskell exercise for anyone who wants it.
20:58 petdance left perl6
21:01 vel__ left perl6
21:08 putter I'm off.  Have a good evening. &
21:10 dduncan fyi, the GPL v3 first draft was published today ... http://gplv3.fsf.org/ ... check it out
21:13 dduncan hmm, I didn't do anything special, but Pugs is reporting the correct version (r8712) again
21:13 dduncan now smoking
21:59 khaladan joined perl6
22:06 elmex joined perl6
22:18 bsb joined perl6
22:57 frederico joined perl6
23:02 Qiang joined perl6
23:05 Juerd http://use.perl.org/pollBooth.pl?qid=19
23:05 Juerd Let's get some more votes for 6 ;)
23:09 * \xe6var votes 7
23:10 aufrank joined perl6
23:11 * wolverian registered to vote
23:13 * \xe6var did too
23:14 \xe6var and I voted for v5.8.7 ;)
23:14 \xe6var why did larry have a @*jpl.nasa.gov address?
23:14 obra he used to work there, no?
23:17 aufrank hey guys
23:17 aufrank and lady-folk
23:19 pdcawley_ left perl6
23:25 Qiang joined perl6
23:25 Juerd What is an "opaque" object?
23:25 nnunley One whose internals you can't look into.
23:29 tewk ll
23:30 * Juerd dislikes all instances of "can't"
23:30 brentp joined perl6
23:33 mlh_ joined perl6
23:40 r0nny joined perl6
23:48 DaGo joined perl6

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

Perl 6 | Reference Documentation | Rakudo