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