Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-01-31

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:13 dayangkun joined #perl6
00:31 grondilu joined #perl6
00:32 cog joined #perl6
00:35 palakas joined #perl6
00:36 hash_table joined #perl6
00:39 palakas_ joined #perl6
00:59 SHODAN joined #perl6
01:07 anuby joined #perl6
01:16 hypolin joined #perl6
01:31 SmokeMachine joined #perl6
01:55 rom1504 joined #perl6
02:14 xinming joined #perl6
02:47 dalek nqp-jvm-prep: 6ef5e0a | coke++ | t/nqp/ (2 files):
02:47 dalek nqp-jvm-prep: 2 more passing test files.
02:47 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/6ef5e0a547
02:55 [Coke] nwc10: Files=39, Tests=278
02:56 japhb w00t
02:57 Khisanth joined #perl6
02:59 dalek perl6-roast-data: 9ff7142 | coke++ | / (4 files):
02:59 dalek perl6-roast-data: today (automated commit)
02:59 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/9ff7142278
02:59 dalek perl6-roast-data: 1d17226 | coke++ | / (4 files):
02:59 dalek perl6-roast-data: today (automated commit)
02:59 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/1d17226ba1
03:11 dalek perl6-bench: e7f2167 | (Geoffrey Broadwell)++ | analyze:
03:11 dalek perl6-bench: Lower minimum time for comparisons from .001 to .0001 second (necessary for certain tests on fast computer)
03:11 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/e7f2167cb7
03:32 cog joined #perl6
03:37 kaleem joined #perl6
03:37 xinming joined #perl6
03:52 cog joined #perl6
04:04 benabik joined #perl6
04:11 preflex_ joined #perl6
04:19 nebuchad` joined #perl6
04:31 dalek joined #perl6
04:32 Targen joined #perl6
04:59 balders_1od joined #perl6
05:03 cog joined #perl6
05:08 jaldhar joined #perl6
05:09 sevin joined #perl6
05:25 jaldhar joined #perl6
05:27 quester joined #perl6
05:53 Psyche^ joined #perl6
06:16 sevin joined #perl6
06:19 dayangkun joined #perl6
06:48 moritz std: my int 42;
06:48 p6eval std 7deb9d7: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Multiple prefix constraints not yet supported at /tmp/YPJPfDgvLA line 1:â�¤------> [32mmy int [33mâ��[31m42;[0mâ�¤Malformed my at /tmp/YPJPfDgvLA line 1:â�¤------> [32mmy int [33mâ��[31m42;[0mâ�¤    expecting any of:â�¤        multi_declaratorâ�¤
06:48 p6eval ..type…
06:57 diakopter std:   \my ::my $my /my %my *my @my;
06:57 p6eval std 7deb9d7: OUTPUT«ok 00:00 43m␤»
07:02 sevin_ joined #perl6
07:04 diakopter std:   \my &my ^my ::my $my /my %my *my @my;
07:04 p6eval std 7deb9d7: OUTPUT«ok 00:00 45m␤»
07:37 erkan joined #perl6
07:37 erkan joined #perl6
08:39 xenoterracide joined #perl6
08:42 kresike joined #perl6
08:42 kresike hello all you happy perl6 people
08:46 arnsholt o/
08:46 hoelzro morning Perl6 folk
08:52 quester left #perl6
08:55 arnsholt Fun. My native attribute refactor passes NQP and Rakudo's test suites, but it's utterly, utterly broken Zavolaj
08:55 * arnsholt investigates
08:58 arnsholt Oh. Dependency bug in NQP's Makefile, sort of
09:02 moritz bug, or not optimized for your use case? :-)
09:04 arnsholt I changed stuff in sixmodelobject.h, but CStruct.c didn't get rebuilt
09:05 arnsholt Oh, but none of the files probably changed because of sixmodelobject.h
09:06 arnsholt I changed nqp.ops as well, which probably triggered the main REPRs, but not the dyncall REPRs
09:06 FROGGS joined #perl6
09:12 anuby_ joined #perl6
09:14 spider-mario joined #perl6
09:15 djanatyn1 joined #perl6
09:15 sqirrel joined #perl6
09:22 dalek nqp/dyncall-sized-num: eb90ed8 | (Arne Skjærholt)++ | src/6model/reprs/P6int. (2 files):
09:22 dalek nqp/dyncall-sized-num: Revert "Update P6int to properly read sized ints."
09:22 dalek nqp/dyncall-sized-num:
09:22 dalek nqp/dyncall-sized-num: This reverts commit 0b7de0c193e25059b3e79d2d67d0f9e01d61ffbf.
09:22 dalek nqp/dyncall-sized-num: review: https://github.com/perl6/nqp/commit/eb90ed83f8
09:22 dalek nqp/dyncall-sized-num: a7f7a84 | (Arne Skjærholt)++ | src/6model/reprs/P6int.c:
09:22 dalek nqp/dyncall-sized-num: Better sized int handling in P6int.
09:22 dalek nqp/dyncall-sized-num: review: https://github.com/perl6/nqp/commit/a7f7a84ba3
09:22 dalek nqp/dyncall-sized-num: d6eab55 | (Arne Skjærholt)++ | src/ (6 files):
09:22 dalek nqp/dyncall-sized-num: Better getting/setting of natively typed attributes.
09:22 dalek nqp/dyncall-sized-num:
09:22 dalek nqp/dyncall-sized-num: This brings natively typed attributes more in line with the approach used in
09:22 dalek nqp/dyncall-sized-num: NQP-JVM. Instead of get_attribute and bind_attribute dealing directly with
09:22 dalek nqp/dyncall-sized-num: pointers to the data, we use a NativeValue struct to pass values. This way,
09:22 dalek nqp/dyncall-sized-num: the class can use the attribute's REPR to get and set values.
09:22 dalek nqp/dyncall-sized-num: review: https://github.com/perl6/nqp/commit/d6eab55ce6
09:22 FROGGS ohh, I need to look at that closely
09:22 FROGGS arnsholt++
09:24 cxreg hm, wonder how that parrot threads nqp work is going
09:25 cxreg looks somewhat idle from github's pov
09:25 arnsholt FROGGS: It's a bit of an intermediate stage, but if jnthn is happy with it, I'll apply the changes to P6num and {bind,at}_pos_ref as well
09:26 arnsholt At which point I think Zavolaj should have pretty decent sized value support
09:28 cxreg arnsholt++
09:28 FROGGS I'll do some testing these days, even if it might not be the final interface
09:32 fhelmberger joined #perl6
09:34 Khisanth joined #perl6
09:35 cibs joined #perl6
09:48 Psyche^ joined #perl6
10:02 dakkar joined #perl6
10:05 daniel-s joined #perl6
10:07 jnthn o/
10:11 arnsholt Morning
10:12 jnthn static void * default_get_attribute_native
10:12 arnsholt I've pushed the get_attribute refactor. I shouldn't do any more hacking today (barring serious procrastination), so no real hurry on reviewing it
10:13 jnthn Is the * there a fossil?
10:13 arnsholt Yeah
10:13 arnsholt Where is it?
10:13 arnsholt Oh, default_
10:15 arnsholt Found another one in CStruct.c
10:15 dalek nqp/dyncall-sized-num: 9b79426 | (Arne Skjærholt)++ | src/6model/repr (2 files):
10:15 dalek nqp/dyncall-sized-num: Fix fossilized return types of two get_attribute_natives.
10:15 dalek nqp/dyncall-sized-num: review: https://github.com/perl6/nqp/commit/9b79426b72
10:20 jnthn arnsholt: This approach looks much better.
10:20 jnthn Better than any of the previous ones. :)
10:20 arnsholt Yeah, I like it better as well
10:21 arnsholt This keeps the mucking about with pointers confined to the int/num REPRs, and the messing about with getting STables and then dispatching back to them was bass ackwards
10:25 risou joined #perl6
10:27 jnthn Introspection on a hot path is often a bad sign.
10:29 Su-Shee I've just gotten pasted this wonderful "perl 6 catpic" by mr shee ;) http://icanhascheezburger.files.wordpress.com/2011/01/c0baf0e9-6643-4d18-9fd3-5ad0cb9f50f2.jpg
10:34 jnthn aww :)
10:35 hulu joined #perl6
10:35 moritz Su-Shee++
10:35 hulu helo
10:35 moritz Mr-Shee++
10:35 moritz helo hulu
10:35 hulu what means about "@^others"
10:36 moritz hulu: with ^ means it's a parameter to the current routine
10:36 moritz s/with/the/
10:36 moritz or block
10:36 moritz and the @ means it's an array
10:37 hulu thx
10:37 moritz r: sub f { say $a; say @^others.perl }; f(1, <a b c>)
10:37 p6eval rakudo 9ec0a5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Variable '$a' is not declaredâ�¤at /tmp/GBMtlmboVb:1â�¤------> [32msub f { say $a[33mâ��[31m; say @^others.perl }; f(1, <a b c>)[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
10:37 moritz r: sub f { say $^a; say @^others.perl }; f(1, <a b c>)
10:37 p6eval rakudo 9ec0a5: OUTPUT«1␤("a", "b", "c")␤»
10:49 hulu helo
10:49 hulu why            sub f { say $^a; say @^b.perl; say $^others.perl }; f(1, <a b c>, 2)
10:49 hulu is wrong
10:50 jnthn r: sub f { say $^a; say @^b.perl; say $^others.perl }; f(1, <a b c>, 2)
10:50 p6eval rakudo 9ec0a5: OUTPUT«1␤("a", "b", "c")␤2␤»
10:50 jnthn Looks right to me...what makes you thing it's wrong?
10:50 jnthn *htink
10:52 moritz hulu: which version of rakudo are you using?
10:52 hulu 3.6.0
10:53 moritz that is not a rakudo version.
10:54 jnthn That's a Parrot version...from 2011...
10:54 hulu rakudo 0.1
10:54 moritz hulu: that's also not a rakudo version
10:54 hulu how to check version
10:54 nwc10 did you build Rakudo yourself, or install it from the OS or packaging system?
10:55 hulu install from os
10:55 nwc10 aha. thanks. :-(
10:55 nwc10 it will be a very old version.
10:56 moritz hulu: you might have more fun with rakudo if you install a new version (which you have to compile yourself), like 2013.01
10:57 moritz there's a lot of bugs we fixed since 2011
10:57 jnthn Indeed. There's been a LOT of improvements...
10:57 nwc10 parrot 3.6.0 is 18 months old, so likely it will be a Rakudo version from 18-15 months ago
10:57 nwc10 and, OS packaging of fast moving software considered harmful
10:57 nwc10 (I continue to assert that I'm right until proven wrong)
10:57 nwc10 (If I state an opinion strongly)
10:58 nwc10 (sorry, can't be more directly helpful)
10:58 hulu i c thx
11:02 cog joined #perl6
11:06 erkan joined #perl6
11:06 erkan joined #perl6
11:09 hulu helo
11:09 hulu what's means of "Placeholder variable cannot override existing signature"
11:10 moritz a placeholder is basically a signature for the surrounding block
11:10 Su-Shee joined #perl6
11:10 moritz but if that block already has a signature, you'll get that error
11:10 moritz r: sub f() { $^x }
11:10 p6eval rakudo 9ec0a5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Placeholder variable '$^x' cannot override existing signatureâ�¤at /tmp/fTS4o98edn:1â�¤------> [32msub f() { $^x }[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix or meta-infixâ�¤        infix stopperâ�¤        statem…
11:11 moritz the () already is an empty signature
11:12 hulu what's a signature
11:14 moritz a specification what kind of arguments a function expects
11:15 moritz http://perlcabal.org/syn/S06.html#Signatures
11:19 sergot hi! o/
11:27 Liz__ joined #perl6
11:59 kaleem joined #perl6
12:06 isBEKaml joined #perl6
12:16 kaleem joined #perl6
12:24 nwc10 [Coke]: cool
12:36 dayangkun joined #perl6
12:37 jnthn Should be able to break the 300 passing test cases mark tonight :)
13:05 cog joined #perl6
13:07 domidumont joined #perl6
13:07 nwc10 I wasn't actually thinking of Rakduo-atop-the-JVM when I typed AbstractPonyFactory
13:07 nwc10 but it does seem to (mostly) fit
13:10 jnthn If I needed a name for the project, that would be a cute one :P
13:12 * moritz will take the ConcretePonyFactory then :-)
13:13 jnthn I used to think the "use all the pattern names in every Java codebase!" thing was a joke. Then I started looking at the BCEL API and sure enough... InstructionFactory. Visitor. :)
13:16 moritz it's the waterbed pushing up on the side of type indirection, because other language features are missing
13:18 nwc10 ie this? http://steve-yegge.blogspot.co.at/2006/03/execution-in-kingdom-of-nouns.html
13:19 nwc10 (Google leaks the location (or at least, its inferred location) of my IP address)
13:19 nwc10 (was fun when I was appearing from something.earth.li)
13:40 bluescreen10 joined #perl6
13:52 pjcj_ joined #perl6
13:54 BooK_ joined #perl6
13:57 xenoterracide joined #perl6
13:58 bluescreen10 joined #perl6
14:05 PacoAir joined #perl6
14:10 cog joined #perl6
14:17 kaare_ joined #perl6
14:18 atrodo joined #perl6
14:19 mtymula joined #perl6
14:19 mtymula hello
14:19 mtymula ??
14:20 mtymula i have a problem with installing panda
14:20 [Coke] tadzik, you're up.
14:20 mtk joined #perl6
14:20 jnthn .oO( sounds unbearable 0
14:20 [Coke] What's the problem?
14:20 jnthn mtymula: Please describe it a bit :)
14:20 mtymula perl6 bootstrap.pl ==> Bootstrapping Panda No such method 'path' for invocant of type 'Any'   in block  at bootstrap.pl:20
14:21 mtymula i have fedora F17
14:21 mtymula i've installed git
14:21 mtymula and cloned from git repository
14:22 mtymula than i got inside the panda folder
14:22 mtymula and perl6 bootstrap.pl
14:22 mtymula throws error
14:22 mtymula No such method 'path' for invocant of type 'Any'   in block  at bootstrap.pl:20
14:22 mjwhitta joined #perl6
14:23 moritz mtymula: what's your rakudo version+
14:23 moritz s/\+/?/
14:23 mtymula This is perl6 version 2012.08 built on parrot 4.7.0 revision 0
14:24 timotimo wow, that's quite old already
14:26 jnthn Such is the problem...Rakudo moves fast, Panda tracks its latest module installation details as we flesh them out, and then it doesn't work for older Rakudos that are shipped with distros.
14:26 jnthn I guess if R* was packaged instead you'd at least get a matching panda...
14:27 moritz mtymula: if you use panda from git, you also have to use rakudo from git
14:28 mtymula moritz: thanks for humanish explanation;)
14:28 mtymula i will do that
14:28 moritz jnthn: yes, though I don't know if 2012.08 included panda
14:28 jnthn moritz: oh, good point.
14:31 stevan_ joined #perl6
14:32 mtymula i would like to make a propositon...
14:32 mtymula there is a perl Configure.pl --gen-parrot --gen-nqp
14:33 mtymula i thing good idea is to make a perl Configure.pl --gen-parrot --gen-nqp --gen-panda
14:33 mtymula so lame people like me could have easier live;)
14:33 moritz mtymula: if you download the latest rakudo star tarball, 'make install' will give you a working combination of rakudo and panda
14:34 moritz it's not quite 'from git', but new enough
14:34 timotimo the newest rakudo star is from yesterday, for instance :)
14:34 mtymula i am installing new rakudo  as we speak...
14:34 mtymula yes i just saw that
14:35 hoelzro does Rakudo * have packaging for some of the more popular distributions?
14:37 moritz not that I'm aware of.
14:38 hoelzro someone should get on that =)
14:38 hoelzro https://aur.archlinux.org/packages/rakudo-star/ =(
14:39 moritz just make archlinux a more popular distribution => problem solved :-)
14:39 hoelzro the problem there is the package is nearly two years out of date
14:39 hoelzro and my offer of a new PKGBUILD (which I update monthly) was ignored
14:40 hoelzro I'm going to see if I can get control of the primary one
14:40 timotimo .o( "assuming direct control" )
14:40 hoelzro haha
14:40 hoelzro I was thinking about that game on the tram this morning
14:40 hoelzro and how much I liked the first two
14:41 arnsholt hoelzro: If there's been nothing for two years, your case that it's an orphan package should be pretty strong
14:41 arnsholt But I guess there might not be much in the way of procedures for that?
14:42 hoelzro I don't know
14:42 mtymula timotimo ME3??
14:42 hoelzro I might have to reach out in a different way
14:42 hoelzro maybe I should package up Rakudo * for Fedora and Debian?
14:42 hoelzro that might spur some interest?
14:45 jnthn The problem with packaging is that Rakudo improves fast
14:45 jnthn And packages rarely keep up
14:46 jnthn So we end up with lots of "X is broken!" queries we'd not have if people always build from recent source releases.
14:46 hoelzro jnthn: with my AUR package, I currently need to change two lines
14:46 hoelzro hmm, that brings up a good point
14:46 jnthn And Linux is an utter mess for this. For Windows it's easy: you build one installer, done. For Linux there's a gazillion distros that all want something different. :/
14:47 hoelzro jnthn: well, if I were to do this, I would build an RPM for a popular RPM distro and a deb for a popular APT distro
14:47 jnthn *nod*
14:47 hoelzro (along with an Arch Linux, because I'm an Archer)
14:48 jnthn See, there's 3 already ;)
14:48 hoelzro I'm hoping that if I did that
14:48 hoelzro other distro maintainers that use RPM/deb would use my spec files
14:48 hoelzro either verbatim or with slight modifications
14:48 hoelzro and perhaps someone in Fedora/Debian would take over my spec files
14:48 arnsholt Might be an idea
14:49 hoelzro this is a way I can *actually* contribute to Rakudo
14:49 arnsholt Definitely not a bad idea to have a Linux-packager-in-chief I think
14:49 hoelzro because I haven't sat down long enough to wrap my head around the internals =)
14:49 hoelzro the question remains: how often do I build a new package?
14:49 hoelzro every month?
14:49 hoelzro every 3?
14:49 moritz every 3 months would be fine, IMHO
14:49 jnthn I don't want to discourage contribution or making it easy to get Rakudo. I'm just aware that we get a lot of questions or have people running into problems that they'd not hit with a recent release.
14:50 timotimo hoelzro: i just skimmed the perl6 vim syntax and ... oh crap
14:50 timotimo there's just no way i could even make a dent in that thing
14:50 hoelzro timotimo: I know, it's intimidating
14:51 hoelzro jnthn: so the problem is that people aren't using a recent enough release? or that new releases are breaking old code?
14:51 moritz the former, mostly
14:51 jnthn hoelzro: Often that the distros have very old releases.
14:51 hoelzro I figured
14:51 hoelzro hmm
14:51 jnthn Very old in Rakudo time is quite short :)
14:52 timotimo oh, isn't today "jnthn has many tuits for jvm" day? :D
14:52 jnthn timotimo: Got moved to tomorrow.
14:52 hoelzro well, that's a good point
14:52 timotimo OK
14:52 hoelzro Ubuntu is (currently) on a 6 month release cycle
14:52 hoelzro 6 months in Rakudo time is ancient
14:52 jnthn timotimo: Ended up reviewing a bunch of security course material today.
14:52 jnthn Should get some tuits again this evening...
14:52 hoelzro I'm open to suggestions
14:53 hoelzro and I'm willing to maintain the spec files for Debian/Fedora
14:53 timotimo tadzik: i'm thinking i should create a String::Levenshtein or something package rather than putting my code right into panda. would that still be useful to you?
14:53 jnthn hoelzro: I'm not sure what to suggest. Simply, we're just at a point where even a few months of changes can make a huge difference to a user's experience of Rakudo.
14:53 timotimo tadzik: would you prefer trying to load levenshtein at runtime when it's needed and using it if it's there or ignoring it if it isn't?
14:53 jnthn Consider how much better parse error reporting between November and now.
14:53 hoelzro jnthn: what's worse? exposure to an older version, or no exposure at all?
14:54 hoelzro jnthn: too true (also, that change is *great*)
14:54 timotimo hoelzro: no version at all could mean "this version is 2 years old, maybe i should look beyond my packaging system?"
14:54 hoelzro timotimo: right
14:54 jnthn hoelzro: Well, would it be "no exposure" or "oh, I'll install the latest release from source".
14:54 jnthn hoelzro: I know on Windows "install from source" is a huge impediment. But I got the impression it's less so for various other platforms.
14:55 hoelzro jnthn: how many users would be uncomfortable installing something like Rakudo outside the context of their package manager, though?
14:55 hoelzro I (personally) like everything on my system tracked by my package manager
14:55 jnthn hoelzro: I don't know. I know the Windows issue is mostly that you simply have no build environment on most machines even if you were willing to compile from source.
14:55 jnthn *nod*
14:55 hoelzro and I feel that having OS packages would instill some more confidence in users
14:55 jnthn OK.
14:56 hoelzro but I definitely see where you're coming from; it's not as simple as "create some packages and throw them out there" =S
14:56 jnthn Yeah. Well, at least things get better from this angle with time.
14:56 jnthn It's not that Rakudo will stop improving quickly, just that with time the things people are likely to hit and find really nasty decrease.
14:57 mtymula can anyone tell me how to embed perl6 script into html file??
14:58 hoelzro also, people should upvote this: http://www.reddit.com/r/perl6/comments/17mctx/rakudo_star_201301_released/
14:58 hoelzro ;)
14:59 Su-Shee mtymula: how do you mean? like javascript?
14:59 nnunley joined #perl6
14:59 mtymula kinda
15:00 mtymula i run server in perl6
15:00 Su-Shee mtymula: that's not possible, which browser is supposed to understand it? ;)
15:00 Su-Shee mtymula: do you mean a cgi script?!
15:01 mtymula ok i will tell you what i want to do
15:01 Su-Shee that would help a lot ;)
15:01 mtymula i have RequestHandler module fr perl6
15:01 mtymula *for
15:01 mtymula and i start a http server and run some templates prepared in html files
15:02 Su-Shee ah you need a template module.
15:02 mtymula i got it
15:02 mtymula it works...:)
15:02 mtymula what i need is:
15:03 stopbit joined #perl6
15:03 mtymula what i need is to for example change content between tags <title> something </title>
15:03 Su-Shee mtymula: write a parser.
15:04 Su-Shee mtymula: or use an xml module.
15:04 moritz there are template modules already on modules.perl6.org
15:04 mtymula bu... i was hoping someone made it simpler;p to call me aprogrammer would be and overstatement
15:05 mtymula ok, i will try to "make it so:
15:05 mtymula thx
15:05 Su-Shee mtymula: sadly it's a pretty nasty problem so you can't get away with regex in the long run.
15:06 Su-Shee mtymula: that's why you use an xml module for example which gives you a node title and then you can usally just $node.text('foobar') or something similar..
15:06 Su-Shee mtymula: behind it usally already is a parser.
15:06 skids joined #perl6
15:06 timotimo it's strange that you can't use the template engine you already have and do the title replacement with that
15:07 Su-Shee good point, shouldn't it look like <title>$title</title> basically anyways?
15:08 mtymula yes <title>$title</title> would be great
15:09 sjn joined #perl6
15:09 Su-Shee mtymula: uhm that's the entire idea of your template thingie :)
15:10 Su-Shee mtymula: the passing in of parameters is usally what your web framework does. so that is possibly the part you have to do.
15:10 mtymula oh... crap... lots of work ahead of me...
15:10 timotimo i think i misunderstood mtymula when they wrote "i got it","it works...:)"
15:10 arlinius joined #perl6
15:11 Su-Shee mtymula: well that's one of the main features of web frameworks.. connecting "web framework" with "templating engine"
15:14 sjn joined #perl6
15:19 sjn joined #perl6
15:19 SmokeMachine joined #perl6
15:24 sjn joined #perl6
15:29 sjn joined #perl6
15:34 sjn joined #perl6
15:37 hash_table joined #perl6
15:39 sjn joined #perl6
15:42 lue joined #perl6
15:47 Targen joined #perl6
15:50 marloshouse joined #perl6
15:54 kaare_ joined #perl6
15:54 dalek perl6-bench: 7f9a331 | (Geoffrey Broadwell)++ | bench:
15:54 dalek perl6-bench: Work around for fail
15:54 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/7f9a331bd9
15:54 dalek perl6-bench: 17eb310 | (Geoffrey Broadwell)++ | timeall:
15:54 dalek perl6-bench: Make it possible to detect and skip tests using code; in particular, being able to check whether a particular compiler build contains a particular commit
15:54 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/17eb310d33
15:54 dalek perl6-bench: bba8568 | (Geoffrey Broadwell)++ | microbenchmarks.pl:
15:54 dalek perl6-bench: Add for_push_1e5 test, guarded by code that makes sure Rakudo is new enough not to eat all of RAM running the test
15:54 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/bba8568818
15:55 jnthn om nom nom ram
15:56 japhb Tasty, tasty chips
15:57 jnthn .oO( lamb flavor? )
16:02 benabik joined #perl6
16:08 nwc10 hoelzro: what Chromium did (but I didn't get it to work, for some stupid reason) on Ubuntu was to create a packed for the "nightlies" that actually installed a new source for APT
16:08 nwc10 and in turn *that* pointed to a repository that had a new .deb every night
16:08 hoelzro nwc10: so have two sets of packages?
16:08 nwc10 (this was some years ago)
16:09 nwc10 the idea being that it's probably worse to have an obsolete package in the base OS, than not to have a package
16:09 nwc10 but this way, people could still use the package manager to get something current
16:09 nwc10 not sure why it didn't work for me. That says something about it being "not actually that good"
16:11 nwc10 I realise that I'm sounding like "Stop energy", but I feel that it's counterproductive having *at best* several-month old packages in an OS (ie, when that OS version is at the day of release)
16:11 nwc10 at least, it's certainly not a "no brainer obviously brilliant" thing to have it packaged
16:11 nwc10 eg, as far as I can make out, macports has parrot 3.3.0
16:11 nwc10 (and no Rakudo)
16:12 nwc10 what use is parrot 3.3.0 to anyone?
16:13 nwc10 I guess, right now, having monthly updating .debs and .rpms on a distribution site is useful
16:13 geekosaur I had considered doing rakudo for macports but decided against taking on a packaging responsibility I wasn't really in a position to maintain.  I'm still not sure I'm in a position to maintain it...
16:14 sjn joined #perl6
16:14 jaldhar joined #perl6
16:18 kresike bye folks
16:23 jnthn decommute &
16:24 sjn joined #perl6
16:26 cog joined #perl6
16:28 balders_dod joined #perl6
16:29 snobbo joined #perl6
16:45 masak good evening, #perl6
16:45 phenny masak: 30 Jan 23:30Z <lue> tell masak his blog's RSS feed is failing to load
16:45 masak :/
16:45 masak lue: thanks for noticing.
16:53 Chillance joined #perl6
16:55 kaleem joined #perl6
16:57 d4l3k_ joined #perl6
16:57 atrodo_ joined #perl6
17:04 tadzik timotimo: that sounds sane, yes
17:04 tadzik and it definitely should be a module
17:04 tadzik but I think we do have Text::Levenshtein, don't we?
17:04 tadzik http://feather.perl6.nl/~sergot/modules/module/Text-Levenshtein.html
17:06 timotimo we do? oh!
17:08 * masak only now notices http://blogs.perl.org/users/stevan_little/2013/01/a-funny-thing-happened-on-the-way-to-the-p5-mop.html
17:15 sjn joined #perl6
17:16 * Liz__ wonders what masak thinks of it
17:17 PerlJam clearly he's going to learn scala and make Perl 5 a better place too  ;)
17:19 tadzik mayhaps we could have a Moe hackathon at PLPW and invite the Scala guys
17:22 xinming joined #perl6
17:24 cog joined #perl6
17:24 * PerlJam wonders what stevan's plans are for that time period ...
17:25 PerlJam maybe you could have a colocated hackathon if he's not goign to be around for plpw
17:25 benabik_ joined #perl6
17:27 * Liz__ wonders whether it wouldn't make more sense to put more effort into STD5 and get Perl 5 running on JVM because of jhntn's work ?
17:29 jnthn o/ :)
17:30 jnthn Liz__: Well, that approach would certainly allow easier integration :)
17:30 MayDaniel joined #perl6
17:30 jnthn Note that there's a step between the grammar and having a QAST tree ;)
17:31 xinming joined #perl6
17:32 Liz__ where would this need to be done, and in what language?
17:32 jnthn The action methods that construct the QAST are written in NQP
17:33 Liz__ I assume the STD action methods could be used as inspiration?
17:33 jnthn STD_P5 just parses, afaik.
17:34 domidumont joined #perl6
17:34 Liz__ but the parse is pretty complete ?   Or is it still a small subset?
17:34 domidumont joined #perl6
17:34 TimToady it can parse itself :-)
17:34 TimToady it doesn't parse indirect objects
17:35 jnthn TimToady: Didn't those turn out to be Very Tricky?
17:35 TimToady yeah, a lot trickier than Perl 6's
17:35 Liz__ since I personally hate indirect object syntax, I can live with that
17:36 Liz__ but I guess "print STDERR 'foo'" also doesn't work then, right?
17:36 TimToady well, it's completely unambiguous in P6, due to the extra colon
17:37 TimToady it could be taught to do some of the simpler forms like that one
17:37 TimToady std: use v5; print STDERR 'foo'
17:37 p6eval std 7deb9d7: OUTPUT«ok 00:00 52m␤»
17:37 TimToady hmm, probably thinks STDERR is a function
17:37 flussence well, it's not by default an object :)
17:38 flussence (in the sense of pointy arrows working on it)
17:38 TimToady std: use v5; STDERR->print('foo')
17:38 p6eval std 7deb9d7: OUTPUT«ok 00:01 52m␤»
17:38 TimToady it's fine, syntactically :)
17:38 Liz__ hehe
17:38 flussence oh, it needs the ()s
17:39 Liz__ just some actions methods missing to get it to work, eh?
17:39 TimToady just like P6
17:39 TimToady (or a colon, in the case of P6)
17:40 TimToady if you mean getting STD to 'work', we haven't done that with P6, let along P5
17:40 TimToady *alone
17:40 flussence if you want a "working" STD, niecza is pretty close...
17:40 Liz__ understood
17:40 TimToady and rakudo keeps gettin closer
17:40 jnthn Rakudo ain't so far off these days either, mind :)
17:41 jnthn Especially since we nabbed much of the error goodness :)
17:41 jnthn There's a few big things to figure out...
17:41 jnthn Well, only so big.
17:41 jnthn I guess we don't get indirect object syntax right in Rakudo yet :)
17:41 moritz nor labels
17:42 jnthn Oh, I can *parse* labels very easily :)
17:42 moritz nor null regexes, afaict
17:42 jnthn Labels have never been a parsing issue :)
17:42 Liz__ so, if I would want to use some figures in a presentation at FOSDEM
17:42 moritz r: /[a | ] /
17:42 p6eval rakudo 9ec0a5:  ( no output )
17:42 TimToady std: /[a | ] /
17:42 p6eval std 7deb9d7: OUTPUT«[31m===[0mSORRY![31m===[0m�Null pattern not allowed at /tmp/frw_aJKynN line 1:�------> [32m/[a | [33m�[31m] /[0m�Parse failed�FAILED 00:00 42m�»
17:42 Liz__ about Perl 6 / Rakudo / Niecza, what would they be?
17:42 jnthn Yeah, that also wants a fix.
17:43 jnthn Need to update to do the new sigspace rules also...
17:43 * jnthn is patiently waiting to see if some Pm tuits appear for that :)
17:44 flussence r: say 'abc' ~~ /[a | ] /
17:44 p6eval rakudo 9ec0a5: OUTPUT«「a」␤␤»
17:44 flussence r: say 'bcd' ~~ /[a | ] /
17:44 p6eval rakudo 9ec0a5: OUTPUT«「」␤␤»
17:44 moritz it matches the empty string
17:44 timotimo what do labels do in perl6?
17:44 TimToady it's outlawed for user confusion, not because we can't match the thing
17:45 TimToady n: L10: say "hi"; goto L10;
17:45 jnthn timotimo: Enable us to have a comefr^Wgoto keyword :)
17:45 flussence timotimo: loop break targets
17:45 p6eval niecza v24-18-gaf64300: OUTPUT«(timeout)hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi␤hi
17:45 moritz timotimo: they serve as destinations for next/goto/last/redo
17:45 timotimo ah, loop break targets would indeed be nice
17:45 jnthn Yeah, I pondered how to do those a bit ago
17:45 jnthn Then go distracted with other things
17:46 jnthn Like, this JVM port and stuff :)
17:46 jnthn And native arrays...
17:46 diakopter stuff++
17:46 flussence .oO( use Acme::LineNumbers )
17:46 jnthn Though I didn't actually implement the native arrays yet, just figured out much of how to do 'em.
17:47 TimToady as long as jnthn++ keeps knocking off the impossible bits, we can probably find someone else to tackle the merely hard bits
17:47 * diakopter waves from the dungeon
17:47 TimToady .oO(He says "It can be proven..." and falls back asleep.)
17:52 cog joined #perl6
17:54 benabik_ joined #perl6
18:06 dalek nqp-jvm-prep: cea09c4 | jnthn++ | src/org/perl6/nqp/ (5 files):
18:06 dalek nqp-jvm-prep: Ensure CodeRefs get a valid STable.
18:06 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/cea09c4e2b
18:06 dalek nqp-jvm-prep: 20d3bd9 | jnthn++ | t/nqp/40-lists.t:
18:06 dalek nqp-jvm-prep: We now pass 40-lists.t.
18:06 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/20d3bd9888
18:07 timotimo do i understand correctly that before nqp can be cc'd onto the jvm, one needs to implement a/the regex/grammar engine?
18:07 jnthn timotimo: yes
18:07 jnthn timotimo: Including porting the NFA stuff for doing LTM
18:07 timotimo oh my :|
18:08 jnthn timotimo: It's a fairly sizable chunk of work.
18:08 jnthn timotimo: otoh, getting this far was even more sizable and chunky :)
18:08 timotimo why can't it be ported to nqp and then cross-compiled, too? :D
18:09 jnthn Well, about of much of it as can be already is written in NQP
18:09 * TimToady wonders if anyone is planning to propose any Perl 6 talks for OSCON
18:09 jnthn TimToady: When is OSCON this year?
18:09 TimToady deadline is Feb 4, my executive secretary informs me
18:09 timotimo wow, that sentence took me more work to parse than expected
18:09 jnthn TimToady: I am somewhat pondering doing YAPC::NA for the first time this year...
18:10 TimToady July 22-26, it would appear
18:10 jnthn timotimo: Thing is, the NFA can be assembled just fine in NQP code, and Cursor can be implemented there. However...
18:10 jnthn The NFA runner really wants to be in something low level since it's very hot path.
18:10 timotimo i see
18:10 jnthn And the regexes themselves are actually compiled.
18:11 timotimo well, the JVM can do wonderful things to hot paths, i hear ...
18:11 jnthn Which means implementing QAST::Regex compilation.
18:11 timotimo i shan't bother you with work that's "far" in the future
18:11 jnthn Well, it's kinda the next big thing to worry about.
18:11 timotimo oh my :|
18:11 timotimo i feel entirely powerless to help, unfortunately
18:12 jnthn We're already up to 40 out of the 65 tests from t/nqp
18:12 spider-mario then we can make the JVM the primary platform for rakudo and rename it to JPerl
18:12 spider-mario … just kidding. ;)
18:13 jnthn 9 of those remaining are regex related.
18:13 jnthn And 3 of them are Parrot specific.
18:13 jnthn r: say 65 - 40 - 9 - 3
18:13 p6eval rakudo 9ec0a5: OUTPUT«13␤»
18:13 tadzik lucky you!
18:13 tadzik oh, wait
18:13 jnthn :P
18:13 tadzik gee, the compilers exam is an exhausting beast
18:14 xinming_ joined #perl6
18:15 jnthn So it's probable that by tomorrow, if not today, I'll be down to a single digit number of tests left before we block on regexes.
18:15 Liz__ after regexes, what would be the next block? (if any?)
18:16 TimToady I think a more likely name is 'rakujo
18:16 TimToady or rakujou
18:17 TimToady comfort child, of comfort shape, or comfort passion
18:18 jnthn Liz__: Probably lots of small things rather than any one huge thing.
18:18 jnthn Liz__: More pir:: ops to make go away, IO to abstract...
18:19 Liz__ ok… sounds familiar...
18:19 Liz__ :-(
18:19 Liz__ wrt OSCON: if I would sign up for a presentation, what would be a good thing to present about Perl 6 ?
18:21 Liz__ suggestions?
18:21 jnthn Well, Rakudo should be on the JVM by summer conf season at least... :)
18:21 Liz__ thoughts?
18:21 PerlJam Liz__: "Real World Perl 6"
18:21 jnthn And who knows, maybe more...
18:22 Liz__ jnthn: you're thinking potion there ?
18:22 jnthn Liz__: No, more of the pmurias++ JavaScript porting
18:23 Liz__ aha…  v8 as a backend ?
18:24 jnthn I believe so. I've only followed it so closely, but each time I look it seems to be heading in an interesting way :)
18:24 Liz__ url?
18:24 tadzik Liz__: https://github.com/pmurias/rakudo-js
18:24 jnthn https://github.com/pmurias/rakudo-js/
18:25 * jnthn likes to hope the work he's doing to further detangle NQP from Parrot is helping that effort also :)
18:25 Liz__ I would think so...
18:30 jnthn dinner, bbiab
18:31 cog joined #perl6
18:32 atrodo joined #perl6
18:35 Liz__ same here
18:43 [Coke] (we should add a perl6 --check-for-updates so users can know how out of date their local copy is. :)
18:44 nwc10 and then the option to read e-mail?
18:44 [Coke] (macports parrot) I reaaaaly hope you don't look at the maintainer there. :P
18:45 [Coke] jnthn: arrrgh. if you're going to YAPC::NA I feel like I should make an effort to go.
18:46 cog joined #perl6
18:47 balders_1od joined #perl6
18:48 [Coke] nwc10: do you think it would be more helpful to get parrot-latest in there, or to remove it entirely?
18:49 nwc10 OK, I'm biased, I think. I'm only interested in parrot as a means to an end. The end being Perl 6.
18:49 nwc10 so, this week, parrot-latest is more useful
18:50 [Coke] ok, with that end in mind, is it more helpful to have parrot as a separate install? I know package maintainers would say yes.
18:50 arlinius joined #perl6
18:50 nwc10 I'm not sure what I should say. :-)
18:50 [Coke] or is it easier/better/whatever to have parrot as a bundled part of installing rakudo?
18:50 [Coke] eh. I feel guilty enough I will probably get that sorted this weekend now.
18:50 nwc10 I'm building from source from git, but not actually using it
18:51 nwc10 ie "does it still build" "Oh, nice"
18:51 [Coke] Last time I did it was on my PPC macbook, so it's been a while.
18:51 nwc10 I didn't mean to cause you to do work
18:51 nwc10 ie, to my mind a macports parrot isn't very interesting without a macports Rakudo
18:51 [Coke] as a user of perlsix, I "just" grab the latest rakudo every once in a while and reinstall it somewhere I can get at it.
18:51 nwc10 and I don't need either.
18:52 nwc10 (and I couldn't find Rakudo in macports, so either I suck at searching, or it's not there)
18:52 [Coke] catch-22; parrot wants to be used by more than just rakudo, but it needs users from more than just rakudo.
18:52 [Coke] nwc10: it's not there, no.
18:53 [Coke] I might be able to be convinced to get that working also.
18:54 [Coke] so, for macports, the /ideal/ would be having latest parrot release and rakudo release uploaded into ports every month.
18:54 [Coke] hai?
18:54 nwc10 Personally, I'm far more curious to see how Rakudo-on-JVM stacks up against Rakudo-on-Parrot. Which, obviously is not going to happen this weekend.
18:54 nwc10 Yes, I think that that would be the ideal. That's a lot of work.
18:54 [Coke] well, yes, me too.
18:55 [Coke] the first time, yes.
18:55 nwc10 Likely I wouldn't even bother installing Rakudo from macports. So I am not the end users you seek.
18:55 [Coke] next time I need to stop myself from having a snack, I'll look into it. :)
18:55 * [Coke] feels momentarily confused.
18:55 nwc10 Rakudo - part of a calorie controlled diet
18:56 * [Coke] sends nwc10 on his way.
18:56 nwc10 ie, please don't do this to please me, as I'm not seeking to use it from macports
18:56 nwc10 given infinite resources (ie not true), having current in macports, updated monthly, would be ideal.
18:57 [Coke] right. that is lower hanging fruit for me than whatever voodoo jnthn is doing at the moment.
18:57 nwc10 if you ask the more direct question of "which is best, which is worst - leave macport parrot alone at 3.3.0, update to current parrot, or delete the port?"
18:57 nwc10 I don't know.
18:58 [Coke] ... though really I should follow that more closely, as I know enough java to be dangerous.
18:58 [Coke] eh. someone opens a ticket on that port, I'll be more concerned. :)
18:58 nwc10 because at the rate Jnthn's going, Christmas will be before Ascention.
18:58 nwc10 ("you wish")
19:00 dalek mu: b647daf | larry++ | docs/Perl6/Cheatsheet/cheatsheet. (2 files):
19:00 dalek mu: Minor tweaks
19:00 dalek mu: review: https://github.com/perl6/mu/commit/b647dafcb9
19:04 moritz woah, I've written 20 lines of NQP code, and it compiled on the first try
19:04 nwc10 ship it!
19:05 moritz well, first I should see if rakudo still compiles :-)
19:06 TimToady and then see if it complies
19:06 moritz compliance is overrated :-)
19:07 moritz \o/ it ran
19:08 TimToady well, fudging certainly overrates compliance
19:11 dalek rakudo/constant-folding: 622595b | moritz++ | src/Perl6/Optimizer.pm:
19:11 dalek rakudo/constant-folding: first shot at constant folding
19:11 dalek rakudo/constant-folding:
19:11 dalek rakudo/constant-folding: so far it does nothing, but also breaks nothing. It seems that the multi dispatch call optimization comes first, and interferes with this one
19:11 dalek rakudo/constant-folding: review: https://github.com/rakudo/rakudo/commit/622595bd37
19:14 [Coke] moritz: you trying to make it so that my $x = 2 * 3 skips the * at runtime?
19:14 [Coke] (e.g.) ?
19:14 moritz [Coke]: correct
19:16 timotimo ah, it will do things like compile-time-create parcels, too, won't it?
19:17 colomon does nothing, breaks nothing!
19:17 moritz the current plan is to simply call all routines at compile time that have the 'pure' trait applied, and whose arguments are all known at compile time
19:17 benabik GNDN
19:17 moritz I have no idea if that creates parcels at compile time :-)
19:18 moritz subroutine calls, I should say
19:18 cog joined #perl6
19:18 moritz not method calls
19:18 timotimo Nothing In Nothing Out, NINO?
19:18 TimToady and if you happen to be doing it in a sink context, you can carp about anything pure you find as "Useless use of"
19:18 benabik GNDN = Goes Nowhere, Does Nothing.  It was a vary common label on pipes in the background of Star Trek: The Next Generation
19:19 TimToady eval: 42; 43
19:19 moritz TimToady: oh, and I could war about variables used in sink context
19:19 moritz *warn
19:19 TimToady enobuu?
19:19 flussence eval bacon
19:19 flussence (colon check, guess it's gone)
19:36 moritz timotimo: do you know if there's a way to recompile the optimizer and then run it without recompiling the whole setting first?
19:40 Liz__ I see "race" got added to the Perl 6 cheat seet by dalek just now
19:41 masak dalek, you racist.
19:41 moritz well, TimToady added it, dalek reported it
19:42 Liz__ not sure what it means, and googling it is bad
19:43 masak Liz__: do you know 'eager'?
19:43 moritz Liz__: it means "evaluate a list in parallell, and don't care about the return order"
19:43 PerlJam Perl 6 has built-in race conditions?
19:43 diakopter the starting gun is a few miles away though
19:43 masak right. 'race' is like 'hyper', except it doesn't order the results.
19:43 Liz__ aha, hyper, but on a single list as it were?
19:43 Liz__ aha,
19:44 Liz__ ok….  somehow I never envisioned hyper ordering results
19:44 masak Liz__: for more info, see S02:4680
19:44 Liz__ thanks!
19:44 masak Liz__: references like that turn into links in the IRC log.
19:45 masak (is it just me, or do you have more underscores than yesterday?) :P
19:47 moritz accumulative underscoring!
19:48 masak where will it end?
19:49 diakopter it's scores all the way down
19:51 FROGGS joined #perl6
19:53 * masak .oO( all scores are under, but some are underer than others )
19:57 Liz better?
19:58 cog joined #perl6
20:00 jnthn .oO( apparenlty, not better :P )
20:00 timotimo moritz: https://github.com/timo/junction-opt - see how i did it here
20:02 moritz timotimo: that looks... scary
20:02 timotimo it's not so bad
20:04 masak Guest64872: you might need to have a talk with NickServ, registering a nick or sump'n.
20:04 jnthn moritz: It just adds another stage into the compiler then tries running some code :)
20:06 moritz jnthn: currently I'm checking if all arguments of a QAST::Op(:op<call>) have a $_<has_compile_time_value> (more)
20:06 lizmat I guess Liz is taken
20:07 moritz jnthn: but QAST::Want and QAST::WVal don't have that
20:07 moritz jnthn: what's the best approach? special-case them?
20:08 moritz afaict QAST::WVal always has a compile-time known value
20:09 jnthn moritz: Oh, I thought it was .has_compile_time_value these days...
20:09 moritz oh.
20:09 moritz that explains a lot :-)
20:09 jnthn moritz: And that the <...> had gone away
20:09 jnthn iirc on QAST::Want it automatically delegates to the zeroth child
20:09 moritz yes, you're right
20:10 * moritz recompiles
20:11 moritz nr: say Q'\\share\a\b'
20:11 p6eval rakudo 9ec0a5, niecza v24-18-gaf64300: OUTPUT«\\share\a\b␤»
20:14 moritz now my optimization thingy actuallly does something
20:14 moritz ... and promptly fails, because I misspelled a method
20:21 SmokeMachine joined #perl6
20:27 timotimo hm. i don't think i've got an answer to this question yet: how do i launch a process from perl6 and communicate with its stdin/stdout/stderr?
20:27 masak I second that question.
20:27 moritz you can open a pipe with open(:p, $program)
20:27 moritz but that's only one-way communication
20:28 timotimo so i'd have to mkfifo three files and use a shell to hook them up?
20:29 benabik joined #perl6
20:29 jnthn I guess we need an open-3way or something... :)
20:30 timotimo an idea how that could look? would it return a parcel of three pipes?
20:31 moritz nah, a proper object
20:31 jnthn Or...*gasp*...an object!
20:31 timotimo i was wondering if instead of launching the perl6 ipython kernel from the python wrapper, i could launch the python wrapper from inside the perl6 ipython kernel code
20:31 timotimo that way there would be no problems if someone ended up opening stdout and writing to it without permission, because stdout is the way i currently handle communication between the two processes
20:32 timotimo other than that i suppose i could indeed mkfifo two pipes outside of both processes and use that
20:34 timotimo if i have an external pipe for communicating the protocol, the wrapper could totally just read stdout and stderr and pass that on as "output data" to ipython, that would even be more or less elegant
20:35 timotimo well, not really elegant, but it should work better than replacing $*OUT
20:46 vividsnow joined #perl6
20:47 Khisanth joined #perl6
20:48 raiph joined #perl6
20:57 hoelzro o/ #perl6
20:57 raiph lizmat: you can google just selected p6 sources using http://tinyurl.com/googlep6
20:58 lizmat cool, thanks!
21:00 hoelzro does it make sense to build Rakudo * with an existing Rakudo?
21:00 hoelzro I'm thinking about packaging again, and there's an up-to-date rakudo package for Arch Linux; I'm wondering if it would make sense to package against that instead of having a different perl6 binary altogether
21:01 moritz yes, it does
21:01 sftp joined #perl6
21:05 dalek rakudo/constant-folding: cd64560 | moritz++ | src/ (2 files):
21:05 dalek rakudo/constant-folding: move constant folding code to the correct location; some small fixes
21:05 dalek rakudo/constant-folding: review: https://github.com/rakudo/rakudo/commit/cd645601e4
21:07 hoelzro excellent
21:08 timotimo wat. my $a = open(:p, "cat") does NOT work well within the repl
21:09 moritz $ ./perl6 -e 'say 42 + 38'
21:09 moritz Constant-folding &infix:<+> with 2 arguments:
21:09 moritz ... done.
21:09 moritz 80
21:09 jnthn woo
21:09 timotimo cool :)
21:09 moritz and --target=optimize shows that there is no call to infix:<+> anymore
21:10 timotimo moritz: try a parcel with infix:<,>?
21:10 jnthn moritz++
21:10 moritz timotimo: no dice
21:10 timotimo OK
21:10 [Coke] moritz: how will this work in modules wher eyou might ahve loaded fmore infix:<+>'s before you run the precompiled module?
21:11 moritz timotimo: ah, I haven't marked infix:<,> as 'pure' in the setting
21:11 sftp joined #perl6
21:11 timotimo you could, though :)
21:11 moritz [Coke]: fine, I hope :-)
21:11 jnthn [Coke]: Any "use" statements that bring in operator overloads happen at compile time.
21:11 moritz timotimo: or you could. It's a public branch :-)
21:11 * moritz runs a spectest first
21:11 tadzik whoa, that's awesome!
21:12 tadzik moritz++
21:12 timotimo i don't have a commit bit on rakudo yet ;)
21:12 timotimo but i could indeed try a pull request
21:12 jnthn [Coke]: So they're already in scope (and provided moritz++ looked up in the current scope, we're all good)
21:12 tadzik is that -O3 or wht?
21:12 moritz timotimo: aye
21:12 Khisanth joined #perl6
21:12 moritz tadzik: it's... dunno, whatever proto inlining is
21:12 jnthn That's -O2, the default
21:13 moritz please note that this is a very, very early prototype
21:13 moritz lots of stuff can still go wrong
21:13 tadzik yeah, right
21:14 tadzik you know us ;)
21:14 jnthn perl6 -e "say 1/0" :)
21:14 moritz jnthn: I've disabled 'is pure' on infix:</>
21:14 moritz there's... stuff going on
21:14 moritz constructing of Rats and stuff
21:14 masak did someone say "very, very early prototype"? :>
21:14 jnthn ah
21:14 moritz and some bootstrappy problems too, I think
21:14 jnthn masak: No, they said "very very early jQuery" :P
21:15 moritz YUI!
21:15 tadzik masak: that's Perlish for "production ready" :>
21:15 p5eval joined #perl6
21:15 moritz ... and I wanted to be in bed half an hour ago
21:15 jnthn Hacking > Bed...well, sometimes :)
21:15 moritz good night folks
21:15 jnthn 'night, moritz
21:16 lizmat night, moritz
21:16 tadzik gnight
21:16 [Coke] jnthn: let's say you define a + in your .pl - you include a module that uses + - does your defined + impact how the module works?
21:16 jnthn [Coke]: No
21:16 jnthn [Coke]: Due to separate compilation.
21:17 [Coke] ok. my concern was that, if it did, and you precompiled the module outside of your .pl, boom.
21:17 jnthn [Coke]: It used to; that was a bug fixed around October last year :)
21:17 [Coke] jnthn++
21:17 jnthn Yeah, the spec says such things should not leak into the compilation of modules.
21:17 jnthn oh, it wasn't actually the multis that leaked
21:17 jnthn We've not had that bug in years, if ever
21:17 jnthn It was user-defined operators.
21:17 jnthn And only the parsing, not the multi candidates.
21:20 dalek perl6-roast-data: b13834d | coke++ | / (4 files):
21:20 dalek perl6-roast-data: today (automated commit)
21:20 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/b13834df75
21:21 [Coke] looks like rakudo has several new aborts.
21:21 [Coke] niecza has some old ones.
21:21 [Coke] pugs needs a hug.
21:21 masak aww
21:31 [Coke] at this point, I'm just trying to keep tests fudged for pugs. very unlikely haskell shaped tuits will appear.
21:32 [Coke] jnthn: is docs/LHF uptodate for nqpjvmprep
21:32 [Coke] ?
21:36 cog joined #perl6
21:37 xinming joined #perl6
21:38 Khisanth joined #perl6
21:38 geekosaur joined #perl6
21:44 [pp]sromanov joined #perl6
21:45 [pp]sromanov moritz: (or anyone) sorry for bothering, but what it takes to add a channel to http://irclog.perlgeek.de/?
21:45 [pp]sromanov we really miss some nice logging at #moe :)
21:46 jnthn [pp]sromanov: Asking moritz should be enough, but he's sleeping at the moment.
21:46 [pp]sromanov oh, thanks!
21:46 jnthn [Coke]: just checked. Yes.
22:02 masak hm, I can see http://strangelyconsistent.org/blog/feed.atom and it looks legit... apart from all those weird characters at the end of every post.
22:02 masak what are those?
22:03 jnthn masak: Doesn't work for me
22:03 jnthn masak: Also, seems planetsix gets them
22:03 masak hexdump says they're NUL bytes.
22:03 masak wtf.
22:03 masak yeah, I can see that being an issue in an *utf-8* file.
22:03 jnthn masak: oddly, if I get the source it looks OK
22:04 jnthn oh
22:04 jnthn no, has the null bytes it seems
22:04 masak I generated this using Rakudo. so I suspect I can make a rakudobug out of this.
22:04 jnthn which prevents firefox's thingy from displaying the feed
22:04 masak but need to investigate the cause.
22:05 * flussence takes a look
22:13 flussence .oO( this is the strangest compiler I've ever debugged )
22:14 jnthn It is compiling the strangest language :P
22:18 * masak .oO( strangely compiling )
22:18 huf :)
22:18 flussence it's adding the nulls when doing a completely normal-looking slurp/print around line 84... (whee, another IO bug)
22:19 Khisanth joined #perl6
22:20 gaussblurinc_ joined #perl6
22:27 flussence hmm, I'm not seeing any obvious pattern to the length...
22:29 dalek nqp: c4434db | jnthn++ | src/core/IO.pm:
22:29 dalek nqp: Add a join sub to the NQPCORE.setting.
22:29 dalek nqp:
22:29 dalek nqp: The nqp::join op should be low-level and assume it's being given a
22:29 dalek nqp: set of strings to join. This sub provides the convenient, coercing
22:29 dalek nqp: form.
22:29 dalek nqp: review: https://github.com/perl6/nqp/commit/c4434db65f
22:29 dalek nqp: 55631fa | jnthn++ | t/nqp/57-construction.t:
22:29 dalek nqp: Update a test to use join, not nqp::join.
22:29 dalek nqp: review: https://github.com/perl6/nqp/commit/55631fae79
22:33 dalek nqp-jvm-prep: 07762be | jnthn++ | / (2 files):
22:33 dalek nqp-jvm-prep: Implement nqp::join; code from thecabinet++.
22:33 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/07762bee0a
22:33 dalek nqp-jvm-prep: 0cd4828 | jnthn++ | nqp-src/NQPCORE.setting:
22:33 dalek nqp-jvm-prep: Add a join sub.
22:33 dalek nqp-jvm-prep:
22:33 dalek nqp-jvm-prep: The nqp::join op expects what it is provided with to already be
22:33 dalek nqp-jvm-prep: stringified; add a join sub that makes sure of this.
22:33 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/0cd4828120
22:33 dalek nqp-jvm-prep: a3fb625 | jnthn++ | / (2 files):
22:33 dalek nqp-jvm-prep: Implement not_i.
22:33 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/a3fb625906
22:33 dalek nqp-jvm-prep: 0c31e28 | jnthn++ | lib/QAST/JASTCompiler.nqp:
22:33 dalek nqp-jvm-prep: Support qlist.
22:33 jnthn dalek: you missed two! :P
22:33 tadzik did dalek die in the mi... right :)
22:34 jnthn fail
22:34 tadzik failek
22:34 diakopter silent floo
22:34 jnthn nyetlek
22:36 flussence aha
22:36 [Coke] нетlek
22:37 [Coke] ooh, we should totally rename him to да
22:37 [Coke] er,
22:37 flussence psyde line 212-213 eats a few lines, the length looks almost the same as the amount of null bytes. I suspect parrot's readall() is screwed up and allocating a file-sized buffer instead of a remaining-file-sized one.
22:37 [Coke] даlek. curse you, newlines!
22:38 hoelzro heh
22:40 timotimo having trouble with Rakudo::Debugger
22:42 jnthn Try debu...oh. :)
22:43 masak http://xkcd.com/1163/
22:43 jnthn :P
22:44 [Coke] s/brain/rakudo/g
22:46 dalek nqp-jvm-prep: 2a8aa2e | jnthn++ | t/nqp/57-construction.t:
22:46 dalek nqp-jvm-prep: We now pass 57-construction.t.
22:46 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/2a8aa2e0e0
22:46 dalek nqp-jvm-prep: db47d4e | jnthn++ | src/org/perl6/nqp/runtime/Ops.java:
22:46 dalek nqp-jvm-prep: Fix nqp::substr out-of-range handling.
22:46 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/db47d4eacb
22:46 dalek nqp-jvm-prep: 39b0324 | jnthn++ | src/org/perl6/nqp/runtime/Ops.java:
22:46 dalek nqp-jvm-prep: Fix nqp::cmp_s semantics.
22:46 dalek nqp-jvm-prep:
22:46 dalek nqp-jvm-prep: Should always give -1, 0 or 1.
22:46 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/39b03245ef
22:46 dalek nqp-jvm-prep: 3a441f5 | jnthn++ | t/nqp/59-nqpop.t:
22:46 dalek nqp-jvm-prep: Run 59-nqpop.t (which has 94 tests).
22:46 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/3a441f528a
22:47 hoelzro can one install the Rakudo * modules without installing Rakudo?
22:47 hoelzro for example, if I already have Rakudo itself installed?
22:47 tadzik install Task::Star
22:47 tadzik should work-ish
22:48 hoelzro tadzik: with panda?
22:48 tadzik yeah
22:48 tadzik https://github.com/tadzik/Task-Star/
22:49 hoelzro hmm
22:50 hoelzro ugh, I'll have to think about this packaging stuff more tomorrow, I think
22:50 sftp joined #perl6
22:54 Khisanth joined #perl6
22:58 cog joined #perl6
22:58 timotimo how can i use the perl6 grammar to parse some string?
22:58 timotimo i would like to try to use perl6-debug to interactively parse somethign
22:58 timotimo (i suppose that won't be possible, though)
23:03 flussence null bug testcase: https://gist.github.com/4687526
23:10 flussence masak: you might have more success generating that atom feed with niecza ;)
23:10 LoRe joined #perl6
23:10 jnthn for hell's sake.
23:10 jnthn I can't wait to be on the JVM.
23:11 jnthn So I don't have to tolerate such crap.
23:11 jnthn And nor will Rakudo's users.
23:11 sftp joined #perl6
23:11 jnthn *sigh*
23:12 Liz_ joined #perl6
23:12 tadzik *back pat*
23:12 tadzik thanks to you we won't have to
23:13 tadzik you're a hero man
23:13 sorear hurray for jnthn
23:13 colomon \o/ jnthn \o/
23:14 [Coke] left #perl6
23:15 flussence ooh, maybe once it's on JVM we can get DBDI for nearly free, since it's intentionally a clone of Java's API...
23:16 benabik joined #perl6
23:19 geekosaur joined #perl6
23:19 jnthn flussence: Perhaps so, otoh it's nice if we can have a sufficiently good NativeCall on JVM to do it that way too :)
23:20 tadzik jvm is teh silver bullet :)
23:20 jnthn heh
23:20 tadzik takes long to load though ;)
23:20 jnthn Not quite, but it's a step towards somewhere better.
23:20 tadzik one big barell
23:20 diakopter or stupendous integration with a perl5
23:21 jnthn The first port is the hardest.
23:21 * diakopter looks around
23:21 tadzik then plunder gets easier
23:21 timotimo what were you just upset about, jnthn?
23:21 timotimo the null bug test suite thing?
23:21 jnthn timotimo: Yeah.
23:22 jnthn timotimo: I suspect also introduced in the IO refactor in Parrot that has caused us various other bits of pain (like, the infamous stdin reading bug)
23:22 masak lol, I wrote a post! \o/ http://strangelyconsistent.org/blog/i-am-going-to-fosdem
23:22 tadzik lol
23:22 jnthn ooh, I have 80% of a blog post...
23:23 jnthn That I forgot that I have left to finish from yesterday :)
23:23 tadzik masak: this is awesome
23:23 tadzik 5 word sentences
23:23 masak :)
23:23 tadzik I'm surprised with how nicely that does read
23:24 masak yeah.
23:24 masak that took some serious doing. :)
23:24 jnthn It's fortunate the talk title has five owrds :D
23:24 jnthn *words
23:24 tadzik admit it, this is why you chose 5
23:24 diakopter I wonder what the other language community was
23:24 masak no.
23:25 tadzik otherwise it would be hard
23:25 tadzik formulating the sentence about talk
23:25 tadzik including talk title in it
23:25 masak tadzik: the talk title actually has 6 words :P
23:25 tadzik where's doesn't count, does it
23:25 masak "Dude,"
23:26 tadzik r: "Dude, where's my flying car".words.perl.say
23:26 p6eval rakudo 9ec0a5: OUTPUT«("Dude,", "where's", "my", "flying", "car").list␤»
23:26 masak :P
23:26 tadzik r: "Dude, where's my flying car".words.elems.say
23:26 p6eval rakudo 9ec0a5: OUTPUT«5␤»
23:26 jnthn Oh, I thought it was "where's" :)
23:26 masak actually I count expanded words.
23:26 tadzik you see, I was right
23:26 masak note that there are none.
23:26 masak in the blog post itself.
23:26 jnthn "Also, Perl 6 is everywhere. Especially in the flying cars."
23:27 dalek nqp-jvm-prep: bd5c5ee | jnthn++ | src/org/perl6/nqp/sixmodel/KnowHOWMethods.java:
23:27 dalek nqp-jvm-prep: Add missing checkarity calls in MOP code.
23:27 dalek nqp-jvm-prep:
23:27 dalek nqp-jvm-prep: In their defense, maybe it didn't exist when they were written...
23:27 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/bd5c5ee3a7
23:27 dalek nqp-jvm-prep: 31fcacd | jnthn++ | src/org/perl6/nqp/runtime/ (3 files):
23:27 dalek nqp-jvm-prep: Fix a flattening thinko, caught by the tests.
23:27 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/31fcacd426
23:27 dalek nqp-jvm-prep: 1bf287f | jnthn++ | t/nqp/41-flat.t:
23:27 dalek nqp-jvm-prep: We pass 41-flat.t.
23:27 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/1bf287f401
23:28 lizmat masak: looking forward to seeing you at FOSDEM
23:28 * lue feels tempted to work on a native machine code backend for nqp when he has more time whenever he hears about the jvm backend
23:28 cognominal joined #perl6
23:28 masak lizmat: looking forward to it, too. :)
23:28 lizmat lue might be interested in looking at rurban's work on p2 and potion
23:29 diakopter mmmppphhhfffhppphh
23:29 masak tadzik: I like constrained writing. it's oddly liberating :)
23:29 tadzik you broke the rules now
23:29 masak oh shut up :P
23:29 tadzik you should use 5 words ;)
23:29 masak diakopter: you too! :P
23:29 lizmat diakopter: am I missing a translation here?
23:30 masak lizmat: no, diakopter is just being indisrete. ignore him. :P
23:30 masak indiscrete*
23:30 diakopter so, continuous
23:30 masak smooth as an android's butt.
23:31 jnthn Didn't Apple patent being so smooth?
23:31 tadzik silky smooth
23:32 masak early findings: both the atom feed and the generated static html files contain the null bytes.
23:32 masak I am so not amused.
23:32 diakopter your mom contains the null bytes
23:32 jnthn masak: You saw flussence++'s gist too?
23:33 masak no.
23:33 * masak looks for it
23:33 tadzik it's in the part where jnthn grumbles :P
23:34 jnthn :P
23:34 jnthn Yeah, I...really should not be doing much besides sleeping when this tired. :/
23:35 jnthn I'm not sure I should be this tired when I slept 9 hours last night either.
23:35 jnthn OK, there's native types fixed up...
23:35 masak found it.
23:35 masak yeah, that fucking sucks.
23:35 masak Parrot--
23:36 * masak angrily ponders a workaround
23:36 jnthn .subst(/\x00/, '', :g) :P
23:36 jnthn OK, we're now passing 44 test files.
23:36 masak yeah, that might be it, actually.
23:37 jnthn r: say 65 - 44; say 65 - 44 - 9;
23:37 tadzik -3 for parrot?
23:37 jnthn uh, ah yeah
23:37 jnthn And...where is the evalbot?
23:37 tadzik p6eval: WAKEUP
23:37 jnthn bah, I can do it with nqp-jvm
23:37 tadzik p6eval: GRABHMMHMHMHMAKEUP
23:38 skids joined #perl6
23:38 dalek nqp-jvm-prep: 91bb86d | jnthn++ | src/org/perl6/nqp/sixmodel/SerializationReader.java:
23:38 dalek nqp-jvm-prep: Cope with the lack of a method cache.
23:38 dalek nqp-jvm-prep:
23:38 dalek nqp-jvm-prep: Fixes deserialization of native types.
23:38 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/91bb86d95f
23:38 dalek nqp-jvm-prep: a0bcc37 | jnthn++ | nqp-src/NQPCORE.setting:
23:38 dalek nqp-jvm-prep: Uncomment native type decls in NQPCORE.setting.
23:38 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/a0bcc37d8e
23:38 dalek nqp-jvm-prep: 23578d4 | jnthn++ | t/nqp/64-native.t:
23:38 dalek nqp-jvm-prep: We now pass 64-native.t.
23:38 dalek nqp-jvm-prep: review: https://github.com/jnthn/nqp-jvm-prep/commit/23578d4d26
23:38 jnthn So, 18 test files to go, but 9 of them need the regex work.
23:38 lue lizmat: seems interesting. I just want a faster rakudo though :P (also, faster CORE.setting step)
23:38 * benabik is converting null test case to Winxed to see if it is Parrot proble.m
23:38 benabik I suspect it is.
23:38 p6eval rakudo 9ec0a5: OUTPUT«21␤12␤»
23:39 lizmat lue: "libp2 should be usable as a fast backend for nqp/perl6", implies rakudo to me
23:41 diakopter to say that is wildly optimistic makes even an expansive-thinking manic mutter
23:41 tadzik sleepytime for me it is. Good knight #perl6!
23:42 lue good ♞, tadzik o/
23:42 jnthn OK, enough nqp-jvm today. Especially given that to make more progress means doing one of roles, multiple dispatch, exception handlers or the regex engine...all of which are far too much effort to dig into at half past midnight. :)
23:42 lizmat diakopter: hehe, but at least he's thought about it
23:42 masak jnthn: yes, that fixed the problem. jnthn++
23:42 * diakopter cry
23:42 masak jnthn: I would still like to find the cause.
23:43 masak oh wow. now getting "Unaligned end in UTF-8 string". never got that error before.
23:43 * masak investigates
23:43 lizmat at least it will direct rurban's attention away from parrot, no?
23:43 * flussence points masak at parrot/src/io/api.c:749
23:43 tadzik tee-hee
23:43 flussence that's the bottom of the turtle stack, and the rest of the layers look pretty empty to me
23:44 * lizmat is calling it a say, gnight #perl 6
23:44 lizmat s/say/day
23:44 lizmat :-)
23:44 jnthn 'night, lizmat
23:46 masak 'night, lizmat
23:46 masak see you on the other side.
23:47 masak flussence: thanks. that doesn't tell me much, but maybe it'll help others debugging this.
23:47 masak I am currently having an unrelated Unicode string error. :(
23:48 jnthn :(
23:50 xinming joined #perl6
23:51 masak so, basically, this is what happens.
23:51 masak I have a file which is *pure* ASCII.
23:51 masak I do qx[cat the-file] in Rakudo.
23:52 masak I get "Unaligned end in UTF-8 string".
23:52 masak this is bad. I can't render my blog now. :( :( :(
23:52 * masak considers urgently downgrading his Rakudo
23:52 masak does anyone know which one is the latest Parrot that wasn't broken?
23:53 masak oh heck, I'll just try monthly decrement until stuff works again. :(
23:53 masak decrements*
23:56 benabik masak: If you can tell me when it breaks, I'll look into it.
23:57 flussence niecza: say Date.today
23:57 p6eval niecza v24-18-gaf64300: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared name:â�¤        'Date' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) â�¤  at /home/p…
23:57 masak benabik: https://gist.github.com/4687526
23:57 masak benabik: I can also gist you the ASCII-only file that causes the "Unaligned end in UTF-8 string" error message.
23:57 benabik masak: Yes, I'm looking into that.  Is that the same bug as your blog?
23:57 rurban diakopter: p2 is far easier to target than jvm. I support dynamic, typing jvm not.
23:58 masak benabik: both of those bugs are simultaneously affecting my blog.
23:58 rurban and its also much faster and smaller than the jvm
23:58 sorear what's p2?

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

Perl 6 | Reference Documentation | Rakudo