Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-05-02

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:03 timotimo tadzik: i'm failing to install rakudo with rakudobrew; apparently it won't find site in languages/perl6 (because it ain't there)
00:41 ponbiki joined #perl6
00:50 Alula joined #perl6
00:53 thou joined #perl6
01:00 Alula joined #perl6
01:04 Sqirrel joined #perl6
01:12 treehug88 joined #perl6
01:12 btyler joined #perl6
01:17 japhb Just tried to build a fresh r-p, and it blew sky high (max recursion depth with a monster backtrace) trying to build RESTRICTED.setting.pbc
01:21 FROGGS joined #perl6
01:28 Alula joined #perl6
01:42 Alula joined #perl6
01:51 moistcherry joined #perl6
01:52 Su-Shee_ joined #perl6
01:54 klapperl joined #perl6
02:08 BenGoldberg joined #perl6
02:15 raiph joined #perl6
02:23 jnap joined #perl6
02:26 donaldh joined #perl6
02:32 ashleydev joined #perl6
03:17 kaare_ joined #perl6
03:32 adu joined #perl6
03:55 jnap joined #perl6
03:57 silug____ joined #perl6
04:12 anaeem1_ joined #perl6
04:16 adu joined #perl6
04:17 bjz joined #perl6
04:43 kaare_ joined #perl6
04:54 xinming__ joined #perl6
04:56 jnap joined #perl6
04:57 labster joined #perl6
05:07 plobsing joined #perl6
05:07 SamuraiJack joined #perl6
05:38 bowtie joined #perl6
05:56 SamuraiJack_ joined #perl6
05:57 jnap joined #perl6
06:15 araujo joined #perl6
06:19 darutoko joined #perl6
06:44 kaleem joined #perl6
06:55 zakharyas joined #perl6
06:55 FROGGS joined #perl6
06:57 jnap joined #perl6
07:00 molaf joined #perl6
07:01 Ven_ joined #perl6
07:16 spider-mario joined #perl6
07:20 Ven_ when would be this month's R* release ? (or is there not gonna be a .msi file ?)
07:21 Ven_ (or is there a need for a release manager ?)
07:26 igorsutton joined #perl6
07:40 grondilu joined #perl6
07:41 moritz 01:12 < jnthn> I'll get R* release worked out tomorrow
07:42 moritz Ven_: there's always a need for a release manager; do you want to do the May release?
07:43 Ven_ I can't even get rakudo to build on windows
07:46 moritz m: my $x = '42'; $x ~~ s/(.)/$0$0/; say $x
07:46 camelia rakudo-moar fd5f8e: OUTPUT«442␤»
07:47 moritz m: my $line = "bar foo"; s/(\w+) \s+ (\w+)/$1 $0/; say $line
07:47 camelia rakudo-moar fd5f8e: OUTPUT«bar foo␤»
07:48 moritz m: my $line = "bar foo"; $line ~~ s/(\w+) \s+ (\w+)/$1 $0/; say $line
07:48 camelia rakudo-moar fd5f8e: OUTPUT«foo bar␤»
07:53 rindolf joined #perl6
07:58 jnap joined #perl6
08:02 dmol joined #perl6
08:04 Ven_ how hard would be `is parsed` to implement ? (and at what cost ?)
08:06 moritz nobody has done it before; it'd need exploring
08:06 moritz (and you'd need to be able to build rakudo for it :-)
08:06 moritz the cost? time, partial sanity downgrads
08:06 masak it's at least an interesting challenge.
08:07 masak with mutating the actual parsed program colliding a bit with changing immutable cursors.
08:07 masak or something.
08:07 Ven_ I can build rakudo, but only on my debian vm :)
08:07 masak jnthn++ claimed to have seen a way forward once.
08:08 Ven_ cost, as in "how badly would it hurt the perf"
08:08 masak should be a no-cost thing for those who don't use it.
08:15 moritz aye
08:16 moritz masak: fwiw I can kinda also imagine a way around the immutable string+cursor problem
08:17 cognominal__ joined #perl6
08:17 masak excellent.
08:17 moritz basically, parsing the returned string with a fresh cursor, and then creating a dummy cursor from begin to end of the 'is parsed' string
08:17 moritz but it'd mean you can't return '} else {' and have it magically inserted and work
08:18 ggoebel111113 joined #perl6
08:18 moritz not sure if that's a bug or a feature :-)
08:18 zakharyas joined #perl6
08:18 masak hm, why would it mean that? I don't see the connection.
08:18 masak oh, because of nested braces and stuff?
08:19 moritz yes, because stuff that's returned would have to be parsable on its own
08:19 moritz by some subrule or another
08:19 masak 'fraid that's too restrictive.
08:20 moritz maybe
08:20 moritz but it would still be a very interesting prototype
08:21 MilkmanD1n joined #perl6
08:21 hoelzro_ joined #perl6
08:21 slavik1 joined #perl6
08:21 jonpads joined #perl6
08:21 Maddingu1 joined #perl6
08:22 Timbus_ joined #perl6
08:23 itz__ joined #perl6
08:45 FROGGS good morning
08:45 bjz_ joined #perl6
08:46 Juerd_ joined #perl6
08:48 * mathw has read jnthn's slides on reactive programming in Perl 6 and is very, very happy
08:53 lue joined #perl6
08:53 Khisanth joined #perl6
08:53 markov joined #perl6
08:53 fhelmberger joined #perl6
08:53 mtj joined #perl6
08:53 djanatyn1 joined #perl6
08:53 Gothmog_ joined #perl6
08:53 Ulti__ joined #perl6
08:53 molaf_ joined #perl6
08:53 frettled_ joined #perl6
08:53 telex joined #perl6
08:53 xinming_ joined #perl6
08:53 orevdiabl joined #perl6
08:53 itz___ joined #perl6
08:53 integral_ joined #perl6
08:53 breinbaa1 joined #perl6
08:53 amkrankr1leuen joined #perl6
08:53 Woodi_ joined #perl6
08:53 igorsutton_ joined #perl6
08:53 Pleiades` joined #perl6
08:53 jtpalmer_ joined #perl6
08:53 exodist_ joined #perl6
08:53 Juerd joined #perl6
08:53 bjz_ joined #perl6
08:53 Timbus_ joined #perl6
08:53 Maddingu1 joined #perl6
08:53 jonpads joined #perl6
08:53 slavik1 joined #perl6
08:53 hoelzro_ joined #perl6
08:53 MilkmanD1n joined #perl6
08:53 zakharyas joined #perl6
08:53 ggoebel111113 joined #perl6
08:53 cognominal__ joined #perl6
08:53 dmol joined #perl6
08:53 rindolf joined #perl6
08:53 grondilu joined #perl6
08:53 spider-mario joined #perl6
08:53 Ven_ joined #perl6
08:53 FROGGS joined #perl6
08:53 kaleem joined #perl6
08:53 darutoko joined #perl6
08:53 SamuraiJack_ joined #perl6
08:53 bowtie joined #perl6
08:53 labster joined #perl6
08:53 kaare_ joined #perl6
08:53 anaeem1_ joined #perl6
08:53 silug____ joined #perl6
08:53 ashleydev joined #perl6
08:53 donaldh joined #perl6
08:53 klapperl joined #perl6
08:53 Su-Shee joined #perl6
08:53 Alula joined #perl6
08:53 Sqirrel joined #perl6
08:53 ponbiki joined #perl6
08:53 colomon joined #perl6
08:53 dayangkun joined #perl6
08:53 nebuchadnezzar joined #perl6
08:53 Vlavv joined #perl6
08:53 vaskozl joined #perl6
08:53 daxim joined #perl6
08:53 ivanshmakov joined #perl6
08:53 atta joined #perl6
08:53 REPLeffect joined #perl6
08:53 daniel-s joined #perl6
08:53 Rounin joined #perl6
08:53 PerlJam joined #perl6
08:53 dalek joined #perl6
08:53 cxreg joined #perl6
08:53 Psyche^ joined #perl6
08:53 stux joined #perl6
08:53 xragnar joined #perl6
08:53 sftp joined #perl6
08:53 daniel-s_ joined #perl6
08:53 [Sno] joined #perl6
08:53 haroldwu joined #perl6
08:53 qzx joined #perl6
08:53 grep0r joined #perl6
08:53 krunen joined #perl6
08:53 cooper joined #perl6
08:53 geekosaur joined #perl6
08:53 pdurbin joined #perl6
08:53 ggherdov_ joined #perl6
08:53 cosimo joined #perl6
08:53 eternaleye joined #perl6
08:53 broquaint joined #perl6
08:53 salv0 joined #perl6
08:53 baest joined #perl6
08:53 kshannon joined #perl6
08:53 eiro joined #perl6
08:53 nhayashi joined #perl6
08:53 clkao joined #perl6
08:53 yoleaux joined #perl6
08:53 effbiai joined #perl6
08:53 PZt joined #perl6
08:53 woolfy joined #perl6
08:53 mtj_ joined #perl6
08:53 xfix joined #perl6
08:53 jlaire joined #perl6
08:53 sivoais joined #perl6
08:53 ivan`` joined #perl6
08:53 aindilis joined #perl6
08:53 vendethiel joined #perl6
08:53 flussence joined #perl6
08:53 _sri joined #perl6
08:53 Tene joined #perl6
08:53 robinsmidsrod joined #perl6
08:53 erdic joined #perl6
08:53 gfldex joined #perl6
08:53 [particle] joined #perl6
08:53 timotimo joined #perl6
08:53 SHODAN joined #perl6
08:53 isacloud__ joined #perl6
08:53 Bucciarati joined #perl6
08:53 yogan_ joined #perl6
08:53 thilp joined #perl6
08:53 dj_goku joined #perl6
08:53 brother joined #perl6
08:53 bcode joined #perl6
08:53 kst joined #perl6
08:53 apejens joined #perl6
08:53 itz_ joined #perl6
08:53 Bryanstein joined #perl6
08:53 tadzik joined #perl6
08:53 [Coke] joined #perl6
08:53 Util joined #perl6
08:53 synopsebot joined #perl6
08:53 pochi joined #perl6
08:53 avuserow joined #perl6
08:53 ilogger2 joined #perl6
08:53 atrodo joined #perl6
08:53 cibs joined #perl6
08:53 camelia joined #perl6
08:53 perigrin joined #perl6
08:53 sergot joined #perl6
08:53 zamolxes joined #perl6
08:53 japhb joined #perl6
08:53 sjohnson joined #perl6
08:53 jnthn joined #perl6
08:53 pnu joined #perl6
08:53 clkaoud joined #perl6
08:53 tokuhirom joined #perl6
08:53 xiaomiao joined #perl6
08:53 FOAD joined #perl6
08:53 rhr joined #perl6
08:53 askz joined #perl6
08:53 DarthGandalf joined #perl6
08:53 retupmoca joined #perl6
08:53 crazedpsyc joined #perl6
08:53 mathw joined #perl6
08:53 risou joined #perl6
08:53 sorear joined #perl6
08:53 TimToady joined #perl6
08:53 simcop2387 joined #perl6
08:53 mattp__ joined #perl6
08:53 d^_^b joined #perl6
08:53 dagurval_ joined #perl6
08:53 avar joined #perl6
08:53 pmichaud joined #perl6
08:53 felipe joined #perl6
08:53 ingy joined #perl6
08:53 moritz joined #perl6
08:53 BooK joined #perl6
08:53 BinGOs joined #perl6
08:53 charsbar_______2 joined #perl6
08:53 hugme joined #perl6
08:53 renormalist joined #perl6
08:53 yakudza joined #perl6
08:53 felher joined #perl6
08:53 awwaiid joined #perl6
08:53 sunnavy joined #perl6
08:53 obra joined #perl6
08:53 segomos joined #perl6
08:53 larks joined #perl6
08:53 Celelibi joined #perl6
08:53 Grimnir_ joined #perl6
08:53 JimmyZ joined #perl6
08:53 sjn joined #perl6
08:53 lee_ joined #perl6
08:53 dylanwh joined #perl6
08:53 cotto joined #perl6
08:53 anocelot joined #perl6
08:53 masak joined #perl6
08:53 Grrrr joined #perl6
08:53 ribasushi joined #perl6
08:53 jercos joined #perl6
08:53 mls joined #perl6
08:53 nwc10 joined #perl6
08:53 eMBee joined #perl6
08:53 tomaw joined #perl6
08:53 mhasch joined #perl6
08:53 takesako____ joined #perl6
08:53 yeltzooo joined #perl6
08:53 lestrrat joined #perl6
08:53 arnsholt joined #perl6
08:53 huf joined #perl6
08:53 raydiak joined #perl6
08:53 araujo joined #perl6
08:54 go|dfish joined #perl6
08:55 masak about Python's indentation:
08:55 FROGGS yeah?
08:55 FROGGS (I'm sorry)
08:55 masak on the beginner course I gave this week, I received the question: "how do I solve merge conflicts involving indented Python code?"
08:56 FROGGS heh
08:56 masak as I pondered the answer to that question, I realized that the redundancy provided by curly braces simply isn't there in Python.
08:56 masak and so resolving merge conflicts is understanding-complete.
08:56 masak whereas in braced code, you can often mark the region, hit the "justify" button, and you're done.
08:57 atroxaper joined #perl6
08:57 jnthn .oO( brace yourself for merging! )
08:57 masak I still don't mind significant whitespace/indentation that much, but it's one more factor to consider.
08:57 nwc10 masak: ooh, interesting. I'd never thought of that
08:57 nwc10 has anyone else? bloggage?
08:58 atroxaper joined #perl6
08:58 FROGGS masak: I think I'd watch diffs on github with &ws=1 first and when I understand the changed code I'd look again without that option, and focus on scoping
08:59 jnap joined #perl6
08:59 FROGGS jnthn: btw, I am golfing that STable precomp bug from p6c now
09:00 moritz FROGGS: could you also answer that it's a bug indeed?
09:01 FROGGS moritz: I did, like 5mins ago
09:01 lizmat joined #perl6
09:01 moritz FROGGS++
09:03 masak nwc10: "This is fundamentally impossible for Python: selecting indentation levels is part of the job of the programmer, and cannot (except in trivial cases) be handled by a program." -- http://www.emacswiki.org/emacs/IndentingPython
09:04 masak nwc10: seems to be well-known, and not such a big problem in practice.
09:04 dalek roast: 7d74fbb | (David Warring david.warring@gmail.com)++ | S05-capture/caps.t:
09:04 dalek roast: fixed RT ticket number
09:04 dalek roast: review: https://github.com/perl6/roast/commit/7d74fbb6e3
09:06 masak nwc10: "Copy-paste is one example that often wrecks code. Also, simply wanting to turn off a conditional check to debug something perhaps." -- http://developers.slashdot.org/comme​nts.pl?sid=4127779&amp;cid=44681513
09:06 masak "use both brackets AND significant spacing. Safety is usually implemented through redundancy." -- http://www.c2.com/cgi/wiki?​PythonWhiteSpaceDiscussion
09:07 moritz ++
09:08 raiph joined #perl6
09:09 lizmat good *, #perl6
09:09 lizmat a new morning, new commits, a faster spectest again, it's a good start  :-)
09:10 lizmat time to write some more tests to make the spectests take longer again  :-)
09:10 lizmat jnthn needs a challenge  :-)
09:10 lue joined #perl6
09:11 jnthn aarrghh :P
09:11 jnthn We really need to reduce the amount of "sleep" in the concurrency tests.
09:11 jnthn Like, by writing a TestScheduler or something
09:11 jnthn So we can virtualize time there.
09:11 lizmat are you worried about the latency ?
09:12 lizmat personally, I'm not so worried, but then I have TEST_JOBS=8
09:12 jnthn I'm worried about the fact that spectest used to be < 300s for me, now it's 400s, and it's got no slower ahead of S17 afaict.
09:12 jnthn I can TEST_JOBS=8 it, but on Windows it sets them off in batches of 8.
09:12 * lizmat runs a spectest without S17 tests
09:12 jnthn And all 8 have to be done before it'll set off the next batch.
09:13 jnthn So tests that sleep clog the entire pipeline for me.
09:13 lizmat ah, ok  :-(
09:13 jnthn scheduler.t is probably the worst culprit, fwiw.
09:14 jnthn I'm not going to complain too much 'cus I'm happy we have tests. :)
09:14 lizmat so making many smaller S17 test files is not advantageous for you at all
09:14 jnthn It is
09:14 jnthn Because each one gets done quicker
09:14 lizmat ok, *phew*
09:14 jnthn And so it can set off another batch of 8.
09:15 * lizmat wonders why testing on Windows needs to work that way
09:15 moritz probably has to do with no fork() available
09:15 lizmat ah, of course  :-(
09:15 jnthn .oO( forking hell... )
09:16 moritz iirc the first versions of those TAP:: modules didn't support parallel testing on widnows at all
09:16 masak +1 on TestScheduler
09:16 moritz (the first ones that supported parallel testing on *NIX, that is)
09:17 lizmat with S17: Files=834, Tests=31812, 200 wallclock secs ( 7.88 usr  3.73 sys + 1258.84 cusr 139.42 csys = 1409.87 CPU)
09:17 lizmat without S17: Files=808, Tests=31152, 180 wallclock secs ( 7.65 usr  3.64 sys + 1203.90 cusr 97.87 csys = 1313.06 CPU)
09:17 moritz 20s difference
09:19 lizmat 2% of # tests, 7% of used CPU, 10% of wallclock
09:19 nwc10 the test scheduler is Perl 5?
09:19 lizmat yes
09:20 lizmat basic prove functionality afaik
09:20 nwc10 yes, bulk88 has a patch
09:20 nwc10 the basic problem is that Microsoft are utter fuckmuppets and didn't implement sockets correctly
09:20 nwc10 Win32 sockets *drop* unwritten data on the floor if the process exits
09:21 moritz and bulk88+ was heroic enough to patch windows sockets? :-)
09:21 nwc10 result - you can't take a default Windows command line program, and run it with output sent to a socketpair, and expect it to work
09:21 nwc10 and sockets *are* select-able on win32
09:21 lizmat so what would we need to use this patch ?
09:21 nwc10 but pipes (which don't have the fuckwittedness) are not
09:21 jnthn oh joy...
09:21 nwc10 you'd need someone to review it, and if valid commit it to the TAP::Parser repository
09:22 nwc10 or implement an alternative
09:22 nwc10 the obvious (hacky, but works, and already implemented elsewhere) trick is you put an intermediate process (or thread)
09:22 nwc10 which has a pipe from the child
09:22 nwc10 and pumps it down a socketpair to the test harness
09:22 moritz t/spec/S05-mass/properties-general.rakudo.jvm ................ No subtests run
09:22 moritz is that expected?
09:22 nwc10 and as it *knows* that its output is a socketpair, it can do the proper shutdown dance
09:23 nwc10 I am really not impressed by Microsoft on this one. They've taken a well designed BSD feature, and failed to implement one of the key parts of it
09:24 nwc10 which is strange, because they do take actual BSD code and use it
09:24 nwc10 as evidenced by the fact that WinCE had bugs with classless internet domains (and IPs that used to have to be network addresses)
09:24 nwc10 when CIDR pre-dates WinCE by a year or two
09:25 nwc10 IIRC it was parcelfarce.linux.org.uk - for a while it had an IP address that was one that could not have been a host address before CIDR
09:25 nwc10 and WinNT machines couldn't connect to it
09:26 nwc10 (that might have been seen as a feature)
09:26 nwc10 Windows 2000 fixed this, IIRC
09:35 dalek Perlito: d77bd02 | (Flavio S. Glock)++ | / (4 files):
09:35 dalek Perlito: Perlito5 - string parser flag \x
09:35 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/d77bd0239b
09:36 FROGGS jnthn: the STable thing from p6c mailing list is fault4.bat at https://github.com/FROGGS/frame_inc (in case you feel the urge to work on that :o)
09:37 jnthn FROGGS: What error does it give?
09:37 FROGGS STable conflict detected during deserialization.
09:37 FROGGS (Probable attempt to load two modules that cannot be loaded together).
09:38 jnthn That .^add_fallback almost certainly should be in a BEGIN.
09:38 FROGGS it was in a INIT
09:38 jnthn I'm a bit surprised that you can get it with a linear toplology
09:38 jnthn Yes, INIT is not compile time!
09:39 jnthn People can't just expect they can augment or fiddle wherever and maintain the ability to load things together when they did incompatible tweaks.
09:39 FROGGS m: class Foo; BEGIN { $?PACKAGE.^add_fallback( sub ( $object, $name ) { True }, sub ( $object, $name ) { } ) };
09:39 camelia rakudo-moar fd5f8e: OUTPUT«===SORRY!===␤Cannot invoke this object (REPR: Null, cs = 0)␤»
09:39 jnthn I don't know it should blow up in *this* case.
09:40 jnthn OK, then that one wants fixing, though it may be that you want to .HOW.add_fallback here...
09:40 FROGGS m: class Foo; BEGIN { $?PACKAGE.HOW.add_fallback( sub ( $object, $name ) { True }, sub ( $object, $name ) { } ) };
09:40 camelia rakudo-moar fd5f8e: OUTPUT«===SORRY!===␤Not enough positional parameters passed; got 3 but expected 4␤»
09:40 pecastro joined #perl6
09:40 jnthn Need to pass $?PACKAGE also
09:41 FROGGS m: class Foo; BEGIN { $?PACKAGE.HOW.add_fallback( $?PACKAGE, sub ( $object, $name ) { True }, sub ( $object, $name ) { } ) };
09:41 camelia rakudo-moar fd5f8e: ( no output )
09:41 FROGGS yeah
09:41 FROGGS nice!
09:41 FROGGS testing...
09:41 jnthn We can try to fix the .^ thing also, though it's not too easy.
09:41 denis_boyun joined #perl6
09:44 FROGGS jnthn++ # that works! :o)
09:44 FROGGS I'm going to PR JSON::RPC
09:44 dalek Perlito: 6bc88f7 | (Flavio S. Glock)++ | / (4 files):
09:44 dalek Perlito: Perlito5 - string parser flag \x
09:44 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/6bc88f716f
09:46 FROGGS LHF: somebody could write a make directive that precompiles scripts that use all namespaces provided by star/modules, and run these scripts
09:59 nwc10 FROGGS: is there a LHF ticket "queue"?
09:59 FROGGS nwc10: no, but that is a very good idea!
10:00 jnap joined #perl6
10:00 moritz iirc there's a tag
10:00 moritz which is the much better idea than a queue
10:00 FROGGS I mean, some bugs/tickets are tagged LHF, but we do not put ideas like that in RT I think
10:00 nwc10 I didn't know the details, but queue was "queue" for a reason
10:01 rindolf joined #perl6
10:11 dalek roast: bcf79d0 | (Elizabeth Mattijsen)++ | / (46 files):
10:11 dalek roast: Replace cargo-culted BEGIN {@*INC...} by use lib
10:11 dalek roast:
10:11 dalek roast: 1. less typing and more clearly what it does
10:11 dalek roast: 2. hides the implementation details of @*INC better
10:11 dalek roast: 3. more ready for S11/S22 changes hopefully coming soon
10:11 dalek roast: review: https://github.com/perl6/roast/commit/bcf79d02b7
10:13 kaleem joined #perl6
10:13 lizmat me suddenly realizes that many of the changes were of @*INC.push, rather than .unshift
10:14 lizmat should I add a :last names param to "use lib" that would .push to @*INC rather than unshift?
10:14 lizmat or were the @*INC.push cases merely misinformed ?
10:16 colomon lizmat: currently my memory of that sort of thing was always about simply getting a directory into @*INC, rather than making sure it was first or last.
10:16 lizmat that's what I figured
10:16 lizmat my change doesn't break any tests
10:17 tadzik timotimo: hm, which rakudo?
10:17 lizmat some of the tests had an interesting way of manipulating @*INC
10:18 lizmat inside a scope, inside a BEGIN block
10:20 colomon wouldn't be surprised if those go back to the days of pugs.
10:21 * colomon doesn't have a particular memory, but certainly has run into lots of crufty old code that's been in roast apparently forever...
10:21 lizmat well, it poses an interesting problem
10:21 lizmat I mean, "use" is supposed to be lexical wrt to its exports, right?
10:22 lizmat m: say @*INC; { BEGIN @*INC.unshift: <bar> }
10:22 camelia rakudo-moar fd5f8e: OUTPUT«bar /home/p6eval/.perl6/2014.04-134-gfd5f8eb/lib /home/p6eval/rakudo-inst-1​/languages/perl6/site/lib /home/p6eval/rakudo-inst-1/​languages/perl6/vendor/lib /home/p6eval/rakudo-inst-1/languages/perl6/lib␤»
10:22 lizmat m: say @*INC; { use lib <bar> }
10:22 camelia rakudo-moar fd5f8e: OUTPUT«bar /home/p6eval/.perl6/2014.04-134-gfd5f8eb/lib /home/p6eval/rakudo-inst-1​/languages/perl6/site/lib /home/p6eval/rakudo-inst-1/​languages/perl6/vendor/lib /home/p6eval/rakudo-inst-1/languages/perl6/lib␤»
10:22 lizmat you could argue that the search path for modules is also lexical, the "use" would indicate that
10:23 colomon but it clearly wouldn't have been lexical in the old form.
10:23 lizmat but the use of @*INC is causing side effects, making it like that in the whole form
10:23 lizmat well, I'm not sure what the intent was of putting it inside a BEGIN block inside a scope
10:24 lizmat s/form/script
10:24 colomon just to get it to happen "first"
10:25 lizmat well, yes, for testing it is all ok
10:26 lizmat I'm just starting to wonder whether the current implementation of "use lib" leaks in such a way as to be detrimental
10:26 lizmat to the scoping that we otherwise have with "use"
10:26 colomon ah, yes, that certainly seems like an issue,.
10:28 lizmat sub foo1 (|c) { use Foo:ver<1.2>; Foo.new(|c) }; sub foo2 (|c) { use Foo:ver<2.0>; Foo.new(|c) }  # this should work in the near future, right?
10:28 lizmat now assuming 1.2 needs a different module search path from 2.0
10:29 lizmat that wouldn't be possible in the current setup, as runtime @*INC manipulation would be visible everywhere
10:29 lizmat or am I missing something ?
10:34 lizmat maybe we need to wrap @*INC into an exported sub and make it have its own lexical copy
10:34 lizmat and have module searching use that sub instead of @*INC ?
10:36 colomon +1 on the basic idea of supporting this, no idea what the right way to implement it is.
10:37 lizmat assuming we want to be able to lexicalize module search paths
10:41 nwc10 last "win32 parallel testing" message I can spot is http://www.nntp.perl.org/group​/perl.qa/2013/07/msg13473.html
10:42 jnthn lizmat: We most probably want some kind of way to specify an exit hook
10:42 lizmat exit hook?
10:42 jnthn lizmat: A kind of thing like EXPORT, apart from called when leaving the scope that did the "use" statement.
10:43 jnthn lizmat: So it can undo anything it wishes
10:43 lizmat why would we need that?  when exporting a sub to a scope alone already can do what we want ?
10:43 jnthn Huh?
10:43 jnthn I thought you wanted a way to make the @*INC modifications lexical?
10:44 lizmat well, I want the *functionality* lexical
10:44 lizmat which may mean moving away from @*INC
10:44 jnthn Ah, so you solve it by just exporting an updated @*INC var
10:44 jnthn That's probably easier here, yes.
10:44 lizmat essentially, yes
10:44 jnthn oh, hm
10:45 jnthn or is it.
10:45 jnthn No, it's harder than that
10:45 lizmat I'm wondering as well
10:45 jnthn runtime/compile-time confusion.
10:45 lizmat why?
10:45 jnthn Because exporting a variable is going to affect that's visible when in that block at runtime
10:45 jnthn But won't influence the PROCESS::<@*INC> lookup at compile time, I doubt...
10:45 lizmat but I would be exporting a *sub*
10:46 lizmat and that *sub* would be asked what the current module lookup path is /are
10:46 jnthn I don't quite see how that helps the module loader?
10:46 lizmat not 100% sure either yet,
10:46 lizmat am a bit handwavy atm
10:46 jnthn I may be missing something, but I'm not sure doing it as a sub rather than a var immediatley solves anything...
10:47 jnthn I can see it working with a compile-time scope exit hook though
10:47 lizmat like a COMPOSE on the block ?
10:47 jnthn No, just some magically named sub in the module
10:47 jnthn This probably also ties into how we'll implement "no"...
10:48 lizmat ah, lexical pragma's  :-)
10:48 jnthn Right.
10:48 lizmat ok, I'll put this on the back burner for deliberation and inspiration
10:48 jnthn *nod*
10:48 jnthn Yeah, I don't have a great answer yet either.
10:49 jnthn How likely do you think @*INC is to survive the S11/S22 work, ooc?
10:49 lizmat not very likely, as in my view, it's an implementation detail that needs to be hidden
10:50 lizmat especially compile time / run time confusion that we have in Perl 5
10:50 lizmat we need to make more transparent and easier to understand to the lay people  :-)
10:51 lizmat some common error like:
10:51 lizmat puhs @INC,'dir'; use Foo
10:51 lizmat *push
10:51 timotimo tadzik: moar
10:51 lizmat not finding the right Foo
10:51 lizmat because the push is done *after* the use
10:53 timotimo http://t.h8.lv/p6bench/2014-05-02-vmnull.html - much graph
10:53 jnthn lizmat: Well, "use lib" is the way to make that easy thing easy, no? :)
10:53 lizmat yes, but in Perl 6 we have the added functionality of "use" being lexical in its effects
10:54 lizmat *except* for "use lib" atm
10:58 colomon avuserow++ # I'm now using Audio::Taglib::Simple for simple, practical tag examination and changing.
11:00 jnap joined #perl6
11:01 jnap1 joined #perl6
11:03 jnap joined #perl6
11:04 kurahaupo joined #perl6
11:08 lizmat jnthn: would it be an idea to have Supply.close return True on successful close
11:08 lizmat akin to IO.close ?
11:08 lizmat or otherwise, Nil like done/more ?
11:21 jnthn lizmat: I'd guess if the closing thing throws an exception we want that to just be thrown to the closer
11:22 jnthn lizmat: We could use true/false though
11:22 jnthn true = I closed the tap
11:22 jnthn false = I didn't because it was already closed
11:22 jnthn Which may be useful in cases where there is competition to close.
11:22 lizmat ok, so if no tappers, False
11:22 lizmat otherwise True
11:23 jnthn It's not "if no tappers", it's "if we removed something"
11:23 lizmat ah, ok (I think)
11:23 jnthn can, since we're holding a lock at that point, compute it by knowing size of tappers array before and after
11:24 jnthn (after attempting to remove)
11:24 lizmat ack
11:24 lizmat something else:
11:24 dalek Perlito: 37d31bb | (Flavio S. Glock)++ | / (4 files):
11:24 dalek Perlito: Perlito5 - string parser flags \l \u
11:24 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/37d31bb5a3
11:24 lizmat with the IO::Notification.watch_path tests
11:25 lizmat I ran into the problem of checking the object seen
11:25 lizmat because the class is lexical inside the other class
11:25 lizmat I  added:
11:25 lizmat sub Change { Change }
11:25 lizmat to the code, which now effectively lets me check for IO::Notification::Change
11:26 jnthn Oh, I'd just remove the "my" in this case
11:26 lizmat my ?  there is no my
11:26 jnthn ?
11:26 jnthn Oh
11:26 jnthn So why isn't IO::Notification::Change already visible?
11:27 jnthn Should be by normal package nesting...
11:27 lizmat wasn't that the backlinking issue
11:27 lizmat hmm....
11:27 jnthn m: say IO::Notification::.keys
11:27 camelia rakudo-moar fd5f8e: OUTPUT«Change␤»
11:27 jnthn m: say IO::Notification::Change
11:27 camelia rakudo-moar fd5f8e: OUTPUT«(Change)␤»
11:27 jnthn There it is.
11:27 jnthn :)
11:27 lizmat of course: the problem wasn't the lookup
11:28 lizmat the problem was that the class itself doesn't know it is a "IO::Notification::Change"
11:28 lizmat so it's representation is faulty
11:28 lizmat (Change) instead of (IO::Notification::Change)
11:28 lizmat right ?
11:29 jnthn I think .WHAT always gives a thing that stringifies to a short name?
11:30 jnthn By S12, anyways...
11:30 lizmat m: IO::Notification.WHAT.say
11:30 camelia rakudo-moar fd5f8e: OUTPUT«(IO::Notification)␤»
11:31 lizmat should that then need to say (Notification) ?
11:32 lizmat wasn't the problem that we don't really have class hierarchies yet ?
11:32 jnthn Yeah, I guess so...
11:32 jnthn Um...what?
11:32 jnthn No, it's purely a "what is passed as the 'name' parameter to the meta-object" issue
11:32 lizmat if IO::Notification had been implemented with class IO { class Notification { } }
11:32 lizmat it *would* have said (Notification)
11:33 lizmat because it only sees its own class definition
11:33 * jnthn checks S12
11:33 lizmat m: class Foo { class Bar {} }; say Foo::Bar
11:33 camelia rakudo-moar fd5f8e: OUTPUT«(Bar)␤»
11:33 lizmat m: class Foo::Bar {}; say Foo::Bar
11:33 camelia rakudo-moar fd5f8e: OUTPUT«(Foo::Bar)␤»
11:33 jnthn Yeah, S12 has it as .WHO stringifying to the long name
11:34 jnthn Note class Foo::Bar { } is more like package Foo { class Bar { } } really
11:35 jnthn S12 is actually out of date...
11:35 jnthn WHAT        the type object of the type, .gist returns MyClass()
11:35 jnthn It's (MyClass) now...
11:36 lizmat but is the spec wrong, or Any.gist(T) ?
11:37 jnthn Neither, I think it wants fixing at the point we construt the meta-object
11:38 jnthn So, in package_def
11:40 lizmat hmmm...  not quite following now
11:42 timotimo http://t.h8.lv/p6bench/201​4-05-02-moar_progress.html - moarvm progress over a short time time
11:42 dalek Perlito: 0d69b30 | (Flavio S. Glock)++ | / (4 files):
11:42 dalek Perlito: Perlito5 - string parser flags \l \u precedence  # 1006 tests!
11:42 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/0d69b30206
11:50 dalek roast: cbacb42 | (Elizabeth Mattijsen)++ | S17-supply/watch_path.t:
11:50 dalek roast: Add IO::Notification.watch_path tests
11:50 dalek roast: review: https://github.com/perl6/roast/commit/cbacb42bb0
11:51 pdcawley joined #perl6
11:51 lizmat looking at the commit msg, I can't help but wonder whether "watch-path" wouldn't be more Perl6
11:53 jnthn lizmat: The .gist output is made from .^name, which is set in token package_def
11:55 moritz .oO( night watch )
11:57 jnthn timotimo: Nice plots! :)
11:57 * masak .oO( night plots )
11:57 dalek rakudo/nom: 57b0ead | (Elizabeth Mattijsen)++ | t/spectest.data:
11:57 dalek rakudo/nom: Add IO::Notification.watch_path tests
11:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/57b0eadfeb
11:58 timotimo i have a sneaking suspicion
11:59 timotimo maybe the ramps in the graphs come from the previous test exhausting the ram completely, thus kicking out all buffers and then the timing script has to grab itself from disk once more in order to run or something silly like that
12:00 FROGGS on an amiga you could have made your script resident :/
12:00 lizmat create a ramdisk with the script ?
12:02 masak timotimo++ # http://t.h8.lv/p6bench/2014-05-02-vmnull.html
12:04 jnap joined #perl6
12:07 dalek Perlito: b2761c4 | (Flavio S. Glock)++ | / (4 files):
12:07 dalek Perlito: Perlito5 - string parser flags \c
12:07 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/b2761c428b
12:23 spider-mario joined #perl6
12:23 ClarusCogitatio joined #perl6
12:24 Alina-malina joined #perl6
12:25 igorsutton_ yay, running rakudo spec tests locally :)
12:26 spider-mario joined #perl6
12:29 lizmat igorsutton_++
12:29 igorsutton_ lizmat: :)
12:29 timotimo todo: figure out why Int exists twice in @foo.^methods
12:30 jnthn todone: inheritance
12:31 FROGGS jnthn: do you have a hint for me how I can properly rethrow from the handlerscope in nqp::handle?
12:31 timotimo should @foobar.map(*) work? currently it gives "no method count for Whatever"
12:31 FROGGS jnthn: do I need to unwind before rethrowing or so? so that I do not rethrow to my own handler?
12:31 FROGGS timotimo: what is the point of this operation?
12:32 jnthn FROGGS: Hmm...there should already be stuff in Moar to ensure that a handler never re-catches an exception it's handling.
12:32 Ven_ FROGGS: * xx +@foobar
12:32 jnthn Or more precisely, that's what the active handlers thing is about.
12:32 Ven_ m: say (^10).map(True)
12:32 camelia rakudo-moar fd5f8e: OUTPUT«No such method 'count' for invocant of type 'Bool'␤  in method reify at src/gen/m-CORE.setting:7681␤  in method reify at src/gen/m-CORE.setting:7592␤  in method reify at src/gen/m-CORE.setting:7592␤  in method reify at src/gen/m-CORE.setting:7592…»
12:33 jnthn map wants something it can call
12:33 Ven_ too bad it makes sense :D
12:34 FROGGS if (pc >= f->effective_handlers[i].start_offset && pc <= f->effective_handlers[i].end_offset)
12:34 FROGGS if (!in_handler_stack(tc, &f->effective_handlers[i]))
12:34 FROGGS jnthn: so this should prevent that? hmmm...
12:35 FROGGS I'll dig deeper into that
12:36 jnthn the in_handler_stck bit, yeah
12:36 FROGGS okay, it runs the first handler (a for loop with another label), and then rethrows and does not run any handler anymore
12:37 Alina-malina joined #perl6
12:37 FROGGS ohh
12:37 FROGGS dang
12:38 FROGGS since the handler is static for 'for' loops, it can never appear more than once in the stack?
12:38 FROGGS that is my test: my $x; BAR: for "bar" { .say; FOO: for "foo" { .say; redo BAR unless $x++; } }; say BAR
12:38 jnthn Hmm
12:39 FROGGS this should print: bar foo bar foo
12:39 FROGGS it prints bar foo instead, and then misses the right handler
12:39 jnthn ah...could be that
12:40 jnthn in_handler_stack should maybe be considering the actual frame too
12:41 jnthn So such recursion works out
12:41 jnthn MVMActiveHandler does have a ->frame, and there's one available to pass in to in_handler_stack at the point it's called
12:45 jnap joined #perl6
12:53 FROGGS \o/
12:53 FROGGS jnthn: I love you :D
12:53 Ven_ .oO( you took him with the right handles )
12:54 masak p6: sub foo($x = $x.WHAT) { say $x }; foo; say "alive"
12:54 camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object␤  at Anon.1.MAIN.2a1c590d-c361-4​389-bbde-e099de79026d.C2$x = $x.WHAT init (Niecza.Frame ) [0x00000] in <filename unknown>:0 ␤  at Niecza.Kerne…»
12:54 camelia ..rakudo-moar fd5f8e: OUTPUT«Type check failed in binding $x; expected 'Any' but got 'Mu'␤  in sub foo at /tmp/tmpfile:1␤  in block  at /tmp/tmpfile:1␤␤»
12:54 camelia ..rakudo-parrot fd5f8e: OUTPUT«Can only use get_what on a SixModelObject␤  in sub foo at /tmp/tmpfile:1␤  in block  at /tmp/tmpfile:1␤␤»
12:54 camelia ..rakudo-jvm fd5f8e: OUTPUT«Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'src/Perl6/Grammar.nqp'␤  in  (gen/jvm/main.nqp)␤␤»
12:55 Ven_ Different errors everytime :D
12:55 masak locally, I get a segmentation fault.
12:55 masak m: sub foo($x = $x.WHAT) { say $x }; foo; say "alive"
12:55 camelia rakudo-moar fd5f8e: OUTPUT«Type check failed in binding $x; expected 'Any' but got 'Mu'␤  in sub foo at /tmp/EOb9Rh0pKN:1␤  in block  at /tmp/EOb9Rh0pKN:1␤␤»
12:55 dalek Perlito: ce083fd | (Flavio S. Glock)++ | / (3 files):
12:55 dalek Perlito: Perlito5 - js - use special var $"
12:55 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/ce083fde3e
12:55 timotimo FROGGS: it just irks me that .map(*+0) works, but .map(*) doesn't
12:55 masak I'm running 2014.04-5-g921615b here. maybe time to upgrade?
12:56 Ven_ timotimo: what do you need it for ? cloning ?
12:57 masak this month wants for a rakudo release manager. it's next week. someone sign up?
12:57 timotimo i don't actually need it; except for teaching
12:57 timotimo "look, you can .map(*) and then do anything with that *! oh, what's that? an error message..... oh well"
13:05 dayangkun joined #perl6
13:07 dayangkun joined #perl6
13:08 lizmat timotimo: .map(*) would be a noop
13:08 guru joined #perl6
13:09 dayangkun joined #perl6
13:09 FROGGS yes, the question is if that still work then
13:09 FROGGS should*
13:09 lizmat so maybe we'd only need another .map candidate ?
13:09 Ulti__ problem from yesterday is resolved with latest moar
13:09 FROGGS nice! (whatever it was :o)
13:09 Ulti__ thanks whoever fixed it
13:09 jnthn (whoever fixed it)++
13:10 jnthn .oO( so what bug was it... :) )
13:10 Ulti guess I could work out who made any contribution since yesterday afternoon and ++ :P
13:10 lizmat fwiw, I haven't seen any phaser/FIRST failures for a while either
13:10 dayangkun joined #perl6
13:11 masak ok, segfault went away with newest Rakudo. whoever++
13:11 Ulti whoever++
13:11 Ulti well done whoever
13:11 Ven_ that's like,*.Person
13:12 guru joined #perl6
13:12 dalek Perlito: 0aab5f3 | (Flavio S. Glock)++ | / (4 files):
13:12 dalek Perlito: Perlito5 - string parser flag \octal
13:12 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/0aab5f35e7
13:12 dayangkun joined #perl6
13:12 Ulti however my grammar doesn't actually quite work yet :)
13:13 Ulti but atleast I know that
13:14 dayangkun joined #perl6
13:16 dayangkun joined #perl6
13:18 dayangkun joined #perl6
13:19 dayangkun joined #perl6
13:21 dayangkun joined #perl6
13:22 pdcawley joined #perl6
13:23 dayangkun joined #perl6
13:27 dalek Perlito: d87bc09 | (Flavio S. Glock)++ | t5/01-perlito/050-string.t:
13:27 dalek Perlito: Perlito5 - string parser flags - tests
13:27 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/d87bc09234
13:29 dalek rakudo/nom: 10cfb75 | (Elizabeth Mattijsen)++ | src/core/Supply.pm:
13:29 dalek rakudo/nom: Make (Supply|Tap).close return True on success
13:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/10cfb75282
13:29 dalek nqp/loop_labels: 9a7a224 | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
13:29 dalek nqp/loop_labels: support labels in nqp::handle (rakudo for loops)
13:29 dalek nqp/loop_labels: review: https://github.com/perl6/nqp/commit/9a7a224986
13:34 timotimo i need a simple way to get my "external ip" (and ideally also ipv6); can somebody tell me a website that would output my ipv4 and v6 directly in the html source code?
13:35 kaare_ joined #perl6
13:35 dalek rakudo/loop_labels_test: ec9b1c3 | (Tobias Leich)++ | src/core/PseudoStash.pm:
13:35 dalek rakudo/loop_labels_test: fix fudge and .gist for Label type
13:35 dalek rakudo/loop_labels_test: review: https://github.com/rakudo/rakudo/commit/ec9b1c347d
13:35 dalek rakudo/loop_labels_test: 65b2fea | (Tobias Leich)++ | src/ (3 files):
13:35 dalek rakudo/loop_labels_test: support labels in MapIter (for loops) on moarvm
13:35 dalek rakudo/loop_labels_test:
13:35 dalek rakudo/loop_labels_test: The code in nqp::handle that inserts the label if it is there is pretty redundant,
13:35 dalek rakudo/loop_labels_test: and hopefully can be shortened. To make labeled for loops available on parrot, the
13:35 dalek rakudo/loop_labels_test: pir block in MapIter must be tweaked to install the needed exception handlers.
13:35 dalek rakudo/loop_labels_test: review: https://github.com/rakudo/rakudo/commit/65b2fea016
13:35 Su-Shee timotimo: http://whatsmyip.net/
13:36 timotimo <h1 class="ip">Your <acronym title="Internet Protocol">IP</acronym> Address is <input type="text" value="2a02:8071:2984:a300:5604:a6ff:fe93:d1a6" /></h1>
13:36 timotimo that looks very nice
13:37 timotimo however, i can already figure out my global ip via "ip a l"
13:37 timotimo maybe i can curl -4
13:37 timotimo yes, i can!
13:37 timotimo that's fantastic, thank you so much :)
13:37 dalek nqp/loop_labels: 2b8ad37 | jnthn++ | tools/build/MOAR_REVISION:
13:37 dalek nqp/loop_labels: Bump to a Moar with VMNull changes.
13:37 dalek nqp/loop_labels: review: https://github.com/perl6/nqp/commit/2b8ad3703c
13:37 dalek nqp/loop_labels: 80e52eb | jnthn++ | src/QAST/ (11 files):
13:37 dalek nqp/loop_labels: Add a way to count arg placeholder usages.
13:37 dalek nqp/loop_labels: review: https://github.com/perl6/nqp/commit/80e52eb595
13:37 dalek nqp/loop_labels: a232e9a | jnthn++ | tools/build/MOAR_REVISION:
13:37 dalek nqp/loop_labels: Get a MoarVM with lazy lexical alloc opt.
13:37 dalek nqp/loop_labels: review: https://github.com/perl6/nqp/commit/a232e9ab3f
13:37 dalek nqp/loop_labels: 71623e1 | (Tobias Leich)++ | / (12 files):
13:37 dalek nqp/loop_labels: Merge branch 'master' of github.com:perl6/nqp into loop_labels
13:37 dalek nqp/loop_labels: review: https://github.com/perl6/nqp/commit/71623e117f
13:38 lvfjf joined #perl6
13:38 dalek Heuristic branch merge: pushed 51 commits to rakudo/loop_labels_test by FROGGS
13:41 dayangkun joined #perl6
13:43 dayangkun joined #perl6
13:43 markov left #perl6
13:43 Ven_ is there any assembly grammar yet :D ?
13:44 moritz .*
13:45 dayangkun joined #perl6
13:49 moritz "assembly" as a language is about as precises as "SOAP" as a protocol :-)
13:49 moritz aka, there are some commonly used elements, but everybody does their own fu in the end
13:51 Ven_ moritz: aka why I put "any"
13:51 dalek roast: aad34d1 | (Elizabeth Mattijsen)++ | packages/Test/Tap.pm:
13:51 dalek roast: tap_ok now also tests Tappiness of the tap
13:51 dalek roast: review: https://github.com/perl6/roast/commit/aad34d18dc
13:51 dalek roast: 0bf0f75 | (Elizabeth Mattijsen)++ | S17-supply/list.t:
13:51 dalek roast: We don't need Test::Tap here
13:51 dalek roast: review: https://github.com/perl6/roast/commit/0bf0f7551b
13:51 dalek roast: 130af49 | (Elizabeth Mattijsen)++ | S17-supply/ (14 files):
13:51 dalek roast: Adjust # of tests for extre test in tap_ok
13:51 dalek roast: review: https://github.com/perl6/roast/commit/130af49081
13:52 jnthn beershop &
13:52 lizmat systembolaget ?
13:52 jnthn ja!
13:52 lizmat :-)
13:52 jnthn Like there's any other choice here :P
13:53 lizmat I was wondering because you said "beershop" as opposed a more generic "drink" shop
13:53 jnthn Ah...they do have other nice things. But today I'm just looking for beer :)
13:54 lizmat :-)
13:54 jnthn anyway, bbiab
13:54 anaeem1_ joined #perl6
13:56 bluescreen10 joined #perl6
13:58 logie joined #perl6
13:58 btyler joined #perl6
14:00 [Coke] BEEEEEEEER
14:01 xenoterracide_ joined #perl6
14:02 FROGGS sidenote: the loop_labels branch does not regress anything and let me unskip stuff from two test files
14:03 FROGGS which means, we really need more tests about labels
14:03 rurban joined #perl6
14:04 dalek roast: 8acb632 | (Elizabeth Mattijsen)++ | S17-supply/ (2 files):
14:04 dalek roast: Add some Tap.close tests
14:04 dalek roast: review: https://github.com/perl6/roast/commit/8acb6327d1
14:06 Alina-malina joined #perl6
14:07 timotimo okay. 3.5 hour autobahn ride
14:07 timotimo won't get any coding done i'm afraid :(
14:07 timotimo ttyl
14:08 FROGGS o/
14:08 lizmat gute Fahrt!
14:08 masak \o
14:11 thou joined #perl6
14:13 jnap joined #perl6
14:14 lizmat $ perl6 -e 'Int.map(*).say'
14:14 lizmat (Int)
14:14 lizmat too bad timotimo is offline
14:15 lizmat before jnthn++ 's  proto elimination optimization was there, I would not have done that
14:15 lizmat however, as far as I understand, there is no runtime penalty anymore for making map a multi
14:16 lizmat m: Int.map(*).say
14:16 camelia rakudo-moar fd5f8e: OUTPUT«No such method 'count' for invocant of type 'Whatever'␤  in method reify at src/gen/m-CORE.setting:7681␤  in method reify at src/gen/m-CORE.setting:7592␤  in method reify at src/gen/m-CORE.setting:7592␤  in method reify at src/gen/m-CORE.setting:75…»
14:19 vaskozl Is i me or is this place becomming more popular by the hour?
14:19 masak vaskozl: it's you :)
14:19 Ven_ it's perl6 :)
14:20 * Ven_ has only been around for ~2 months now
14:24 takesako____ joined #perl6
14:25 * Ven_ and still hasn't done anything interesting with p6 to date
14:25 donaldh joined #perl6
14:25 chenryn joined #perl6
14:25 donaldh_ joined #perl6
14:35 Ven_ "Since rakudo doesn't yet allow the EXPORT sub of a package to return a hash of things to export, the ADT cannot be used to define multi subs, because the symbols are not available at compile time." erm, is that still true ?
14:36 lizmat I seem to recall FROGGS fixed that
14:39 vaskozl joined #perl6
14:41 Ven_ (i'm asking for timotimo
14:41 Ven_ s ADt) . ... damn qwerty
14:46 treehug88 joined #perl6
14:47 LLamaRider joined #perl6
14:48 vaskozl Ven_: blame it on the keyboard..
14:48 Ven_ Ven_: 10years+ with an azerty makes it hard for me to use a qwerty :)
14:48 Ven_ (and I still use my azerty when home, ofc)
14:51 vaskozl Ven_: Don't complain
14:51 Ven_ I'm french -- I have to :)
14:52 vaskozl Learn something like colemak
14:52 vaskozl then you will be confused
14:54 FROGGS Ven_: you'd have to ask timotimo, because he does something strange in ADT, but EXPORT does allow to return a hash
14:54 FROGGS and tbh, I don't recall to fix something in that regards :o)
14:54 dalek rakudo/nom: 6ab95bb | (Elizabeth Mattijsen)++ | src/core/Any.pm:
14:54 dalek rakudo/nom: Implement .map(*) and map(*,...)
14:54 dalek rakudo/nom:
14:54 dalek rakudo/nom: Mostly for consistency's sake and the fact that proto's are much cheaper now
14:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6ab95bb356
14:55 lizmat timotimo: ^^^
14:55 lizmat also, highly optimized  :-)
15:00 Ven_ what do you use to trigger tests in t/ ?
15:01 Ven_ (just perl6 t/* ?)
15:01 lizmat make t/spec/....
15:01 lizmat not sure what you mean / want
15:01 Ven_ lizmat: in a repo without a Makefile
15:01 FROGGS make has the benefit that it also fudges the test file
15:01 lizmat indeed, and you need that!
15:01 Ven_ I'm looking at timotimo++'s ADT module and there's no Makefile
15:02 lizmat but generally, perl6 *.t will work
15:02 FROGGS prove -e perl6-m t
15:02 lizmat if there are no tests fudged for your VM
15:02 Ven_ except I'm on windows :( I'll go with a makefile I guess
15:02 lizmat prove should work on Win, no?
15:02 FROGGS it does
15:02 jnthn Does for me.
15:03 FROGGS and you should have it from ActivePerl/strawberry
15:03 Ven_ will install strawberry
15:04 dalek roast: 8552051 | (Elizabeth Mattijsen)++ | S32-list/map.t:
15:04 dalek roast: Add tests for .map(*) and map(*,...)
15:04 dalek roast: review: https://github.com/perl6/roast/commit/85520513ad
15:08 guru joined #perl6
15:09 Ven_ ah, but I can't use *.t on window anywya
15:10 Ven_ ah, but prove seem to take t/ by default
15:12 dalek Perlito: e650a2e | (Flavio S. Glock)++ | src5/lib/Perlito5/Grammar/Regex5.pm:
15:12 dalek Perlito: Perlito5 - regex parser cleanup
15:12 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/e650a2e3a4
15:12 lizmat m: say ".".IO
15:12 camelia rakudo-moar fd5f8e: OUTPUT«IO::Handle<.>(closed)␤»
15:13 lizmat m: ".".IO.say
15:13 camelia rakudo-moar fd5f8e: OUTPUT«write string requires an object with REPR MVMOSHandle␤  in method print at src/gen/m-CORE.setting:13810␤  in method say at src/gen/m-CORE.setting:13822␤  in block  at /tmp/iEz1y98Dqa:1␤␤»
15:13 lizmat ah, of course, duh  :-)
15:14 rindolf joined #perl6
15:20 Ulti what is currently the most efficient way to remove a specific character from a string in P6?
15:20 masak Ulti: just one, or all of them?
15:20 Ulti all of the instances of a single character
15:21 Ulti I tried a comb and join but that was not a good plan
15:22 jnthn .subst('c', :g)
15:22 FROGGS m: my $s = lines().Str.subst('e','ö', :g); say nqp::time_n() - BEGIN nqp::time_n; say $s
15:22 camelia rakudo-moar fd5f8e: OUTPUT«0.334710121154785␤Thörö wörö thröö mön camö out of thö Wöst Thöir fortunös for to try And thösö thröö mön madö a solömn vow John Barlöycorn must diö  Thöy'vö ploughöd, thöy'vö söwn, thöy'vö harrowöd him in Thröw clouds upon…»
15:24 hoverboard joined #perl6
15:24 Ulti jnthn++ FROGGS++
15:25 Ulti though jnthn only worked if I gave a "" to substitute with
15:25 Ulti neat have a working FASTA parser that produces a list of objects :)
15:25 Ulti auto detects the type of sequence too which is really neat
15:26 jnthn Ulti: Uh, yeah, sorry...forgot that.
15:26 Ulti np
15:26 Ulti also this is a *lot* faster than the last time I played with this stuff
15:27 Ulti now just need to get rid of the slurp
15:33 dalek nqp/async_ops: 2b8ad37 | jnthn++ | tools/build/MOAR_REVISION:
15:33 dalek nqp/async_ops: Bump to a Moar with VMNull changes.
15:33 dalek nqp/async_ops: review: https://github.com/perl6/nqp/commit/2b8ad3703c
15:33 dalek nqp/async_ops: 80e52eb | jnthn++ | src/QAST/ (11 files):
15:33 dalek nqp/async_ops: Add a way to count arg placeholder usages.
15:33 dalek nqp/async_ops: review: https://github.com/perl6/nqp/commit/80e52eb595
15:33 dalek nqp/async_ops: a232e9a | jnthn++ | tools/build/MOAR_REVISION:
15:33 dalek nqp/async_ops: Get a MoarVM with lazy lexical alloc opt.
15:33 dalek nqp/async_ops: review: https://github.com/perl6/nqp/commit/a232e9ab3f
15:33 dalek nqp/async_ops: 740fa0c | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/nqp/ (3 files):
15:33 dalek nqp/async_ops: Implement asyncreadbytes on JVM. Extracted Buffers utils from Ops.java
15:33 dalek nqp/async_ops: review: https://github.com/perl6/nqp/commit/740fa0cd1b
15:33 dalek nqp/async_ops: d200db6 | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/n​qp/io/AsyncSocketHandle.java:
15:33 dalek nqp/async_ops: Need to copy bytes out of ByteBuffer, not reference internal array.
15:33 dalek nqp/async_ops: review: https://github.com/perl6/nqp/commit/d200db6408
15:33 dalek nqp/async_ops: 620745d | (Donald Hunter)++ | / (12 files):
15:33 dalek nqp/async_ops: Merge branch 'master' of github.com:perl6/nqp into async_ops
15:33 dalek nqp/async_ops: review: https://github.com/perl6/nqp/commit/620745d8c9
15:36 dalek nqp: 31884dd | (Donald Hunter)++ | src/vm/jvm/ (2 files):
15:36 dalek nqp: Add stubs for async ops on JVM.
15:36 dalek nqp: review: https://github.com/perl6/nqp/commit/31884dde33
15:36 dalek nqp: fd6faf9 | (Donald Hunter)++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java:
15:36 dalek nqp: Fix Ops.bindsock to test instanceof IIOBindable instead of ServerSocketHandle.
15:37 Ulti if I want to look at the <sym> from a proto token in the actions what should I be looking at?  ~$<token_name><sym>  ?
15:37 dalek joined #perl6
15:38 FROGGS Ulti: $<sym>
15:38 jnthn Depends which action...
15:38 donaldh_ looks like dalek just died when I committed there
15:39 FROGGS m: grammar Foo { token hurz:sym<bla> { <sym> } }; class Bar { method hurz:sym<bla>($/) { say $/ } }; Foo.parse("bla", :actions(Bar))
15:39 camelia rakudo-moar fd5f8e: OUTPUT«No such method 'TOP' for invocant of type 'Foo'␤  in method parse at src/gen/m-CORE.setting:13029␤  in block  at /tmp/GkGfW9nytk:1␤␤»
15:39 FROGGS m: grammar Foo { token TOP { <hurz> }; token hurz:sym<bla> { <sym> } }; class Bar { method hurz:sym<bla>($/) { say $/ } }; Foo.parse("bla", :actions(Bar))
15:39 camelia rakudo-moar fd5f8e: OUTPUT«No such method 'hurz' for invocant of type 'Foo'␤  in regex TOP at /tmp/_7A9Rxv58U:1␤  in method parse at src/gen/m-CORE.setting:13029␤  in block  at /tmp/_7A9Rxv58U:1␤␤»
15:40 FROGGS m: grammar Foo { token TOP { <hurz> }; proto token hurz { * }; token hurz:sym<bla> { <sym> } }; class Bar { method hurz:sym<bla>($/) { say $/ } }; Foo.parse("bla", :actions(Bar))
15:40 camelia rakudo-moar fd5f8e: OUTPUT«「bla」␤ sym => 「bla」␤␤»
15:40 Ulti oh so you can actually use those as the method names in the actions class
15:40 FROGGS yes, you need the identical method (long)name in the action class
15:41 jnthn donaldh_: Getting to kill dalek is the reward for hard work around here :)
15:41 Ulti ahh but I am doing a "make" in the thing above
15:41 donaldh_ :)
15:42 FROGGS Ulti: okay, but what is the problem? :o)
15:42 Ulti one sec will gist
15:42 FROGGS 'make' only means that you are attaching something to $/.ast
15:43 FROGGS m: grammar Foo { token TOP { <hurz> }; proto token hurz { * }; token hurz:sym<bla> { <sym> } }; class Bar { method TOP { say $<hurz><sym> } }; Foo.parse("bla", :actions(Bar))
15:43 camelia rakudo-moar fd5f8e: OUTPUT«Too many positional parameters passed; got 2 but expected 1␤  in method TOP at /tmp/5TGsH2xYJs:1␤  in any !reduce at gen/moar/stage2/QRegex.nqp:759␤  in any !cursor_pass at gen/moar/stage2/QRegex.nqp:721␤  in regex TOP at /tmp/5TGsH2xYJs:1␤  in m…»
15:43 FROGGS m: grammar Foo { token TOP { <hurz> }; proto token hurz { * }; token hurz:sym<bla> { <sym> } }; class Bar { method TOP($/) { say $<hurz><sym> } }; Foo.parse("bla", :actions(Bar))
15:43 camelia rakudo-moar fd5f8e: OUTPUT«「bla」␤␤»
15:43 FROGGS Ulti: you can do that ^^
15:43 FROGGS I think that is what you meant
15:44 Ulti yeah that is what I am doing I think { token TOP { <hurz> }; proto token hurz { * }; token hurz:sym
15:44 Ulti erk
15:44 Ulti https://gist.github.com/Mat​tOates/0a0dac1fd96377da2c35
15:44 Ulti but it comes up as use of uninitialized value of type Any in string context
15:45 FROGGS ohh
15:45 FROGGS no, the $<hurz><sym> is only there because it actually matched
15:45 lizmat $ perl6 -e '"foo bar baz".subst("a",:g).say'
15:45 lizmat foo br bz
15:45 lizmat spectesting that change now
15:46 Ulti FROGGS: ahh
15:46 Ulti is there any way to get it if I didn't match
15:46 Ulti I've seen from the grammar tracer it is using the right token
15:47 FROGGS m: grammar Foo { token TOP { <hurz> }; proto token hurz { * }; token hurz:sym<bla> { <sym> } }; class Bar { method TOP($/) { say $<hurz>.ast }; method hurz:sym<bla>($/) { make 'bla' } }; Foo.parse("bla", :actions(Bar))
15:47 camelia rakudo-moar fd5f8e: OUTPUT«bla␤»
15:47 FROGGS Ulti: you can stash something in $<sequence>.ast and then check for that
15:47 FROGGS ... in method record
15:50 telex joined #perl6
15:54 dalek rakudo/nom: 19fd86f | (Elizabeth Mattijsen)++ | src/core/ (2 files):
15:54 dalek rakudo/nom: Make .subst("a",:g) work
15:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/19fd86f31f
15:54 jnthn lizmat: Not sure if that'll be a DWIM or a WAT... :)
15:55 lizmat well, *you* typed it assuming it would work  :-)
15:55 PerlJam more of a WAT for me
15:55 PerlJam (at least I was thinking, "Why would lizmat do that?!?")
15:55 jnthn lizmat: No, I typed it wrong 'cus I was doing 3 things at once. :)
15:57 lizmat want me to revert?  it's not like it's important to me, but it *did* seem logical to me
15:58 lizmat I mean, it was a 10 character fix, could have been a 6 character fix with less whitespace  :-)
15:59 FROGGS hmmm, I'd +1 to keep it
16:00 Ven_ yay for socket async
16:00 Ven_ HAML parser should be Text::HAML
16:00 Ven_ ?
16:01 btyler_ joined #perl6
16:02 jnthn lizmat: Don't feel strongly either way, it's hard for me to know whether it'll prevent folks getting a helpful error when they forgot the arg more often than it'll be a useful shortcut.
16:02 PerlJam (a weak argument but ...) The other forms of .subst() always have a replacement.  You can't just go  $text ~~ s:g/a/;  or   s:g[a];  to mean the same as .subst("a", "", :g);
16:03 dalek roast: efa05cf | (Tobias Leich)++ | S04-statements/redo.t:
16:03 dalek roast: remove non-TAP output
16:03 dalek roast: review: https://github.com/perl6/roast/commit/efa05cf847
16:03 dalek rakudo-star-daily: 36c94b8 | coke++ | log/ (5 files):
16:03 dalek rakudo-star-daily: today (automated commit)
16:03 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/36c94b815f
16:07 lizmat PerlJam jnthn FROGGS: I'll refrain from writing tests for .subst("A") for now (or make the spec more specific)
16:07 Rotwang joined #perl6
16:07 lizmat until TimToady has said something about it
16:07 FROGGS yeah, that is probably wise
16:07 TimToady seems like a feature that only increases confusion to me
16:07 PerlJam another minor thing is that there's the added cognitive load of having to remmeber 2 implicit things and that one of them isn't $_
16:08 dalek rakudo/nom: eb062c0 | (Elizabeth Mattijsen)++ | src/core/ (2 files):
16:08 dalek rakudo/nom: Revert "Make .subst("a",:g) work"
16:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/eb062c074f
16:08 lizmat say no more  :-)
16:10 PerlJam now ... if only we could make the levenshtein edit distance between substr and subst a little bit bigger  :-)
16:10 FROGGS jnthn: if you are bored of typing, can you review the loop_labels/loop_labels/loop_labels_test branches?
16:10 FROGGS jnthn: the latter needs cleanup, like creating a src/core/Label.pm
16:10 masak PerlJam: following recent trends, I propose (tongue-in-cheek) that we rename the latter .SUBST :P
16:11 FROGGS jnthn: all is done on moar so far, MapIter needs to be aligned for parrot, and all the stuff needs to be implemented for jvm
16:11 masak PerlJam: because .substr is the "pure" operation, and .SUBST requires you to take care.
16:11 Alina-malina joined #perl6
16:11 PerlJam masak: careful what you say ... you never know when TimToady might like your suggestions  ;)
16:11 masak PerlJam: also because you can't really modify strings, so clearly it's doing something magical.
16:11 jnthn Let's make everything that mutates be uppercase!
16:12 jnthn :P
16:12 [Coke] let's make it cyrllic!
16:12 FROGGS also, 'new' really is magical and needs to be NEW
16:12 [Coke] .субст()
16:12 TimToady masak: as near as I can tell, 'is parsed' ought to be largely orthogonal to whether the macro returns text or AST
16:12 masak TimToady: agree.
16:12 TimToady the whole point of immutable cursors is that you just pick the one you want to continue with
16:13 PerlJam masak: or ... I counter propose that .subst should really just be .s   ;)
16:13 donaldh_ https://github.com/rakudo/rakudo/pull/266 - async IO on JVM.
16:13 masak PerlJam: ooh
16:13 masak PerlJam: it's probably too late for that, but otherwise I like it.
16:13 TimToady a small collision with IO.s
16:14 PerlJam yep
16:14 TimToady and people will try to write .s/foo/bar/
16:14 PerlJam yep
16:15 TimToady and we really don't want to make it a postfix macro
16:15 PerlJam I just need to train my fingers better.  I'm always typing substr when I mean subst, so it bothers me.
16:15 lizmat .substitute then maybe, to add to the levenshtein distance with .substr
16:15 TimToady then we really would have to spell it .SUBST
16:16 lizmat afk for a bit
16:16 TimToady put in fake candidates for .subst and .substr that notice when the args are the wrong type, and suggests the other
16:16 PerlJam .search-and-replace
16:17 Ulti lizmat++
16:17 Ulti ^ for .subst
16:17 FROGGS ohh, just realized that nqp-m's for loop do not yet support labels for some reason...
16:17 FROGGS nqp-p does however
16:18 Ulti though it is a bit of a weird case, I assumed the "" even though jnthn didn't put it in :3
16:18 Ulti but checked out of curiosity
16:19 Ulti though I would prefer .strip("a")
16:19 * JimmyZ hopes there will be a Perl 6 version of Akka
16:20 PerlJam Ulti: that seems an unwarranted specialization to me.
16:21 Ulti *shrug*
16:21 Ulti I would also do .replace instead of .subst too
16:23 Ulti though I would also say :a "all" instead of :g which is essentially Perl heresy
16:23 Ulti or even :all
16:24 TimToady well, if you want heresy, make that the default, and rely on :1st for the other
16:25 TimToady changing defaults is real heresy, not bikeshedding the name :)
16:25 PerlJam that would be more huffmanly.  I can't remember the last time I've wanted to replace just the first occurence of something.
16:25 Ulti yeah I kind of wonder, I usually do global replace, but for one liners its more common not to
16:26 PerlJam I would probably be fine if it were called :a/:all and the default.
16:26 FROGGS well, we can change its default whether you're running a -e or not :P
16:27 TimToady so that's just the default default, but then what's the default default default?
16:30 FROGGS that clearly depends on the os, backend, and strict/lax mode
16:30 FROGGS maybe even the phase of the moon
16:30 FROGGS (our moon)
16:30 Ulti FROGGS: lol unpredictable stateful behaviour is perhaps computer science heresy :P
16:30 FROGGS :o)
16:31 Ulti the -e being able to be copy pasted at a later date into a script is something that is a unique perl strength... if only I could get my supervisor to actually add some white space after this copy pasting!
16:31 guru joined #perl6
16:31 dalek nqp/loop_labels: ba88343 | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
16:31 dalek nqp/loop_labels: fix labels in for loops, and only emit three ex handlers
16:31 dalek nqp/loop_labels: review: https://github.com/perl6/nqp/commit/ba88343b20
16:32 Ulti well and sed
16:32 FROGGS :/
16:32 PerlJam I just did a quick survey (via ack) of all of the perl 6 code I have handy on disk and almost every use of .subst has :g
16:33 FROGGS my p5/6 code does that also
16:34 PerlJam Looks like JSON::Tiny and SVG have some non-:g uses of subst
16:35 PerlJam oh, just in tests
16:38 anaeem1 joined #perl6
16:40 moritz tests are valid uses cases too :-)
16:41 moritz there was a time when s/// didn't accept adverbs
16:42 moritz which is why the :g form was written as .subst, back then
16:46 TimToady well, and s/// is mutating
16:49 virtualsue joined #perl6
16:50 ClarusCogitatio joined #perl6
16:50 ClarusCogitatio joined #perl6
16:54 ClarusCogitatio joined #perl6
16:57 breinbaas joined #perl6
17:01 ClarusCogitatio joined #perl6
17:04 ClarusCogitatio joined #perl6
17:04 rurban joined #perl6
17:10 ClarusCogitatio joined #perl6
17:14 ClarusCogitatio joined #perl6
17:14 ClarusCogitatio joined #perl6
17:18 ajr_ joined #perl6
17:21 [Coke] Perl 6 is one of the white cards in "DevOps against humanity"
17:22 [Coke] https://github.com/bridgetkro​mhout/devops-against-humanity . click on "shared google doc" to see the current suggestions.
17:25 masak what does it mean to be a white card?
17:27 [Coke] it's based on cards against humanity. black cards are fill in the blanks. white cards are things that go in blanks. So a black card might have something like:
17:27 [Coke] You can fix  __________ with _____________ .
17:28 [Coke] and the answer might be: "Perl 6", "A 1996 Java applet"
17:28 [Coke] CAH is like grown up Apples to Apples.
17:29 masak don't know that reference, but I can imagine. :)
17:29 xenoterracide_ joined #perl6
17:29 [Coke] start here: http://cardsagainsthumanity.com/
17:30 [Coke] warning, NSFW!!! (whereas devops version mostly is)
17:32 nwc10 curiously, no mention of Rails
17:32 denis_boyun_ joined #perl6
17:38 vendethiel nwc10: erm, I don't see how a web framework could be used in devops :D
17:39 Rotwang joined #perl6
17:39 nwc10 oh, I sort of missed that
17:39 nwc10 I did like /cgi-bin/php5
17:40 tadzik hm, weird. I get "Can not bind non-existent attribute '$!tex'" in method perl at src/gen/m-CORE.setting:1063
17:40 tadzik why would .perl() ever bind an attribute?
17:40 japhb vendethiel: For Redmine
17:40 vendethiel ooh :D
17:43 tadzik Heap corruption detected: pointer 0x7fc150dbce58 to past fromspace
17:43 tadzik aww yiss
17:44 vaskozl joined #perl6
17:47 avuserow (re: win32 testing in parallel) the "obvious" solution is just to write a new TAP runner in Perl 6 to use its concurrency model :P
17:47 jnthn tadzik: urgh...how'd you get that?
17:51 vaskozl joined #perl6
17:55 takesako____ joined #perl6
18:02 ClarusCogitatio joined #perl6
18:05 rurban joined #perl6
18:06 tadzik jnthn: shooting many bullets in space invaders
18:06 tadzik so: hard to say
18:06 tadzik it only happened once so far
18:07 lizmat TimToady: wrt your suggestion of making fake candidates for .subst and .substr to catch out wrong usage
18:07 lizmat maybe an "is error" routine trait would be useful?
18:07 jnthn tadzik: Oh joy, a bug that can only be found by playing space invaders... :P
18:07 tadzik :P
18:07 denis_boyun__ joined #perl6
18:07 lizmat its sole purpose of causing a *compile* error when the optmizer selects that candidate
18:08 lizmat and a runtime error when called during runtime
18:09 ClarusCogitatio joined #perl6
18:10 lizmat or maybe having the body of a routine containing !!! should be enough?
18:10 lizmat only !!! I mean
18:11 anaeem1_ joined #perl6
18:11 lizmat m: sub a { !!! }; a  # could be caught at compile time ?
18:11 camelia rakudo-moar fd5f8e: OUTPUT«Stub code executed␤  in sub a at /tmp/e7aPhg4GeN:1␤  in block  at /tmp/e7aPhg4GeN:1␤␤»
18:14 tadzik r: class { metohd keypressed($k) { } } # LTA error message
18:14 camelia rakudo-{parrot,moar} fd5f8e: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Variable '$k' is not declaredâ�¤at /tmp/tmpfile:1â�¤------> [32mclass { metohd keypressed($k[33mâ��[31m) { } } # LTA error message[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
18:14 camelia ..rakudo-jvm fd5f8e: OUTPUT«Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'src/Perl6/Grammar.nqp'␤  in  (gen/jvm/main.nqp)␤␤»
18:14 tadzik also, jvm looks broken :)
18:17 dalek specs: 965ec59 | (Elizabeth Mattijsen)++ | S17-concurrency.pod:
18:17 dalek specs: Change order to Supply.(start|migrate|schedule_on)
18:17 dalek specs:
18:17 dalek specs: As that is the order in which they are most likely used.
18:17 dalek specs: review: https://github.com/perl6/specs/commit/965ec597a5
18:17 raiph joined #perl6
18:17 dmol joined #perl6
18:17 [Coke] does having those other candidates slow anything down?
18:18 [Coke] (for the suggested substr/subst fails)
18:18 ClarusCogitatio joined #perl6
18:18 lizmat I'm lead to understand that proto's are nowadays eliminated when they can
18:19 lizmat which is e.g. the reason you can't do "is cached" on a proto at the moment
18:19 lizmat so they're shouldn't be any runtime issue
18:20 lizmat I think the pb with subst / substr is more that they currently are not really MMD
18:24 ClarusCogitatio joined #perl6
18:34 timotimo o/
18:34 tadzik jnthn: hm, I'm doing my $key = nqp::p6box_i($k) but role { method Str { SDL_GetScancodeName($k) } };
18:34 lizmat m: say Int.map(*)
18:34 camelia rakudo-moar fd5f8e: OUTPUT«No such method 'count' for invocant of type 'Whatever'␤  in method reify at src/gen/m-CORE.setting:7681␤  in method reify at src/gen/m-CORE.setting:7592␤  in method reify at src/gen/m-CORE.setting:7592␤  in method reify at src/gen/m-CORE.setting:75…»
18:34 tadzik $k being a native int32
18:34 timotimo vendethiel: in a makefile-less project, just use ufo to create one automatically for you :)
18:34 tadzik does anything seem oddly wrong with this one?
18:34 tadzik I'm getting errors hard to replicate
18:34 tadzik for instance Lexical with name '$k' has wrong type, when doing .perl or .Str on that object
18:34 tadzik but when I try just doing the above in repl or somewhere it works fine
18:34 vendethiel timotimo: ufo ?
18:34 lizmat seems camelia is not up to date yet :-(
18:34 tadzik eh, it doesn't work anyway
18:34 lizmat pushed .map(*) change 3.5 hours ago, and still not live ?
18:34 tadzik but it helped when I assigned the SDL_() result to a variable and then put that in the method thingy
18:34 grep0r joined #perl6
18:34 treehug8_ joined #perl6
18:34 vaskozl joined #perl6
18:34 ClarusCogitatio joined #perl6
18:37 ClarusCogitatio joined #perl6
18:39 colomon joined #perl6
18:42 bluescreen100 joined #perl6
18:46 dalek roast: 86becde | (Elizabeth Mattijsen)++ | S17-supply/migrate.t:
18:46 dalek roast: Initial phase of testing Supply.migrate
18:46 dalek roast:
18:46 dalek roast: For some reason, I'm making a thinko, as the 5th test always fails.
18:46 dalek roast: review: https://github.com/perl6/roast/commit/86becdeee4
18:46 lizmat jnthn: ^^^ would appreciate feedback as to why this fails, am I understanding the spec wrong ?
18:47 dwarring joined #perl6
18:48 vendethiel m: package A { sub postcircumfix:<( )>() is export {'a';} }; say A()
18:48 camelia rakudo-moar fd5f8e: OUTPUT«Cannot invoke this object (REPR: Uninstantiable, cs = 0)␤  in block  at /tmp/kqXX2k9bCe:1␤␤»
18:48 vendethiel m: package A { sub postcircumfix:<( )>() is export {'a';} }; say A::.()
18:48 camelia rakudo-moar fd5f8e: OUTPUT«Cannot find method 'postcircumfix:<( )>'␤  in block  at /tmp/eqpVvsje1U:1␤␤»
18:49 hoverboard joined #perl6
18:50 jnthn lizmat: looking
18:51 vendethiel m: anon sub (--> :(String)) {}
18:51 camelia rakudo-moar fd5f8e: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/5AlS5frp1hâ�¤Missing blockâ�¤at /tmp/5AlS5frp1h:1â�¤------> [32manon sub (--> [33mâ��[31m:(String)) {}[0mâ�¤    expecting any of:â�¤        scoped declaratorâ�¤        new name to be definedâ�¤Â»
18:52 jnthn lizmat: huh...I don't immediately see a thinko
18:52 lizmat ok  *phew*
18:52 lizmat maybe I should test Supply.start first  :-)
18:53 vendethiel (why isn't that :() legal ?)
18:53 jnthn lizmat: oh...
18:53 lizmat oh?
18:53 vendethiel m: sub foo :($a,$b) {...}
18:53 camelia rakudo-moar fd5f8e: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/aS4DP_QlKC�Cannot invoke this object (REPR: P6opaque, cs = 0)�at /tmp/aS4DP_QlKC:1�------> �»
18:53 jnthn I think you might need to  $migrate.tap(...) before you $master.more($s1);
18:53 lizmat ack, so it *was* a thinko  :-)
18:54 lizmat jnthn++
18:54 jnthn yeah, I just didn't spot it right off
18:54 kurahaupo joined #perl6
18:54 * jnthn blames post-nom brainfail :)
18:54 masak oh wow, the attributive parameter syntax is awesome for making factory classes.
18:54 PerlJam masak: that sounds like the beginning of an article :)
18:55 vendethiel masak: method BUILD (:$!a) ?
18:55 nwc10 jnthn: maybe you're not at the Balmer peak?
18:55 lizmat classy factories:  and that on the *2nd* of May!
18:55 masak vendethiel: yes, but instead of BUILD, I'm writing user-accessible chaining methods.
18:55 jnthn nwc10: Didn't have any beer yet, so decidedly not :)
18:55 masak vendethiel: which successively configure an object.
18:55 masak PerlJam: it could be. :)
18:56 masak PerlJam: I'm tentatively flexing my free time again, for the first time in a while. feels great.
18:56 masak first up: p6cc/t4.
18:57 PerlJam masak++ nice (I had forgotten about p6cc)
18:57 vendethiel masak: `method set-x($!a) { self }` ?
18:57 vendethiel yeah it's cool :D
18:58 vendethiel m: multi sub handle_event ($window, $event;; $mode) {...}
18:58 camelia rakudo-moar fd5f8e: ( no output )
18:59 vendethiel so you're telling me I can't use a Closure parameter after a `-->` ? :(
19:00 masak vendethiel: yes, like that.
19:00 vendethiel m: say (anon sub () returns :(--> String) { -> { "a" } })()()
19:00 camelia rakudo-moar fd5f8e: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/UXqay8noL5â�¤Missing blockâ�¤at /tmp/UXqay8noL5:1â�¤------> [32msay (anon sub () returns [33mâ��[31m:(--> String) { -> { "a" } })()()[0mâ�¤    expecting any of:â�¤        scoped declaratorâ�¤   …»
19:00 vendethiel :[
19:00 vendethiel masak: the other option would be smalltalk-like chaining :p
19:00 masak vendethiel: example?
19:01 vendethiel `$a = A.new();\n\t ..abc: "foo";\n\t ..anothercall(1);\n\t ..x = 5;`
19:02 vendethiel a.k.a. cascading
19:04 LLamaRider joined #perl6
19:07 rurban joined #perl6
19:10 timotimo vendethiel: did someone help you find ufo?
19:14 FROGGS[mobile] joined #perl6
19:18 vendethiel timotimo: no
19:21 masak vendethiel: not sure I understand fully. feels similar to `given`
19:21 vendethiel masak: yeah, definitelmy
19:23 vendethiel .oO( unification shines again )
19:24 Rotwang joined #perl6
19:24 masak well, it just means we don't need a special syntax for it, because we already have `given`.
19:25 vendethiel postfix unification
19:25 timotimo masak: will you explain ufo to ven? :)
19:31 masak ufo does a DFS over your modules, creating a Makefile that doesn't waste time compiling things twice.
19:31 masak it's meant as a tool for developers, not for shipping/downloading modules.
19:31 masak it has a README. read it. :)
19:32 dalek rakudo/nom: fae0e42 | (Elizabeth Mattijsen)++ | src/core/SupplyOperations.pm:
19:32 dalek rakudo/nom: Supply.migrate's supply should only take supplies
19:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fae0e4295f
19:33 ClarusCogitatio joined #perl6
19:33 dalek roast: 95ccd97 | (Elizabeth Mattijsen)++ | S17-supply/migrate.t:
19:33 dalek roast: More Supply.migrate tests, now working!
19:33 dalek roast: review: https://github.com/perl6/roast/commit/95ccd976c3
19:34 takesako____ joined #perl6
19:38 ClarusCogitatio joined #perl6
19:38 ClarusCogitatio joined #perl6
19:39 ClarusCogitatio joined #perl6
19:39 ClarusCogitatio joined #perl6
19:46 moritz masak: last I looked, ufo didn't do the DFS; it let make do it
19:50 jnthn I thought it did a DFS on the module source use statements to build the makefile?
19:51 masak it used to.
19:51 masak moritz: you're right. seems you did that with ef94333e42ac96326b99a8e8a7951fb41058ff89 in 2012 :)
19:52 masak I'm out of date, clearly ;)
19:52 masak so the topo-sort is long gone... long live the topo-sort.
19:53 ClarusCogitatio joined #perl6
19:53 vendethiel "alpha as the Perl 6 binary" wow, that seems old :p
19:56 masak patches welcome :)
19:56 dalek star: 4700659 | jnthn++ | README:
19:56 dalek star: Update README for multi-backend Star.
19:56 dalek star: review: https://github.com/rakudo/star/commit/470065927d
19:57 nwc10 jnthn: Could you update all the "Perl 5.9.0" or newer to 5.10.0?
19:58 jnthn Oh, is it true for them all?
19:58 nwc10 minitrue insists that all dev releases never happened
19:59 nwc10 it's nothing to do with whether it worked :-)
19:59 nwc10 it's more "I don't think that it's a good idea to mention dev release version numbers"
19:59 nwc10 and I might well not be the only one
19:59 dalek star: dec0e26 | jnthn++ | README:
19:59 dalek star: s/5.9.0/5.10.0/ as "dev releases never happened"
19:59 dalek star: review: https://github.com/rakudo/star/commit/dec0e26eb8
20:00 jnthn Review and other README patches welcome
20:00 nwc10 CPANtesters might start taking "affermative action" to elminate testing reports for dev releases that are parents of a stable release
20:00 vendethiel masak: well, if you think there's no need to support it anymore :)
20:00 nwc10 jnthn: thanks
20:01 vendethiel ufo says it's not made for checkable makefiles, so I'm not really interested
20:01 masak oki
20:01 masak yeah, it was never made for that.
20:02 nwc10 jnthn: IIRC we've also tried to purge references to dev release version numbers from core docs
20:02 nwc10 5.7.3 - what does that mean?
20:02 vendethiel also, I really only work on windows, and that doesn't seem to be fit :p
20:02 ClarusCogitatio joined #perl6
20:03 jnthn Seems somebody did some of the 2014.04 prep already :)
20:03 jnthn moritz++
20:04 vendethiel masak: have you thought about multi-line parsing of text-indented
20:04 vendethiel I'm trying to do a pseudo css preprocessor and I'm wondering how I'd do it
20:04 moritz well, some of it :-)
20:05 vendethiel but I'd like to be able to do `.a␤  .b␤  .c␤    color: red`
20:05 dalek star: 9977651 | jnthn++ | Configure.pl:
20:05 dalek star: Align warning with current status.
20:05 dalek star: review: https://github.com/rakudo/star/commit/9977651d1e
20:06 vendethiel moritz: can I ... "depend" on Text::Indented and `grammar Text::Styley; is Text::Indented;` then override line ?
20:07 vendethiel also, Text::Indented forces fixed tabstop :(. I'd like it to be more forgiving and just guess it (or allow tabs, which is what I use)
20:07 rurban joined #perl6
20:08 vendethiel well, that's probably something I can allow to be changed as a param, tho
20:08 dalek rakudo/nom: 6c03a23 | (Elizabeth Mattijsen)++ | t/spectest.data:
20:08 dalek rakudo/nom: Also do the Supply.migrate tests
20:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6c03a2321c
20:08 vendethiel m: grammar G { has $.tab; method BUILD($.tab) { callnext; } }; G.new(tab => 'a').perl.say
20:08 camelia rakudo-moar fd5f8e: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/iftAJxc9rCâ�¤Undeclared routine:â�¤    callnext used at line 1â�¤â�¤Â»
20:08 dalek star: 7b16c2f | jnthn++ | docs/announce/2014.04:
20:08 dalek star: Release announce work for 2014.04 release.
20:08 dalek star: review: https://github.com/rakudo/star/commit/7b16c2f951
20:09 vendethiel m: grammar G { has $.tab; method BUILD($.tab) { callsame; } }; G.new(tab => 'a').perl.say
20:09 camelia rakudo-moar fd5f8e: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in method BUILD at /tmp/ONS9bJFwgQ:1␤  in method BUILDALL at src/gen/m-CORE.setting:875␤  in method bless at src/gen/m-CORE.setting:858␤  in method new at src/gen/m-CORE.setting:843␤…»
20:11 raiph Ulti: are you using the debugger to debug your grammar?
20:11 timotimo okay, what great things have i missed so far today?
20:12 jnthn Review of the release announce also welcome.
20:12 timotimo oooh star release <3
20:15 PerlJam jnthn: the last several announcement have had a .md suffix on the filename.  Any reason you left it off on this one?
20:15 dalek perl6-roast-data: a1fd610 | coke++ | / (6 files):
20:15 dalek perl6-roast-data: today (automated commit)
20:15 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/a1fd610d48
20:16 [Coke] rakudo-parrot failed pretty much everything today
20:16 PerlJam (it does keep github from auto-rendering the text)
20:16 [Coke] supply failures on jvm/moar unchanged.
20:16 jnthn PerlJam: I didn't, I just edited the file that was there
20:16 ClarusCogitatio joined #perl6
20:16 PerlJam oh
20:17 jnthn Guess I should make it consistnent
20:17 dalek star: b01b40e | jnthn++ | docs/announce/2014.04 (2 files):
20:17 dalek star: Release announce is markdown; PerlJam++.
20:17 dalek star: review: https://github.com/rakudo/star/commit/b01b40e8e2
20:18 * jnthn heads over to his Linux VM to pimp out the release
20:18 lizmat [Coke]: jnthn didn't get into looking at the Supply.(delay|stable) issues yet
20:18 timotimo wow, seg all the faults
20:18 jnthn uh...pump out...
20:18 [Coke] ./perl6-p --target=pir  --output=src/gen/RESTRICTED.setting.pir src/RESTRICTED.setting
20:18 [Coke] maximum recursion depth exceeded
20:18 jnthn o.O
20:19 lizmat with more than your average number of backends, this rakudo star is pretty pimped  :-)
20:19 PerlJam Random thought ... do we think that everyone who is reading these announcements will know where to look for more information?  I mean we tell them to ask here if they'd like to contribute, but say I don't know what "univals" is for ... should we have links to the spec?
20:19 jnthn I'm not sure I know what a unival is :P
20:19 [Coke] this was with rakudo:18b7e2e
20:20 moritz m: say univals '¾'
20:20 camelia rakudo-moar fd5f8e: OUTPUT«0.75␤»
20:21 jnthn aha :)
20:21 [Coke] m: say univals '¾¾¾¾'
20:21 camelia rakudo-moar fd5f8e: OUTPUT«0.75 0.75 0.75 0.75␤»
20:21 donaldh_ joined #perl6
20:22 anaeem1_ joined #perl6
20:25 dalek roast: a27b807 | (David Warring david.warring@gmail.com)++ | integration/advent2012-day21.t:
20:25 dalek roast: adding advent 2012 day 21 (stress test!)
20:25 dalek roast: review: https://github.com/perl6/roast/commit/a27b807a24
20:25 dalek roast: 5606c32 | (David Warring david.warring@gmail.com)++ | integration/advent2012-day22.t:
20:25 dalek roast: adding advent 2012 day 22
20:25 dalek roast: review: https://github.com/perl6/roast/commit/5606c32c65
20:25 dalek roast: 2e85b3c | (David Warring david.warring@gmail.com)++ | / (67 files):
20:25 dalek roast: Merge branch 'master' of https://github.com/perl6/roast
20:25 dalek roast: review: https://github.com/perl6/roast/commit/2e85b3c10f
20:26 * donaldh_ pimps his PR Implement IO::Socket::Async.bytes_supply and bump NQP_REVISION to get async ops on JVM. https://github.com/rakudo/rakudo/pull/266
20:28 ClarusCogitatio joined #perl6
20:29 timotimo donaldh_: i didn't read it over at all, but it looks like a nice thing to have :)
20:29 LLamaRider joined #perl6
20:29 donaldh_ timotimo: catching up with moar :)
20:30 [Coke] ooh, no more permgen! yay!
20:30 timotimo i'm glad
20:30 timotimo permgen?
20:30 jnthn donaldh_: Does bytes_supply work on Moar also, ooc?
20:31 donaldh_ yeah, the JVM used to have a permgen space for class definitions.
20:31 [Coke] "A third generation closely related to the tenured generation is the permanent generation which holds data needed by the virtual machine to describe objects that do not have an equivalence at the Java language level. For example objects describing classes and methods are stored in the permanent generation."
20:31 donaldh_ Continual problems with running out, and no ability to GC.
20:32 jnthn It'll not be missed
20:32 donaldh_ jnthn: I did not test on Moar because Moar does not have asyncreadbytes implemented.
20:33 jnthn donaldh_: Right, meaning accepting the PR will break the build on Moar?
20:33 jnthn donaldh_: Or is it mapped, just not implemented?
20:33 donaldh_ Mapped and throws an exception at runtime.
20:33 ClarusCogitatio joined #perl6
20:33 ClarusCogitatio joined #perl6
20:34 jnthn ah, ok, then fine
20:34 dalek rakudo/nom: c1833a1 | (Donald Hunter)++ | src/core/IO/Socket/Async.pm:
20:34 dalek rakudo/nom: Implement IO::Socket::Async.bytes_supply
20:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c1833a15a2
20:34 dalek rakudo/nom: 4efdc95 | (Donald Hunter)++ | tools/build/Makefile-JVM.in:
20:34 dalek rakudo/nom: Add IO/Socket/Async.pm to JVM build. Bump setting build heap to 1000m for Java 8.
20:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4efdc95f7a
20:34 dalek rakudo/nom: 1b2d393 | (Donald Hunter)++ | tools/build/NQP_REVISION:
20:34 dalek rakudo/nom: Bump NQP version to get async io ops on JVM.
20:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1b2d39356d
20:34 dalek rakudo/nom: e3748d8 | jonathan++ | / (3 files):
20:34 dalek rakudo/nom: Merge pull request #266 from donaldh/jvm_async_ops
20:34 dalek rakudo/nom:
20:34 dalek rakudo/nom: Implement IO::Socket::Async.bytes_supply and bump NQP_REVISION to get async ops on JVM.
20:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e3748d8f3c
20:34 donaldh_ jnthn++
20:39 ClarusCogitatio joined #perl6
20:39 lvfjf joined #perl6
20:40 ivanshmakov joined #perl6
20:41 rurban joined #perl6
20:43 ivanshmakov joined #perl6
20:46 ClarusCogitatio joined #perl6
20:46 ivanshmakov joined #perl6
20:47 jnthn http://jnthn.net/tmp/rakudo-star-2014.04.tar.gz # rc
20:47 beastd joined #perl6
20:48 donaldh_ Does moar have many warnings on Linux / Windows ? (there are quite a few on MacOS)
20:48 jnthn None on Windows.
20:48 jnthn A few for me on Linux.
20:48 ClarusCogitatio joined #perl6
20:48 ClarusCogitatio joined #perl6
20:49 donaldh_ k, worth investing in some cleanup on Mac....
20:50 donaldh_ Hmm. building nqp with --backends=moar --prefix=../install --gen-moar puts moar in the wrong place :)
20:51 donaldh_ :( even
20:52 * donaldh_ will create an absolute path fix in due course.
20:53 jnthn Gee, the modules-test in R* goes by a good bit quicker on Moar than on Parrot...
20:54 jnthn Anyway, passes for both in that tarball, even after module bumps I did earlier on :)
20:54 jnthn So, the release candidate stands.
20:54 jnthn Will leave it until tomorrow to release, to give time for others to try it.
20:59 timotimo \o/
21:02 ClarusCogitatio joined #perl6
21:05 dalek nqp: 6c1ac9f | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
21:05 dalek nqp: Ensure return types are set up for nqp:: ops.
21:05 dalek nqp: review: https://github.com/perl6/nqp/commit/6c1ac9f49c
21:06 ClarusCogitatio joined #perl6
21:08 timotimo huh, we didn't do that yet?!
21:08 timotimo poor optimizer!
21:09 jnthn Actually I had that patch locally when doing my timings yesterday
21:09 jnthn forgot I'd not pahs it
21:09 jnthn wonder if it makes a difference :)
21:09 ClarusCogitatio joined #perl6
21:11 donaldh_ what's still missing on JVM for * ?
21:11 kurahaupo joined #perl6
21:12 jnthn donaldh_: Hunting a pre-comp bug or two, I think
21:13 ClarusCogitatio joined #perl6
21:13 ClarusCogitatio joined #perl6
21:28 takesako____ joined #perl6
21:29 timotimo jnthn: did that return value change actually change a lot?
21:29 timotimo it seems like it should
21:32 donaldh_ is it possible to build * in the git repo?
21:34 timotimo no, you can only build a tarball to build * with in the repo
21:37 anaeem1 joined #perl6
21:39 vendethiel m: grammar G { token TOP { <['_' '-']> } }
21:39 camelia rakudo-moar fd5f8e: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/TsZsXei9Qf�Unsupported use of - as character range; in Perl 6 please use .. for range, for explicit - in character class, escape it or place as last thing�at /tmp/TsZsXei9Qf:1�------> [32mgra…»
21:39 vendethiel is that correct ? that's surprising
21:39 hoverboard joined #perl6
21:39 LLamaRider joined #perl6
21:40 vendethiel m: grammar G { token TOP { [ <[A..Z]> <[a..z]> + ] ** 1..3 % <[' ' -]> } }; say G.parse('Hey-Here Buddy');
21:40 camelia rakudo-moar fd5f8e: OUTPUT«(Any)␤»
21:40 vendethiel m: grammar G { token TOP { [ <[A..Z]> <[a..z]> + ] ** 1..3 % <[' ' -]> } }; say G.parse('Hey-Here-Buddy');
21:40 camelia rakudo-moar fd5f8e: OUTPUT«「Hey-Here-Buddy」␤␤»
21:40 vendethiel that's surprising too
21:40 vendethiel I guess it *can* make sense, but sometimes not. Is there another operator to make it "recalculate" every time ?
21:40 lue vendethiel: you can't quote things in character classes. Those ' are literal.
21:41 vendethiel lue: oh.
21:41 vendethiel m: grammar G { token TOP { <['a']> } }; say G.parse("b"); say G.parse("a");
21:41 camelia rakudo-moar fd5f8e: OUTPUT«(Any)␤「a」␤␤»
21:41 vendethiel apparently not, though ...
21:41 lue Those ' are literal :)
21:42 vendethiel as in, either ' either a ?
21:42 Timbus_ m: grammar G { token TOP { <['a']> } }; say G.parse("'");
21:42 camelia rakudo-moar fd5f8e: OUTPUT«「'」␤␤»
21:42 vendethiel 'kay
21:42 vendethiel I take note :)
21:42 lue You can backslash a space, though.
21:42 lue r: say " " ~~ /<[\ ]>/
21:42 camelia rakudo-jvm fd5f8e: OUTPUT«Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'src/Perl6/Grammar.nqp'␤  in  (gen/jvm/main.nqp)␤␤»
21:42 camelia ..rakudo-{parrot,moar} fd5f8e: OUTPUT«「 」␤␤»
21:42 vendethiel is ws significant in there ?
21:43 vendethiel m: say " " ~~ /<[a b]>/
21:43 lue Nah, seems <[]> ignores 'em.
21:43 camelia rakudo-moar fd5f8e: OUTPUT«Nil␤»
21:43 vendethiel m: say " " ~~ /<[a b \ ]>/
21:43 camelia rakudo-moar fd5f8e: OUTPUT«「 」␤␤»
21:43 vendethiel thanks lue !
21:45 btyler joined #perl6
21:45 virtualsue joined #perl6
21:45 dalek roast: db0b68e | (Elizabeth Mattijsen)++ | S17-supply/start.t:
21:45 dalek roast: Basic Supply.start tests
21:45 dalek roast: review: https://github.com/perl6/roast/commit/db0b68e375
21:51 dalek roast: 0322152 | (Elizabeth Mattijsen)++ | S17-supply/watch_path.t:
21:51 dalek roast: Make test more robust by waiting a bit longer
21:51 dalek roast: review: https://github.com/perl6/roast/commit/0322152c90
21:51 dalek rakudo/nom: 941f677 | (Elizabeth Mattijsen)++ | t/spectest.data:
21:51 dalek rakudo/nom: Make sure we do the Supply.start tests
21:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/941f677963
21:52 lizmat and with that today's commit limit is reached
21:52 lizmat goodnight, #perl6!
21:54 masak 'night, lizmat
21:54 masak 'night, #perl6
21:56 lvfjf n8
22:01 jnthn 'night, lizmat & masak
22:02 jnthn timotimo: Well, I did it to enable some opts
22:02 jnthn timotimo: So, "presumably" :)
22:04 kurahaupo joined #perl6
22:04 Timbus_ m: say "  as df gh " ~~ /\S+/;  say "  as df gh " ~~ /\S+ % \h/;
22:04 camelia rakudo-moar fd5f8e: OUTPUT«「as」␤␤「a」␤␤»
22:04 Timbus_ this feels wrong
22:04 Timbus_ =/
22:05 Timbus_ ew /[\S+]+ % \h/
22:14 jnthn Was gonna say, that second one is probably what you want.
22:31 takesako____ joined #perl6
22:41 araujo joined #perl6
22:41 araujo joined #perl6
22:49 timotimo i'm going to run fancy-ultra-fresh benchmarks now
22:50 jnthn May want to bump NQP_REVISION first to get that patch I just put in
22:53 timotimo i put in --gen-moar=master --gen-nqp=master temporarily
23:05 skids joined #perl6
23:09 jnthn Happy benchmarking
23:09 jnthn 'night
23:12 takesako____ joined #perl6
23:21 BenGoldberg joined #perl6
23:22 timotimo http://t.h8.lv/p6bench/201​4-05-03-moar_progress.html - this is the benchmarks with the latest head
23:24 timotimo bedtime for me, too
23:24 timotimo gnite
23:25 BenGoldberg p6: $_ = "AB"; say s/(.)(.)//;
23:25 yoleaux 1 May 2014 04:48Z <TimToady> BenGoldberg: using 'my' instead of 'state' is not necessary, since the loop's closure is recloned at the same time the 'my' would have been, so the state resets on re-entry to the outer scope
23:25 camelia niecza v24-109-g48a8de3: OUTPUT«True␤»
23:25 camelia ..rakudo-jvm fd5f8e: OUTPUT«Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'src/Perl6/Grammar.nqp'␤  in  (gen/jvm/main.nqp)␤␤»
23:25 camelia ..rakudo-{parrot,moar} fd5f8e: OUTPUT«␤»
23:25 BenGoldberg p6: $_ = "AB"; say $_ ~~ s/(.)(.)//;
23:25 camelia rakudo-{parrot,moar} fd5f8e, niecza v24-109-g48a8de3: OUTPUT«True␤»
23:25 camelia ..rakudo-jvm fd5f8e: OUTPUT«Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'src/Perl6/Grammar.nqp'␤  in  (gen/jvm/main.nqp)␤␤»

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

Perl 6 | Reference Documentation | Rakudo