Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-06-10

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:18 timotimo i'll write this weekly on tuesday, so that i'll have 6 days to cover rather than just 5.
00:22 rindolf joined #perl6
00:24 rurban joined #perl6
00:26 rurban1 joined #perl6
00:28 hoverboard joined #perl6
00:56 Ben_Goldberg joined #perl6
01:09 rgbkrk joined #perl6
01:25 rgbkrk_ joined #perl6
01:28 Su-Shee_ joined #perl6
01:33 jpwillis_ joined #perl6
01:36 bjz joined #perl6
01:37 klapperl joined #perl6
01:52 rgbkrk joined #perl6
01:58 chenryn joined #perl6
02:03 jnap joined #perl6
02:05 dalek perl6-roast-data: 0f823d1 | coke++ | bin/rakudo.jvm.sh:
02:05 dalek perl6-roast-data: Use eval server for jvm.
02:05 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/0f823d1b82
02:06 [Coke] donaldh++
02:06 [Coke] # ^^
02:24 BenGoldberg_ joined #perl6
02:26 araujo joined #perl6
02:38 xragnar_ joined #perl6
02:42 SamuraiJack joined #perl6
02:55 dj_goku_ joined #perl6
03:09 rgbkrk joined #perl6
03:15 dj_goku joined #perl6
03:18 rgbkrk joined #perl6
03:30 rgbkrk_ joined #perl6
03:31 Alina-malina joined #perl6
03:37 rgbkrk joined #perl6
03:42 rurban joined #perl6
03:44 uniejo joined #perl6
03:51 zengargo1le left #perl6
04:02 kaare__ joined #perl6
04:39 anaeem1 joined #perl6
04:51 kurahaupo joined #perl6
05:10 kst joined #perl6
05:11 [Sno] joined #perl6
05:20 kaare__ joined #perl6
05:24 kaare__ joined #perl6
06:00 brrt joined #perl6
06:13 kaleem joined #perl6
06:21 SevenWolf joined #perl6
06:39 darutoko joined #perl6
06:46 ChoHag I cannot build rakudo on freebsd because dyncall has a special-snowflake build system (consisting of ~ 5900 lines, opposed to the 6200 lines of *.c and *.h) which breaks because gcc isn't installed.
06:47 ChoHag And the special snowflake build system resists my attempts to wedge cc in whichever magic variables its interrogating. gcc always slips in somehow.
06:49 FROGGS joined #perl6
06:50 ChoHag Why, after >40 years, is it still considered difficult to build C?
06:54 nwc10 ChoHag: specifically, you're failing at the point where it (or you) is trying to build MoarVM?
06:54 ChoHag No. It's trying to build dyncall.
06:54 ChoHag Despite it being installed.
06:54 nwc10 yes, but dyncall isn't in Rakudo
06:54 ChoHag Although the latter is after the former already failed once.
06:55 nwc10 Rakudo's Configure.pl is attempting to build MoarVM first? (which is where dyncall is)
06:55 ChoHag I downloaded rakudo and told it to build. It fell over when it got to dyncall.
06:55 ChoHag That it built a subproject is immaterial.
06:55 nwc10 it is material in that I'm trying to work out your bug report.
06:55 ChoHag No, you're trying to assign blame.
06:56 ChoHag What matters it whence dyncall came?
06:56 nwc10 No, I'm trying to work out which bit of the source tree to look at.
06:56 ChoHag The bit with dyncall in it.
06:56 nwc10 as you said - where does dnycall come from
06:56 ChoHag Oh look - did another magic special snowflake build system fall over and confuse developers and users alike?
06:56 ChoHag No I'm not bitter this morning at all.
06:57 thou joined #perl6
06:57 nwc10 It did. It's dyncall's special build system, called from MoarVM, called from Rakudo.
06:58 ChoHag Rakudo downloaded a bunch of things, including (so it seems - signal is difficult to discern from the noise) nqp.
06:58 nwc10 yes, agree it's bust
06:58 nwc10 no, I don't know how to fix it.
06:58 ChoHag Actually it seems to be getting it via parrot.
06:58 ChoHag Certainly I'm seeing that in the noise more than moar.
06:58 nwc10 OK. Thanks. Although I'm afraid that I also don't know how to fix that.
06:58 ChoHag Well ultimately it's irrelevant.
06:59 ChoHag dyncall has a special snowflake build system which melted. Rakudo, through some labrynth or other, depends on dyncall. The nature of the labrynth does not affect the brokenness of dyncall.
07:01 ChoHag rakudo/moar/parrot/nqp/whatevertf needs to fix its dependency, or fix its dependent.
07:01 ChoHag Or stop claiming to do everything all at once in what is effectively an alpha or beta product.
07:02 DrEeevil worksforme
07:02 ChoHag Yes thanks Joe Random Developer. Go back to your Apple.
07:02 DrEeevil the problem is always that people diverge in unexpected ways, so assumptions fail, and then things go boom
07:03 DrEeevil ChoHag: hey now, be more constructive
07:03 DrEeevil if I were stuck on Apple stuff I wouldn't find my way to IRC
07:03 ChoHag I was, but the build system broke.
07:03 jsn_ joined #perl6
07:03 FROGGS morning
07:04 DrEeevil so instead of trying the "incoherently yelling grandpa" routine give enough information so people can try to help
07:04 ChoHag And yes, people diverge, that's why gnu wrote the satanic work of art which the autotools abomination.
07:04 pdcawley joined #perl6
07:04 ChoHag I'm not here for help, I'm here for a rant.
07:04 * DrEeevil points at WAF - autotools is quite saintly
07:04 ChoHag The solution is obvious - fix the build system (not gonna happen) or just install gcc.
07:04 DrEeevil scons is also a great one, or gyp if you want to go meta
07:05 ChoHag Since I turned to the dark side and went full sysadmin, I'll be installing gcc and SEPing it.
07:05 FROGGS ChoHag: have you already no-pasted the build errors you get? (I've not seen a link in the logs)
07:05 ChoHag Yes yet more developers decided autotools didn't solve the problem evilly enough and redid it.
07:06 ChoHag Isn't it obvious?
07:06 ChoHag gmake[2]: gcc: Command not found
07:06 DrEeevil they reimagined it, badly
07:06 ribasushi ChoHag: you are being disruptive for no reason. Please take a deep breath and let's restart he conversation
07:06 ChoHag That and some gmake spam is practically it.
07:07 FROGGS ChoHag: and you tried to build rakudo for what backends?
07:07 FROGGS still, a paste of the build output would help
07:07 ribasushi including the build commands
07:07 FROGGS yeah
07:07 ribasushi as it's still unclear how/what you tried to build ;)
07:08 brrt seconded :-)
07:08 FROGGS hi brrt
07:08 brrt hi FROGGS
07:08 ribasushi ChoHag: make no mistake - we want to help you
07:08 FROGGS brrt: you feel more lucky today? :o)
07:08 zakharyas joined #perl6
07:09 ChoHag Then fix dyncall's abortive attempt to guess what compiler toolchain I have.
07:09 brrt ehm.... why? was my post yesterday as grumpy as i myself
07:09 ChoHag Its guessing code includes this gem:
07:09 brrt :-)
07:09 FROGGS ChoHag: in case I can reproduce your problem, I will
07:09 ChoHag guess_tool()
07:09 ChoHag {
07:09 FROGGS hold on
07:09 ChoHag CONFIG_TOOL="gcc"
07:09 FROGGS please use a paste service
07:10 FROGGS and also, I'd like to have the entire build output
07:10 FROGGS not something you have guessed where the problem is
07:10 ChoHag I haven't guessed.
07:10 ChoHag I tracked it down.
07:10 brrt please ChoHag, we understand your inpatience :-)
07:10 ChoHag That's where the (first) problem is.
07:10 ChoHag Having overridden that, more came up.
07:10 brrt ok, but you understand that we can't help you if you won't show us build output?
07:10 ChoHag I'm not impatient. I'm tired.
07:11 FROGGS ChoHag: I cannot help you when I don't know the problem from the beginning to the end
07:11 ribasushi ChoHag: our help is conditioned on you not trying to diagnose your problem in the dark, and feeding us pieces of likely irrelevant codepaths - you need to show us everything, using a paste service
07:11 FROGGS ChoHag: well then: paste && sleep && apply patch
07:11 ChoHag FROGGS: I'm really not guessing. dyncall attempts to detect my C compiler and guesses gcc, which isn't installed. It then falls over.
07:11 ChoHag How it gets there *is* entirely irrelevant.
07:11 brrt ok, awesome
07:11 FROGGS ChoHag: but which dyncall?
07:12 brrt if that is true, then we can probably repeat that, and file a bug report
07:12 ChoHag gmake[1]: Entering directory `/usr/home/mking/src/rakudo/nqp/3rdparty/dyncall'
07:12 FROGGS that seem to be MoarVM's
07:12 ChoHag See now if you'd asked that, I'd have though "Oh, there's more than one? Typical."
07:12 arnsholt No, that's the one used for Parrot, I'm pretty sure
07:12 brrt hmmm /me checking out nqp source
07:12 ribasushi brrt: except it isn't awesome - the gcc is likely a last resort fallback, and something else failed higher up, but we can't see it
07:13 FROGGS arnsholt: you are right, moar's would be in /moar
07:13 ChoHag Instead, I thought "how the fuck am I going to quickly and correctly paste a god-knows-how-many-line terminal transcript which is already long lost?"
07:13 FROGGS or /MoarVM
07:13 brrt what happens when you alias cc/clang to gcc
07:13 FROGGS meh
07:13 ribasushi brrt: this should *not* be necessary ever
07:14 ChoHag brrt: I have little doubt that it would work, but I'd sooner just install gcc to hide the problem than leave random symlinks lying around to system tools.
07:14 * brrt isn't afraid of a hack or so
07:14 ChoHag You're young yet.
07:15 ribasushi brrt: with this approach ChoHag's problem will keep recurring and wasting a lot of time on all sides
07:15 brrt :-)
07:15 brrt yes, which is the reason for my next question
07:15 brrt what do you want rakudo for?
07:15 ChoHag Indeed. Hence why I tracked it down rather than merely avoiding it.
07:16 ChoHag For shits.
07:16 brrt and giggles?
07:16 ChoHag The very same.
07:16 brrt what happens when you patch dyncall's build system? or is that inpractical?
07:17 ribasushi brrt: he is trying to report a bug (combative tone notwithstanding)
07:17 ChoHag dyncall's build system is just shy of 6000 lines of code.
07:17 arnsholt Yeah, it's a mess
07:18 ChoHag I tried wedging cc into the guess_tool function (and then fixing guess_as, which promptly broke), but gcc just came bacj.
07:19 FROGGS can't we update the clone of dyncall in the nqp repo? most parts of it are like three years old...
07:19 ChoHag That's about the point where I (silently, because my daughter is still sleeping) cursed ever developer who ever lived.
07:19 FROGGS /o\
07:19 brrt thanks, we need the luck :-)
07:20 brrt but you're quite right
07:20 brrt gcc is refered many times in dyncall, directly
07:21 brrt it seems that dyncall asssumes to only work with gcc
07:21 FROGGS ChoHag: can you please try this in another folder? git clone https://github.com/rakudo/rakudo.git && perl Configure.pl --gen-moar --backends=moar --make-install
07:21 arnsholt ChoHag: I'm a bit out of date one my fBSD knowledge, but the most recent versions have clang instead of gcc as the default compiler, no?
07:21 FROGGS ChoHag: this builds rakudo for MoarVM only, which has an up to date dyncall
07:22 FROGGS ChoHag: (and building for MoarVM only is pretty much the fastest way to build a Perl 6 compiler these days)
07:22 hoverboard joined #perl6
07:22 ChoHag arnsholt: I believe so.
07:23 * brrt wanted to install freebsd but couldn't boot from dvd :-s
07:23 arnsholt From what you're experiencing, that likely broke a pile of assumptions about fBSD in the config stuff
07:23 ChoHag FROGGS: I cheated a bit and cloned from ~/rakudo, because I only cloned that one last night.
07:23 ribasushi ChoHag: stepping back - do you care which backend you are going to build? perhaps building MV only would be a way forward for now, until the repo is updated?
07:23 arnsholt Moar likely has the same dyncall
07:23 ChoHag ribasushi: Not especially. I have linux boxes it works on.
07:23 ChoHag Hence why this is all for the ranting, not the fixing.
07:24 ribasushi arnsholt : <FROGGS> ChoHag: this builds rakudo for MoarVM only, which has an up to date dyncall
07:24 arnsholt (We should probably set up our own fork of dyncall to make sure both backends get the same version, actually)
07:24 FROGGS ChoHag: sure, though the biggest repo is nqp here, both rakudo and moarvm are sort of tiny
07:24 ChoHag Yeah I see that...
07:24 arnsholt The easiest way to circumvent this would be to install just the JVM version
07:24 ChoHag Bandwidth not so great in rural England.
07:24 FROGGS arnsholt: moar's is 0.8, nqp's is 0.7
07:25 arnsholt Of course then you have to live with the JVM start-up time
07:25 FROGGS dang, he is a British
07:25 * FROGGS hides
07:25 mr-foobar joined #perl6
07:25 arnsholt FROGGS: Really? In that case, we should probably bump the one used for Parrot and then set up a shared upstream fork
07:25 ChoHag Can upstream not be patched?
07:26 FROGGS ChoHag: you are on freebsd btw? what os/arch exactly? (then I can set up a VM, and debug it while you sleep or work)
07:26 arnsholt IIRC the actual dyncall people have not been responsive
07:26 FROGGS ChoHag: perhaps, yes
07:26 ChoHag FROGGS: 10-release (with updates) on kvm.
07:26 FROGGS arnsholt: yes, we should bump, but first I wanna know it works
07:26 FROGGS ChoHag: thanks
07:26 brrt 0.8 says it should be clang-buildable on freebsd
07:27 ChoHag freebsd hasn't made it onto tin yet here.
07:27 ChoHag This build may have got past the previous build's fallover point. I didn't stay to watch the first one.
07:28 brrt where is it now? if its building nqp-moar, it probably is (dyncall is integrated into moarvm)
07:28 ChoHag Oh it's done.
07:28 ChoHag Just in time. School run imminent.
07:28 ChoHag So yeah, moar works.
07:28 arnsholt Awesome
07:28 ChoHag Want the transcript? I should have turned on verbose.
07:29 arnsholt If it works, don't bother =)
07:29 arnsholt Hopefully 0.8 can just be plonked in in place of 0.7
07:29 ChoHag Hmm.
07:29 ChoHag I'll have to try this again when I got back.
07:29 FROGGS okay, I'll update nqp's dyncall, and test that parrot still does its thing with it
07:30 ChoHag Since starting the first (failed) build and this one, I've installed the system's dyncall.
07:30 arnsholt FROGGS: Cheers!
07:30 FROGGS ChoHag: thanks for the last ten minutes, these were productive :o)
07:30 arnsholt Remember to run the NativeCall test suite too, that's the one that really exercises it the best
07:30 brrt tl;dr: the vesion of dyncall bundled with nqp for the parrot backend is out of date
07:30 brrt :-)
07:30 masak good morning, #perl6
07:30 ChoHag Is the distributed version _always_ used?
07:30 brrt morning masak
07:30 FROGGS ChoHag: I believe so, yes
07:31 brrt .... i think so ChoHag, i can't recall seeing anything checking for an installed version
07:31 * brrt is off for an appointment, bye :-)
07:31 arnsholt Pretty sure the bundled one is hardcoded, yeah
07:31 FROGGS o/ brrt
07:31 ChoHag OK must run.
07:33 dmol joined #perl6
07:35 masak ChoHag: wow, do you ever go on in the backlog.
07:35 masak ChoHag: I don't see much ranting on this channel. the most rant-y person is usually me, I think :)
07:38 arnsholt Yeah, that was a pretty epic rant. But at least it looks like we figured it out in the end =)
07:40 masak yeah, I'm caught up now.
07:40 masak ChoHag++ #perl6++ # for, despite everything, enduring each other all the way
07:44 arnsholt Le sigh. PayPal using "security" questions makes me sad
07:47 sergot morning o/
07:47 FROGGS hi sergot
07:54 kivutar joined #perl6
07:56 pecastro joined #perl6
08:01 ChoHag masak: Well if everything wasn't so shit all the time, ranting wouldn't be necessary.
08:01 denis_boyun joined #perl6
08:01 ChoHag But dear god don't come at me with "worksforme".
08:02 ChoHag If there was ever a way to annoy your local sysops...
08:02 DrEeevil the trick there is to figure out why you diverge from others
08:03 DrEeevil if you start ranting don't expect constructive responses
08:03 fhelmberger joined #perl6
08:04 ChoHag And what should you expect if you tell somebody with a problem that you don't have it?
08:05 ChoHag Alice> Hey guys my thing broke.
08:05 ChoHag Bob> Well mine didn't.
08:05 ChoHag Alice> ...
08:06 moritz where's Eve?
08:06 ChoHag She and Adam shacked up ages ago.
08:06 ChoHag Started the whole damn mess.
08:06 ChoHag Alice had to step in, and now she broke it.
08:10 donaldh joined #perl6
08:12 virtualsue joined #perl6
08:14 DrEeevil so how did she break it, and why did no one stop her? ;)
08:15 donaldh Another PR to tune the eval server heap and permgen for better JVM spectest time: https://github.com/rakudo/rakudo/pull/278
08:16 ChoHag DrEeevil: That's the point when you just stop and say "Yes, dear."
08:16 spider-mario joined #perl6
08:16 masak anyway, glad to see so many p5 faces in here today. :)
08:19 dalek rakudo/nom: 15002e3 | (Donald Hunter)++ | tools/build/create-jvm-runner.pl:
08:19 dalek rakudo/nom: Tune the eval server max heap and permgen for best spectest time.
08:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/15002e322a
08:19 dalek rakudo/nom: 7ca23fd | lizmat++ | tools/build/create-jvm-runner.pl:
08:19 dalek rakudo/nom: Merge pull request #278 from donaldh/eval_server
08:19 dalek rakudo/nom:
08:19 dalek rakudo/nom: Tune the eval server max heap and permgen for best spectest time.
08:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7ca23fd40a
08:23 dalek rakudo/nom: e4d97a5 | (Elizabeth Mattijsen)++ | t/spectest.data:
08:23 dalek rakudo/nom: Add advent2011-day(03|04|05|07|10) tests
08:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e4d97a556b
08:26 SamuraiJack joined #perl6
08:41 dakkar joined #perl6
08:45 dalek nqp: 21fd47c | (Tobias Leich)++ | 3rdparty/dyncall/ (322 files):
08:45 dalek nqp: bump 3rdparty/dyncall from v0.7 to v0.8
08:45 dalek nqp:
08:45 dalek nqp: This is the same version that also MoarVM keeps in its repository.
08:45 dalek nqp: v0.8 should fix build problems for nqp@parrot on FreeBSD. ChoHag++
08:45 dalek nqp: review: https://github.com/perl6/nqp/commit/21fd47c00d
08:45 thou joined #perl6
08:46 dalek rakudo/nom: beb0525 | (Tobias Leich)++ | tools/build/NQP_REVISION:
08:46 dalek rakudo/nom: bump nqp rev for dyncal@parrot fix
08:46 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/beb0525d46
08:47 ChoHag Is there anything like a consensus on testing modules?
08:49 FROGGS ChoHag: what do you mean exactly?
08:49 ChoHag I looked at Test.pm and it begins with the encouraging comment that "This is a temporary Test.pm to get us started"
08:49 ChoHag What to put in t/*.t
08:50 ChoHag use Test and ok 1 work, so the essentials are there.
08:50 FROGGS first, Test.pm is good enough, and there is no replacement in sight yet (and I don't need any)
08:50 ChoHag I see some test-related modules in the Big List Of Modules.
08:51 FROGGS and, yes, put your stuff in t/*.t, and run with prove for example
08:51 ChoHag So I am wondering what commentary and opinions there are on their various states of readiness.
08:51 FROGGS for some stuff it is good to test not only on a single backend though, which requires some patience
08:52 FROGGS I think these modules are either for parsing TAP (what the module installer needs), or to run a smoker
08:52 ChoHag Well that'll just mean rerunning the test suite won't it?
08:53 FROGGS yes
08:53 FROGGS that also means that you have to rebuild rakudo for other backends :o)
08:53 ChoHag So IOW just keep it simple - plain perl and Test.pm?
08:53 FROGGS yeah
08:53 ChoHag Well I see that's patched now, so I can probably pull and build.
08:54 FROGGS it just takes a while to build for all three
08:54 FROGGS (because parrot and jvm are slower than moar)
09:07 brrt joined #perl6
09:15 donaldh Well, LOL, all the spectests that use is_run to spawn a subprocess fail on JVM because $*EXECUTABLE_NAME = perl6-eval-server
09:17 donaldh Two possible ways to fix this: 1. hard-code perl6.execname=perl6-j in the perl6-eval-server runner ; 2. check for perl6-eval-server and fix it in Test/Util.pm
09:20 donaldh I guess the question is: Should perl6-eval-server masquerade as perl6-j for all the spectests?
09:27 ChoHag Oh in all the ranting, I forgot that parrot has a similar problem, only I can fix it by specifying --link=c++ to parrot's Configure.pl
09:27 ChoHag (via rakudo's --parrot-option option)
09:28 ChoHag Because the option was right there, I made no attempt to diagnose why it was detecting g++ for the linker.
09:36 FROGGS j: say $*EXECUTABLE
09:36 camelia rakudo-jvm a7dd96: OUTPUT«Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'gen/jvm/stage2/QRegex.nqp'␤  in  (src/Perl6/Pod.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:78)␤  in load_module (src/vm/jvm/ModuleLoader.nqp:60)␤  in  (src/Perl6/A…»
09:36 FROGGS hmpf
09:36 FROGGS but that should do
09:37 ChoHag Bah. nqp fell over again. This time with a linker error against dyncall.
09:37 FROGGS ChoHag: it uses Perl 5's Config.pm to get defaults...
09:37 FROGGS :/
09:38 ChoHag /usr/bin/ld: ../../../../3rdparty/dyncall/dyncall/libdyncall_s.a(dyncall_api.o): relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC
09:38 ChoHag ../../../../3rdparty/dyncall/dyncall/libdyncall_s.a: could not read symbols: Bad value
09:38 FROGGS ohh
09:38 ChoHag Yeah.
09:38 FROGGS it guesses PIC wrong
09:39 donaldh FROGGS: It tries to spawn perl6-eval-server when it really needs to run perl6-j
09:39 FROGGS hmmm
09:39 FROGGS and $*EXECUTABLE says it is perl6-eval-server ?
09:40 donaldh I will need to double check that.
09:41 77CAABDV6 joined #perl6
09:43 FROGGS okay, my vote is that we create a env var that influences $*EXECUTABLE
09:44 FROGGS like RAKUDO_PERL6_EXE, which would just be perj6-j, and rakudo would then add the path (and .exe if needed)
09:44 donaldh FROGGS: you're right $*EXECUTABLE is correct.
09:44 FROGGS ohh, nice
09:44 donaldh we just need to change Test::Util to use $*EXECUTABLE instead of $*EXECUTABLE_NAME
09:45 masak +1
09:45 masak though it's weird that we have both of those variables.
09:45 masak they're a bit unfortunately named, no?
09:46 masak I mean, either of them in isolation would've been fine, but...
09:46 FROGGS masak: we are in transition from $*EXECUTABLE_NAME to $*EXECUTABLE
09:46 donaldh Ah, no wait. I had already hacked perl6-eval-server to hard-code perl6-j
09:47 FROGGS donaldh: btw, $*EXECUTABLE might be wrong on parrot before it is installed
09:47 FROGGS ahh
09:47 donaldh let me check again
09:47 FROGGS yeah, I feared it is not that easy
09:47 Psyche^_ joined #perl6
09:47 FROGGS I think $*EXECUTABLE_NAME is $*EXECUTABLE.basename
09:47 FROGGS so, both should be right or wrong
09:47 FROGGS (except for the path)
09:50 donaldh Yep both are perl6-eval-server (full path and basename)
09:50 donaldh s/eval-server/j/ in EvalServer.java ?
09:51 donaldh Or fix it in the perl6-eval-server runner?
09:51 masak FROGGS: if one can be deduced from the other, isn't it dangerous to have them sitting around in two variables? what if one of them changes?
09:52 donaldh EXECUTABLE_NAME will get deprecated at some point but is currently used.
09:52 FROGGS true, we need to fix parrot first
09:52 FROGGS (which is not easy btw)
09:54 donaldh Any solution to this is a hack because perl6-eval-server is a hack :-)
09:56 donaldh It is easiest to fix in EvalServer.java because if we try and fix it in perl6-eval-server, we'd need to figure out how to do string substitution on both Windows and Unixy
10:15 ChoHag After persuading the new dyncall to build with PIC - no easy task - rakudo built parrot through to the end.
10:22 FROGGS ChoHag: can you provide a diff/pull request?
10:23 ChoHag No. I didn't fix it.
10:23 ChoHag I just got dyncall to build by hand.
10:23 ChoHag However now I've confirmed that it does indeed fix it, I can get on that.
10:23 ChoHag Whan rakudo finishes building.
10:23 FROGGS nice
10:26 ChoHag or not. SIGKILL during parse of /usr/local/bin/perl5.20.0 tools/build/gen-cat.pl parrot (lots of .pm files) > gen/parrot/CORE.setting
10:27 ChoHag Why would it be KILLd?
10:27 FROGGS O.o
10:27 ChoHag What does the killing?
10:27 FROGGS I dunno
10:28 FROGGS that is just Perl 5 fiddling with text files
10:28 ChoHag 1GB RAM not enough?
10:28 FROGGS should be enough for Perl 5
10:28 ChoHag Ohhhh yes. 5.
10:28 ChoHag Weird.
10:28 ChoHag No wait. It says this:
10:28 FROGGS 1GB is a problem for rakudo@parrot and rakudo@jvm though
10:29 ChoHag ./perl6-p --setting=NULL --ll-exception --optimize=3 --target=pir --stagestats --output=src/gen/p-CORE.setting.pir gen/parrot/CORE.setting
10:29 ChoHag So it's 6. Sanity restored.
10:29 FROGGS IIRC r@p takes about 650MB for a hallo world
10:29 FROGGS k
10:29 FROGGS MoarVM is your friend then
10:29 ChoHag Meh. It's a VM.
10:29 FROGGS (limit resources was one of its goals btw)
10:30 FROGGS limited*
10:30 FROGGS everything is a VM nowadays
10:30 tadzik OS is a VM :)
10:30 ChoHag Yeah. I realised that wasn't exactly clear.
10:30 ChoHag Each pid is a VM - its own little virtual unix.
10:31 ChoHag Oh no I'm going to get started on about docker if this one goes on.
10:32 ChoHag I meant I'm building rakudo inside kvm and can easily increase the available ram.
10:33 donaldh joined #perl6
10:33 thou joined #perl6
10:34 brrt joined #perl6
10:34 ChoHag aaand it passed.
10:35 ChoHag Rakudo builds in full on parrot and moar on an updated stock freebsd 10-release.
10:35 ChoHag (amd64/kvm/amd64)
10:35 ChoHag Needs >1GB RAM
10:36 FROGGS \o/
10:39 ChoHag Just need to persuade dyncall to build with PIC
10:39 ChoHag Also I say amd64, it's actually intel.
10:40 dalek Perlito: 4d01fd7 | (Flavio S. Glock)++ | src5/lib/Perlito5/Javascript2/Emitter.pm:
10:40 dalek Perlito: Perlito5 - js - create an additional scope for variables declared in 'for' list
10:40 dalek Perlito: review: https://github.com/fglock/Perlito/commit/4d01fd7c2a
10:41 ChoHag Right. I spent so long getting that installed I can't remember why I wanted it.
10:41 ChoHag However while you're here, and in lieu of a proper report on the matter, the debugger (moar and parrot) doesn't work.
10:42 SamuraiJack joined #perl6
10:42 ChoHag As soon as it hits a statement:
10:42 ChoHag [bash]mking@egwene$ perl6-debug-p
10:42 ChoHag > say 1
10:42 ChoHag Start argument to substr out of range. Is: -1, should be in 0..0
10:43 ChoHag The ensuing trace differs between moar and parrot, which I presume is expected.
10:43 jnthn ChoHag: Yes, somebody reported that as broken on latest yesterday. Nobody got to it yet. I'll get to it tomorrow if I'm not beaten to it.
10:44 * jnthn suspects some change elsewhere mighta done it.
10:44 ChoHag Dear god no!
10:44 ChoHag Bloody developers. Always changing things.
10:44 FROGGS yeah :/
10:44 jnthn Well, that's how development happens...
10:44 FROGGS I tell them if I got one
10:44 FROGGS jnthn: psst!
10:45 FROGGS we are just the suffering first line :o)
10:46 ChoHag Users on one side, devs on the other, manglers over all. It's a wonder I stay sane.
10:46 FROGGS *g*
10:48 rom1504 joined #perl6
10:48 FROGGS jnthn: it is about Version.new
10:49 jnthn FROGGS: "it"?
10:49 FROGGS the substr error
10:49 jnthn Oh
10:50 FROGGS m: say $*DISTRO.version
10:50 camelia rakudo-moar beb052: OUTPUT«v3.2.0.37.generic␤»
10:50 FROGGS m: say $*PERL.version
10:50 camelia rakudo-moar beb052: OUTPUT«vunknown␤»
10:50 FROGGS O.o
10:51 jnthn FROGGS: Now that we actually have perl6-debug in the Rakudo repo, we can include the proper version information in it, rather than the fake stuff (see hll-config in the source) it used when it was in another repo.
10:51 masak haha, "vunknown" :P
10:53 ChoHag masak: You can't laugh. ufo has bugs too.
10:53 ChoHag <name> should be .name, and $path can't be .split because it's not a string.
10:53 ChoHag I forget the line numbers.
10:54 FROGGS I remember that too
11:04 lizmat good *, #perl6!
11:04 FROGGS hi lizmat
11:05 lizmat seems the last change breaks building on parrot
11:05 lizmat https://gist.github.com/lizmat/420648c5184ba6389bc3
11:05 ChoHag What happened to the -X functions?
11:06 FROGGS -.-
11:06 FROGGS ahh, it is just our configure line
11:06 integral joined #perl6
11:07 FROGGS we can steal from MoarVM there too
11:07 ChoHag Don't forget to make it build with PIC where it needs it.
11:13 fhelmberger joined #perl6
11:19 anaeem1_ joined #perl6
11:24 fhelmberger joined #perl6
11:33 colomon 163 modules passed the smoke test overnight.  think that's the highest I've ever seen.
11:42 BeigeCougar joined #perl6
11:47 dalek rakudo/nom: d5fdd24 | (Elizabeth Mattijsen)++ | src/core/Distro.pm:
11:47 dalek rakudo/nom: Some $*DISTRO.release related tweaks
11:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d5fdd247df
11:47 BeigeCougar_ joined #perl6
11:47 lizmat wow, with these changes, I finally get the jvm spectest to an end:
11:47 lizmat Files=887, Tests=31414, 1256 wallclock secs ( 5.35 usr  2.92 sys + 17.99 cusr  4.33 csys = 30.59 CPU)
11:48 lizmat but what a weird amount of CPU used  :-)
11:49 lizmat also: this was with TEST_JOBS=1
11:50 lizmat afk for a bit
11:50 carlin joined #perl6
11:51 masak ChoHag: thanks for the bug reports. hint: I'm more likely to get to them if they show up in https://github.com/masak/ufo/issues
11:54 ChoHag Yeah I have a fork and patch on the agenda.
11:57 masak najs.
12:00 dalek Perlito: f09fe6d | (Flavio S. Glock)++ | / (2 files):
12:00 dalek Perlito: Perlito5 - update bootstrap code
12:00 dalek Perlito: review: https://github.com/fglock/Perlito/commit/f09fe6dbef
12:00 immortal joined #perl6
12:00 immortal joined #perl6
12:01 dalek roast: 63d2915 | (Elizabeth Mattijsen)++ | S02-magicals/VM.t:
12:01 dalek roast: Make sure test count is ok on JVM
12:01 dalek roast: review: https://github.com/perl6/roast/commit/63d2915cc5
12:06 dalek roast: c6d7463 | (Elizabeth Mattijsen)++ | S02-magicals/VM.t:
12:06 dalek roast: Some more fudging for JVM
12:06 dalek roast: review: https://github.com/perl6/roast/commit/c6d74632b8
12:07 lizmat really afk now
12:21 brrt left #perl6
12:22 thou joined #perl6
12:23 jnap joined #perl6
12:25 rurban joined #perl6
12:26 * [Coke] begins to wade through grumpy backscroll, stops, realizes that he should get a coffee first.
12:29 colomon o/
12:34 colomon specs seem to say that something like --counts-only is a valid command line argument for MAIN, but when I actually try it I get Usage: diff-report.pl [--counts-only=<Any>] <before> <after>
12:35 colomon can work around by just making MAIN a multi, but this is less elegant than I expect from p6.  :)
12:35 donaldh try Bool
12:37 carlin panda's t/installer.t segfaults on moar, works with spesh disabled
12:37 colomon oh, no, the problem was that I was putting the --counts-only flag at the end of the command line.  everything seems to work as expected if I put it at the beginning.
12:37 colomon (reading more of the spec)++
12:38 * woolfy wants to compliment all regular #perl6-people for ultimate proof of friendliness and helpfullness.   I love you all with great huge love (I know, should be all-caps).
12:38 woolfy So #perl6++
12:38 colomon carlin: if you've got the time, figuring out what moar commit broke that would be handy.  jnthn asked me if I could look into it, but I'm busy with $work.  (Yes, coding scripts in p6 for work.  :)
12:39 * [Coke] is now caffienated… just in time for $dayjob.
12:39 [Coke] happy UGT, everyone.
12:39 colomon carlin: I did trace it as far rakudo's commit 408ebb9738d468cb996a8b70ea9eae4629a5b1a7
12:40 colomon carlin: so the problem moar commit is between 2180903 and g7a36ff2
12:41 carlin colomon: thanks, I'll see if I can find it
12:44 [Sno] joined #perl6
12:53 dalek roast: a599638 | (Elizabeth Mattijsen)++ | S02-magicals/pid.t:
12:53 dalek roast: Unfudge passing test on jvm
12:53 dalek roast: review: https://github.com/perl6/roast/commit/a599638714
12:54 lizmat seems all the tests doing "is_run" are now broken on rakudo.jvm
12:54 [Coke] lizmat++
12:54 [Coke] O_o?
12:54 [Coke] lizmat: presumably because of going through the eval server.
12:55 lizmat perhaps: errors such as:
12:55 lizmat #      got err: "Usage: org.perl6.nqp.tools.EvalServer [-bind-stdin] -cookie <name-for-access-token-file> -app <main-class>\n"
12:55 dalek rakudo-star-daily: 7462a88 | coke++ | log/ (13 files):
12:55 dalek rakudo-star-daily: today (automated commit)
12:55 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/7462a88294
12:58 [Coke] yup, that's new.
12:58 [Coke] are you seeing these locally or in the daily roast output, OOC?
12:59 masak lizmat: there's backlog about that around 11:30 UTC+2
12:59 [Coke] rakudo.parrot is the only clean R*
12:59 donaldh lizmat: [Coke]: see backtrace
13:00 guru joined #perl6
13:00 [Coke] (oh wait, can't be daily roast, ecause I haven't posted one yet)
13:00 donaldh here forwards http://irclog.perlgeek.de/perl6/2014-06-10#i_8847148
13:01 donaldh simplest hack (I have a patch ready) is to modify perl6.execname within EvalServer.java
13:01 [Coke] lizmat: S02-magicals/pid.rakudo.parrot 1 todo PASSED: assigning to $*PID does not die
13:01 xinming joined #perl6
13:02 lizmat donaldh: waiting for your patch yhen
13:02 [Coke] integration/advent2009-day23.rakudo.parrot.........      1 skipped: lists aren't properly lazy in Rakudo yet  [ I am dubious! ]
13:02 donaldh lizmat: do you see two failures in filestat.t ? Or are they maybe OSX specific?
13:03 lizmat [Coke]: that's fine, but rakudo.parrot doesn't even build for me atm
13:03 [Coke] only mentioned it because I think you just unfudged that for jvm.
13:03 [Coke] (pulling that off yesterday's roast run)
13:03 lizmat donaldh: t/spec/S16-filehandles/filestat.t passes fine for me on OSX
13:04 lizmat (and jvm)
13:04 dalek nqp: 8a47b77 | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/nqp/tools/EvalServer.java:
13:04 dalek nqp: Work around perl6.execname being set to perl6-eval-server
13:04 dalek nqp: review: https://github.com/perl6/nqp/commit/8a47b77256
13:05 * donaldh hmmmm
13:06 * donaldh thinks we can unfudge the IO-Socket-INET tests on JVM now that we have permgen and working is_run
13:06 lizmat donaldh: maybe we also need an NQP version bump?
13:07 donaldh lizmat: yes, that too :)
13:08 donaldh bbl
13:15 lizmat ok, what was the magic git incantation again to get the tag to be used for NQP_REVISION
13:16 * lizmat promises to remember this time
13:16 moritz 'git tag' in nqp/
13:16 lizmat that gives me a list of tags ?
13:16 donaldh joined #perl6
13:16 lizmat LizyPro-2:nqp liz$ git tag
13:17 lizmat 2011.05
13:17 lizmat 2011.06
13:17 lizmat 2011.09
13:17 lizmat etc.
13:17 jnthn git describe ?
13:17 lizmat that's the one
13:17 moritz erm, yes, sorry
13:17 lizmat jnthn++
13:17 * moritz confused
13:17 jnthn git describe --match 2* # makes sure you get an appropriate tag
13:19 dalek rakudo/nom: 54796d5 | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION:
13:19 dalek rakudo/nom: Bump NQP revision to get donaldh++ jvm patches
13:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/54796d5b37
13:20 lizmat jnthn: just git describe gives the same, but that may not always be the case?
13:20 jnthn lizmat: There's a risk of getting the relesae's code name
13:20 jnthn Since both are the "most recent" tag
13:21 lizmat ok
13:22 pdcawley joined #perl6
13:22 treehug88 joined #perl6
13:23 lizmat meanwhile, parakudo's build is still broken ...  :-(
13:30 dalek roast: 128464c | (Elizabeth Mattijsen)++ | S02-magicals/pid.t:
13:30 dalek roast: Unfudge for parrot
13:30 dalek roast: review: https://github.com/perl6/roast/commit/128464c8c4
13:30 lizmat [Coke]++
13:31 skids joined #perl6
13:32 lizmat is_run seems to be ok again now on jvm, donaldh++
13:32 hummeleB1 joined #perl6
13:34 donaldh just slow
13:35 rurban joined #perl6
13:35 * lizmat don't cares about slow atm  :-)
13:36 lizmat .oO( doesn't care about grammar either )
13:38 * donaldh needs to implement watch_path on JVM
13:39 ggoebel111116 joined #perl6
13:41 dalek rakudo/nom: a9d9412 | (Elizabeth Mattijsen)++ | docs/ChangeLog:
13:41 dalek rakudo/nom: Mention $*USER and $*GROUP
13:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a9d9412a2a
13:43 SamuraiJack joined #perl6
13:44 dalek roast: f0e0cee | (Donald Hunter)++ | S32-io/IO-Socket-INET.t:
13:44 dalek roast: Unfudge INET tests on JVM.
13:44 dalek roast: review: https://github.com/perl6/roast/commit/f0e0cee9c9
13:46 molaf joined #perl6
13:47 rurban joined #perl6
13:47 dalek Perlito: ee86608 | (Flavio S. Glock)++ | / (3 files):
13:47 dalek Perlito: Perlito5 - js - fix autovivification in string scalar dereference # ${'VAR'}
13:47 dalek Perlito: review: https://github.com/fglock/Perlito/commit/ee86608a0f
13:49 zengargoyle joined #perl6
13:52 moritz huh, yesterday m-spectest was a mess, today (on a different machine) it's all clean
13:55 ggoebel111116 joined #perl6
13:55 sqirrel joined #perl6
13:55 BeigeCougar left #perl6
13:55 sqirrel joined #perl6
13:57 moritz still lots of fails on the other machine
13:58 colomon differences between the machines?
13:59 moritz failing machine: ubuntu 14.04
13:59 moritz OK machine: Mint
13:59 moritz OK machine has twice the RAM (8 vs. 4 GB)
14:00 moritz FAIL machine has gcc 4.8.2, OK machien has gcc 4.7.2
14:01 * colomon fires up a moar build on his ubuntu box
14:02 * moritz tries with gcc 4.7 on the FAIL machine
14:03 FROGGS lizmat: does that help? https://gist.github.com/FROGGS/0d55f25d9932fc3eba1e
14:03 FROGGS that is an nqp patch btw
14:03 lizmat FROGGS: will try
14:03 FROGGS thank you
14:04 kivutar joined #perl6
14:08 thou joined #perl6
14:08 lizmat seems to build with these changes, at least on OSX
14:09 FROGGS nice
14:09 FROGGS works for me also
14:10 bluescreen10 joined #perl6
14:11 dalek nqp: 69c7822 | (Tobias Leich)++ | Configure.pl:
14:11 dalek nqp: fix building dyncall on osx
14:11 dalek nqp:
14:11 dalek nqp: Dyncall v0.8 does not support flags like --target-x64 anymore.
14:11 dalek nqp: review: https://github.com/perl6/nqp/commit/69c782202f
14:11 * moritz hopes that doesn't break darwin 32 bit
14:12 dalek rakudo/nom: 0a4adcc | (Tobias Leich)++ | tools/build/NQP_REVISION:
14:12 dalek rakudo/nom: bump nqp rev for dyncall configure fix
14:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0a4adcc7d9
14:12 FROGGS moritz: then MoarVM would have been broken
14:15 lizmat JVM: Files=887, Tests=31413, 2243 wallclock secs ( 5.17 usr  2.85 sys + 18.28 cusr  4.28 csys = 30.58 CPU)
14:15 lizmat only 2 files with test failures
14:15 lizmat errands&
14:24 colomon moritz: ubuntu 12.10 with gcc-4.7.2 latest moar spectests clean
14:26 colomon panda still fails
14:31 kaare_ joined #perl6
14:38 dmol joined #perl6
14:44 moritz still lots of FAIL on failhost and gcc-4.7.3
14:45 FROGGS moritz: what are the fails about?
14:46 moritz FROGGS: lots of diverse tests (S32-temporal, integration/advent*, S32-num, S32-io) dying with "No subtests run"
14:47 FROGGS hmmmm
14:47 moritz Unhandled exception: Cannot find method 'Stringy': no method cache and no .^find_method at <unknown>:1  (././CORE.setting.moarvm:print_exception:4294967295)
14:49 [Coke] looks like 7ca23fd killed the jvm spectest run for me.
14:49 [Coke] can we revert that and go back to the first setting?
14:49 dalek perl6-roast-data: 2db3a33 | coke++ | / (5 files):
14:49 dalek perl6-roast-data: today (automated commit)
14:49 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/2db3a339ca
14:50 [Coke] sorry, I didn't actually check that that particular commit was the problem. but it worked at 15002e3
14:50 FROGGS moritz: do you have more of that backtrace?
14:51 [Coke] looks like S02 passed 3053 tests, and then after that, everything aborted.
14:51 [Coke] first failure was S02-magicals/VM.rakudo.jvm aborted 1 test(s)
14:52 [Coke] rakudo.moar still clean!!
14:52 [Coke] rakudo.parrot has 7 failures that need fudging and RTs.
14:54 FROGGS sergot: that should be interesting for you -----^    :o)
14:54 colomon didn't lizmat++ say this morning that parrakudo wouldn't build?
14:55 moritz FROGGS: http://perlpunks.de/paste/show/53971c55.7bff.d3
14:55 colomon "meanwhile, parakudo's build is still broken ...  "
14:55 FROGGS colomon: I broke and fixed it today
14:55 colomon FROGGS++
14:56 brrt joined #perl6
14:56 FROGGS moritz: that is not very much :/
14:56 FROGGS something NULLish sneaks into the to be created exception
14:56 FROGGS not really NULLish, but at least Muish
14:59 dalek Perlito: d629c6a | (Flavio S. Glock)++ | / (3 files):
14:59 dalek Perlito: Perlito5 - js - fix autovivification in string dereference # push @{"VAR"}, $v
14:59 dalek Perlito: review: https://github.com/fglock/Perlito/commit/d629c6a9bd
15:04 sergot FROGGS: thanks :)
15:05 FROGGS sergot: you got that wrong... that means work for you :o)
15:05 mr-fooba_ joined #perl6
15:06 FROGGS but it is good to not start on the release day, instead having an overview a few days before is better
15:06 FROGGS bbiab
15:07 rurban_ The new parrot 6.5.0 will probably have a new vtable method optimization for writers. (our gsoc project). many unneeded or duplicate write barriers can be omitted now, and a nested method call from the method into a _orig and then out to do a GC write barrier is now gone. rakudo-p tested fine. I'll look out for such WB opportunities with nqp and perl6 PMC's
15:07 [Coke] colomon: parrakudo worked for me as of...
15:07 colomon [Coke]: FROGGS says he fixed lizmat's bug already today.
15:07 [Coke] beb0525
15:08 rurban_ This branch: https://github.com/parrot/parrot/commits/rurban/pmc2c_orig2-gh1069
15:08 [Coke] rurban++ thanks.
15:08 [Coke] If you make it a pull request, we can combine it with a bump to the latest parrot version required.
15:08 carlin looks like 6efc152b61 is the moar commit that broke panda's installer.t
15:09 carlin This is perl6 version 2014.05-143-g408ebb9 built on MoarVM version 2014.05-10-g56a9b99 / ok 8 - moarvms will get installed after rest of the things
15:09 carlin This is perl6 version 2014.05-143-g408ebb9 built on MoarVM version 2014.05-11-g6efc152 / Segmentation fault (core dumped)
15:09 rurban_ [Coke]: So we only tested for correctness. perl6 performance later. We expect something in between 2-4%, could be 5% or 0% also.
15:11 jnthn carlin: Interesting; thanks.
15:16 donaldh joined #perl6
15:21 bluescreen100 joined #perl6
15:25 [Coke] rurban_: someone's running benchmark stats, I presume they'll pick it up.
15:29 rurban_ Our gsoc branch is not yet merged, still torture testing it
15:35 timotimo http://p6weekly.wordpress.com/?p=175&amp;shareadraft=539725c065f6b - i'd really like some feedback
15:35 timotimo rurban_: i've mentioned your gsoc student't changes there, but i'm not sure if i described it correctly
15:39 timotimo also, i'd love more hints for interesting stuff that's happened :)
15:39 rurban_ Chirag Agrawal and Reini Urban had been improving parrot’s pmc2c and PMCs by removing nested method calls and unneeded write barriers. It doesn’t break the rakudo build, but performance measurements are still to be done.
15:40 timotimo that sounds good, thank you!
15:40 rurban_ PMC write barriers can now also be manually optimized
15:40 rurban_ most of the parrot WB optimizations were done manually by looking at the control flow and remove duplicates
15:41 timotimo ah, hm
15:41 rurban_ See https://github.com/parrot/parrot/commit/46a7866acb6093a1a280c32a9db4a72efdbc1eb5
15:43 rurban_ I'm just benching rakudo-p now. parrot master against the new branch
15:44 rurban_ So if you can wait 1639 secs :)
15:44 rurban_ parrot -O2 was also not benched yet with rakudo-p
15:46 timotimo i can wait that long!
16:00 fhelmberger joined #perl6
16:04 dalek ecosystem: 0fa7aa8 | Matt++ | META.list:
16:04 dalek ecosystem: Added the start of the Stats modules
16:04 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/0fa7aa8534
16:04 Ulti timotimo you could add that ^ it's not exactly great code and doesn't do much yet :S
16:04 Ulti it does however exist which is better than non existant code
16:05 Ulti *maybe*
16:06 timotimo ah, you've been talking about that for a while
16:06 Ulti well asking for help in doing it for a while, it was originally part of my bioinfo modules but was getting kind of weird to have it in there
16:07 timotimo mhm
16:07 Ulti not really ready to put that up yet, especially as the parallel parsing is super buggy and some of the time segfaults moar
16:08 timotimo oh
16:08 timotimo mhm
16:09 ChoHag I'm playing with threads in moar and the stdout/err of the (only) subthread is being squashed by the output of the parent thread.
16:10 ChoHag In fact in linux the subthread's output doesn't appear at all. In freebsd it's random.
16:10 Ulti I'm on OSX which I guess is most similar to freebsd
16:10 denis_boyun_ joined #perl6
16:11 Ulti haven't really been printing to STDOUT in parallel though more building lists of objects
16:11 pdcawley joined #perl6
16:11 treehug8_ joined #perl6
16:11 timotimo hm, there's a lock in there that'll serialize accesses to the stdout and such
16:12 timotimo not exactly sure why it'd omit output from subthreads
16:12 ChoHag Yeah I don't know that I plan to do that, but I'm just building the shape now with says all over the place.
16:12 timotimo can you paste code that shows that problem?
16:13 ChoHag What's the channel's favourite paster?
16:14 moritz ChoHag: gist.github.com
16:14 timotimo aye, our evalbot can run code directly off of gist (but not secret gists)
16:15 FROGGS joined #perl6
16:16 ChoHag https://gist.github.com/anonymous/1606248d28b4f1430e88
16:17 timotimo hm, not actually sure what :every(0) will do
16:19 ChoHag It's just multiplied by 1000 and passed to nqp::timer
16:19 timotimo is there a reason you're building your own TPS and then cue instead of just using a start block?
16:20 ChoHag Playing.
16:20 ChoHag That is literally all of the code I have written so far. I'm still exploring what fits best.
16:21 timotimo OK
16:21 ChoHag And, as ever, don't quite know what I hope to achieve.
16:21 molaf_ joined #perl6
16:21 ChoHag I'd be a terrible project manager. "Just do the thing that's in my head, incomplete."
16:21 timotimo :)
16:22 PerlJam ChoHag: that's what I tell my minions!
16:22 ChoHag Does it work?
16:22 PerlJam ChoHag: oh, and I change my mind every so often too just to keep things lively.
16:23 PerlJam ChoHag: It would work better if I had better minions.
16:23 ChoHag Well of course. The picture's incomplete and thus, when examined in too much detail, naturally rube-golber-esque.
16:23 PerlJam (so, no, it does not work)
16:23 FROGGS timotimo: I feedbacked your draft
16:24 ChoHag Then fixes that makes the inconsistency just pop up in a previously completed part.
16:24 timotimo FROGGS: thanks :)
16:24 ChoHag fixing. My grammar's terrible sometimes.
16:25 ChoHag timotimo: I remember now. I had a vague idea about controlling $!max_threads
16:25 timotimo ah
16:26 FROGGS jnthn: I get this in v5: Cannot find method 'package_at_key': no method cache and no .^find_method
16:26 timotimo well, if you get a "my $*SCHEDULER", you can use "start" and friends with your own scheduler
16:26 ChoHag Oh that's easier.
16:26 ChoHag Can I just do that at the top of the class?
16:26 FROGGS jnthn: is that like the err message about .item where it should say instead that I have to declare the sub signature with Mu?
16:28 Rotwang joined #perl6
16:29 timotimo ChoHag: since $* are dynamic variables, it's important that it's "outside" whatever it's influencing "on the stack"
16:29 jnthn FROGGS: Perhaps so
16:29 timotimo that was a terrible description.
16:29 timotimo you should just set it in the BUILD i think
16:29 ChoHag Interestingly if I don't say anything except the two notes (or says) inside the inner-most loop, nothing is said under any circumstances. Even randomly in freebsd.
16:31 ChoHag If only the inner thread communicates, and starts doing so before the loop{}, its output gets through entirely.
16:32 timotimo huh. perhaps the thread actually threw an exception
16:32 timotimo and i have no idea what your :catch thing does
16:32 ChoHag Not work.
16:33 ChoHag It's an exploratory wart.
16:34 timotimo it could very well be that you gave the job a thing that's supposed to be called when an exception happens, you give it a variable without a value and then somehow you cause an exception to be thrown
16:35 jnthn The thing given to catch is supposed to be some piece of code that takes the exception and does something with it.
16:36 jnap joined #perl6
16:38 jnap1 joined #perl6
16:39 ChoHag Ah I think that's it.
16:39 ChoHag Looks like it's trying to instantiate the Channel inside the thread (or in both threads).
16:39 ChoHag Unhandled exception in code scheduled on thread 34504231936
16:39 ChoHag Internal error: inconsistent bind result
16:39 ChoHag At $!c.receive
16:40 ChoHag If I create $!c rather than relying on the lazy default, the problem seems to go away.
16:41 timotimo ah, it may do that after BUILD is run through?
16:41 timotimo in which case the thread will be unhappy if it trips over that
16:42 ChoHag Could be.
16:42 ChoHag I can't remember if it happened before BUILD became BUILD.
16:43 ChoHag Yes changing it back to a hand-called method seems to kill the problem too.
16:44 ChoHag Well the thread shouldn't start running at BUILD time anyway.
16:45 timotimo yes, that sounds like a good idea :)
16:54 raiph joined #perl6
16:55 vendethiel joined #perl6
16:59 ajr joined #perl6
17:02 timotimo TBH, i'd have written that code completely without the class, but that's just me :)
17:02 ChoHag Well yes. I considered removing it before pasting.
17:02 ChoHag But then who wants code which does that?
17:03 ChoHag It's a tad incomplete.
17:07 treehug88 joined #perl6
17:11 BeigeCougar joined #perl6
17:16 brrt joined #perl6
17:18 brrt left #perl6
17:19 timotimo rurban_: were you successful with the benchmarking yet?
17:22 spider-mario joined #perl6
17:24 jpwillis_ joined #perl6
17:25 flussence D uses Sets for something pretty clever: http://dlang.org/phobos/std_uni.html#Synopsis
17:25 BeigeCougar joined #perl6
17:32 rurban joined #perl6
17:33 rurban_ timotimo: was in a meeting. I got 1642s down to 1639s, so no big deal yet
17:33 rurban_ will try later when parrot PMC's we are better
17:43 dmol joined #perl6
17:44 Alina-malina joined #perl6
17:51 TimToady timotimo: you could add my two STD patches, also as lhf to move to rakudo
17:58 rurban joined #perl6
18:00 user6 joined #perl6
18:02 Alina-malina joined #perl6
18:02 user6 left #perl6
18:02 telex joined #perl6
18:03 hoverboard joined #perl6
18:03 rurban joined #perl6
18:04 rindolf joined #perl6
18:07 rurban_ timotimo: Ulti? Not Util?
18:08 ChoHag Does perl 6 have method modifiers (before/after/etc) like Moose?
18:09 FROGGS ChoHag: no, but you can wrap methods
18:11 jnthn Also, it's not hard to implement them in module space, given there's a MOP
18:11 jnthn Also there's deferal (nextsame/callsame/nextwith/callwith) that fill many of the things you might use method modifiers for.
18:11 ChoHag How does wrap work?
18:12 ChoHag Specifically, what's the difference between those 4?
18:13 ChoHag How do you call wrap, for that matter?
18:17 FROGGS m: sub wrapper(\a) { say "before"; callwith(|a); say "after" }; sub foo($a) { say "foo $a" }; my $wrapped = &foo.wrap(&wrapper); foo(42)
18:17 camelia rakudo-moar 0a4adc: OUTPUT«before␤foo 42␤after␤»
18:17 Mouq joined #perl6
18:17 FROGGS m: sub wrapper(\a) { say "before"; callwith(|a); say "after" }; sub foo($a) { say "foo $a" }; &foo.wrap(&wrapper); foo(42); &foo.unwrap; foo(21)
18:17 camelia rakudo-moar 0a4adc: OUTPUT«before␤foo 42␤after␤Not enough positional parameters passed; got 1 but expected 2␤  in method unwrap at src/gen/m-CORE.setting:3340␤  in block  at /tmp/uuEhz8a6xM:1␤␤»
18:17 FROGGS m: sub wrapper(\a) { say "before"; callwith(|a); say "after" }; sub foo($a) { say "foo $a" }; &foo.wrap(&wrapper); foo(42); &foo.unwrap(&wrapper); foo(21)
18:17 camelia rakudo-moar 0a4adc: OUTPUT«before␤foo 42␤after␤Cannot unwrap routine: invalid wrap handle␤  in method unwrap at src/gen/m-CORE.setting:3341␤  in block  at /tmp/heC8HUA7mZ:1␤␤»
18:17 FROGGS ahh
18:18 FROGGS m: sub wrapper(\a) { say "before"; callwith(|a); say "after" }; sub foo($a) { say "foo $a" }; my $w = &foo.wrap(&wrapper); foo(42); &foo.unwrap($w); foo(21)
18:18 camelia rakudo-moar 0a4adc: OUTPUT«before␤foo 42␤after␤foo 21␤»
18:18 ChoHag Where are the meanings of \a and |a (and callwith etc.) defined/explained?
18:19 FROGGS S06:1235
18:19 synopsebot Link: http://perlcabal.org/syn/S06.html#line_1235
18:19 FROGGS err
18:19 ChoHag Close enough.
18:19 FROGGS http://perlcabal.org/syn/S06.html#Wrapping
18:20 pippo joined #perl6
18:25 FROGGS btw, is a QAST::WVal(Array) legit? I see one in a QAST::Stmts, even in perl6-m --target=ast -e 1
18:25 rurban joined #perl6
18:26 itz joined #perl6
18:26 pippo o/ #perl6
18:27 FROGGS hi pippo
18:30 pippo hi FROGGS
18:52 guru joined #perl6
18:52 itz joined #perl6
18:53 pippo m: grammar G {rule TOP {^AA' '<one> <two> <three>$}; rule one {[\w+' ']*}; rule two {[\w+' ']*}; token three {[\w+' ']+}}; say G.parse("AA 111 11 11    3 3 333 ");
18:53 camelia rakudo-moar 0a4adc: OUTPUT«(Any)␤»
18:53 pippo m: grammar G {rule TOP {^AA' '<one> <two> <three>$}; rule one {[\w+' ']*}; rule two {[\w+' ']*}; token three {[\w+' ']+}}; say G.parse("AA 111 11 11  2  3 3 333 ");
18:53 camelia rakudo-moar 0a4adc: OUTPUT«「AA 111 11 11  2  3 3 333 」␤ one => 「111 11 11 」␤ two => 「2 」␤ three => 「3 3 333 」␤␤»
18:54 pippo Anybody can explain me why the first does not work? It should since rule <two> is allowed to be empty. No?
18:57 atta joined #perl6
18:58 kivutar joined #perl6
19:03 geekosaur but two is not actually empty in that case, since the trailing space is tied to the token so the extra spacing fails both two and three?
19:04 geekosaur you want the spaces in TOP instead of the rules, I think
19:05 dwarring joined #perl6
19:05 geekosaur lemme rephrase that as I am not using token and rule consistently there
19:05 geekosaur the extra spacing is only parsed if you parsed a \w+
19:06 geekosaur so if rule two does not match, your extra spacing interferes with token three matching
19:07 kivutar joined #perl6
19:09 Mouq joined #perl6
19:11 Mouq o/ #perl6
19:11 yoleaux 24 May 2014 05:42Z <lizmat> Mouq: I'll add tests then
19:11 Mouq Thanks lizmat!
19:12 Mouq What's the usual --prefix people on Debian/Ubuntu use for their Perl 6 configuration, if any they use one?
19:12 Mouq s/any//
19:14 * Mouq just goes with /usr/local for now
19:15 sqirrel joined #perl6
19:16 thrakcattack joined #perl6
19:20 pippo geekosaur: but in the TOP rule the space between <two> and <three> should be getting those?
19:21 pippo geekosaur: no?
19:24 Mouq pippo: I believe <one> and <two> eat up the "111 11 11 " and "3 3 333 " respectively
19:24 Mouq pippo: And then <three> doesn't have anything to match
19:24 Mouq pippo: I'm not sure if it's supposed to backtrack in this case
19:25 pippo o/ Mouq. I have put rules in there to allow backtracking indeed...
19:25 pippo o/ Mouq. I have put rules and not tokens in there to allow backtracking indeed...
19:25 Mouq pippo: Perhaps you want 'regex' instead
19:25 PerlJam pippo: neither rule nor token backtrack
19:26 Mouq You can try regex TOP { :s ... } if you want sigspace
19:27 pippo OH! So do I have to declare TOP as a regex? I'll try...
19:27 PerlJam pippo: or use :!ratchet if you declare it as a rule.
19:29 Mouq m: say "aabbccd" ~~ token { b .* cc }
19:29 camelia rakudo-moar 0a4adc: OUTPUT«Nil␤»
19:29 Mouq m: say "aabbccd" ~~ token { :!ratchet b .* cc }
19:29 camelia rakudo-moar 0a4adc: OUTPUT«「bbcc」␤␤»
19:29 Mouq m: say "aabbccd" ~~ token { :!r b .* cc }
19:29 camelia rakudo-moar 0a4adc: OUTPUT«「bbcc」␤␤»
19:29 Mouq Sweeet
19:29 Mouq I expected NYI
19:30 PerlJam (honestly I wasn't sure myself, but I felt there was a > 60% chance it was implemented :)
19:31 pippo m: grammar G {rule TOP {:!r ^AA' '<one> <two> <three>$}; rule one {[\w+' ']*}; rule two {[\w+' ']*}; token three {[\w+' ']+}}; say G.parse("AA 111 11 11    3 3 333 ");
19:31 camelia rakudo-moar 0a4adc: OUTPUT«(Any)␤»
19:31 pippo m: grammar G {rule TOP {:!r ^AA' '<one> <two> <three>$}; rule one {:!r [\w+' ']*}; rule two {:!r [\w+' ']*}; token three {[\w+' ']+}}; say G.parse("AA 111 11 11    3 3 333 ");
19:31 camelia rakudo-moar 0a4adc: OUTPUT«(Any)␤»
19:32 pippo :-(
19:32 geekosaur afaik you need an explicit space the same way one is already in TOP? note that ' '
19:32 geekosaur and similar in rule two and token three
19:34 geekosaur unquoted space is not relevant as part of a pattern; perl 6's regexes are like perl 5's /x regexes, except that things like ' ' work to quote (in perl 5 you have to use \s)
19:34 geekosaur basically perl 6 regex is an actual language
19:34 Mouq geekosaur: Not in the case of 'rule'
19:35 Mouq pippo: I don't know what the problem is there...
19:35 * Mouq needs to figure out if there's a way to do copy+paste in xterm without a mouse wheel...
19:37 anaeem1 joined #perl6
19:39 geekosaur mouq: default for xterm is left or right to select, middle to paste. it is difficult to work around this 100% sanely, but http://blog.ssokolow.com/archives/2011/05/01/modernizing-xterms-paste/
19:39 geekosaur hope that url's still valid...
19:41 geekosaur probably have to modify it if you want it to use PRIMARY that way
19:41 Mouq geekosaur: Thanks! :)
19:41 PerlJam pippo: what exactly are you trying to do btw?
19:42 Mouq m: "AA 111 11 11  3 3 333  rule {^AA [\w+' ']*
19:42 camelia rakudo-moar 0a4adc: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/iEGqZw1BCkâ�¤Two terms in a rowâ�¤at /tmp/iEGqZw1BCk:1â�¤------> [32m 111 11 11  3 3 333  rule {^AA [\w+' ']*[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopper…»
19:42 Mouq Ackl
19:43 Mouq m: "AA 111 11 11  3 3 333 " ~~ rule {^AA [\w+' ']* [\w+' ']* [\w+' ']+$}
19:43 camelia rakudo-moar 0a4adc: ( no output )
19:43 Mouq m: say "AA 111 11 11  3 3 333 " ~~ rule {^AA [\w+' ']* [\w+' ']* [\w+' ']+$}
19:43 camelia rakudo-moar 0a4adc: OUTPUT«「AA 111 11 11  3 3 333 」␤␤»
19:43 Mouq m: say "AA 111 11 11  3 3 333 " ~~ rule {^AA (\w+' ')* (\w+' ')* (\w+' ')+$}
19:43 camelia rakudo-moar 0a4adc: OUTPUT«「AA 111 11 11  3 3 333 」␤ 0 => 「111 」␤ 0 => 「11 」␤ 0 => 「11 」␤ 1 => 「3 」␤ 1 => 「3 」␤ 2 => 「333 」␤␤»
19:48 ChoHag Mouq: left+right button simultaneously simulates the middle button.
19:48 ChoHag Traditionally.
19:49 geekosaur that needs to be configured in xorg, it's not a default
19:49 geekosaur (need an xorg.conf)
19:49 ChoHag xorg have raped tradition to the point of stockholming it.
19:50 geekosaur er? that was always an option that had to be enabled separately
19:50 geekosaur (except in old versions where chording wasn't supported at all)
19:50 geekosaur and this goes all the way back to X386
19:59 araujo joined #perl6
20:00 FROGGS \o/
20:00 timotimo so ... i published the post
20:00 FROGGS v5 written in pure Perl 6 can now say $^O again!
20:00 timotimo thank you all for your input
20:00 FROGGS it cannot say string now though, but Ints and Rats do work
20:01 FROGGS and... I have to turn off the optimizer for some weird reason
20:01 colomon timotimo: url?
20:02 Mouq timotimo++ FROGGS++ \o/
20:02 flussence (Last time I encountered a ChordMiddle option was in a log message stating it'd been auto-disabled because I clicked the real middle button...)
20:03 Mouq joined #perl6
20:04 Mouq geekosaur++
20:04 pippo PerlJam: I am parsing a file whre there are no column delimiters. Sometime one columnt is empty. The first column is the one following 'AA '. The last one is the one before the end of line. The second one is between the first and the third. Only the last column is never empty.
20:05 geekosaur huh, so they did make it default? nice of them
20:06 Mouq pippo: Do the columns have a specific length?
20:06 Mouq *per column
20:06 timotimo colomon: http://p6weekly.wordpress.com/ as always :)
20:08 Mouq perl6 -e 'say $*DISTRO; say $*KERNEL'
20:08 Mouq linux (3.2.0.4.amd.64)
20:08 Mouq use of uninitialized value of type Version in string context
20:08 Mouq use of uninitialized value of type Str in string context
20:08 Mouq ()
20:08 pippo Mouq: no. They contain text that is interleaved by a single space.
20:08 colomon timotimo++
20:08 dalek roast: d659f4c | (David Warring david.warring@gmail.com)++ | integration/advent2011-day10.t:
20:08 dalek roast: reorder tests
20:08 dalek roast: review: https://github.com/perl6/roast/commit/d659f4c18e
20:08 dalek roast: 12e781e | (David Warring david.warring@gmail.com)++ | integration/advent2011-day11.t:
20:08 dalek roast: adding 2011 advent day 11
20:08 dalek roast: review: https://github.com/perl6/roast/commit/12e781ed25
20:08 Mouq Not sure what's wrong with $*KERNEL here
20:10 PerlJam pippo: there's always 3 columns or 2 columns?
20:10 timotimo i don't know if it's the weather or something, but i feel pretty drained
20:11 woolfy1 joined #perl6
20:12 pippo PerlJam: Only one column is never empty the last one. But for parsing I will consider a line such this one as having three clomuns the first are empy.
20:12 pippo PerlJam: Only one column is never empty the last one. But for parsing I will consider a line such this one as having three clomuns the first two are empy.
20:13 lue joined #perl6
20:13 lizmat Mouq: what OS are you on?
20:14 timotimo for example, it would be absurdly easy to just bind a few more of the path operations for cairo and build some example code with that to create some pretty images
20:14 timotimo but i can't bring myself to do it
20:14 PerlJam pippo: I was going to advocate a simple approach using split rather than a grammar/regex.  But I guess you'd have difficulty distinguishing between the case when there's only no column 1 and when there's only no column 2
20:14 lizmat timotimo: it's not just you
20:14 pippo PerlJam: I have these configs:
20:14 pippo 1 2 3
20:15 pippo 1   3
20:15 pippo 2 3
20:15 lizmat Mouq: seeing the same thing here, investigating
20:16 itz joined #perl6
20:16 Mouq m: grammar G {rule TOP {^AA' '<one>'  '{say "here"}<two>'  '<three> $}; token one {[\w+] *% ' '}; token two {[\w+] *% ' '}; token three {[\w+] *% ' '}}; say G.parse("AA 111 11 11    3 3 333 ")
20:16 camelia rakudo-moar 0a4adc: OUTPUT«here␤「AA 111 11 11    3 3 333 」␤ one => 「111 11 11」␤ two => 「」␤ three => 「3 3 333」␤␤»
20:17 lizmat m: say $*KERNEL
20:17 camelia rakudo-moar 0a4adc: OUTPUT«use of uninitialized value of type Version in string context␤use of uninitialized value of type Str in string context␤ ()␤»
20:17 dalek roast: 94985a8 | (David Warring david.warring@gmail.com)++ | integration/advent2011-day11.t:
20:17 dalek roast: tighten test to work at compile time
20:17 dalek roast: review: https://github.com/perl6/roast/commit/94985a8271
20:17 lizmat m: say $*KERNEL.name; say $*KERNEL.version; say $*KERNEL
20:17 camelia rakudo-moar 0a4adc: OUTPUT«linux␤v30.Ubuntu.SMP.Wed.May.1.16.35.23.UTC.2013␤linux (30.Ubuntu.SMP.Wed.May.1.16.35.23.UTC.2013)␤»
20:17 pippo I can distinguish between 1 3 and 2 3 because column one starts just after 'AA '. If there is nothing starting just after it means it is column 2.
20:18 lizmat Mouq: Systemic.gist was too lazy, fixing and adding tests
20:18 Mouq lizmat++
20:19 pippo Mouq: Your example works!!
20:19 Mouq lizmat: Oh, sorry, missed earlier question. Debian
20:19 lizmat turns out, that wasn't important
20:20 lizmat subtle difference between $!name and $.name  :-)
20:20 Mouq lizmat: Ahh :)
20:20 lizmat .gist was using the attribute directly ($!name) instead of calling the accessor ($.name)
20:20 vendethiel I really have a hard time with $!. Same with ? ? in ruby ...
20:21 Mouq pippo: Hopefully that's extensible enough for whatever you're doing ^_^
20:21 lizmat $.name is short for self.name
20:21 lizmat $!name accesses the attribute directly
20:21 PerlJam vendethiel: good!  That's to prod you to use the accessor  :)
20:21 vendethiel PerlJam: that doesn't seem very relevant
20:22 pippo Mouq: but... uses a fixed space between one and two and three. :-(
20:22 lizmat vendethiel: in this case it was: the attribute is lazily filled by the accessor method
20:22 lizmat in the $*KERNEL case
20:22 treehug88 joined #perl6
20:23 lizmat the gist method was directly accessing the attribute, so it didn't get filled
20:23 lizmat and produced nonsense and warnings
20:24 vendethiel lizmat: ??
20:24 vendethiel I just mean I think $! is hard to read.
20:24 lizmat ah, ok  -)
20:24 Mouq m: grammar G {rule TOP {^AA' '<one> <two>?? <three> $}; token one {[\w+] *% ' '}; token two {[\w+] *% ' '}; token three {[\w+] *% ' '}}; say G.parse("AA 111 11 11    3 3 333 ")
20:24 camelia rakudo-moar 0a4adc: OUTPUT«「AA 111 11 11    3 3 333 」␤ one => 「111 11 11」␤ three => 「3 3 333」␤␤»
20:24 timotimo in that case, just write it as nqp::getattr(self, $?CLASS, '$!field')
20:24 timotimo ... %)
20:25 lizmat should we really encourage nqp::getattr usage outside of the core ?
20:25 lizmat that's pretty implementation specific....
20:27 dalek rakudo/nom: f05e57b | (Elizabeth Mattijsen)++ | src/core/Systemic.pm:
20:27 dalek rakudo/nom: Make .gist/.Str allow lazy setting of attributes
20:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f05e57bbaf
20:27 jnthn No, don't use nqp::getattr outside of core...
20:27 Mouq m: class C { has $!attr; method test { say MY::.keys } }; C.new.test
20:27 camelia rakudo-moar 0a4adc: OUTPUT«self %_ $! $/ $_ $*DISPATCHER &?ROUTINE RETURN␤»
20:28 pippo Mouq: What I am trying to get is two => 「」. Why I cannot get that? :-)
20:29 timotimo lizmat: i was not serious at all :)
20:29 oetiker joined #perl6
20:30 Mouq pippo: Because you're trying to make a regex that is greedy and lazy at the same time
20:30 Mouq pippo: Or at least that's how I see the problem
20:32 pippo Mouq: So there is no way out here?!! :-((
20:32 PerlJam pippo: you could also turn the problem into something more procedural: get and remove the thing at the beginning, get and remove the thing at the end and whatever is left is thing 2.
20:33 Tene joined #perl6
20:33 Tene joined #perl6
20:33 zamolxes joined #perl6
20:33 mhasch joined #perl6
20:33 PerlJam That sounds like a couple of s/// and a few calls to trim
20:33 nwc10 joined #perl6
20:33 xiaomiao joined #perl6
20:33 cxreg joined #perl6
20:33 Grrrr joined #perl6
20:33 ashleydev joined #perl6
20:33 logie joined #perl6
20:33 cosimo joined #perl6
20:33 Mouq pippo: I'm sure there is :) it's just tricky
20:33 yeltzooo joined #perl6
20:34 itz joined #perl6
20:34 pippo Mouq: PerlJam: geekosaur: Thank you very much for your help and patience. I'll try to
20:34 pippo Mouq: PerlJam: geekosaur: Thank you very much for your help and patience. I'll try your suggestions.
20:36 kst` joined #perl6
20:39 breinbaa1 joined #perl6
20:39 dalek roast: 42a632d | (Elizabeth Mattijsen)++ | S02-magicals/ (4 files):
20:39 dalek roast: Test Systemic features a bit more
20:39 dalek roast: review: https://github.com/perl6/roast/commit/42a632d374
20:41 pippo Mouq: PerlJam: is it possible to set two => 「」 if it doesnt match (whith a code block)? For example in the Mouq code above where we have <two>??.
20:42 itz oh "xanadu" is finally out
20:42 * lizmat remembers reading the book way back in the seventies
20:44 itz I have the late 80s Microsoft Press (!) reprint
20:44 dalek rakudo/nom: c8e91cb | (Elizabeth Mattijsen)++ | t/spectest.data:
20:44 dalek rakudo/nom: Add advent2011-day11 tests
20:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c8e91cb934
20:45 dayangkun_ joined #perl6
20:52 PerlJam m: grammar G {rule TOP {^AA" "<one> <two>?? <three> $ {make [~$<one>,~($<two>//""),~$<three>]} }; token one {[\w+] *% " "}; token two {[\w+] *% " "}; token three {[\w+] *% " "}}; say G.parse("AA 111 11 11    3 3 333 ").made.perl;
20:52 camelia rakudo-moar 0a4adc: OUTPUT«["111 11 11", "", "3 3 333"]␤»
20:52 PerlJam pippo: you could do something like that.
20:53 dalek roast: 6dafb80 | (David Warring david.warring@gmail.com)++ | integration/advent2011-day11.t:
20:53 dalek roast: test trusted vs untrusted inheritence
20:53 dalek roast: review: https://github.com/perl6/roast/commit/6dafb80cd2
20:53 dalek roast: 37ce61e | (David Warring david.warring@gmail.com)++ | S02-magicals/ (4 files):
20:53 dalek roast: Merge branch 'master' of https://github.com/perl6/roast
20:53 dalek roast: review: https://github.com/perl6/roast/commit/37ce61e146
20:57 jpwillis1 joined #perl6
20:58 carlin joined #perl6
20:58 lizmat_ joined #perl6
21:00 woolfy joined #perl6
21:00 pippo PerlJam: Wow! It what I need. Thank you very much! :-)
21:00 pippo PerlJam: Wow! It is what I need. Thank you very much! :-)
21:03 brrt joined #perl6
21:06 donaldh joined #perl6
21:08 treehug88 joined #perl6
21:08 raiph joined #perl6
21:08 bluescreen100 joined #perl6
21:08 [Sno] joined #perl6
21:08 virtualsue joined #perl6
21:08 muraiki joined #perl6
21:08 yakudzo joined #perl6
21:11 dalek rakudo/nom: 1a3706c | (Elizabeth Mattijsen)++ | lib/lib.pm6:
21:11 dalek rakudo/nom: Make sure 'use lib @dirs' works correctly
21:11 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1a3706ca9e
21:11 Mouq joined #perl6
21:12 dalek roast: 287670c | (David Warring david.warring@gmail.com)++ | integration/advent2011-day11.t:
21:12 dalek roast: braino
21:12 dalek roast: review: https://github.com/perl6/roast/commit/287670c102
21:21 * lizmat_ is trying to grok what our sub EXPORT is supposed to return
21:22 lizmat FROGGS: any pointers?
21:22 lizmat the specs are not really clear in it
21:22 timotimo it's supposed to return a hash
21:22 timotimo well, a stash really
21:22 lizmat but what would be the keys and values ?
21:22 timotimo the keys are the names for symbols to be installed, the values are things to be installed under those symbols
21:24 cognominal what the diff between a hash and stash?
21:25 lizmat that's what I thought, but I can't seem to get it to work
21:25 timotimo i think stashes are immutable?
21:25 timotimo i think stashes are an implementation detail
21:27 rurban_ [Coke]: what is driving the aprrot blog? Django?
21:27 rurban_ parrot
21:27 rurban_ Ah drupal
21:29 [Coke] sounds right.
21:39 woolfy1 joined #perl6
21:39 * lizmat sits on the terrace, listening to the rain and the thurderstorm that is getting closer and closer
21:40 * brrt has been waiting for rain and thunderstorm to no avail for 3 days now
21:41 geekosaur ran is here now; thunderstorms more likely tomorrow
21:41 geekosaur brrt's was last weke here
21:41 geekosaur *week
21:42 brrt well, i'm still waiting
21:47 brrt left #perl6
21:47 lizmat .tell FROGGS does it make sense to have CUR::Local::File instances if which the directory does not exist ?
21:47 yoleaux lizmat: I'll pass your message to FROGGS.
21:49 xragnar joined #perl6
21:51 lizmat .tell FROGGS or CUR::Local::Installation for that matter ?
21:51 yoleaux lizmat: I'll pass your message to FROGGS.
21:59 pippo good night #perl6
21:59 pippo left #perl6
22:07 Mouq \o pippo!
22:09 Mouq lizmat: A directory may not exist at the time of `use lib` but could at the time of `use Foo` afterward
22:15 rurban_ We also identified several unneeded write barriers in 6model and are removing it now for the new parrot 6.5.0. Could be quite a perf. improvement
22:18 lizmat joined #perl6
22:20 skids joined #perl6
22:22 lizmat Mouq: hmmm... "use" is compile time: does it make sense to assume a directory will appear out of thin air during runtime?
22:22 lizmat and if so, wouldn't that be a serious potential security hole
22:23 Mouq lizmat: I have no idea
22:23 Mouq rurban_: Woo!
22:23 rurban_ new parrot numbers in a minute
22:24 dalek specs: e8d23f6 | (Elizabeth Mattijsen)++ | S99-glossary.pod:
22:24 dalek specs: Add "mischan" lemma
22:24 dalek specs: review: https://github.com/perl6/specs/commit/e8d23f66ba
22:25 lizmat fwiw, I feel that whenever a CompUnitRepo::Local object is created, it should *fail* when the directory to which it applies, does not exist or is not readable
22:29 SevenWolf joined #perl6
22:30 timotimo rurban_: very good :)
22:41 [Sno] joined #perl6
22:46 Mouq .ask FROGGS With your slang example, what is matched by `use COBOL; test ` is `; test `. Is the inclusion of the semicolon intentional?
22:46 yoleaux Mouq: I'll pass your message to FROGGS.
22:47 timotimo wow, quite loud thundering outside
22:47 timotimo http://www.blitzortung.org/Webpages/index.php?lang=en&amp;page_0=30 - a fun website
22:49 jpwillis1 I can't stop moofing.
22:49 raiph i've quit moofing for a mo and have an unrelated question
22:49 yoleaux 9 Jun 2014 08:53Z <moritz> raiph: re perl6/p5-modules: you could contact the authors of the invidial modules, tell them to fork the repo (or extract subdirs) if they're still interested
22:49 yoleaux 9 Jun 2014 09:17Z <moritz> raiph: i've updated rakudo.de a bit
22:50 grondilu joined #perl6
22:50 raiph .tell moritz thanks re gh/perl6 repo message
22:50 yoleaux raiph: I'll pass your message to moritz.
22:51 * grondilu is a bit intrigued/amuzed to read about lots of storms in US as he noticed lots of storms here in France as well lately.
22:52 cognominal orage, ho désespoir
22:53 cognominal neige donc!
22:53 raiph cognominal: i'll raise your neige a moof
22:54 * grondilu looks up moof in the wiktionary
22:54 geekosaur expect more and more violent storms
22:54 * grondilu founds nothing
22:54 * geekosaur knows it as the sound a dogcow makes
22:54 geekosaur (apple in-joke of sorts)
22:56 geekosaur http://en.wikipedia.org/wiki/Dogcow
22:57 * geekosaur notes the alternative meaning however...
22:57 jnthn haha
22:58 jnthn I just noticed that :)
22:58 rurban_ nqp-p is now 4.3% faster in the new pmc2c_orig branch
22:59 rurban_ for nqp: perf stat -r2 prove -r --exec "./nqp-p --vmlibs=nqp_dyncall_ops" t/nqp t/hll t/qregex t/p5regex t/qast t/serialization
22:59 timotimo i don't know what moofing is :(
23:01 dalek nqp/pmc2c_orig: bb6a1c6 | rurban++ | src/vm/parrot/pmc/ (7 files):
23:01 dalek nqp/pmc2c_orig: pmc2c_orig: optimize 6model pmcs for the new pmc2c
23:01 dalek nqp/pmc2c_orig:
23:01 dalek nqp/pmc2c_orig: Annotate several PMC methods for unneeded or manual GC write barriers
23:01 dalek nqp/pmc2c_orig: This requires pmc2c from parrot 6.5.0 (i.e. rurban/pmc2c_orig2-gh1069)
23:01 dalek nqp/pmc2c_orig:
23:01 dalek nqp/pmc2c_orig: This is ~4.36% faster for the nqp testsuite.
23:01 dalek nqp/pmc2c_orig: $ perf stat -r2 prove -r --exec "./nqp-p --vmlibs=nqp_dyncall_ops" t/nqp t/hll t/qregex t/p5regex t/qast t/serialization
23:01 dalek nqp/pmc2c_orig: review: https://github.com/perl6/nqp/commit/bb6a1c64cc
23:04 tadzik wow, rurban_++ :)
23:04 donaldh left #perl6
23:04 rurban_ testing now rakudo speedup
23:04 timotimo way cool, ~4.5% is pretty nice
23:05 rurban_ 6model had several unnecessary GC write barrier calls
23:06 rurban_ mostly duplicate WBs in nested method calls
23:06 rurban_ in tail position. so could remove that now with the new pmc2c
23:13 timotimo sounds great!
23:23 rurban joined #perl6
23:25 Mouq_ joined #perl6
23:34 rindolf joined #perl6
23:44 hoverboard joined #perl6
23:51 timotimo i'm not sure about this "why perl didn't win" blog post
23:52 timotimo perl6 didn't really have such a bad influence on perl5, did it?
23:59 moritz no, it's just a convenient scape goat
23:59 yoleaux 22:51Z <raiph> moritz: thanks re gh/perl6 repo message

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

Perl 6 | Reference Documentation | Rakudo