SVK users: search.cpan.org/dist/SVN-Mirror/ | paste: sial.org/pbot/perl6 | pugs.blogs.com | pugscode.org | pugs.kwiki.org | www.treehugger.com/files/th_images/paradigm.jpg
Set by audreyt on 15 August 2006.
zgh TreyHarris: ugh I hate that.... not sure what to recommend apart from bugging the port maintainer 00:03
you might try port -e
to edit the portfile and look around
you could also apply the patches manually and just do the build with port
not good solutions i know 00:04
00:04 vsoni joined
TreyHarris well, my problem is that i come from a linux background, so apart from ghc for pugs, i don't have any experience with ports at all :-) 00:04
zgh yup i sympathize.... but the portfile layout is pretty self-explanatory... and you can see what files port is trying to patch by looking at teh errors... 00:05
i have never had much luck with bad ports... they're way behind esp in you're on intel
s/in/if/
TreyHarris zgh: thanks for giving me a direction to go in 00:10
pugs needs 6.5 now, right? i can't just use my 6.4.1 build? 00:11
zgh i use 6.4.1 on linux... forget what I ahve on my mac. 00:13
that's for SVN pugs updated today
TreyHarris ahh. why did i think i needed 6.5?
ohhh, i know... pugs was going into a death spiral with the version of libreadline 6.4.1 used
so audrey suggested i upgrade
zgh yeah easier said than done with dports. I keep hoping the popularity of the new macs will bring it out of the ghetto. 00:14
the main erason I sue it instead of fink is for +aqua variants
s/sue/use/
svnbot6 r12285 | fglock++ | v6 - fixed 'self' 00:22
r12285 | fglock++ | Pugs-Runtime-Value - 4 tests pass
TreyHarris huh, is ghc in fink? 00:23
i have that too
zgh probably it isn't
i meant in general
00:24 cjeris left, nekokak joined
TreyHarris info paste 00:25
00:34 dduncan joined 00:36 weinig_ joined
dduncan seen cmarcelo 00:38
jabbot dduncan: cmarcelo was seen 8 hours 28 minutes 30 seconds ago
dduncan the build process broke for me again since that commit I made yesterday which fixed it ... 00:39
I now get this again: /usr/bin/ld: table of contents for archive: third-party/installed/libJudy.a is out of date; rerun ranlib(1) (can't load from it)
so if it didn't actually *break* the build for anyone, I'm going to re-apply my change to build_pugs.pl 00:40
svnbot6 r12286 | Sage++ | The translator test is now much smarter, and works better with a compiled version of the translator. 00:46
r12286 | Sage++ | Running the current test on windows has the translator failing on one file, and a handfull of UnknownNodes.
r12287 | Sage++ | Added a clean, so 'make clean' cleans. 00:52
dduncan recommit done 00:54
svnbot6 r12288 | Darren_Duncan++ | updated util/build_pugs.pl to move the 2 copy-src/obj/.libs/libJudy.a lines back inside a conditional, since leaving them outside always causes a Pugs build failure for me with '/usr/bin/ld: table of contents for archive: third-party/installed/libJudy.a is out of date; rerun ranlib(1) (can't load from it)' ... any suitable further fix must not result in that problem returning
dduncan so following that change, the Pugs build succeeds again and ./pugs executes 00:55
00:57 weinig joined
SageLT audreyt: I heard you might know a fix for getting ghc to compile code on a mac? I've gotten it to the point that ghci runs, but compiling with ghc brings up a dyld error about GML.framework... 01:03
*Intel mac, I should say.
01:20 trym joined 01:22 zgh left 01:39 cnhackTNT joined
diakopter SageLT: cvs.haskell.org/trac/ghc/wiki/X86OSXGhc 01:40
lambdabot Title: X86OSXGhc - GHC - Trac
01:41 xern joined 01:47 mdiep joined 01:54 xdg joined
svnbot6 r12289 | audreyt++ | * Makefile.PL: Observe that I often hesitate to "make unoptimized" 02:19
r12289 | audreyt++ | simply because "unoptimized" is hard to type. Make an alias
r12289 | audreyt++ | "make fast" to encourage its use.
02:32 traecer joined 02:33 justatheory joined
svnbot6 r12290 | fglock++ | v6 - fixed autoquoting in named param 02:34
TimToady I'm getting the /usr/bin/ld: cannot find -lJudy error. Is there a known fix? 02:42
already did realclean
TreyHarris TimToady: if you have scrollback, perhaps dduncan's last commit is relevant? 02:44
TimToady I'm up-to-date
TreyHarris i'm in ghc dependency hell, so i don't know if i have this issue or not yet :-) 02:45
TimToady well, I'm at 89
but I doubt 90 will fix it...
TreyHarris i'm still at 54 02:46
dduncan fyi, I am using Pugs in all of its default modes ... whatever plain 'Makefile.PL' and 'make' give you ... normal Haskell runcore ... Mac OS X 10.4.6 plus Perl 5.8.7 ... GHC 6.4.1 ... I don't edit anything Haskell or build system related, so I"m using things as they come from the distro 02:49
if people are getting different behaviour, then they may be doing something else ... but I like to think I have the simplest config possible, so it should just work here ... it isn't without my change, so there is a bigger issue
TreyHarris TimToady: earlier i asked if there was any draft syntax to support STM besides C<let> 02:51
dduncan for people where Pugs' build was just working when mine wasn't, I'd like to know how their setups are different ... if that would help in getting a better fix out
SamB TimToady: you got quoted in HWN as "Tim Toady" ;-)
TimToady HWN? 02:52
obra HWN?
TimToady Haskell With Newts? 02:53
by the way, blowing away third-party seems to have cleared the problem.
SamB Haskell Weekly News
TimToady My name is ferociously difficult to implement. 02:54
02:54 cmarcelo_ joined
TimToady I suppose it was my "Haskell is easy to learn..." quote. 02:54
cmarcelo_ dduncan: pong
TreyHarris yep
dduncan hello 02:55
TreyHarris you've done it several times
SamB apparantly it occurred to dons after publication that it might have been a pseudonym...
TimToady: yeah, that one
02:55 cmarcelo_ is now known as cmarcelo
TimToady ah well, at least I didn't call myself MarkTwain. 02:55
SamB I have informed dons of your correct identity, so hopefully if he gets any more amusing quotes from you he will remember it...
TimToady :) 02:56
TreyHarris TimToady: so is the STM syntax contend, as shown in examples/concurrency/stm-retry-with.pl? or is that just conjecture? and does 'let' have anything to do with STM?
cmarcelo dduncan: i move cp out because when "make clean" or something that nukes t-p/installed happens, libJudy.a never get copied because the check only recompile when src/obj/.libs/libJudy.a is down, and there are many situations that it isn't..
TimToady contend is the current "atomic". 02:57
cmarcelo I thought that make clean i added before make would force a recompilation and wouldn't cause problems for you, but it seems thats not the case..
TimToady 'til we think of something better.
but we did think a long time about it.
TreyHarris ok. let is orthogonal, or can let work within a contend?
dduncan well, that copying is causing the "out of date" error, so maybe the code somewhere that determines whether something is out of date or not needs to be fixed? 02:58
especially if Judy itself doesn't change much, it can't simply be declared out of date all the time ... that is an error
TimToady I don't think let is special to STM.
STM covers any in-memory transactions. 02:59
in theory...
dduncan also, I don't think a forced recompilation should be necessary if the source hasn't changed ... the code that determines if Judy code changed or not needs fixing, though I don't know how
that seems to be the root of the problem
good luck if you know how that stuff works 03:00
cmarcelo dduncan: indeed.. but when src/obj/.libs is lost, just "make" doesn't get it back if I remember correctly.. what if it copies only when there isn't files there (never overwrite)?
dduncan I think the determination of change is what needs addressing ... the other stuff seems to be to just be trying to work around when the determination is incorrect 03:01
TreyHarris i think i see. let could be used inside a contend, and then if there's a semantic failure but STM success, or a STM failure, the variable will be returned to it's original state 03:02
dduncan maybe the determination is based on some dir being deleted, in which case that needs to not happen
heck, the main parts of Pugs, the haskell stuff, knows better about when it has changed, the Judy should have those smarts too
but I don't know how to do that 03:03
cmarcelo dduncan: i'll look into it.. just for check, doing the cp's without overwriting won't break you, right? 03:05
dduncan I don't know ... what exactly do you suggest I change to test?
presumably, if the code didn't change, overwriting with another copy of the same won't break 03:06
PerlJam dduncan: Interesting use of "eternal" in the ===, eqv discussion :)
dduncan well, "eternal" meaning for the life of the program
03:06 kanru joined
dduncan 's execution 03:07
yes, I thought the issues were made clear in recent synopsis updates, but apparently some people didn't understand something
PerlJam dduncan: I imagine that some people still don't understand. 03:08
cmarcelo dduncan: i'm confused, your build broke because of copying the same libJudy.a? that's why you needed the change? (I think the ld error maybe related to file timestamps)..
dduncan PerlJam, I don't really see how the synopsis can be further improved ... they seem to explain it well now
at least if you know where in them to look 03:09
audreyt TimToady: the List->Array promotion magick. does it happen as part of Scalar's assignment interface, or at somewhere deeper?
$scalar = (1,2,3); # promotion: [1,2,3]
dduncan cmarcelo, I don't know a lot about the build system ... all I know is that making the change I did caused Pugs to build
audreyt sub f ($scalar) { ... }; f (1,2,3); # promotion still happens? 03:10
I guess not, as it's not assignment, right?
03:11 cnhackTNT joined, weinig is now known as weinig|zzz
cmarcelo dduncan: ok. 03:12
dduncan thank you for anything you can figure out
PerlJam audreyt: That seems an arbitrary rule from where I sit. I hope that's not the case. 03:14
TimToady audreyt: I guess.
cmarcelo dduncan: np.. the important is get this build process working so people can forget about it and go back to "hack hack hack".. =)
TimToady I don't have a good feel for when the current mechanism will violate user's expectations. 03:15
audreyt PerlJam: arbitrary rule, yes. but
dduncan cmarcelo, you've hit the nail on the head 03:16
all I want to do is write Perl 6, and hopefully everything else will just stay out of the way
audreyt $x = sort $fh.readline; $x.push(4)
$x = 1..100; $x.push(101)
dduncan so simplicity in the build system for people not working on the build system is important 03:17
audreyt is the use case. alternative is to force people write [...]. but autopromotion like vivification is dwimmier
dduncan that is, implicity in the build system for people not making the Perl 6 interpreter itself is important 03:18
simplicity
03:28 perlbot joined 03:31 perlbot joined 03:33 nirgle joined 03:34 agentzh joined
agentzh TimToady++ # JIT syn fixes 03:34
TimToady thanks 03:35
agentzh audreyt++ # JIT implementation fixes
TimToady: :)
TimToady I looked at several hundred words before picking START.
agentzh lunch &
03:57 mdiep joined 04:04 pjcj joined
TreyHarris oh, dear. upgrading my ghc from darwinports broke it horribly, and trying to go back is failing too :-( 04:11
anybody have any suggestions for where i might find some help? the #macports channel is silent 04:12
nirgle been quiet in here tonight as well 04:13
TreyHarris this is not good. i'm giving a talk to my company about how perl 6 is almost here, with a promise of running code. "sorry, no demos, i couldn't get the haskell compiler to compile" is not going to go over well. :-) 04:14
i guess i can use my ancient 6.2.12 release pugs. but i'll have to rework my examples so they don't use anything fixed/changed since mid-june 04:16
wolverian can't use ssh to another box? 04:17
04:17 weinig|zzz is now known as weinig
TreyHarris wolverian: i suppose i could. i haven't built ghc or pugs anywhere else either though, it'll all been on my laptop 04:18
but maybe it'll build on another OS, good point
wolverian there's probably a recent pugs on feather somewhere
locate reports 14 bin/pugs files :) 04:19
...building it yourself doesn't take too long, either
TreyHarris well, for my presentation it'll have to be somewhere inside the company firewall 04:20
wolverian ah. well, then. time to expand the firewall.
TreyHarris oh, yeah, i've built it many times. i'm just getting no love from ghc tonight
wolverian well, I could talk about the package systems on osx 04:21
but I'm already feeling grumpy
time to go get some breakfast, cheers :)
TreyHarris thanks, take care 04:22
04:22 Bit-Man joined
audreyt TreyHarris: OSX Intel or ppc? 04:30
04:30 weinig is now known as weinig|zzz
audreyt if osx intel, I can probably cut you a bindist 04:30
TreyHarris audreyt: ppc, unfortunately :-( 04:32
Khisanth find a mac user in #haskell? 04:33
TreyHarris and ghc 6.4.2 required libreadline 5.1, so i upgraded that. but now that it won't build, 6.4.1 won't build either because it's wanting libreadline 5.0. and symlinking didn't work, apparently they're not binary-compatible 04:34
dduncan TreyHarris, I use Mac OS X 10.4 PPC, and GHC 6.4.1 binary package works fine 04:35
TreyHarris dduncan: oh, cool, where do i get it?
dduncan also, Pugs builds despite my lack of libreadline ... that's optional to its use
let me look ...
TreyHarris well, i really want libreadline if i'm going to be demoing in front of a live audience :-)
dduncan may be through www.haskell.org/ghc/ but I have to check 04:36
lambdabot Title: The Glasgow Haskell Compiler
audreyt TreyHarris: www.haskell.org/ghc/dist/6.4.1/MacO....1.pkg.zip 04:37
dduncan go to www.haskell.org/ghc/download_ghc_641.html#macosx
lambdabot Title: GHC: Download version 6.4.1
dduncan then the .pkg option
there's no 6.4.2 binary for OS X yet, but I'll try it out when it comes to be 04:38
this should install easily
svnbot6 r12291 | cmarcelo++ | * Fix to make unix build work after "make clean" or rm'ing third-party/installed.
dduncan any questions?
TreyHarris dduncan: it still wants libreadline5.0. :-(
dduncan but it will install anyway 04:39
TreyHarris it won't even start
sure, it did
but it won't run
even ghc --help fails on that
dduncan it won't run how?
TreyHarris i'll paste
cmarcelo dduncan: if is not much trouble, could you check if r12291 breaks you? (if you can't that's ok)
dduncan you installed the package, right?
then just run the Pugs Makefile.PL and you're set to go
I never run GHC directly 04:40
TreyHarris dyld: Library not loaded: /usr/local/lib/libreadline.5.0.dylib
dduncan: oh, ok... that's odd
dduncan Pugs Makefile.PL will test for libreadline's presence and skip using that feature if not
TreyHarris but i'll take your word for it, i'll try to build pugs
ok
dduncan cmarcelo, will try now ...
first, I'm trying the simplest case ... did pull, now simply running 'make' 04:41
audreyt TreyHarris: you sure it's the correct ghc in path?
dduncan if that fails, I'll rerun the Makefile.PL explicitly 04:42
or I'll do that too, anyway
running 'make' produced a Pugs binary ... the process also seems less verbose?
Pugs says: Version: 6.2.12 (r12291) 04:43
now trying a Makefile run ...
cmarcelo, nothing broke in either test, so congradulations 04:46
I haven't tried a make clean yet, but things don't at least suddenly break after an update from a non-breaking situation
for thoroughness, I will now try remaking from a wiped checkout dir ... will take about an hour 04:47
cmarcelo dduncan: thanks for testing.. 04:49
dduncan you're welcome ... and it helps all of us
reversion done ... about to Makefile ... 04:50
fyi, this "cleanest" process I'm trying is to remove everything from the checkout dir, save my config.yaml and .smoke file, then svk revert -R . 04:51
no make realclean will make it that clean
on an unrelated matter, my Makefile.PL has been reporting: Could not find module `Data.ByteString' for awhile now, but Pugs still works 04:54
is that a problem?
will that library become mandatory later?
Makefile.pl done, now 'make' has started ...
cmarcelo dduncan: Data.ByteString is in fps (for ghc 6.4.x) and in GHC 6.5 base libraries... I think the msg happens when checking if fps is already installed.. 04:55
dduncan so its just a separate thing for people running 6.4.x 04:56
audreyt that's just probing... would be nice to suppress it somehow 04:57
dduncan presumably, at such time that Pugs uses 6.6.x as its minimum GHC, this check will go away
audreyt yes.
once 6.6.0 bindist is out for win32 and osx and preferably debian
the current kluge-ridden build_pugs can go away as well :)
dduncan yes
audreyt currently we work around three mutually incompatible Cabal versions ;)
04:58 agentzh joined
dduncan is Cabal another way of saying GHC version? 04:58
audreyt no... Cabal to GHC is what Module::Build is to Perl5
dduncan okay
audreyt (or MakeMaker, if you will)
agentzh audreyt: pugs build is still failing on my machine... 04:59
dduncan incidentally, Perl 5.9.4 is on CPAN today ... NICE
probably a 5.8.9 not far behind
audreyt agentzh: nopaste the error again? I lost context
agentzh i'm pasting... 05:00
pasteling "agentzh" at 210.22.200.67 pasted "Today's pugs build failure on win32" (161 lines, 6.9K) at sial.org/pbot/19032
dduncan Pugs prereqs finished building, now the Pugs Haskell files themselves are ... 05:01
biab &
audreyt agentzh: this is very weird... 05:03
agentzh audreyt: oh no...
audreyt: i'll revert to earlier revisions and try again. 05:05
audreyt agentzh: wait
agentzh k
audreyt agentzh: comment out line 152 in build_pug 05:06
the "next;" line
(or maybe not 152, in vicinity)
agentzh k
audreyt to force rebuilding of fps, and see if that helps
agentzh trying... 05:07
it didn't help. now "realclean"... 05:08
dduncan another question, is this warning a known issue:
Compiling Pugs.Internals ( src/Pugs/Internals.hs, dist/build/src/Pugs/Internals.o ) /tmp/ghc18692.hc: In function 's13ka_entry': /tmp/ghc18692.hc:4866: warning: implicit declaration of function 'JudyLIns' 05:09
its been present for some time
(I mentioned it before, but no one said anything then)
agentzh audreyt: can you reproduce the same error on your win32 system?
audreyt: still the same outputs... 05:10
cmarcelo dduncan: i'm looking on that..
dduncan okay
cmarcelo agentzh: try "./Setup.hs clean" inside thjrd-party/HsJudy 05:11
agentzh cmarcelo: okay
audreyt agentzh: no I cannot...
agentzh is lost.
audreyt let me think
that error message means that it's using either an outdated version of fps 05:13
or the fps is dummified
probably the latter
can you look at third-party/fps/fps.cabal
agentzh looking
audreyt I mean pugs-fps.cabal 05:14
and see if it contains the word "Dummy"?
agentzh no
i removed third-part completely and then revert from svn. but it still produced the same error. 05:15
maybe i should removed the whole pugs tree and checkout from svn from scratch? 05:16
or should i reinstall GHC or something else?
svnbot6 r12292 | audreyt++ | * explicit import of ByteString functions in HsSyc o try to debug for agentzh++'s buildfail 05:17
agentzh up'ing
audreyt still skip the "next" line in build_pugs 05:18
and nopaste the whole buildlog
agentzh from perl Makefile.PL?
audreyt from perl Makefile.PL and make, yes 05:19
agentzh ACK
that will be very very long... :) 05:20
done, now pasting... 05:21
pasteling "agentzh" at 210.22.200.67 pasted "perl Makefile.PL && nmake" (537 lines, 28.2K) at sial.org/pbot/19034 05:22
audreyt Building pugs-fps-0.7... 05:23
Setup.exe: \gcc-lib\ld.exe: runProcess: does not exist (No such file or directory)
that is the bug 05:24
curiously I've seen that before
agentzh oh?
Limbic_Region has ever encountered that error message.
(IIRC) 05:25
audreyt yes.
the bug is
$new_runcompiler = File::Spec->catfile($1, "runcompiler$Config{_exe}");
it used to work but after your
$ghc_inst_path =~ s{[/\\]bin[/\\]?$}{};
$1 gets reset
so you can't use $1 anymore 05:26
agentzh oh, my mistake...
audreyt why did you strip /bin/ anyway?
agentzh agentzh--
audreyt: because gcc.exe is in ../
i mean bin/../
audreyt ah ok.
fixed 05:27
committing
agentzh audreyt++ audreyt++
audreyt: sorry for taking you so much time... 05:28
up'ing
audreyt r12293 05:29
svnbot6 r12293 | audreyt++ | * build_pugs reorganization to fix the $1 bug agentzh++ introduced,
r12293 | audreyt++ | and also improve support for "make profiled".
agentzh audreyt: it works! 05:30
cmarcelo audreyt: any idea why if I add "includes: Judy.h" in HsJudy.cabal, when compiling (after the deps) Pugs it needs that file too? and, in a static compilation scenario, libHSHsJudy*.a should include *.o files it uses from libJudy.a? -- if that's true, that's not happening... 05:31
audreyt cmarcelo: re#1: it's added as part of judy's lib requirements, so you can't do that 05:32
need to {-# INCLUDE #-} in the shource file itself
static compilation scenario: no, I don't think cabal does that for you; currently we manually run ar"
agentzh: yay :) 05:33
cmarcelo audreyt: makes sense merging libJudy.a into libHSHsJudy*.a ? 05:34
05:35 mdiep joined
agentzh does a happy dance. 05:35
05:35 Sarta2 joined 05:36 Sarta2 is now known as Eidolos
audreyt cmarcelo: I'd say so, then you can lose the -lJudy line too 05:36
in .cabal
yay for "make profiled" working again. I'm no longer blindly optimizing :) 05:38
agentzh audreyt, cmarcelo: should i add '-O3' option to judy's compilation? maybe it can be even faster. :) 05:41
audreyt++ # nmake fast
audreyt agentzh: I doubt it will help, but you can try on your machine first :) 05:42
agentzh k 05:43
audreyt (also my next perf patch is progressing well and will land in a bit)
dduncan cmarcelo, following the cleanest possible build, the build still works the first time through ... 05:51
audreyt yay 05:52
dduncan and then just hitting 'make' again after that doesn't wreck it:
Version: 6.2.12 (r12291)
so for now, we're in the clear
assuming your solution works for everyone else too
now trying r12293, as that changed the build system again ... 05:54
but just the quick way 05:55
agentzh adreyt: indeed you are right, -O3 doesn't lead to detectable performance improvement.
*audreyt
agentzh goes back to hack on tests. 05:59
svnbot6 r12294 | agentz++ | [third-party/judy/Judy-1.0.3/src/hs_build.bat]
r12294 | agentz++ | cleaned up the echo outputs further.
06:02 runrig joined
agentzh audreyt: this is just FYI, tests in sial.org/pbot/19009 still fail to parse after your fix. 06:02
lambdabot Title: Paste #19009 from "agentzh" at 210.22.200.67
TimToady that last "next" should be a "last", by the way. 06:05
agentzh TimToady: thanks. already fixed in my local do.t. :) 06:06
agentzh thinks #perl6 needs at least 3 audreyts. 06:08
runrig I'm trying to build pugs on Win32, there's a bug in util/build_pugs.pl when it tries to munge $runcompile
(munges on WIn32 only) 06:09
agentzh runrig: oh?
are you at the latest rev?
runrig I just checked it out ~30 minutes ago
agentzh audreyt has just fixed a bug in build_pugs.pl introduced earlier by me. :)
are you at r12293? 06:10
runrig I'll try update
Now I am. man you guys move fast :) 06:12
agentzh :) 06:13
runrig Now it fails after a few "Setup.exe: error reading ./.setup-config; run "setup configure" command?" 06:16
Trying to build HsSyck 06:17
agentzh runrig: try nmake realclean first? 06:20
and then "perl Makefile.PL" and "nmake fast" 06:21
svnbot6 r12295 | agentz++ | [t/statements/do.t]
r12295 | agentz++ | added many more tests according to S04.
r12295 | agentz++ | (please fix the parsefail for me)
agentzh runrig: if it still fails, please nopaste the outputs via sial.org/pbot/. 06:23
runrig ok
06:23 pdcawley joined
pasteling "runrig" at 72.194.107.46 pasted "Build on Win32" (263 lines, 11.7K) at sial.org/pbot/19037 06:29
agentzh runrig: which version of GHC are you using? 06:32
svnbot6 r12296 | agentz++ | [t/syntax/hyper_latin1.t]
r12296 | agentz++ | used the \d... notation instead of the illegal \digits.
runrig 6.4.2 06:33
06:33 crem_ joined, mjk joined
agentzh hmm, the error is at "C:\pugs-svn-src\gcc-lib\ld.exe" 06:34
runrig what is runProcess ? 06:35
agentzh the system call. 06:36
it doesn't happen on my machine.
audreyt: ping
runrig: sorry, i can't fix it. please ask audreyt or other folks who are familiar with the pugs build system. 06:39
runrig Where is runProcess supposed to exist at? 06:40
agentzh runrig: anyway, you can cheat.
runrig: how about copy ld.exe from the GHC directory to C:\pugs-svn-src\gcc-lib\? 06:41
*copying
runrig what version ghc do you have? 06:42
agentzh copy c:\ghc\ghc-6.4.2\bin\ld.exe C:\pugs-svn-src\gcc-lib\
runrig: the same as yours.
6.4.2
mkdir C:\pugs-svn-src\gcc-lib in case it doesn't exist. 06:43
runrig: please copy ld.exe from C:\ghc\ghc-6.4.2\bin to C:\pugs-svn-src\gcc-lib\ to see if it works. 06:44
runrig ok 06:46
I'm making realclean again
agentzh runrig: don't need to. :) 06:47
"nmake fast" directly will be sufficient. :) 06:48
runrig too late...and I forgot to nmake "fast"...just nmake
agentzh stop it.
runrig I'll get it right eventually :)
agentzh with Ctrl-C.
nmake took too much time. 06:49
nmake fast++
runrig hey, it's getting farther :) 06:51
agentzh what error did you get this time? 06:52
(if any)
runrig c:/ghc/ghc-6.4.2/include/HsBase.h: In function `__hscore_d_name': 06:53
c:/ghc/ghc-6.4.2/include/HsBase.h:508: error: dereferencing pointer to incomplet
e type
Build failed: 256 at util\build_pugs.pl line 238.
agentzh weird. 06:54
06:54 kanru joined
agentzh runrig: paste the whole output to the paster? 06:54
runrig: are you still around? 06:58
svnbot6 r12297 | agentz++ | build_pugs.pl: added debug outputs for Win32. 07:00
07:00 Corion joined, Corion left
agentzh runrig: please update to r12297 and then paste your outputs of "nmake fast". 07:00
runrig Yes. I'm getting it
agentzh runrig: btw, you're on winxp or win2000> 07:01
?
runrig xp
agentzh ah 07:02
svnbot6 r12298 | agentz++ | build_pugs.pl - more debug outputs specific to win32. 07:06
07:09 JarJarBinks joined
agentzh runrig: i'll try to reproduce your error on my machine. 07:11
runrig: i'm amazed to see my pugs build also fails after a realclean now. 07:13
runrig Do you still want the nmake output? 07:14
agentzh yeah
my outputs are different from yours. 07:15
07:17 elmex joined 07:18 tup joined
agentzh thinks the GHC cabal is a source of pain. 07:19
07:19 pdcawley joined
pasteling "runrig" at 72.194.107.46 pasted "Pugs build on Win32" (303 lines, 20.7K) at sial.org/pbot/19038 07:20
agentzh looking
runrig Is that line near the top suspicious: "c:\ghc\ghc-6.4.2\gcc-lib\ld.exe: cannot find -libpath:C:\Perl\lib\CORE" 07:22
there is a c:\perl\lib\CORE dir
audreyt my fault. fixed: 07:23
runrig or is that for embedded perl5 which doesn't work on win32 anyway? 07:24
audreyt right
but with vanilla perl, we have a chance to succeed embperl5 on win32 actually
since both were built with mingw
agentzh yay, audreyt is back! 07:25
audreyt or strawberry perl
r12299 should unbreak it
agentzh up'ing
svnbot6 r12299 | audreyt++ | * unbreak win32 build... sorry about this tangled mess :/
runrig ok, here we go again 07:26
agentzh nice, i'm at Pugs.Val now. 07:28
runrig If I want to learn Haskell while I play w/pugs, any recommendations which hs files should I look into first?
. o O (If i get to the play w/pugs stage :) 07:29
as opposed to the "building pugs" stage :)
agentzh ever tried to learn Haskell but finally gave up.
cmarcelo agentzh: what made you give up? 07:31
audreyt runrig: READTHEM
agentzh cmarcelo: i found that i could only write trivial programs in haskell.
cmarcelo: when i wanted to write something big in haskell, my head ached. 07:33
audreyt the initial unlearning is especially hard :) 07:34
agentzh it's a very different language compared to perl/c/c++/java/pascal/ruby/python/etc...
cmarcelo agentzh: I thought the problem was IO/Monad thing... recently there are *very nice* tutorials out there coming up about Monads and I/O.
agentzh cmarcelo: oh?
cmarcelo agentzh: lots of people give up when it's time to understand that monadic I/O stuff.. don't know if you got there.. 07:35
runrig I get the same "dereferencing pointer" error in HsBase.h
agentzh cmarcelo: yes, i've got there.
agentzh has already built pugs. 07:36
dolmans Could not find module `Judy.IntMap': building still end with this. 07:37
agentzh dolmans: are you also on win32?
dolmans yes
agentzh oh, dear...
dolmans what
agentzh win32 nightmare...
dolmans :)
agentzh it seems only *I* can successfully build pugs on win32 now. 07:38
realclean?
dolmans try now
agentzh have you run "nmake realclean" before "nmake fast" or such?
k 07:39
audreyt runrig: nopaste the build log again?
agentzh: I wonder if your setup is cygwin specific somehow 07:40
agentzh audreyt: it's likely.
audreyt: some cygwin tools are in my path.
so my win32 is not pure...
agentzh feels proud. 07:41
audreyt ok... I'll take a look after I finish this coding run
xinming audreyt: hmm, .method, will the return value store int $_ by default? 07:42
agentzh dolmans: please also make sure you're at the latest revision. 07:43
xinming hmm, what I mean is, should $_.method update the $_ with the value return by method.
agentzh xinming: .method === $_.method
xinming agentzh: I know this
07:44 iblechbot joined
agentzh xinming: only if the .method itself is a inplace call. 07:44
*an
xinming a bit hard to understand, Ok, try this...
?eval $_ = "abc"; .perl; .perl; .perl;
07:44 evalbot_23471 is now known as evalbot_23506
evalbot_23506 Error: Can't modify constant item: VStr "perl6" 07:44
xinming hmm... 07:45
audreyt ?eval $_ = "abc"
evalbot_23506 Error: Can't modify constant item: VStr "perl6"
audreyt oy. very broken.
agentzh heh, it's a pugs bug.
xinming ?eval temp $_ = "abc"; .perl; .perl; .perl;
audreyt it's evalbot bug :)
evalbot_23506 Error: Can't modify constant item: VStr "perl6"
audreyt ?eval my $_ = "abc"; .perl
evalbot_23506 "\\\"abc\""
audreyt ?eval my $_ = "abc"; .perl; .perl; .perl;
xinming audreyt: You can try that in interactive shell.
evalbot_23506 "\\\"abc\""
audreyt ?eval my $_ = "abc"; .=perl; .=perl; .=perl; 07:46
evalbot_23506 Error: unexpected "=" expecting ".", subroutine name, array subscript, hash subscript or code subscript
audreyt I wonder if ".=perl" should work.
.=chomp;
agentzh heh
audreyt TimToady: .=chomp? :) 07:47
xinming ?eval if 1 { "perl" } .perl; .perl; .perl;
evalbot_23506 "\\\"perl6\""
xinming ouch...
audreyt: please test that in interactive shell. It will update the $_ value..
the value in $_ would be updated every time you call .perl 07:48
audreyt xinming: interactive shell uses $_ to remember the value of the last expression 07:49
svnbot6 r12300 | audreyt++ | * evalbot: try to make $_ empty
audreyt that... may be construed as a bug
though it was designed as a feature
xinming audreyt: Oh, Ok, thanks. :-) 07:50
audreyt you think it's a bad idea?
audreyt is not sure
xinming audreyt: yes, because, when someone test expression in pugs, he would thought, all return value would default stored in $_ no matter what method is called. :-) 07:51
07:51 pdcawley joined
agentzh finds many typos in xinming's message. 07:51
xinming agentzh: sorry for my poor English. :-P 07:52
agentzh xinming: s/would thought/would think/
xinming would thought -> would think. all return value would ---> all return values would be :-)
dolmans rept. successful building on Win32.
xinming Chinese English ... :-) 07:53
agentzh dolmans: congrats!
xinming: :)
dolmans yay.
agentzh chglish is cool!
*chenglish 07:54
xinming I didn't think much when I was typing for a long time. I know I'm doing much better when I left senior school. :-/
agentzh xinming: i have been typing slowly since i'm also in fear of typos.
xinming s q{'m}{ was}
TimToady audreyt: I wonder if proto foo($self: ...) always defers to SMD immediately. 07:55
audreyt TimToady: aka "extension methods"
but we sill need to populate the namespace with &foo
TimToady proto push(%array: ...)
pasteling "runrig" at 72.194.107.46 pasted "Another Win32 pugs build" (302 lines, 20.5K) at sial.org/pbot/19039 07:56
audreyt so there will still be the notion of builtin (i.e. exported as proto) and non
and module authors that desires a procedural interfaces
will then need to write those proto is export
or maybe (this is getting slightly scray) "method foo (...) is export" generates that?
TimToady maybe. 07:57
audreyt I like the latter one
cleaner than proto, easier to explain (at least for builtin libraries)
TimToady well, but someone still has to import them to *
audreyt "if you export a method then it behves as a function"
sure, that's the job of the prelude 07:58
S29's idea is already that GLOBAL.pm is essentially a set of import statements...
TimToady seems notationally convenient.
S29-wise.
audreyt and conceptually not two entities
(which is what I'm uncomfortable with)
TimToady basically you're exporting a macro that rewrites foo(a,b) to foo(a:b) 07:59
audreyt aye.
TimToady seems livable, and suppressable. I think I like it. 08:00
audreyt unless we export a multi that keys on Array.
but the latter is very hard to suppress.
(and harder to explain)
so yay. :) likeable++
TimToady suppress the macro and then write your own proto.
audreyt importing a macro is just like inporting a function, so you can suppress it with normal import protocol 08:01
TimToady if you reall want that.
audreyt which is nice
TimToady *really
anything else major I'm supposed to be thinking about?
audreyt .=foo is not major :) 08:02
nothing other than mmd-draft.txt, I think
TimToady ok, in that case I'll zzz.
08:02 dakkar joined
audreyt good night and thanks! :) 08:03
TimToady likewise &
agentzh thinks TimToady has been well past his bedtime.
runrig still wonders what's wrong w/his build...
runrig is up past zzz-time also
agentzh runrig: realclean didn't help?
runrig I checked out a whole brand-new directory :) 08:04
agentzh wow.
dolmans realclean helped me indeed.
agentzh dolmans++
dolmans: do you have cygwin installed?
dolmans no, but i have MinGW, really some tools from GNUWin32. 08:05
runrig The error I get seems like an error in a ghc haskell include file
agentzh okay
runrig: maybe reinstall your GHC?
runrig I had MinGW but uninstalled it earlier... 08:06
agentzh runrig: i don't MinGW is required here.
*think
plain win32 should work.
dolmans install MinGW or Cygwin is handy if you play with open source.
agentzh indeed!
runrig I usually use UnxUtils (I have that at work)
dolmans UnxUtils? i think it is old fashioned. 08:07
runrig Aye, I like Unix, but I got this Win box for free :)
cmarcelo audreyt: between u/build_pugs builds the deps and build pugs, i added a little hack to "ar r" judy files in installed/libHSHsJudy.. is it ok to "patch" only the installed one? with this there's no more -lJudy in HsJudy neither Pugs, so less trouble in building.. 08:08
08:10 traecer left
audreyt cmarcelo: sure! 08:11
08:11 kane-xs joined
agentzh audreyt: please help runrig. only he can't build pugs on win32 now. :) 08:14
audreyt runrig: I think you have cygwin and/or unxutils header in PATH 08:15
TreyHarris audreyt: so i'm finished with my dependency hell, and i've gotten the binary build dduncan++ pointed me at to build and run, but configure's still saying readline support disabled. i've verified that libreadline is installed. any ideas? 08:18
dduncan greetings 08:19
TreyHarris s:2nd/build/build things/
dduncan does it matter?
try running Pugs ... does it not do something you need?
08:19 ruoso joined
audreyt TreyHarris: yes. your readline is apple's fake readline 08:20
TreyHarris i'm demoing in front of a live audience. if i have to retype every line every time... wait, are you saying i can hit up-arrow even without readline?
audreyt check /usr/include/readline.h to see if it says "editline"
TreyHarris audreyt: oh? i used fink to install it, so i figured it would be gnu readline
dduncan fink puts things in special places ...
audreyt yeah. problem is whether fink's include path is earlier than /usr/include
dduncan they may not be visible to other programs installed the "normal" way 08:21
audreyt also, I think even in non-readline mode, up arrow may work. I'm not very sure
TreyHarris it did on the build i had yesterday
dduncan I'll try it myself ...
TreyHarris but now everything's broken :-(
dduncan hitting up/down-arrow in pugs just spouts gibberish 08:22
for me, lacking the full readline
audreyt TreyHarris: you need to put readline in /usr/local/lib/
but you can fix that 08:23
install_name_tool -change /usr/local/lib/libreadline.5.0.dylib \ /some/new/path/libreadline.5.0.dylib \ ghc-6.4.1/lib/powerpc-apple-darwin/ghc-6.4.1
dduncan however, if you don't want to retype everything, the Terminal application handles the Mac OS X pastebuffer just fine
TreyHarris audreyt: in /usr/local/lib i have libreadline.5.1.dylib and libreadline.a
08:23 gaal joined
audreyt it wants 5.0.dylib 08:23
not sure if ln will work
dduncan eg, have a text editor window open with all your code, and just copy and paste each example into Pugs
TreyHarris ohh, that must be my problem
dduncan hitting Paste on a terminal will be just like you typed it in whereever the cursor is
the Terminal also does drag'n'drop just fine ... 08:24
also acting like you typed it in
fyi
of course, if you like readline and can get it to work, more power to you 08:25
TreyHarris dduncan: thank you. i'm aware of all that. but dealing with a presentation and one full-screen-sized terminal is enough for me to juggle while on camera, i've already rehearsed using commandline editing, because until today, pugs had that feature for me :-)
dduncan fair enough
TreyHarris i know for certain that if i don't have readline, i'm going to hit the arrow keys and spew garbage in front of everyone :-)
even if i tape a sticky note to the podium saying, "don't hit the arrow keys!" :-) 08:26
dduncan so what's happening? ... are you proposing your organization starts coding their stuff in Perl 6 now? 08:27
and you're demoing that it's ready?
TreyHarris no
it's my turn to do a tech talk, and since i'm always going on about "well, in perl 6 you'll be able to..." on our internal perl lists, they asked me to give a talk on it already 08:28
audreyt TreyHarris: I'm pretty sure if 5.0.dylib is there it'd work :)
TreyHarris audreyt: what should /some/new/path/libreadline.5.0.dylib be? 08:29
dduncan sounds good 08:30
btw, in the near future, if installing libreadline is easy, I'll try doing it myself ... I had skipped that before for simplicity 08:31
TreyHarris ahh, it's in /sw/lib/libreadline.*
but symlinking it to /usr/local/bin does not seem to have made things happy
this is very interesting, though. the saved pugs 6.2.12 (r10874) that i have, if i run otool -L on it, reports back /usr/local/lib/libreadline.5.1.dylib 08:33
which is the one i have
so it's just refusing to build a new one now :-)
audreyt so don't symlink :) 08:34
TreyHarris audreyt: oh, no, i undid that
audreyt ok 08:35
TreyHarris but configure says i don't have readline
but i do
audreyt does /some/new/path/ fix that?
i.e. with the relocation line
TreyHarris ohh... you literally mean to use the string "/some/new/path/"? i thought you were using that as a placeholder
audreyt nono
that was a placeholder
but you really need to point it to a 5.0.dylib
not a 5.1.dylib
I think
TreyHarris but all i have right now (in /usr/local, not counting what fink has installed in /sw and ports has installed in /opt/local) is 5.1. and that's what otool shows my running pugs (which does editing just fine) using 08:36
audreyt yes because you used a later GHC (6.4.2?) 08:38
TreyHarris the obvious next step (blowing away the 5.1 and trying to replace it with 5.0) could leave both my old and my new pugs builds without readline support :-)
audreyt which links against 5.1.dylib
don't blow anything away
just put a 5.0.dylib
TreyHarris right... but GHC refused to rebuild today
but i couldn't go back to the old 6.4.2. so i had to use the binary build dduncan++ pointed me at, which is 6.4.1
audreyt TreyHarris: hand install with ftp://ftp.gnu.org/pub/gnu/readline/readline-5.0.tar.gz 08:39
TreyHarris the moral of the story is, if you can live with what you have, leave well enough alone. :-)
audreyt is perhaps easiest.
TreyHarris audreyt: best idea yet :-) 08:40
audreyt++
that's funny, i just threw that FTP URL to the mac and expected it to open Firefox. it gave the URL to the Finder. which is now downloading it. bizarre. 08:41
cmarcelo audreyt: ghc INCLUDE pragma must be in every file that uses imported funcs? 08:50
TreyHarris hmm. i know i've seen this before. make gives "Makefile:302: *** multiple target patterns. Stop."
audreyt cmarcelo: yeah :/
TreyHarris: on making readline 5.0?
TreyHarris audreyt: correct
all i did was "./configure; make" 08:51
audreyt are you perhaps not using gnu make?
TreyHarris i tried "./configure; gnumake" too
runrig Yeah, I think it's compiling now 08:55
audreyt well there's prebuilt one with pythonmac.org/packages/readline-5.0...sx10.3.zip
runrig found the answer in google groups...unset PUGS_EMBED on Win32 08:56
audreyt oh. you tried to embed perl5? 08:57
runrig Yes, I stupidly set it to "perl5 parrot" at first and forgot about it. I didn't think it should matter though 08:58
pasteling "TreyHarris" at 207.171.180.101 pasted "ghc apparently has its *own* readline" (15 lines, 1.4K) at sial.org/pbot/19040
TreyHarris audreyt: oh, so i just noticed this. ghc has its own readline. so this really should work 08:59
audreyt libHSreadline_dyn is a binding 09:00
it still wants external readline.
TreyHarris no, i'm talking about /usr/local/lib/ghc-6.4.1/libreadline.5.0.dylib
the second line of output in that paste
runrig It's "done". and I'm done for tonight. g'nite. 09:01
09:02 runrig left
agentzh is rewriting util/catalog_tests from scratch, which will support both the new magic links and the old ones. 09:05
TreyHarris audreyt: fyi, that mpkg only contains a readline.so
agentzh supper & 09:06
09:06 agentzh left
TreyHarris wow, 12 hours to build today's pugs so far. and not a moment of it spent on actually building pugs. :-) 09:07
i will never, ever, *ever* run "port upgrade installed" again :-) 09:08
cmarcelo dduncan agentzh et al: I have a new patch for u/build_pugs.pl that may help a little bit the linking situation, it uses "ar" to get all .o files of Judy into installed HsJudy*.a file, so Pugs doesn't need to link to Judy (-lJudy won't exist). Also it fixed partially the warnings that were happening. Could one of you that already have a win32 build working help me testing this patch? 09:09
audreyt TreyHarris: try 09:11
perlcabal.org/~audreyt/tmp/libreadline.5.0.dylib
dduncan I don't use win32 at all
audreyt and put them into /usr/local/lib/
(it's ppc tiger.) 09:12
(surprisingly I had an old G4 laying around.)
cmarcelo dduncan: sorry, mistakenly put your name there =o), but it's solving the warning problem you reported also (at least in part).. 09:13
dduncan I'll see what happens ...
TreyHarris audreyt: thanks. running pugs configure again... 09:16
09:19 Samhain joined
cmarcelo audreyt: do you have an easy access win32 "near" you with pugs building proc working? can help me here? 09:19
TreyHarris audreyt: there's nothing i have to run to register the dylib? just put it into /usr/local/lib? 09:21
audreyt TreyHarris: I think so. 09:24
cmarcelo: I can boot parallels
give me another 30 mins?
cmarcelo sure! ping me when ready... 09:26
dduncan cmarcello, I didn't see any new commits since we talked
TreyHarris huh. well, i put it in, reinstalled the GHC binary package, make clean, configure. still "Readline support disabled. If you want readline support, please install the GNU readline library." sigh. oh well, guess i'll give up for today. maybe i'll email the local haskell users group and see if anybody can help me
dduncan as for r12300, which I built some time ago, it built without errors 09:27
TreyHarris thanks for your help, audreyt++
dduncan maybe that's what you meant
audreyt TreyHarris: sigh. sorry about that :/
TreyHarris: I still think it might have picked up the wrong dylib.
i.e. the one in /usr/lib/* or /usr/include/readline/* or something 09:28
TreyHarris: hey, maybe I can send you a ppc binary pugs :)
but in any case... try build without readline and see if that works.
cmarcelo dduncan: i'm kind of afraid of committing right now and breaking people all over again =P... i was asking for help of someone to test right after I commit, to avoid more breakage.. 09:29
dduncan well, I'm about to go to bed, so if this would cause everything to be recompiled, it'll have to wait for tomorrow ... I'll signal you then 09:30
cmarcelo dduncan: thinking now => i'm worried about your case because I change a ".a" file, and ld may complain.. 09:31
dduncan do you want to commit this now or can you wait until tomorrow? 09:32
go ahead and commit now then ... I'll try to test it now and hope it doesn't take too long 09:33
cmarcelo dduncan: ok. test with just a "make" to see if it works.. [less recompilation]
dduncan let me know when the commit is done 09:34
cmarcelo dduncan: 12301 commited.. 09:36
svnbot6 r12301 | cmarcelo++ | * Uses AR to get judy object files into libHSHsJudy...a, so
r12301 | cmarcelo++ | we don't need -lJudy anymore (less pain?). Also gets rid of
r12301 | cmarcelo++ | some warnings in HsJudy build. Need to test in win32.
dduncan ok
cmarcelo, so far, so good ... ran 'make' twice and it produced a Pugs each time 09:40
cmarcelo dduncan: try this
dduncan I'm now running Makefile.PL again
cmarcelo rm third-party/installed/lib/HsJudy and then make
dduncan okay
cmarcelo (to check the warning thing)
also ./Setup clean in t-p/HsJudy before make 09:41
and s/make/make fast/ =)
09:43 chris2 joined
audreyt a wonder what a bit huffmanization can do :) 09:50
(unoptimized -> fast)
gaal "make now" 09:51
09:52 foo\ joined
cmarcelo audreyt++ # huffmanization =) 09:52
audreyt gaal: I'm almost finished in converting Var to newland 10:03
10:03 Oswyn joined
audreyt data Var = MkVar { v_sigil :: VarSigil , v_twigil :: VarTwigil , v_package :: Pkg , v_categ :: VarCateg , v_name :: ByteString } deriving (Eq, Ord, Typeable, Data) 10:04
which should put a stop to all adhoc string manipulations in runcore
gaal woohoo!
what's VarTwigil?
audreyt you know, like those in possiblyBuildVCode* etc
data VarTwigil = TNone | TAttribute | TPrivate | TImplicit | TMagical | TDoc deriving (Enum, Eq, Ord, Typeable, Data)
gaal Excellent 10:05
audreyt I also suspect it will make runcore much faster 10:06
gaal and Categ is CMember | Csomething else
audreyt but it's now parsing-dominating already
er no
data VarCateg = CNone | C_prefix_circumfix_meta_operator | C_infix_circumfix_meta_operator | C_prefix_postfix_meta_operator | C_postfix_prefix_meta_operator | C_infix_postfix_meta_operator | C_statement_modifier | C_statement_control | C_scope_declarator
etc etc
haskell really shines on refactoring :) 10:07
10:07 plisk joined
audreyt (aka type-error-directed translation) 10:07
gaal indeed 10:08
but I don't understand Categ then
(what's it doing in Var)
audreyt infix:moose 10:10
is now just "moose"
as v_name 10:11
and v_categ is C_infix
remember the ('i':'n':'f':'i':'x':rest) code?
:)
integral yay! audreyt++ 10:12
dduncan cmarcelo, I did everything you said, and the Pugs build did not break 10:14
audreyt integral: and it's all ByteString this time :)
integral drools
it's all noticably faster. Still way behind p5 on mandel.pl though :-( 10:15
audreyt this checkin will help on that front
cmarcelo dduncan: ok. thank you.
i'll wait for news on win32..
dduncan welcome
indeed
oh, and it seems someone caught a typo in my last p6l post, so I tried correcting myself 10:16
10:17 Aankhen`` joined
dduncan goodnight, & 10:17
10:17 dduncan left 10:22 buetow joined
gaal audreyt: oh, excellent! 10:27
btw I'm still rooting for a Hasekll' syntax to express 't':'h':'i':'s':in:pattern:matches 10:28
though you know, maybe making it hard encourages refactorings like this, so... :-) 10:29
cmarcelo gaal: how did you get the stack trace of pugs segfault on prelude generation? when in "gdb ./pugs" it behave well. only blows when called by gen_prelude... 10:37
10:38 buetow joined 10:40 buetow joined, agentzh joined
agentzh is back from supper & walk. 10:40
cmarcelo: i'll test your updates here. 10:41
cmarcelo agentzh: great.
agentzh up'ing
cmarcelo: there're serveral warnings while compiling Judy.MiniGC and Judy.Hash. is that okay? 10:45
cmarcelo: incremental build has finished. is it required to do "realclean" and build from scratch again? 10:46
cmarcelo agentzh: less warnings than before? 10:50
agentzh cmarcelo: so the current logic is bypassing libJudy.a completely. 10:51
cmarcelo: yes, much less warnings.
cmarcelo: then there's no need to build libJudy.a at all, right?
cmarcelo agentzh: yes. we don't need it anymore.. 10:52
agentzh great, i'll make the win32 build even simpler.
cmarcelo++
cmarcelo cool... (test it with a clean checkout if you can... and "make fast" is your friend to check builds) 10:53
=)
agentzh cmarcelo: sure
during the meantime...does anyone know if there's a CPAN module which can perform POD ==> tree (AST) ==> POD? 10:55
10:57 jferrero joined
agentzh cmarcelo: fresh build also works here. :D 10:59
11:00 buetow joined 11:02 tup joined
gaal cmarcelo: I told my shell not to limit core sizes. with tcsh it's "unlimit coredumpsize". 11:06
then I made it crash
and then, gdb pugs corefile
this is also faster than running under gdb :)
audreyt agentzh: Pod::Simple? 11:07
agentzh audreyt: does Pod::Simple generate a tree?
hmm, Pod::Simple::SimpleTree doesn't seem to do what i want. 11:10
so i'll have to write my own implementation, which shouldn't be hard. ;-) 11:11
cmarcelo: pugs' realclean doesn't remove Judy's *.o
cmarcelo: so i'll add it to Makefile.PL. 11:12
11:12 iblechbot joined
cmarcelo agentzh: also remove libJudy.* on src/obj/.libs too... ? 11:14
agentzh cmarcelo: okay
11:15 lichtkind joined
agentzh cmarcelo: does "src/obj/.libs/*" okay? 11:15
*is
cmarcelo i think so.. 11:16
11:17 bpphillips joined
cmarcelo agentzh: hmm.. could you call make clean instead ? 11:17
inside judy/Judy-1.0.3 ?
agentzh cmarcelo: "make clean" can't work on win32. 11:18
there's no win32-compatible Makefile under judy/Judy-1.0.3. :) 11:19
cmarcelo ok. just a sec then 11:20
agentzh wonders if cmarcelo is writing a Makefile.PL for Judy-1.0.3. 11:22
cmarcelo (not that, but later I could try, if M.PL syntax isn't too hard...) 11:23
i'm checking whats need to be deleted to ensure that everything will be recompiled..
just nuking src/*/*.o and src/obj/.libs/* , and then "make", do nothing.. 11:24
agentzh cmarcelo: writing a portal Makefile is possible.
cmarcelo: you know, i'm the author of Makefile::Parser. ;-) 11:25
cmarcelo agentzh: src/*/*.o src/*/*.lo src/obj/.libs/*
agentzh cmarcelo: i'll write a Makefile for Judy then. 11:26
cmarcelo i'll be happy if you nuke that in realclean...
agentzh i'll invoke $(MAKE) from Makefile.PL.
i mean "$(MAKE) clean".
cmarcelo agentzh: didn't knew about M::Parser (not only HS newbie but also perl newbie =o) )... M::GraphViz looks nice too =) 11:29
agentzh they need a rewite though. ;-) 11:30
cmarcelo well, nuking that list seems to be enough.. maybe do both to "ensure" everything will be dead.. 11:31
agentzh cmarcelo: i'm now pondering writing a clean.pl.
cmarcelo agentzh: for judy only? or for pugs?
agentzh for judy only 11:32
cmarcelo spinclad: ping
why don't "$(MAKE) clean"? 11:33
++ nuking "the list" 11:34
agentzh cmarcelo: anyway, i'll add your list to Makefile.PL, which seems to be the simplest solution. 11:35
\@\$(RM_RF) third-party/judy/Judy-*/src/.a
\@\$(RM_RF) third-party/judy/Judy-*/src/*/*.o
\@\$(RM_RF) third-party/judy/Judy-*/src/*/*.lo
\@\$(RM_RF) third-party/judy/Judy-*/src/obj/.libs/*
cmarcelo src/.a ? 11:36
agentzh cmarcelo: it's for win32.
oh, sorry, src/*.a
cmarcelo ok 11:37
agentzh my mistake...
$(MAKE) clean won't work on Win32.
now testing on my machine... 11:38
cmarcelo gaal: tks for the tip. for historical reference: in bash that's "ulimit -c unlimited".. 11:40
11:41 xinming joined
agentzh cmarcelo: done. 11:44
svnbot6 r12302 | agentz++ | [util/build_pugs.pl, third-party/judy]
r12302 | agentz++ | simplified the win32 building of judy (since no libJudy.a is required)
r12302 | agentz++ | [Makefile.PL]
r12302 | agentz++ | added judy cleanup to pugs' realclean target.
r12302 | agentz++ | [t/statements/do.t]
r12302 | agentz++ | fixed a typo in the comment
gaal cmarcelo: thanks. I grew up on tcsh for interactive work, I guess it's out of fashion now but I'm used to it... 11:46
11:47 pmurias joined
pmurias hi, 11:47
how much beside translating the haskell core language be nessesary to have haskell runing on parrot 11:48
gaal ooh! :)
pmurias the haskell core as in: 11:49
www.haskell.org/ghc/docs/papers/core.ps.gz
gaal you need GC...
pmurias does haskell need any sort of hiper-magic garbage collection api, or 11:50
would the parrot one suffice?
gaal actually, I don't know. I think GHC has generational GC but this is outside my area of competence... 11:51
pmurias would asking on #haskell be better than? 11:52
svnbot6 r12303 | agentz++ | [Makefile.PL]
r12303 | agentz++ | s/RM_RF/RM_F/g
gaal sure 11:53
audreyt pmurias: yhc is perhaps easier
and/or jhc 11:54
yhc is bytecode interpreted
gaal (re: generational GC, not that that ought to matter for operation - it's a performance thing)
s/operation/&al correctness/
agentzh audreyt: will you do me a favor by fixing the parsefail in t/statements/do.t?
audreyt agentzh: the "do {...}\nis" thing? 11:55
I thought I fixed it
agentzh no, that fix doesn't work.
?eval my $i; do { $i++; next; $i-- } $i;
evalbot? 11:58
audreyt ok
evlbot is restarting
agentzh heh
11:58 lollan joined
agentzh audreyt: *** cannot next() outside a loop 11:58
but do {} is truly a loop. 11:59
pmurias audreyt: how large a (sub|super)set of haskell doe yhc support?
audreyt pretty good superset of haskell 98 12:00
pugs however is very much GHC specific
a GHC backend to parrot is somewhat harder than yhc though
as it relies on the (very advanced) GHC runtime
primitives
unless you link in GHC's rts with parrot 12:01
in which case it becomes more embedding than targetting
I'd suggest starting with the yhc bytecode set if you'd like to play with targetting hs, than starting with GHC Core or yhc's lambda cube 12:02
s:2nd/yhc/jhc/
jhc is optimized for generating fully unrolled raw C code, and as such might be technically easier, though performance-wise horrible, to simply write a PIR codegen 12:03
for it
pmurias i plan to spend about a week full time on it. so i won't propably get past the yhc bytecode stahe
*stage 12:04
audreyt oh. then yu may consider hugs, which is even smaller :)
but yhc is better designed, I think. not sure
pmurias i'll try to adapt the .net2parrot converter, 12:05
i supports delcarative opcode mapping 12:06
so the real coding will be the bytecode format reading 12:07
12:08 miyagawa_ joined
audreyt ok... you need a strategy for lazy evaluation. 12:09
either via thunk PMC, or CPS, or something.
svnbot6 r12304 | cmarcelo++ | * Spaces to tabs in last agentzh commit. 12:10
agentzh cmarcelo: :P
win32's nmake is smart enough to recognize multiple spaces as a tab, so i didn't notice it while testing on my machine. 12:11
12:19 miyagawa_ joined 12:21 miyagawa_ joined 12:26 Limbic_Region joined
cmarcelo agentzh: np.. i wonder why gnu make doesn't do that too =P 12:29
agentzh hehe
12:33 penk joined 12:41 stevan joined
audreyt whew. finally done 12:41
I might have broken everything ;)
audreyt runs "make pugs" for performance benchmark and smoke
12:44 mauke joined 12:48 HXanadu joined
svnbot6 r12305 | agentz++ | [t] 12:48
r12305 | agentz++ | * fixed all the malformed magic links in t/*/*.t and t/*/*/*.t
r12305 | agentz++ | ** the new L<Sxx/.../key word list> syntax is highly recommended.
r12305 | agentz++ | ** the L<Sxx/"..." /.../> notation is still acceptable, but a trailing ';' is not allowed.
agentzh is amazed to see there're already 242 magic links under t/. 12:52
cmarcelo audreyt: is it meaningful comparing benchs of today's pugs and pre-r12204 (judy integration)? I heard about changes evening out judy time advantages, what rev this happened, before or after 12204? 12:58
audreyt that was luqui's, and only at closure cloning 12:59
I'm going out for a walk :) bbiab
13:02 FurnaceBoy joined
agentzh g'night & 13:02
13:02 agentzh left 13:05 xinming joined 13:08 froh-doh is now known as PolettiX 13:17 fglock joined
pmurias fglock: hi 13:19
13:21 hexmode joined
fglock pmurias: hi 13:26
13:34 xinming_ joined 13:50 xinming__ joined 13:53 marmic joined
svnbot6 r12306 | fglock++ | v6 - array methods: kv, keys, values, ref, isa; fixed '%hash.isa' 13:57
clkao mmmm 14:00
fglock clkao: mmmm? 14:01
clkao seems good progress ;)
14:04 penk joined
svnbot6 r12307 | fglock++ | v6 - fixed 'loop {block}' 14:10
r12308 | fglock++ | v6 - fixed extra '}' in loop
14:10 cjeris joined 14:13 fglock left 14:15 fglock joined 14:26 vel joined 14:30 mdiep joined 14:34 hcchien_ is now known as hcchien
svnbot6 r12309 | fglock++ | v6 - t/data_types/hash.t passes 40/52 14:43
r12310 | fglock++ | v6 - t/data_types/hash.t passes 48/52 14:51
14:53 sdogi joined
sdogi whoa 14:54
i just saw truth
www.treehugger.com/files/th_images/paradigm.jpg
hehe
14:55 fglock left
svnbot6 r12311 | audreyt++ | * all IRC-related programs in examples were using "\001", and so 15:06
r12311 | audreyt++ | were all broken by TimToady++'s decree. Changed them to \x01.
r12312 | audreyt++ | * Fix "make ghci" to work after cmarcelo++'s judy fixes. 15:09
15:10 evalbot_23533 joined 15:19 jferrero joined
avar what decree is that? no octal escapes? 15:20
15:20 kanru joined
[particle] avar: yes, see recent changes to S02 concerning \d+ 15:21
er, \\\d+
15:28 hexmode joined 15:36 sdogi left
svnbot6 r12313 | audreyt++ | * "make profiled" now generates two executables: "pugs" is optimized, 15:36
r12313 | audreyt++ | and "pugs-prof" is optimized _and_ profiled.
xerox Nice. 15:39
pugs has all it all!
audreyt microbenchmark showed another 30% improvement 15:42
mandel.pl for the first 4 lines. before: 15:43
real 0m4.419s
with my local changes on Var:
real 0m2.514s
smoking now to make sure I didn't break anything...
15:44 justatheory joined
PerlJam Next thing you know, we'll be using pugs as perl6 ;) 15:44
audreyt that needs linspire's help :) 15:45
(they have Parsec for fast ByteString)
which will solve the one remaining bottleneck
namely parsing large programs
PerlJam And then parrot dies because it's raison d'etre has vanished ;> 15:47
audreyt nah. we don't interop with tcl :)
and also, yaml as platform-native bytecode is, whilst an okay solution, not as cool as true bytecodes
I'm glad people are working on parrot. (also mono; spidermonkey; llvm; yarv; etc.) 15:48
PerlJam too 15:49
audreyt and also, of course, the VM that rgs++ just released a version for :) 15:50
xerox Yay for Linspire indeed. 15:51
But.. are they going to release it opensource?
audreyt xerox: stepcut havn't replied...maybe help me nudge him again when he shows up?
xerox Okay!
audreyt it's originally part of sjanssen's SoC, but all will be easier if sj can just merge Linspire's code 15:52
xerox Parsec is _so_ handy.
audreyt and properly doc/cabalize it
xerox Indeed.
audreyt finds Judy+ByteString a very memory-efficient combination for all sort of tasks 15:53
<- going to update $job code to use them this weekend
xerox One-line description of Judy ?
I read you use that in place of some Data.Things
audreyt self-tuning, extremely fast implementation of mutable IntMap, StrMap, Hash, Set.
15:53 fglock joined
audreyt what you use IORef(InsertSomeStructureHere) for, you can use Judy and get huge win. 15:53
xerox Haskell Judy is FFI calls?
audreyt yes. 15:54
xerox I see.
15:54 ludan joined
xerox It's still good on the other hand to have all-Haskell implementations of datastructures. 15:54
audreyt sure. but pugs cares very little about haskell purity :)
(see pcre, syck, etc)
xerox :(
:D
We need more people in researching compilers :D 15:55
audreyt as I said in the mentor statement for cmarcelo's SoC... the important contribuiton is a working CollectionM interface
then other, pure-hs implementation can show up and just implement it
xerox CollectionM ?
audreyt I very much like how I can change from Hash to StrMap to maybe HashTable with just two lines 15:56
(one in import and one in type synonym)
xerox That's interesting.
audreyt xerox: see pugs/third-party/HsJudy/Judy/CollectionsM.hs
the idea is similar to Data.Foldable and Data.Traversable etc 15:57
xerox OK, I am getting cabal-get to work now (eventually!) so I wll do later, thanks for the pointer
audreyt in GHC-trunk
yay!
xerox Right I knew those
audreyt xerox++
xerox hugs audreyt
audreyt beams
xerox I had some school issues, grumble
real-life deadlines caught me up
I don't want to get beaten by the Google deadline too, though
audreyt indeed 15:58
oh. cabal-get is your SoC?
xerox nods
xerox felt left a bit alone, but well, maybe dcoutts craddled him up too much last year
gaal meows 15:59
15:59 hexmode joined
gaal ooh! wow, speedups 15:59
too bad somebody didn't spend a SoC cleaning up the Compression library 16:02
xerox What does it give?
(I will need gzip and tar somewhen in the future) 16:03
gaal xerox: lz, 7zip, uh, lots of others
but it doesn't have a build system, and was developed on windows...
16:04 jferrero joined
gaal argh, when I was looking for it I noticed haskell.org/haskellwiki/Library/Compression didn't have a link to the actual library, and sadly I didn't add it to the wiki when I found it, so now again I don't know where it is... 16:05
lambdabot Title: Library/Compression - HaskellWiki
16:06 vel joined
cmarcelo audreyt: since you mention SoC.. deadline is 21 (or 20?), any suggestion on how I spent this last few days (I see you liked CollectionsM)? 16:13
and yes, I (irresponsably) spent the last days focused on Pugs Build Process =o)...
audreyt cmarcelo: document what you've done, and pointers for the next steps :) 16:14
and blog mercilessly :)
cmarcelo not good at blogging =P will try, though... 16:16
xerox is very happy to see soc working for somebody
Very very....
cmarcelo besides what you see in svnbot6 I'm talking to Ketil Malde (RBR devel) to see if Judy works nice (looks like the answer is yes, but he needs to see it there too)...
16:17 iblechbot joined
svnbot6 r12314 | fglock++ | v6 - t/data_types/hash.t passes 51/52 16:17
cmarcelo i'm a little afraid of final review (is it google or you that'll do this?), since strictly I'm delivering something a little bit different -- and a little more specific too. 16:18
xerox No need to be afraid, it's audrey that will review! :D 16:19
audreyt yup. 16:20
cmarcelo xerox: i hope so! =)
audreyt and I think you did well. :) it's not required that CollectionsM or anything like that be finalized by you 16:21
merely that a continuing dialog/adoption with existing community is in active progress
which I think is happening :) 16:22
xerox Do you know offhand if there is a cabal function FilePath -> CabalRepresentation ?
gaal hm. i have an svk pull that's hung on a poll() syscall for a while now. is it ok to kill -9? (won't respond to SIGINT) 16:23
16:23 amnesiac joined
audreyt no... I'm not even sure what's CabalRepresentation 16:23
gaal: sure
xerox I mean whatever representation cabal does of the .cabal files 16:24
cmarcelo looks like will be really embraced by people.. however, #perl6 folks suffered this two last (i hope only this two) seeing things like "error .... -lJudy", "error ... HsJudy".
xerox ... -> PkgInfo is my last aim.
(I.e. what's inside 00-latest.txt)
gaal now I get repeated "Waiting for sync lock on /trunk: colinux:13763."
I don't know what 13763 is, it's not an r nor a PID... 16:26
audreyt svk mi --unlock /pugs/trunk 16:27
cmarcelo audreyt: I'm not doing it now, but from what I tried, tracking the Judy.Hash problem won't be easy. Putting putStrLn's in Internals.hs to track seems to make the segfaults disapper here. Unless another idea pops up I'm thinking of filling Judy.Hash functions with putStrLn's and tracking every call to C Judy funks. 16:28
audreyt: do you know if spinclad is alive? and/or about integrating HsIter on judy-trunk? 16:29
gaal audreyt: thanks.
16:30 Psyche^ joined
PolettiX has there been some issue with "say" lately? 16:32
audreyt PolettiX: "say" no longer prints $_; use ".say" for that 16:36
PolettiX audreyt: this marks the definitive decline of $_
but this is probably saner
audreyt not sure about decline 16:38
it's consistent :)
compare .moose with $_->moose :) 16:39
'dsay it's a win
[particle] *groans*
svnbot6 r12315 | fglock++ | v6 - t/data_types/hash.t passes 53/55 16:42
16:44 SageLT joined 16:45 Psyche^ is now known as Patterner 16:49 prefiks joined
TreyHarris not to mention, $.moose and $_.moose are too hard to confuse 16:50
svnbot6 r12316 | fglock++ | v6 - fixed t/regex.t (passes 90 tests more) 16:54
17:07 xdg joined 17:09 bernhard joined 17:13 xinming joined
audreyt ok, all sanity tests pass. no time to run smoke. so I'll just check in :) 17:21
TimToady I'll smoke it.
audreyt the diff file is 5000+ lines long 17:22
with 2500 lines of raw changes
TimToady er, I'll smoke it if it compiles.... :)
audreyt that it will do :)
gaal whoo 17:23
check it svnbot6! 17:24
17:24 mdiep joined 17:28 elmex joined
audreyt the mergeback is takign a while :) 17:28
TimToady I gather. been supping every few seconds... :) 17:29
audreyt it's in.
TimToady smokin' 17:30
svnbot6 r12317 | audreyt++ | * Glorious refactoring of the Var type.
r12317 | audreyt++ | Previously, Var is type synonym to String, and all package
r12317 | audreyt++ | lookups, OUTER:: handling, sigil and twigil parsing etc were
r12317 | audreyt++ | done in an extremely adhoc way with String operations.
r12317 | audreyt++ | Now we split Var into several parts.
r12317 | audreyt++ | Take "&Moose::Elk::infix:<antler>" as an example:
r12317 | audreyt++ | v_sigil :: VarSigil -- SScalar
r12317 | audreyt++ | v_twigil :: VarTwigil -- TNone
r12317 | audreyt++ | v_package :: Pkg -- ["Moose", "Elk"]
r12317 | audreyt++ | v_categ :: VarCateg -- C_infix
r12317 | audreyt++ | v_name :: ID -- "antler"
r12317 | audreyt++ | The names are stored as interned ByteStrings for fast comparison.
r12317 | audreyt++ | All involved types are changed from String to new types as well,
r12317 | audreyt++ | such as (envPackage :: Pkg).
TimToady does not seem to like parrot embedded
audreyt nopaste the error?
probably forgot to change type signature for the embed half 17:31
TimToady Can't exec "./bin/parrot": No such file or directory at Makefile.PL line 806.
need more?
pasteling "gaal" at 192.115.25.249 pasted "no likey 6.4.2 either" (5 lines, 269B) at sial.org/pbot/19050
gaal -- {-# SPECIALISE INLINE cast :: ID -> ID #-} etc. 17:32
audreyt TimToady: no... it's Makefile.PL, related to r12317
gaal: bummer. see if you can drop the INLINE? 17:33
and commit in
svnbot6 r12318 | polettix++ | [examples/colordiff.pl] Adapted to new .say idiom. Got rid of quotemeta implementation.
audreyt they are small enough, autoinlining should happen
gaal weird, the commit log for ghc says that feature was added 9 mo ago
audreyt so just SPECIALISE
probably not merged to trunk
I mean to -stable
pasteling "TimToady" at 71.139.7.205 pasted "got embparrot?" (73 lines, 4.8K) at sial.org/pbot/19051
gaal should we #if-version it? 17:34
audreyt gaal: no, just drop INLINE
if SPECIALIZE works, that's good enough
gaal chasing...
audreyt TimToady: did you have a build parrot executable in parrot path? 17:35
trap line 795 Makefile.PL for $base for more details
gaal audreyt: Set.notMember is undef in here 17:36
fixing...
audreyt ok. change back to (not ())
audreyt hopes gaal is "make fast"ing 17:37
gaal I'm a good seaman
audreyt :D
TimToady my parrot build directory was hosed, but /usr/local/bin/parrot seems to work. good thing I installed it. :) 17:38
svnbot6 r12319 | fglock++ | v6, PCR - defined $?PUGS_BACKEND and @*INC
r12319 | fglock++ | v6 - fixed 'unboxed' array methods
audreyt heh cool :)
TimToady on the other hand, maybe that means I'm not running embedded. 17:40
trouble is they just checked in massive STM changes to parrot
[particle] timtoady: what platform are you on?
TimToady fedora core 5
intel 17:41
trying a rebuild of parrot from scratch to see if build remains busted.
[particle] fresh checkout?
TimToady maybe need to do the hand uninstall trick... 17:42
[particle] ah, installed parrot is still a no-no, iirc
[particle] hasn't installed since 0.0.11
TimToady got the src/Pugs/Internals.hs:164:19: parse error on input `INLINE'
gaal TimToady: fixing
[particle] woggle expects gcc/x86 to work if pthreads is good enough 17:43
(post stm merge)
audreyt this year's perl.org SoC success rate is remarkably different from last year's :)
[particle] ...happily so :) 17:44
TimToady attempting to rebuild parrot again after hand uninstall, but if this doesn't work I'll have to revert parrot to smoke pugs 17:46
particle: I don't mind hand-unstalling parrot occasionally. 17:47
but that seems not to be the problem. 17:48
compilers/imcc/main.o: In function `main':
compilers/imcc/main.c:510: undefined reference to `Parrot_shared_DOD_block'
compilers/imcc/main.c:709: undefined reference to `Parrot_shared_DOD_unblock'
next step is to blow away everything and recheckout 17:49
audreyt gaal: how's it going? I may need to sleep soon
gaal lots of -fallow-overlapping-instances needed to be added and some more last fixes
ETA ~5m
audreyt 'k
yay
yeah. GHC 6.4 sitll has user-site overlapping 17:50
17:50 Aankh|Clone joined
svnbot6 r12320 | fglock++ | v6 - ChangeLog 17:53
Limbic_Region audreyt - did the new internals get implemented? 17:54
audreyt Limbic_Region: stepwise, but in steady progress
TimToady same error. parrot build definitely borken on FC5
Limbic_Region cool beaners - moldy chicken
audreyt Limbic_Region: compile time "does" finally does mixing instead of inheritance, and pad lookup is now sane. lots of other cleanups
svnbot6 r12321 | audreyt++ | * Profiling shows that there were three "ask" per runloop call,
r12321 | audreyt++ | but only one is needed. This alone eliminated another 5% of
r12321 | audreyt++ | runtime.
audreyt also, much faster overall, except for parsing. :)
17:55 zgh joined
gaal almost there... 17:55
Limbic_Region I have been $working all day and just noticed all the src/ file checkins
svnbot6 r12322 | fglock++ | v6 - $?PUGS_BACKEND moved to Runtime::Perl6 17:56
audreyt yay. all 5%+ hot stops in profiling gone
Limbic_Region so where is the new bottleneck? 17:57
;-)
gaal It's bottles all the way down
17:58 xinming_ joined
gaal audreyt: src/Pugs/Run/Perl5.hs: Couldn't match `Var' against `VStr' 17:58
did you forget that part of the port? :)
audreyt which line?
gaal 75 17:59
In the first argument of `Var', namely `name'
audreyt fixed.
Var is now _Var and Sym is now _Sym
(the string-taking form)
but indeed if you see that, that might be the last change :)
leo TimToady: looks like you have old parrot includes around: please 'locate dod.h'
svnbot6 r12323 | audreyt++ | * Change Var to _Var in Perl5.hs
17:59 weinig|zzz is now known as weinig_
gaal nyeh 18:01
TimToady leo: nothing that wasn't under my parrot build dir
gaal skipping all 64-odd files takes like 15 seconds 18:02
audreyt "make ghci" and :r is your friend
TimToady I blow away /usr/local/include/parrot when I hand-uninstall.
leo strange - as Parrot_block_DOD() is a macro, calling Parrot_shared_DOD_block()
gaal audreyt: yes, but not in this case...
TimToady anyway, for now, reverted back 10 revs or so just so I can smoke audreyt. :) 18:03
audreyt why not? you can :r as long as Eval.Var passes
leo TimToady: in parrot root: find . -name '*.[ch]' | xargs grep Parrot_shared_DOD_unblock
gaal alternating ghci and fast is painful, isn't it? 18:04
TimToady all I have is a completely fresh checkout at this point.
gaal committing
audreyt ooh
gaal: no, completely separated now
leo it's defined in thread.c and a macro in dod.h
audreyt non-interfering
gaal cool!
what did it take?
cabal?
audreyt "fast" uses cabal's dist/build/
gaal in.
audreyt and ghci uses inplace src/ 18:05
for object files
leo TimToady: I can just imagine that the locate db isn't up to date - you might use find
18:05 bpphillip1 joined
gaal okay, I'm scrubbing the decks and lighting up the galley 18:05
TimToady is a possibility.
svnbot6 r12324 | gaal++ | * Bring the glory to 6.4.2
audreyt confirmed as still building fine on GHC 6.5-trunk 18:06
good. I can finally sleep :)
gaal night audrey!
audreyt g'nite!
*wave* &
integral audreyt++ 18:08
gaal++ # making it work ;-)
18:11 rlb3 joined
TimToady no dod.h on my system other than under parrot. 18:12
18:13 Samhain is now known as yuval
leo TimToady: what sayeth: gcc -E -Iinclude compilers/imcc/main.c | grep Parrot_shared_DOD_block 18:17
svnbot6 r12325 | fglock++ | v6 - fixed 'require'
18:18 weinig_ is now known as weinig
TimToady leo: says nothing. 18:19
leo I really don't understand that
even with fresh co? 18:20
TimToady but I'm currently at 14130, so if there was anything under there at the later revision, it's probably gone.
leo oh - that's 11 revs behind
maybe inmidst of merge 18:21
TimToady yes, but r14130 compiles. :)
leo as does 14141 ;)
TimToady not here, apparently... 18:22
it's definitely a head-scratcher...
I'll whack on it some more later after I've smoked audreyt's latest.
leo ok 18:23
TimToady thanks.
gaal what's the minimum r of parrot currently required by pugs? 18:28
TimToady dunno offhand, but would likely be the interface change to Parrot_exit 18:33
18:35 hexmode joined
TimToady looks like the "return if" and "return unless" lines are not compiling here for some reason. 18:39
working around it by putting return() if 18:40
18:42 bernhard joined
TimToady actually, too much other stuff broken. trying fresh checkout. 18:42
svnbot6 r12326 | fglock++ | v6 - avoid using 'do {block}' 18:45
18:47 cm joined
TimToady actually, was probably an old /usr/bin/pugs 18:49
18:49 Aankhen`` joined
gaal whoa, billions and billions of parsefails 18:57
svnbot6 r12327 | gaal++ | * TimToady++ reports that "return if" and "return unless" are broken, 19:00
r12327 | gaal++ | so work around in Prelude.pm and Test.pm so smokes can get going.
TimToady the smokes are full of parsefails as well if you just do that. 19:01
gaal yes, it's pretty messed up
TreyHarris whooh-hooh. a coworker got me a ghc 6.4.2 binary build for tiger-ppc that works. *phew* mathewm++ mathewm++ mathewm++ 19:02
TimToady I'd suggest *not* checking out the latest pugs. :/
gaal stay with r12316 or b0rk | SVK users: search.cpan.org/dist/SVN-Mirror/ | paste: sial.org/pbot/perl6 | pugs.blogs.com | pugscode.org | pugs.kwiki.org | www.treehugger.com/files/th_images/paradigm.jpg 19:03
TimToady fresh checkout fails the same way. 19:03
kolibrie subdues his urge to svk pull 19:04
Limbic_Region is current pugs known to be b0rk on Win32?
TreyHarris i'm building r12292 from last night
kolibrie TreyHarris: you are probably safe
Limbic_Region perlbot nopaste
perlbot Paste your code here and #<channel> will be able to view it: sial.org/pbot/<channel>
gaal Limbic_Region: yes. 19:05
it's not the build, it's the built.
pasteling "Limbic_Region" at 129.33.119.12 pasted "build failure for Win32, MinGW, GHC 6.4.2" (20 lines, 1.1K) at sial.org/pbot/19054
TimToady it's definitely bork on FC5 currently.
6.4.1, I believe. 19:06
Limbic_Region just in case that info is different from what is known to be b0rk
TimToady yeah, ghc-6.4.1
yes, that's different. 19:07
gaal Limbic_Region: fixing
committed. 19:08
Limbic_Region k
svnbot6 r12328 | gaal++ | * fix build for hs-plugins users
Limbic_Region isn't an hs-plugin user btw
SageLT Quick Perl 6 Question: pugs currently requires variables to be declared before use (as far as I can tell), but I don't see anythig about this in the synopses (which doesn't mean I couldn't have missed it). Is this just a pugs trait, or does perl 6 require variable declerations? 19:10
TimToady strict is on by default.
PerlJam SageLT: perl6 requires that the be declared except on one liners
TimToady and pugs doesn't implement 'no strict' yet.
SageLT Okay, good to know
And I should have figured that out. I knew strict was on, don't know why that didn't click
TimToady how's it goin'? 19:11
gaal r12328 ~~ s/hs-plugin/TH/ 19:12
Limbic_Region gaal - it looks like that may fix all my problems 19:14
generating precompiled prelude now
gaal Limbic_Region: you mean except that pugs is broken?
Limbic_Region gaal - I don't actually use pugs much these days 19:16
I just verify it compiles
svnbot6 r12329 | Sage++ | A new example of a translated TestInit.pm. Pugs doesn't like: Use of TAINT and non-declared variables. With manually added declarations and removal of TAINT reference, pugs runs it.
TreyHarris my build's failing in trying to embed parrot. probably because my parrot's quite old (0.4.2).
Limbic_Region I have some unfinished projects that I might eventually get back to which is why I try to keep it up to date, plus I read summaries, journals, lists, and the channel to keep up to date on stuff
TreyHarris what will i lose by just not embedding it? 19:17
i'm mostly just using pugs to interpret perl 6 code, and doing some v6.pm testing
svnbot6 r12330 | Sage++ | Accidentally committed a version with the manual changes, as opposed to the actual translator output, my mistake.
SageLT TimToady: Far slower then I'd like, and I'm trying to tackle the varibale decleration issue, which is going to be a pain to do in any way besides 'no strict'
Limbic_Region wow - audreyt was right about it being a lot faster 19:18
svnbot6 r12331 | Sage++ | Fixed a very serious and very stupid mistake that always turned off translation.
Limbic_Region pugs -v returns immediately
TimToady looks to me like pugs is not seeing its own prototypes for builtins like kv. 19:19
Limbic_Region gaal - what can I do to verify pugs doesn't work - the few examples I have tested produce the correct results?
TimToady or finding the methods, or something
gaal Limbic_Region: make smoke and interrupt after a while.
TimToady actually, probably methods, since it's not finding "new" either.
Limbic_Region as in ctrl-c ? 19:20
gaal yeah
Limbic_Region and what constitutes "a while"
gaal until you believe me :)
Limbic_Region ah, ok
19:20 saorge_ joined
TimToady also a lot of: 19:21
pugs: Internal error: Sigilless var: "linux"
gaal TimToady: I don't actually know where that's coming from
the tests where it occurs in don't mention "linux" anywhere
may be somewhere in the prelude or in test.pm
TimToady well, it says "internal"
19:21 mdiep left
TimToady so maybe it's one of those faked up variables that pugs uses internally. 19:22
gaal that's just the error message in src/Pugs/Types.hs:338
TimToady had some similar problems when I tried to change $?SELF to self
ended up calling it &self internally.
gaal I wish I remembered what audreyt told me about getting GHC to surrender a stacktrace 19:23
someithing about make profiled.
ugh, which doesn't work here? 19:24
TimToady now I've got a pugs that looping trying to run ext/Test-Builder/t/020_Test_Builder_Test.t
Limbic_Region gaal - did she tell you in IRC? 19:25
irc logs are searchable
gaal - then just light a match under her 19:27
TimToady gonna be a bloody TAP matrix...
gaal anyway it's moose until I figure out what's wrong with the profiled target.
Limbic_Region gaal - I had to do make test instead of make smoke as I haven't set up for smoke properly 19:28
19:28 jferrero joined
Limbic_Region lots of tests passing 19:28
seemingly more than are failing
gaal Limbic_Region: is 'cpan Task::Smoke' not working for you? 19:29
Limbic_Region gaal - not that it isn't working, that there isn't much point
I wouldn't be able to get a report "off" this box though I guess I could email the outputted html file
TimToady I think the basic tests are cleaner, but smoke does ext first.
Limbic_Region ok - failing far more than I would expect otherwise 19:30
TimToady and that exercises OO more.
no .kv, no .keys, etcs.
no .new
gaal hmm, we need an email gw to the smokeserver!
Limbic_Region gaal - even that would be manual for me without taking some pretty unique steps 19:31
TimToady biab &
Limbic_Region would need to hook into Outlook
Limbic_Region wanders off 19:33
pmurias is the an ctags equivalent for haskell? 19:34
* a
lichtkind listen to brilliant talk about how a little bi given structure opens up much more possibilities and freedom, and believes now even more in perl6 :)
gaal @google gaal ctags haskell
lambdabot www.livejournal.com/users/gaal/161104.html
lichtkind s/bi/bit/ 19:35
pmurias gaal++ # providing tools to dive into large bolilerplated haskell compilers... 19:37
gaal pmurias: or if on linux/x86 fetch a binary from feather:~gaal/bin
pmurias i'll probably hand compile (i have gentoo so the toolchain *should* be in working order) :) 19:38
gaal oh, gentoo has that patch
rather an updated version of it
so your ctags may already Just Work <tm> 19:39
pmurias gaal: are you also a gentoo user?
gaal no, someone wrote a patch
I didn't even know about it up to last week
pmurias which distro do you use? 19:40
gaal anyone remember the cabal switch to Setup configure to turn on profiling? 19:41
pmurias: debian
pmurias nice one
gaal worksforme
pmurias gentoo compilesforme :)
gaal pmurias: I find it hot enough where I live that I don't feel compelled to have my CPU compile stuff all the time :) 19:43
yuval gaal: *cough*
gaal hey yuval :) 19:44
yuval hey :)
i'm addicted to air conditioning (go figure) so where i live/work, Gentoo keeps me from freezing :)
nothingmuch ah! damn highlights
pmurias nothinmuch: does ccache cache headers? 19:45
gaal yeah, like a guy I knew who's dad worked in the electrical company, when he was cold he opened the window instead of tuning the AC
pmurias: I doubt it
pmurias: but GCC 4 has precompiled headers, I think
3.x dev versions did 19:46
pmurias it has but...
it can only use one at a time
yuval btw, i can't compile pugs 6.2.12 w/ parrot 0.4.6: sial.org/pbot/18896
lambdabot Title: Paste #18896 from "yuval" at 217.132.6.238
nothingmuch pmurias: no idea 19:47
yuval and that's what's holding me from committing the ebuild for parrot 0.4.6
nothingmuch i doubt it though
i think it's not practical
pmurias why> 19:48
?
gaal yuval: what r is 0.4.6?
nothingmuch pmurias: because you can alter the definition of a header by including other headers, and because it has no emitted output
gaal pmurias: headers are not compilation units
precomp headers are sort of a hack in this regard 19:49
TimToady well, not as bad as I thought--only failed 885
gaal TimToady: including ext/?
TimToady yes
gaal how long did it take?
and do you remember how long pre-12317 took? 19:50
(there's a 'duration' field in the yaml file)
TimToady I'm the last two entries under repository snapshot / linux 19:51
it was 2.5 minutes slower this time.
but then I had to kill a pugs looping with 5 minutes runtime. 19:52
gaal hmh
19:52 mdiep joined
TimToady so probably overall faster. 19:52
hard to account for the error shortcircuits though. 19:53
gaal by 2.5 min :)
yuval gaal: 13949 iirc
gaal ah yes.
SageLT This may be a stupid question, but Perl 5 will run "print ${^TAINT};" but pugs fails on "print %{^TAINT};", is this expected?
TimToady 10% basically
19:53 shachaf joined
TimToady there is no such notation 19:53
gaal yuval: fwiw, I use 13767 and it's OK...
TimToady it'd be $?TAINT or $*TAINT using twigils now. 19:54
SageLT how so?
oh
Hmmmm...
Well, back to figuring some way to translate that
TimToady all ${...} notations are now dead.
$(...) is hard deref 19:55
SageLT thanks, I hadn't caught that
TimToady $::(...) is sym deref
and ${^foo} is just gone.
gaal I kept saying it should be $:you:don't:really:want:this:() in homage to MJD but they wouldn't listen
${^Gee} was kinda sick. 19:56
SageLT Thanks TimToady, sometimes it's hard to keep all the new stuff in my head at once. nice to get some help now and then 19:57
TimToady no, it was just sick.
gaal especially when the ^G was a BEL character.
TimToady ask any time. get answers part of the time. :)
stevan gaal: what is the Haskell function called that does the Y combinator stuff,.. fix?
gaal stevan: f y = y (f y) 19:58
19:58 frankg joined
stevan gaal: yes that 19:58
just f? 19:59
gaal but I think that Control.Monad.Fix.fix gives that too
stevan gaal: ok, cool
gaal er sorry stevan, I meant y f = y (f y)
arght 20:00
of course I can't get that right
y f = f (y f)
pmurias are the audio recordings from the last yapc avalible? (taking a 16+ bus ride tommorow) 20:03
TreyHarris Should this work? (can't test it, as pugs does not presently restore hypotheticals): my $highest_odd = 1; for 1..10 20:05
oops
20:05 foo\ joined
gaal pmurias: I think not yet 20:05
TreyHarris Should this work? (can't test it, as pugs does not presently restore hypotheticals): my $highest_odd = 1; for 1..10 -> $i { let $highest_odd = $i; $i % 2 }
Limbic_Region TreyHarris - first thing that looks odd to me is $i % 2 20:09
% is still the modulus operator right? It has no affect in void context right
TreyHarris Limbic_Region: eh? why? doesn't matter, then... s:w/$i % 2/$i.is_odd/ 20:10
i was just wondering if the hypothetical would work correctly in this case, setting $highest_odd to 9
Limbic_Region did you mean something like my $h_odd = 1; for 1..10 -> $i { $h_odd = $i if $i %2 }
the semi-colon is entend the expression
hrmm - I appear to be experiencing extreme lag 20:11
TreyHarris Limbic_Region: well, yes, but you can rewrite any hypothetical that way. I'm wondering about the behavior of hypothetical variables.
Limbic_Region in your example - $highest_odd = $i; # ends right here $i % 2 is seen as a new expression - you have no conditional
TreyHarris yes, i know 20:12
Limbic_Region ok - so then I don't know how to answer your question - I was just pointing out technical problems with your proposed example
Limbic_Region hypothetically knows nada about hypotheticals
TreyHarris i don't see the technical problem. the hypothetical will be restored if the containing block fails, and will be maintained if it succeeds. that's why i ended the for block with an expression that has a truth value. 20:13
since one cannot return out of a for block
kolibrie TreyHarris: that logic makes sense to me 20:14
TreyHarris i don't see anything in S04 suggesting that next can take an argument other than a loop label, so I'm assuming this is the only way to set success or failure of a loop block 20:15
20:15 arta joined
gaal yay, www.haskell.org/hawiki/TipsAndTricks - "for GHC compile with -prof -auto-all, then add +RTS -xc -RTS when running to get a "stack" trace when an exception is thrown." 20:15
lambdabot Title: TipsAndTricks - The Haskell Wiki
TreyHarris (though I kind of would like "fail" to work in this case as a 'next with non-success'). TimToady, any chance that could work?
gaal now just to wait out make profiled...
TimToady phone&
TreyHarris then i could write for 1..10 -> $i { let $h 20:16
grr, did it again
then i could write for 1..10 -> $i { let $h_odd = $i; fail unless $i.odd }. that seems very clear to me
Limbic_Region TreyHarris - evil goto 20:17
Limbic_Region ducks
PerlJam TreyHarris: what exactly are you trying to accomplish? 20:18
TreyHarris PerlJam: like merlyn, i'm coming from a trainer background, so not heading in any particular real-world-problem direction. i'm just playing with behavior. or are you asking specifically what i expect that code snippet to do? 20:19
20:19 weinig is now known as weinig|bbl
PerlJam TreyHarris: the latter 20:21
TreyHarris oh. let's take a list, and set $h_odd to the last item in the list that is odd. so, hypothetically let's set $h_odd to each element in turn. if it turns out it's not odd, we fail this iteration, causing the variable to be restored to its prior value. if the block suceeds, we let it keep its new value. 20:23
of course there are easier ways to do this, but it seems like a very compact example of how a hypothetical could be used. (the real criteria might be much more complicated)
PerlJam "fail this iteration" doesn't quite make sense to me.
TreyHarris well, failing a bare block doesn't quite make sense either, outside of hypotheticals existing, does it? 20:24
look at t/var/let.t
PerlJam looks 20:25
TreyHarris but with hypotheticals, one might want any given block to fail
PerlJam PErhaps I'm just not quite up to speed on the semantics of fail
kolibrie so the question is really, what is the syntax to cause a block to fail, so that 'let' will revert any values it has tampered with 20:26
TreyHarris PerlJam: ah! no, i think you are. I was just suggesting to TimToady that one might like a keyword--perhaps not fail--to indicate "please cause this block to not succeed" so that hypotheticals can be reset without having to place a bare expression at the end of the block
PerlJam But calling fail in a loop doesn't "fail the iteration" AFAIK
TreyHarris kolibrie: exactly. i think one would like a return-ish thing that doesn't cause an exception to be raised but can be used within blocks that are not allowed to return 20:27
kolibrie and still allows looping to continue
TreyHarris PerlJam: currently, it fails the entire loop 20:28
?eval my $f; try { for 1..10 -> $i { $f = $i; fail if $i > 3 } }; say $f
20:28 evalbot_23533 is now known as evalbot_23570
evalbot_23570 OUTPUT[4 ] Bool::True 20:28
TreyHarris so the only way to make *this iteration* of the loop fail is to place a false value as the last statement in the block. 20:29
PerlJam my $x = 42; for 1..10 -> $n { let $x = $n if $n.odd } # Since no control exception was thrown, the loop succeeded and $x has the value of 9
TreyHarris PerlJam: one doesn't need the let in that case.
PerlJam no, but I can't contrive an example that does right now (too much multitasking :) 20:30
but my $x = 42; for 1..10 -> $n { let $x = $n if $n.odd; fail } # $x will have the value of 42 here
kolibrie my $x = 42; for 1..10 -> $n { let $x = $n; $x.odd } 20:31
TreyHarris the point is, one would use let in a case where the conditions in which you want to restore the old value could be too baroque to express in a simple conditional. so you're reduced to writing all your code inside a conditional so that you have only one loop exit point. very unPerlishly Pascal-like :-)
kolibrie: yes
TimToady I believe that "leave *, undef" would (eventually) work, according to S06. 20:32
PerlJam kolibrie: I don't think that one works properly as no control exception is thrown.
TreyHarris kolibrie: but i'd like something more explicit, and something that would let me say "oh, this is going to work, let's just fail this iteration and go to the next one now"
kolibrie PerlJam: which is why we are waiting for TimToady to get off the phone and clarify the syntax
TimToady um
PerlJam has no clue what "leave *, undef" is supposed to mean. 20:33
TimToady see S06?
PerlJam I'm looking at it now. (It's been a while since I last looked)
TreyHarris TimToady: that's very clear to me, thanks. I'd like some sugar though...
TimToady it's not a common enough occurence for standard sugar, I don't think. 20:34
can always write a macro.
course, maybe the default of leave is undef 20:35
to go with return;
except that I think we currently require return undef; for that.
and return; is just a null list
TreyHarris right. so then for @stuff -> $i { let $wanted = $i; ... leave if $undesirable; ... leave 1 } 20:36
that's not bad. 20:37
PerlJam As an aside, I thought the docs at dev.perl.org/perl6/doc/design/syn were updated more frequently now. Is this not true? 20:38
lambdabot Title: Synopses - perl6
TimToady the first argument to leave is always a selector, so leave 1 is illegal.
20:39 penk joined
PerlJam leave *, 1 then? 20:39
TimToady every six hours, supposedly.
TreyHarris PerlJam: synopsis 4 there was updated today, how much more frequently do you want? :-)
TimToady currently that's how leave is defined.
PerlJam When was S06 updated to say "leave *"?
TimToady I'm not sure the valence is quite right though.
TreyHarris ahhh. yeah, that was the part that made me want sugar. it looks like you're digging into perlguts. i'm just thinking from the trainer perspective 20:40
maybe an optional adverb, and the default is *?
TimToady from a user perspective you just want "return value but from here instead of the sub".
TreyHarris yes, exactly.
kolibrie my $x = 42; for 1..10 -> $n { let $x = $n; leave *, $x.odd }
TreyHarris leave isn't a bad word
TimToady PerlJam: a few days ago
PerlJam TimToady: That's what I thought. It's not updated on the website. 20:41
TimToady but the object of leave is what you're leaving, not what you're returning
TreyHarris multi it so either can be the object?
kolibrie so how do you define that the block failed so that values set by 'let' are reverted? 20:42
TreyHarris kolibrie: see "Definition of Success" in S06
i mean S04 20:43
svnbot6 r12332 | Sage++ | The translator is now smart about ${...} stuff, TestInit.pm now translates with the exception of variable declarations.
20:43 dduncan joined
TreyHarris PerlJam: you're right, S06 is behind since Aug 9 for some reason. 20:43
other synopses have been updated since 20:44
PerlJam Robrt is prejudiced against S06 or something ;) 20:46
svnbot6 r12333 | fglock++ | v6 - 'my' works inside '//' and 'err'
r12333 | fglock++ | v6, PCR - implemented '$?OS'
TreyHarris & for a meeting
kolibrie hmm, so returning undef and calling fail are the only ways a block is considered failed, causing 'let' to revert? 20:47
PerlJam TreyHarris: when you return ... for "teaching purposes" you've picked a good example of when *not* to use let :-)
20:52 xinming_ is now known as xinming, _calvin_ is now known as kalven, penk joined 20:55 bpphillip1 left
TimToady or a good example of when to use an explicit try {...} block. 20:55
svnbot6 r12334 | fglock++ | Pugs-Compiler-Rule - v0.15 21:00
21:01 mdiep joined
PerlJam let and temp seem very closely related. Could we not get by with just one of those with an adverbial modifier for the other? Or does huffman rule here? 21:01
21:03 fglock left
gaal run out of wakies here, and out of memory too for building profiled. guess we'll have to wait for A to fix... 21:03
good night!
zz&&
21:03 bobrik joined
kolibrie gaal: good night 21:04
21:10 jmf joined 21:14 weinig|bbl is now known as weinig 21:24 b_jonas joined 21:26 trym joined
dduncan I noticed what seems to be a typo at the top of Synopsis 5; a missing "not" 21:32
21:32 nirgle left
dduncan its in: We now try to call them regex because they haven't been regular expressions for a long time. 21:32
should probably be "We now try not to call them ..." 21:33
or "try to not call them"
SageLT I thought that was correct, "regex" is kind of a slang for something more then a regular expression. But maybe that's just cause I read that literally...
dduncan the next sentence says: When referring to their use in a grammar, the term rule is preferred. 21:34
SageLT Yeah, good point
dduncan but even without that sentence, the previous one seems to contradict itself as written
SageLT but then again, that could just mean that a regex in general, and a rule is in a grammar. 21:35
TimToady The "not" is missing on purpose.
SageLT My view was that "regex" was a new term, not just a shortening of regular expression. It may not be a right, but ir makes a vlid interpretation 21:36
TimToady not exactly new, but sort of existing as "not quite real regular expressions" already.
we're just making a virtue of that.
the only people who will be confused by that is computer scientists. 21:37
SageLT that's what I thought
TimToady to most mortals, P5 regex *are* "regular expressions".
SageLT Well, I'm a computer scientist, and I read that shortly afer taking an extensive course on grammars and regular expressions, and I got the intended meaning. So there is some hope people will get it 21:38
21:38 penk joined
TimToady Regular Exressions with Grammar Extensions eXcetera... :) 21:39
*Expressions
Regular, Extended, and Grammatical EXpressions. 21:40
SageLT but dduncan does make a good point that it might be worth making explicit: "A regex is not a regular expression, in the computer scince meaning of the word"
or something like that
TimToady yeah, well, that's been said so many other places already. 21:41
SageLT Well, it looks like some people may still be confused, just by the similarty between "regex" and "REGr EXession"
Not a big deal, just thinking about calrity 21:42
*clarity
dduncan well, I retract my comment there ... I thought the sentences were just trying to say that regex was renamed to rule 21:43
TimToady but part of the reason for using "regex" is cultural continuity.
SageLT Wow, I messed that up should be "REGular EXpression"
TimToady I rather liked calrity
well, they were so renamed at one point, but we undid that. 21:44
but I don't think that's a long-term problem
dduncan but there was a larger matter that was leading me to look at Synopsis 5 in the first place ... regarding substitutions ... but I'm just going over S5 quickly first to see if it is already addressed ...
SageLT I don't think it's a big deal. Maybe just explain the meaning of regex as an acronym more clearly, or closer to the sentence in questio
dduncan what I was originally wanting to check was whether I could put the result of a substitution in a new variable rather than doing it in place, and the Transliteration section at the end of S05 shows me how I can, so I have no new questions 21:47
fyi, following the large batch of the last 32 updates, Pugs still continues to build fine on my system 21:52
21:55 marmic joined 21:59 cjeris left
SageLT Ah, looks like lwall went ahead and clarified the useage of regex as a specific term. 21:59
Cool
22:12 jdv79 joined
jdv79 anyone know if p6 will be able to "reload a module" unlike p5? 22:12
typical reason...having to restart apache while dev'ing a MP app...
obra jdv79: Module::Refresh
or Apache::Reload 22:13
both on CPAN for perl5
jdv79 do they "fully" work?
TreyHarris hmmm, in building pugs, util/runcompiler fails complaining about the undefined symbol "_Parrot_find_global_s"
obra nothing is going to work perfectly against an internals change on a module.
jdv79 we've got a heavy stash i believe
obra either you don't clear private data or you do.
either one will break a reloading module mid-process
leo TreyHarris: too old parrot? 22:14
TreyHarris PerlJam: to answer you question, perhaps, but what is a good, concise (preferably can fit on one or two lines) example of a good use of let? 22:15
dduncan SageLT, so something came of the brief discussion after all
TreyHarris leo: i don't think so, it's r14152. we're now at r14156
SageLT dduncan: yup it did 22:16
TreyHarris leo: in any case, my parrot is newer than my pugs tree.
dduncan surprising you weren't credited though, as you did most of the talking
but whatever
leo TreyHarris: then it could be the install problem - i.e. an old libparrot somewhere 22:17
SageLT I don't care about credit. Just glad to actually get to contribute, a lot of what's in this channell goes over my head
PerlJam TreyHarris: I don't know, but the pattern for usage appears to be something like my $var; ... { <something that modifies $var> <something that may invoke fail> }
dduncan same here
22:17 jdv79 left
PerlJam TreyHarris: It seems to me that let usage is always paired with something that might fail :) 22:18
PerlJam takes off his Captain Obvious t-shirt
TreyHarris PerlJam: you specifically mean, might call C<fail>.
PerlJam TreyHarris: right.
dduncan TreyHarris, did you ever get readline+Pugs working again?
TreyHarris PerlJam: in which case the question is, why does it care about the success of the block it's in? it would be much clearer to just say "C<fail> causes restoration of hypotheticals" 22:19
if I don't call fail, but i habitually end my block with something that returns 0, that would be surprising if the gestalt idea of let is meant to be as you describe it.
dduncan: no... i got a readline-capable ghc by just replacing my entire /opt with a coworker's, and configure works. but my pugs build just failed as i described here a few lines back 22:20
PerlJam home & 22:21
TreyHarris ... and googling for _Parrot_find_global_s is not turning anything up. i'll take leo's suggestion now and blow away any other parrot builds i have lying around 22:22
leo TreyHarris: just the installed/public ones might cause a problem 22:23
TreyHarris leo: any clue how to find out if that was the case? i did have an old parrot in /usr/local, though my $PARROT_PATH was set to my current build. I blew the /usr/local one away, but make (without cleaning first) still failed with the same issue. I'd hate to have to start compiling from a clean again unless i was sure that was the problem... 22:26
since the error happens about 1.5 hours after I type make after clean :-(
leo TreyHarris: no make clean should be needed for this case 22:29
it just looks like that pugs picked up the installed instead the PARROT_PATH parrot 22:30
TreyHarris ahhh. yes 22:31
now the error is dyld: Library not loaded: /usr/local/lib/libparrot.dylib
Referenced from: /Users/trey/src/pugs/./pugs
i rm'd it and will try make again
leo: yes, and make install of Parrot warns you that if you "want to do Parrot development". But I didn't realize that Pugs development was included 22:32
svnbot6 r12335 | Darren_Duncan++ | ext/Set-Relation/ : split the test file 20_Heading.t into 20_Heading_new_and_export.t and 21_Heading_equality.t 22:34
TreyHarris hmm. not sure what i need to rebuild to force libparrot to be refound in the proper space. the only Makefile with the string "libparrot" is in Inline-Parrot, and that doesn't get included in pugs 22:35
pasteling "TimToady" at 71.139.7.205 pasted "imcc failure in Parrot build" (48 lines, 9.2K) at sial.org/pbot/19056
svnbot6 r12336 | Sage++ | The translator now has a -S option to use 'no strict' to get around variable declarations and other stuff like that.
r12336 | Sage++ | Unfortunately, 'no strict' doesn't work with Pugs (yet), and the translator doesn't declare variables (yet), so any code not already written with strict probably won't work.
TimToady leo: I noticed some warnings compiling imcc. maybe I have a strange yacc or lex here. 22:36
see pbot above.
leo imcc are just known warnings 22:37
svnbot6 r12337 | Sage++ | Translated TestInit.pm now has 'no strict,' which makes it incompatibly with Pugs (as of yet) but it is now completely translated with respect to the P6 spec.
r12337 | Sage++ | Adding declarations (my or our or whatever) makes the code completely Pugs-compatible.
leo the problem is (again) here: compilers/imcc/main.c:510: undefined reference to `Parrot_shared_DOD_block' 22:38
having -L/usr/local/lib before -L/home/larry/parrot/blib/lib is for sure a problem - but you did clean /usr/local of any parrot trails, didn't you? 22:41
TimToady I'm quite certain that the only four files that mention that name are as listed in the past at the bottom, though I'm currently grepping my entire machine again.
dduncan question: what are the best practices in the Pugs repo about setting svn:ignore properties on generated files?
TimToady ah, found it. 22:42
dduncan right now, I see, for example, a lot of third-party stuff coming up with '?' when I say "svn info"
I would like to eliminate those, but I'm not sure what would be a terse solution that isn't also over-reaching
TimToady leo: you were right, there was still an old library out there I missed. 22:43
I scanned for files beginning with parrot, and missed libparrot 22:44
leo I'll try to summarize in a bug report to p2
TimToady sure would be nice if there was a general way to sandbox projects against their own installed oldstuff 22:45
leo there shouldn't be any interference, and actually I was chasing it on my box quite a long time and failed - it just worked 22:46
dduncan oh, when I said "svk info", I meant "svk status" 22:47
TimToady I think maybe I found the difference: LD_LIBRARY_PATH=/usr/local/lib 22:50
sittin' in my environment for some reason...
TreyHarris leo: do you have any idea what i might try to blow away in order to get the other libparrot linked in? ldd doesn't exist on OS X, and otool, which seems to be ldd's moral equivalent, doesn't report anything on the .o's in dist/build 22:51
22:56 mdiep joined
leo TreyHarris: rm all parrot stuff from /usr/local/* 23:00
TreyHarris leo: i already did
i'm asking what to blow away in my pugs src tree besides pugs itself
leo that's a pugs question ;-) 23:01
sorry
TreyHarris ok, thanks leo++
leo try blib* 23:02
TreyHarris leo: no dice. oh, well. i'm making from clean. 23:07
dduncan I think I figured it out ... will try committing said property changes ... 23:12
svnbot6 r12338 | Sage++ | Unknown nodes have be vanquished from all translations across perl5 t/op, testing across other directories underway.
r12339 | Darren_Duncan++ | set svn:ignore properties using pattern '*' in third-party/judy/Judy-1.0.3/doc/man/man3 23:15
23:18 perlbot joined
dduncan so I'll be going through the others now, carefully ... 23:21
okay, something I still have to figure out ... how to incrementally add items to a svn:ignore property rather than replacing it 23:29
if I say this first: svk propset svn:ignore "foo" 23:30
and then: svk propset svn:ignore "bar"
then only 'bar' will be ignored
clkao sure
dduncan what's the syntax for "also bar" 23:31
clkao you shoul duse svk pe
because ps overrides the value
it's like setting a new value, not appending
dduncan yes
clkao there were romours about ps --append
dduncan on that note, is there a shortcut to just say "ignore everything in the Pugs checkout dir that isn't in the repository"
? 23:32
something I googled suggested not, but I thought i'd ask
never mind
clkao, is there a way to specify which editor program is invoked by propedit? 23:41
23:42 cm_ joined
clkao EDITOR 23:46
23:49 cm_ is now known as cm 23:56 mdiep joined 23:59 hikozaemon joined