Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-10-29

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:32 jnap left #perl6
00:34 rurban joined #perl6
00:36 rurban1 joined #perl6
00:37 fridim_ joined #perl6
00:44 vael joined #perl6
01:10 SmokeMachine joined #perl6
01:17 pecastro joined #perl6
01:18 SmokeMachine joined #perl6
01:33 xenoterracide so is the jvm version able to use libraries from java? or is that pending the nativecode for java
01:34 xenoterracide (unsure whether nativecode jvm  means C* code or jvm bytecode)
01:37 rurban joined #perl6
01:39 xenoterracide also, this is probably in a FAQ somewhere, but why is there a separate repo for star? isn't star just fundamentally tagged points in time and pulls in additional useful libraries?
01:39 rurban1 joined #perl6
01:52 colomon I believe nativecode jvm means C code
01:52 colomon but there already is some other java interop stuff
01:52 colomon (for rakudo jvm)
01:53 colomon dunno the exact details, I've been bit out of the loop
02:03 benabik Nativecall on JVM calls native (C ABI) code.  JVM interop is built-in to Rakudo/JVM.  Don't know the magic incantations for it.  The threading code is actually pretty readable and uses the interop, so you could look there.
02:09 grondilu joined #perl6
02:15 BenGoldberg Why doesn't this work right?
02:15 BenGoldberg r: say "abcdefgh" x .5
02:15 BenGoldberg :)
02:15 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«␤»
02:16 * BenGoldberg is in a silly mood today
02:16 benabik BenGoldberg: It does.
02:16 benabik r: say Int(.5)
02:16 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«0␤»
02:18 BenGoldberg I was reading http://perl.plover.com/IAQ/IAQlist.html, and found it under the question "How can I get just the first half of a long string?"
02:19 benabik Erm.
02:20 lue r: say "abcd".comb[0..*/2].join
02:20 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«abc␤»
02:20 benabik r: say "abcd".comb[0..^*/2].join
02:20 lue r: say "abcd".comb[0..*/2 - 1].join
02:20 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«ab␤»
02:20 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«ab␤»
02:20 benabik r: say "abcd"[^*/2]
02:20 camelia rakudo-parrot 995207: OUTPUT«Index out of range. Is: 0.5, should be in 0..0␤  in method gist at gen/parrot/CORE.setting:11965␤  in method gist at gen/parrot/CORE.setting:1023␤  in sub say at gen/parrot/CORE.setting:12865␤  in block  at /tmp/Z37u6sRza6:1␤  in any  at /tmp/Z…»
02:20 camelia ..rakudo-jvm 882e33: OUTPUT«Index out of range. Is: 0.5, should be in 0..0␤  in block  at /tmp/P6KQVWXF8m:1␤  in any eval at gen/jvm/stage2/NQPHLL.nqp:1084␤  in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1290␤  in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1194␤  in any c…»
02:21 benabik r: say "abcd".comb[^*/2].join
02:21 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«c␤»
02:21 lue .oO(Str.bifurcate)
02:23 benabik r: say "abcd".comb[^(*/2)].join
02:23 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«ab␤»
02:24 benabik Oy.  The ^ binds tighter than /, so it's doing (0..^4)/2, which is 2.
02:24 benabik Took me a moment to figure that out.
02:26 BenGoldberg It's good to see real answers... but if you take a look at the web page I mentioned... well, $str.bifurcate would probably be the "right" perl6 answer for that question on that type of list.
02:32 diakopter p5eval: print $\ x 1_000_000
02:32 p5eval diakopter: 1
02:32 diakopter rnp: print $\ x 1_000_000
02:32 diakopter rp: print $\ x 1_000_000
02:32 camelia rakudo-parrot 995207: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/Nc2lgUDHLa�Unsupported use of $\ variable; in Perl 6 please use the filehandle's :ors attribute�at /tmp/Nc2lgUDHLa:1�------> [32mprint $\[33m�[31m x 1_000_000[0m�»
02:33 benabik r: say ("abcd" ~~ /(.*)(.*) <?{$0.chars == $1.chars}>/)[0]
02:33 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«「ab」␤␤»
02:33 benabik Splits only exactly in half.  :-D
02:35 rurban joined #perl6
02:36 benabik r: say ("abcde" ~~ /(.*).?(.*) <?{$0.chars == $1.chars}>/)[0]  # Or, rounding down
02:36 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«「ab」␤␤»
02:36 lue BenGoldberg: too bad .bifurcate doesn't exist :)
02:37 lue r: say "abcde".comb[0..^*/2].join
02:37 camelia rakudo-parrot 995207, rakudo-jvm 882e33: OUTPUT«abc␤»
02:38 lue ^ more correct, IMO. round(2.5) = 3
03:13 xenoterracide does the async stuff work on parrot as well or jvm only
03:13 benabik JVM only.
03:13 benabik Nobody's figured out how to map Parrot's parallelism to what Rakudo wants.
03:17 woosley left #perl6
03:18 lue I thought it was that we haven't figured out Parrot's parallelism yet :P
03:19 benabik Parrot has the ability to launch parallel tasks.  It does not use the standard shared memory model of threading though
03:21 odoacre joined #perl6
03:23 benabik http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf
03:25 woosley joined #perl6
03:26 xinming_ joined #perl6
03:44 telex joined #perl6
03:45 xinming_ df
03:48 johnny5_ joined #perl6
03:58 Timbus joined #perl6
04:43 rurban joined #perl6
04:56 preflex joined #perl6
05:30 SamuraiJack_ joined #perl6
06:02 wbill joined #perl6
06:13 xenoterracide joined #perl6
06:19 dmol joined #perl6
06:26 stevan__ joined #perl6
06:26 rurban joined #perl6
06:28 timotimo joined #perl6
06:30 perigrin joined #perl6
06:30 xinming joined #perl6
06:31 vael joined #perl6
06:31 revdiablo joined #perl6
06:31 japhb__ joined #perl6
06:32 ribasushi joined #perl6
06:32 yeltzooo joined #perl6
06:36 [Sno] joined #perl6
06:56 moritz http://rakudo.org/downloads/star/rakudo-star-2013.10.tar.gz uploaded, lue++
06:56 rindolf joined #perl6
06:57 moritz I'll try to get around to publishing the announcement on rakudo.org later today
07:02 rindolf joined #perl6
07:05 kaleem joined #perl6
07:06 FROGGS joined #perl6
07:27 rurban joined #perl6
07:29 darutoko joined #perl6
07:38 denis_boyun joined #perl6
07:53 iSlug joined #perl6
08:10 odoacre_ joined #perl6
08:19 leo2007 joined #perl6
08:21 leo2007 left #perl6
08:24 FROGGS o/
08:25 odoacre joined #perl6
08:27 FROGGS timotimo: I am planning to fix run() today btw
08:27 timotimo great! :)
08:27 fhelmberger joined #perl6
08:28 rurban joined #perl6
08:29 FROGGS that is, fixing it on linux@parrot
08:29 FROGGS (windows@parrot works)
08:30 tadzik so many platform combinations
08:30 FROGGS yeah :/
08:31 * timotimo got woken up by construction work apparently
08:32 FROGGS timotimo: at what time?
08:32 timotimo began half an hour ago
08:32 FROGGS not too bad
08:32 timotimo so ... i did get an acceptable amount of rest, but it still gave me a headache :|
08:32 FROGGS (I have kids, you know)
08:33 FROGGS and these little things tend to wake up at 6 (daylight savings time)
08:35 FROGGS so, I AM AWAKE FOR 4.5 HOURS ALREADY!
08:35 FROGGS >.<
08:36 nwc10 and you have made how many commits? :-/ [yes, real life doesn't work like that]
08:36 FROGGS nwc10: none, kids wanted to play, eat, get to the kindergarten...
08:38 moritz so, I tried my hands at implementing "no strict", https://gist.github.com/moritz/7210995
08:38 moritz you can see that even though I wrote $decl.decl('contvar'); the AST dump says :decl(static)
08:38 moritz any idea why?
08:39 tadzik timotimo: at least you're not woken up by windows vibrating because of the bass of the asshat below you playing his music on 7:30
08:39 * tadzik grumbles
08:40 timotimo o_O
08:40 tadzik setting a new wifi network named "what a &$!%*&$^%!* plays hiphop at 7" doesn't help
08:41 FROGGS moritz: my v5 has some sort of 'no strict'
08:41 FROGGS moritz: it just autodeclares vars instead of complaining that they are not declared
08:43 moritz FROGGS: that's what I'm trying to do, yes
08:43 moritz but somehow they end up as :decl<static>, and that makes it kinda hard to assign to them
08:44 bloonix joined #perl6
08:44 moritz oh, because $*W.install_lexical_symbol sets .decl to 'static'
08:45 moritz seems there is some fun with static lexpads and actual values etc. going on that I don't understand
08:45 moritz or maybe install_lexical_symbol is simply the wrong method to call
08:46 masak moarning, #perl6
08:46 FROGGS morning masak
08:47 hoelzro morning #perl6
08:47 bloonix morning
08:47 masak tadzik: passive-aggressive neighbourly communication through wifi network names. ingenious.
08:48 masak tadzik: I bet a really nice short story could be written on that topic. :)
08:49 FROGGS o/ hoelzro, bloonix
08:49 tadzik masak: active-positive doesn't work either :( I had "Bring cookies to 256" for a few months, nothing happened
08:50 tadzik I'm afraid that no one reads those :(
08:51 FROGGS ó.ò
08:51 tadzik but I'm amused at neighbours setting names like "Mommoth-Dadmoth"
08:51 tadzik (or Mamut-Tatut in Polish)
08:52 FROGGS hehe
08:52 FROGGS ahh
08:52 tadzik ah, it's mammoth in english. Oh well
08:53 tadzik masak: I'm wondering if I could sketch some interesting plot and write it during vacation
08:54 tadzik like an Orwell-ish society, never able to leave their homes, only able to communicate by setting essids ;)
08:56 FROGGS tadzik: or you hack your router firmware so it broadcasts your facebook status via SSID
08:56 tadzik hahaha
08:56 tadzik ooh
08:57 tadzik or something that instead of regular wifi traffic just streams music
08:57 tadzik now that's beyond my wifi-fu
08:58 moritz tadzik.wifi.fu.upgrade
08:59 tadzik I wonder if someone will pick up my YAPC talk idea, I saw that it got published in survey results. "How wifi works and why we can never get it right"
08:59 tipdbmp joined #perl6
08:59 tadzik (on the conferences, that is)
08:59 hoelzro hahaha
09:01 zakharyas joined #perl6
09:02 pernatiy joined #perl6
09:03 moritz well, the second part (why we can never get it right) is quite easy to answer
09:03 moritz consumer hardware and uplink doesn't like more than a hand full of users
09:03 moritz and enterprise stuff is way too expensive
09:04 timotimo ah, yes, i think "install lexical symbol" is exactly that: symbols. like ... i guess classes for example?
09:04 dansamo joined #perl6
09:04 moritz timotimo: is there a helper method for installing lexical variables?
09:04 tadzik timotimo: classnames, I think
09:05 timotimo hm, something the compiler does when it sees vars with the right delc?
09:05 timotimo decl
09:05 timotimo but you're already before the compielr
09:05 moritz well, decl isn't the only thing
09:06 moritz that doesn't install it into the the block's symbol table, for example
09:06 moritz or does it?
09:07 timotimo it could be you have to do it like line 5593 of Actions.nqp
09:08 timotimo er, not as in create a container descriptor, just the push part with the cur_lex_block?
09:08 timotimo cur_lexpad, even
09:10 moritz is $*UNIT a QAST::Block?
09:11 timotimo hm, i seem to remember something about that
09:11 timotimo in the way the optimizer finds the unit
09:12 timotimo yes, unit is a block
09:12 FROGGS moritz: $block.symbold(:name('$foo'), :decl('var')) does it
09:12 FROGGS without the :decl it is just a lookup
09:12 FROGGS symbol*
09:13 fhelmberger_ joined #perl6
09:13 FROGGS I think you'll see everything you need in variable_declarator
09:14 cognominal joined #perl6
09:17 moritz FROGGS: so $block.symbol does the pushing to $block[0] for me?
09:22 moritz now I got it to actually generate a :decl(contvar)
09:22 FROGGS moritz: no, you would have to push something like QAST::Var.new( :name('$_'), :scope('lexical'), :decl('var') ) to $block[0]
09:22 moritz and it still dies with "Cannot modify an immutable value"
09:23 FROGGS because block[0] is a statementlist of variable declarations, every block has two statementlists...
09:23 donaldh joined #perl6
09:24 moritz yes, I know
09:24 FROGGS k
09:25 FROGGS maybe you an steal parts from https://github.com/rakudo-p5/v5/blob/master/lib/Perl5/Grammar.nqp#L329-L360
09:28 rurban joined #perl6
09:33 FROGGS moritz: method create_container_descriptor($of, $rw, $name, $default = $of, $dynamic = nqp::chars($name) > 2 && nqp::substr($name, 1, 1) eq "*") {
09:33 FROGGS you passed something true-ish as second arg?
09:34 moritz I didn't even create a container :(
09:34 daxim joined #perl6
09:42 moritz will try later, but have to $work first
09:47 dakkar joined #perl6
09:48 yannickberthoud joined #perl6
09:59 dalek Heuristic branch merge: pushed 357 commits to nqp/nqp_spawn by FROGGS
10:03 dalek Heuristic branch merge: pushed 200 commits to rakudo/nqp_spawn by FROGGS
10:04 cognominal joined #perl6
10:05 spider-mario joined #perl6
10:09 dalek nqp/nqp_spawn: aca76d0 | (Tobias Leich)++ | src/vm/parrot/ops/nqp.ops:
10:09 dalek nqp/nqp_spawn: silence type cast warnings
10:09 dalek nqp/nqp_spawn: review: https://github.com/perl6/nqp/commit/aca76d04c5
10:09 arnsholt Spawn?
10:10 FROGGS used underneath run()
10:10 arnsholt Ah, right
10:13 rindolf joined #perl6
10:19 dalek nqp/nqp_spawn: 6ac28c2 | (Tobias Leich)++ | src/vm/parrot/ops/nqp.ops:
10:19 dalek nqp/nqp_spawn: strip accidentally added duplicate nqp_spawn op
10:19 dalek nqp/nqp_spawn: review: https://github.com/perl6/nqp/commit/6ac28c26bb
10:24 denis_boyun joined #perl6
10:29 Vendethiel joined #perl6
10:29 rurban joined #perl6
10:33 FROGGS huh, it compiles O.o
10:38 xenoterracide joined #perl6
10:38 FROGGS hmmm, it even seems to work
10:41 FROGGS timotimo: is there a simple one-liner that shows how run() is broken?
10:41 FROGGS except handling %*ENV I mean
10:42 timotimo except handling %*ENV? but that's the only way i know it's broken?
10:43 FROGGS yeah, you are right
10:43 timotimo i guess you could ./perl6 -e '%*ENV<GIT_DIR> = "nqp/.git"; run <git show a764846>'
10:43 FROGGS backlogged right now
10:43 timotimo and that should show nqp's 2013.08 tag
10:43 timotimo if, indeed, your nqp checkout is in nqp/
10:45 FROGGS nqp::spawn(["echo", "\$PWD"], '/tmp', {}) worked already
10:45 FROGGS have to recompile though
10:56 FROGGS hmmm, somehow I does not take the 2013.10 tag into account in my nqp checkout
10:58 FROGGS I see the tag, but git describe tells me something about 2013.09-390...
11:00 sqirrel joined #perl6
11:04 timotimo that may be okay
11:05 timotimo the only interesting thing is that the environment variable properly gets set
11:06 FROGGS dev/rakudo$ perl6 -e '%*ENV<GIT_DIR> = "../nqp/.git"; run <git show a764846>'
11:06 FROGGS commit a76484663e96b374e1425509d9cc3283be4cdd14
11:06 FROGGS Author: Moritz Lenz <mlenz@noris.net>
11:07 FROGGS perl6 -e '%*ENV<HURZ> = "42"; run <echo $HURZ>'
11:07 FROGGS 42
11:07 moritz FROGGS: try   git describe --all
11:08 FROGGS git describe --all
11:08 FROGGS heads/nqp_spawn
11:08 moritz that could happen if the tag wasn't annotated
11:10 FROGGS k, I'll hope that the tag appears then when I merge my branch into master
11:11 denis_boyun joined #perl6
11:13 FROGGS hmm, or maybe I just copy the source files, and create new clean commits
11:19 jnthn moritz: (no strict) you may be able to just pass the right kinds of things to sub declare_variable and have it work out, but the install_ method on Perl6::World you want is install_lexical_container or so
11:20 moritz jnthn: ok
11:27 xenoterracide can I put a class or role inside of a package or a module and then strip off the outer namespace on importa somehow? so package Foo { class Bar {} } in Foo/Bar.pm could be used like use Foo::Bar; Bar.new (or some such)
11:27 moritz xenoterracide: on the user side, you can alias with 'constant'
11:27 moritz constant Bar = Foo::Bar;
11:28 jnthn class Bar is export { } # or so
11:28 moritz though if you want to do it always, I don't see the point in nesting the classes at all
11:30 rurban joined #perl6
11:33 xenoterracide hmm
11:33 xenoterracide k
11:34 FROGGS hmmm, my run() implementation seems to trigger the following regression:
11:34 FROGGS t/spec/S06-other/main-usage.rakudo.parrot (Wstat: 0 Tests: 22 Failed: 14)
11:34 FROGGS Failed tests:  1-6, 8-12, 18-20
11:35 FROGGS ahh, maybe not
11:35 FROGGS I think it just tries to execute ./perl6 when it is called perl6-p
11:37 FROGGS yeah, creating ./perl6 fixes it!
11:38 moritz p: say $*EXECUTABLE_NAME
11:38 camelia rakudo-parrot 995207: OUTPUT«./rakudo-inst/bin/perl6-p␤»
11:38 moritz j: say $*EXECUTABLE_NAME
11:38 camelia rakudo-jvm 882e33: OUTPUT«perl6␤»
11:38 moritz shouldn't it use that one?
11:39 FROGGS perl6-p -e 'say $*EXECUTABLE_NAME'
11:39 FROGGS perl6-p
11:39 FROGGS but:
11:39 FROGGS not ok 1 - Parse error contains line number
11:39 FROGGS #      got err: "sh: 1: ./perl6: not found\n"
11:40 xenoterracide is there something that does a fantastic job of explaining why module or package
11:40 colomon joined #perl6
11:40 moritz $cmd = $perl6 ~~ m:i/java/ ?? "./perl6 " !! "$perl6 ";
11:41 moritz from t/spec/packages/Test/Util.pm
11:42 dalek roast: 7f925f9 | moritz++ | packages/Test/Util.pm:
11:42 dalek roast: try to fix invocation of rakudo-jvm
11:42 dalek roast: review: https://github.com/perl6/roast/commit/7f925f9941
11:42 moritz FROGGS: try with that patch agian
11:42 moritz *again
11:43 denis_boyun joined #perl6
11:44 FROGGS moritz: line 97 would strip the -p, no?
11:44 xenoterracide Method 'username' must be implemented by User because it is required by a role # error message sucks a little? which role
11:44 jnthn flight &
11:44 FROGGS jnthn: I wish you a good one :o)
11:44 moritz FROGGS: aye
11:45 FROGGS timotimo: /o\ I still used parrot's spawn in my test
11:45 moritz FROGGS: so better to write it as   $perl6 ~~ s{^perl6}{./perl6};
11:46 FROGGS yeah
11:46 dalek roast: 61a7f63 | moritz++ | packages/Test/Util.pm:
11:46 dalek roast: another attempt to fix perl6 invocation in tests
11:46 dalek roast: review: https://github.com/perl6/roast/commit/61a7f63c37
11:50 moritz Unsupported use of brackets around replacement; in Perl 6 please use assignment syntax
11:50 moritz at least the error message is awesome
11:52 moritz ./perl6-j -e 'say $*EXECUTABLE_NAME'
11:52 moritz perl6
11:52 moritz that totally sucks.
11:53 FROGGS *nod*
11:53 lizmat agree
11:53 * moritz patches
11:53 GlitchMr joined #perl6
11:56 FROGGS timotimo: so I guess parrot's spawn was only broken on windows? (wrt env)
11:57 FROGGS I know that the autoquoting was totally off
11:57 dalek rakudo/nom: 55ff4fc | moritz++ | src/core/terms.pm:
11:57 dalek rakudo/nom: on the JVM, we are perl6-j
11:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/55ff4fc743
11:57 moritz t/spec patch forthcoming too
11:58 moritz but first I want to test in on parrot also
12:02 GlitchMr joined #perl6
12:05 * donaldh thinks that on JVM, executable name should be a system property that is configured by the shell script wrapper.
12:05 dalek roast: 4a3de07 | moritz++ | packages/Test/Util.pm:
12:05 dalek roast: actually fix perl6 invocation
12:05 dalek roast:
12:05 dalek roast: ... on my machine, at least. Tested with perl6-p and perl6-j
12:05 dalek roast: review: https://github.com/perl6/roast/commit/4a3de076cf
12:06 moritz donaldh: sounds plausible. I'll accpet such patches :-)
12:08 donaldh moritz: ack
12:08 * donaldh really must get around to posting a signed CLA.
12:09 * arnsholt has probably submitted a CLA
12:09 arnsholt I have a Rakudo commit bit, but can't actually remember doing the CLA thing =)
12:09 donaldh does anyone know a FAX number for TPF ?
12:09 moritz arnsholt: maybe you did a release once, and snuck in like that
12:10 arnsholt Possibly
12:11 [Coke] diakopter: `locale -a` says otherwise.
12:11 odoacre_ joined #perl6
12:11 [Coke] diakopter: oops. sorry, "i tried setting that and perl5 doesn't think so."
12:15 timotimo computer says no.
12:17 * [Coke] suspects he should start opening rakudo-jvm tickets for things that are failing the spectests so we don't get complacent.
12:17 moritz [Coke]: +1
12:20 FROGGS Method 'compose' not found for invocant of class 'Attribute
12:20 FROGGS :o(
12:20 moritz FROGGS: what are you doing?
12:21 FROGGS adding class Proc::Status to src/core/control.pm
12:22 colomon [Coke]: +1
12:22 dalek perl6-roast-data: 6eed77e | coke++ | / (5 files):
12:22 dalek perl6-roast-data: today (automated commit)
12:22 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/6eed77ef7a
12:31 rurban joined #perl6
12:36 dalek roast: 5bb2991 | coke++ | S02-types/baghash.t:
12:36 dalek roast: Opened a ticket for this rakudo-jvm failure
12:36 dalek roast: review: https://github.com/perl6/roast/commit/5bb29916b4
12:36 [Coke] ok, there's one. :P
12:37 [Coke] I wonder if rakudo-p is implicitly relying on some parrot Hash behavior.
12:37 [Coke] -> $dayjob
12:37 [Coke] mail
12:37 [Coke] ww !
12:40 sqirrel joined #perl6
12:45 pernatiy joined #perl6
12:56 FROGGS this is what I am doing about run() if someone is interested: https://gist.github.com/FROGGS/7350a48de9d920072d90
12:56 FROGGS testing on windows now
13:00 ajr joined #perl6
13:08 jnap joined #perl6
13:12 fhelmberger joined #perl6
13:17 Vendethiel joined #perl6
13:20 bluescreen10 joined #perl6
13:20 brrt joined #perl6
13:21 bluescreen100 joined #perl6
13:21 logie joined #perl6
13:22 bluescreen__ joined #perl6
13:22 BitPuffin joined #perl6
13:31 rurban joined #perl6
13:33 benabik joined #perl6
13:34 bluescreen10 joined #perl6
13:40 araujo joined #perl6
13:45 raiph joined #perl6
13:48 dalek nqp/run: 54f6198 | (Tobias Leich)++ | src/vm/parrot/ (2 files):
13:48 dalek nqp/run: implemented our own nqp::spawn()
13:48 dalek nqp/run: review: https://github.com/perl6/nqp/commit/54f619846f
13:48 dalek rakudo/run: ea5c22f | (Tobias Leich)++ | src/core/ (2 files):
13:48 dalek rakudo/run: use nqp::spawn()
13:48 dalek rakudo/run: review: https://github.com/rakudo/rakudo/commit/ea5c22fa5a
13:54 colomon FROGGS: so that just works on Parrot so far?
13:55 FROGGS colomon: with micro-tweaks of the spectests, yes
13:55 colomon FROGGS++
13:55 FROGGS testing on windows now again though
13:55 FROGGS but last time it worked
13:56 FROGGS hmmm, I could even make it work so that no spectest-changes are needed
13:57 FROGGS but this would be against spec
14:03 lizmat commute to AmsterdamX meeting&
14:11 * masak .oO( Amsterdam.pm and AmsterdamX.pm -- now with twice as much Amsterdam! )
14:17 moritz and next year: generaten AmsterdamY
14:17 moritz *generation
14:17 moritz typo'd jokes are only hal as funny
14:17 FROGGS C:\rakudo>perl6-p -e "%*ENV<HURZ> = "42"; say run(<echo %HURZ%>) == 0"
14:17 FROGGS 42
14:17 FROGGS True
14:18 moritz \o/
14:18 moritz FROGGS++
14:18 timotimo sounds great!
14:18 FROGGS C:\rakudo>perl6-p -e "%*ENV<HURZ> = "42"; say ?run(<echo %HURZ%>)"
14:18 FROGGS 42
14:18 FROGGS True
14:18 FROGGS seems to work...
14:18 FROGGS I am just thinking....
14:19 timotimo well, thank you for doing this :)
14:19 FROGGS currently shell() returned posix style value, whereas it would return the exit value only atm
14:19 FROGGS :o)
14:20 timotimo the posix-style value was the one you had to +> 8 first?
14:21 FROGGS to get the exit values, yes
14:22 FROGGS and +& 0xFF to get the signal
14:22 FROGGS which always zero on windows
14:24 FROGGS that is the spectest diff btw: https://gist.github.com/FROGGS/7350a48de9d920072d90#file-spectest-diff
14:25 FROGGS moritz / timotimo / all: would be nice to get a +1 / -1
14:26 moritz FROGGS: if the spec says so, +1
14:27 masak what moritz said :)
14:27 colomon joined #perl6
14:32 timotimo yes, spectest-diff seems sane (if the spec says so, and it would make sense that it does)
14:32 kaare_ joined #perl6
14:35 colomon joined #perl6
14:37 FROGGS[mobile] joined #perl6
14:37 telex joined #perl6
14:39 sqirrel joined #perl6
14:59 btyler joined #perl6
15:02 colomon joined #perl6
15:04 wbill joined #perl6
15:05 timotimo tadzik: hellsongs is coming to my town to play a concert. do you think i should go?
15:05 tadzik timotimo: oh, I know I would :)
15:06 * jnthn survived his flight :)
15:06 telex joined #perl6
15:06 tadzik bah, I don't remember what was the last concert I've been on
15:07 tadzik Arkona, most likly
15:07 * colomon 's last concert was Brian Miller and Randy Gosa just 10 days ago, and he's listening to their album right now.  ;)
15:07 timotimo i've only been on one concert so far, that was immogen heap. i think i should probably go
15:07 timotimo 21 euros is probably a regular price for a concert like that?
15:08 tadzik I usually pay about that much for concerts
15:09 timotimo now all i need is to find some people to accompany mi
15:09 jnthn tadzik: Arkona as in the Russian pagan metal band?
15:09 tadzik aside from the daily ones in Pirates' Nest
15:09 tadzik jnthn: yep
15:09 jnthn oh, cool. I'd not mind seeing them :)
15:09 tadzik it's absolutely amazing on concerts
15:09 * jnthn can imagine
15:09 * colomon believes most music is better live
15:10 tadzik although I think you have to put "folk" somewhere in the genre name to give them justice :)
15:10 jnthn Well, dream theater will be playing in Copenhagen sometime early next year, so I'm hoping to catch that :)
15:10 tadzik https://www.youtube.com/watch?v=Tt6_65LDZ60 for a glimpse
15:13 TimToady I don't think shell/run should return a number with reversed boolean sense; I think it should return an object that is natively true/false but with methods to retrieve things like status if you want them
15:13 moritz +1
15:13 TimToady "natively" rather
15:14 TimToady primarily, I guess
15:14 jnthn yes, "natively" is a bit confusing there ;)
15:14 TimToady the current dualvarish approach gives me the willies
15:15 moritz "innatively"
15:15 timotimo great, because it seems like that's exactly what FROGGS just implemented :)
15:16 * TimToady is also wondering about 'no strict' semantics; autodeclaring is not the same semantics as Perl 5, and we should have a discussion of whether 'no strict' really makes package vars PLUS allows lookup in the current package without OUR::
15:16 TimToady that's what a P5 programmer would expect
15:17 diakopter TimToady: autodeclaring declares it in the first scope in which it appears or the outermost in that compilation unit, or the global a la JS
15:17 TimToady oh, btw, I don't think ::('$!x') should necessarily work, but maybe HAS::('$!x') would
15:17 odoacre joined #perl6
15:18 TimToady diakopter: yes, there are various autodecl schemes in various languages, but none of them map directly to what P5 does
15:19 rurban joined #perl6
15:19 diakopter TimToady: I'm asking, what do p5/p6 do
15:20 TimToady r: { our $foo; $foo = 42 }; say $foo;
15:20 camelia rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/0c2Prsw5fAâ�¤Variable '$foo' is not declaredâ�¤at /tmp/0c2Prsw5fA:1â�¤------> [32m{ our $foo; $foo = 42 }; say $foo[33mâ��[31m;[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
15:20 camelia ..rakudo-parrot 55ff4f: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/zMilVJsNvUâ�¤Variable '$foo' is not declaredâ�¤at /tmp/zMilVJsNvU:1â�¤------> [32m{ our $foo; $foo = 42 }; say $foo[33mâ��[31m;[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
15:20 TimToady this works in p5
15:20 TimToady p5eval: { our $foo; $foo = 42 }; say $foo;
15:20 p5eval TimToady: 421
15:20 moritz that's kinda scary
15:20 diakopter that's autodeclare? that's our...
15:20 TimToady you wanted "no strict" :)
15:21 diakopter p5eval: { $foo = 42 }; say $foo;
15:21 p5eval diakopter: 421
15:21 diakopter that's like JS
15:21 masak p5eval: { $foo = 42 }; $foo
15:21 p5eval masak: 42
15:21 TimToady r: { our $foo; $foo = 42 }; say $OUR::foo;
15:21 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«42␤»
15:21 moritz fwiw I'd vote for making p5's 'no strict;' autodecl lexical
15:21 TimToady P6 requires the OUR:: but P5 doesn't
15:21 moritz and putting the declaration in the outer-most scope of the current compilation unit
15:22 diakopter TimToady: I thought you were talking about a-declaration
15:22 moritz that's mostly analog to how settings work
15:22 TimToady moritz: I think that's silly; if you want autodeclare, that's something else, but we shouldn't pretend it's anything like P5
15:22 moritz p5eval: $x = 42; { use strict; $x }
15:22 p5eval moritz: ERROR: Global symbol "$x" requires explicit package name at (eval 7) line 1.
15:22 diakopter heh.
15:22 TimToady r: { our $foo; $foo = 42 }; say $MAIN::foo;
15:22 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«(Any)␤»
15:23 TimToady r: { our $foo; $foo = 42 }; say $Main::foo;
15:23 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«(Any)␤»
15:23 moritz I don't think there's a default package/module specced
15:23 TimToady er
15:23 moritz which is why Main:: doens't give you anything
15:23 TimToady r: { our $foo; $foo = 42 }; say $GLOBAL::foo;
15:23 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«42␤»
15:23 TimToady there we go
15:23 moritz ok
15:24 diakopter r: package Boo { our $foo; $foo = 42 }; say $Boo::foo;
15:24 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«42␤»
15:24 * TimToady is very opinionated this morning :)
15:24 diakopter r: package Boo { our $foo; $foo = 42 }; say $GLOBAL::foo;
15:24 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«(Any)␤»
15:24 timotimo FROGGS: is your code in a branch so i can try it out? or do i have to get the diff from the gist?
15:25 diakopter .oO( .. and this is the opinionated chapter... )
15:25 TimToady r: package Boo { our $foo; $foo = 42 }; package Boo { say $foo };  # would work under P5 semantics, which assume "OUR::", unlike P6
15:26 camelia rakudo-parrot 55ff4f: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/rL2SjnGivQâ�¤Variable '$foo' is not declaredâ�¤at /tmp/rL2SjnGivQ:1â�¤------> [32mfoo; $foo = 42 }; package Boo { say $foo[33mâ��[31m };  # would work under P5 semantics, wh[0mâ�¤    expecting…»
15:26 camelia ..rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/DnbxLpjBKMâ�¤Variable '$foo' is not declaredâ�¤at /tmp/DnbxLpjBKM:1â�¤------> [32mfoo; $foo = 42 }; package Boo { say $foo[33mâ��[31m };  # would work under P5 semantics, wh[0mâ�¤    expecting an…»
15:26 TimToady r: package Boo { our $foo; $foo = 42 }; package Boo { say $OUR::foo };  # would work under P5 semantics, which assume "OUR::", unlike P6
15:26 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«42␤»
15:26 TimToady P5ers will carp unless we also assume OUR::
15:27 TimToady r: package Boo { $OUR::foo = 42 }; package Boo { say $OUR::foo };  # really more like this
15:27 camelia rakudo-parrot 55ff4f, rakudo-jvm 882e33: OUTPUT«42␤»
15:27 moritz TimToady: so, no lexical alias, straigt lookup in the symbol table?
15:27 TimToady assumes OUR:: on both ends
15:28 TimToady unless already declared lexical, eys
15:28 TimToady *yes
15:28 moritz ss/symbol table/HOW/
15:28 TimToady WHY
15:28 TimToady WHO, WHATEVER
15:28 colomon WHEREFORE
15:28 moritz erm, WHO
15:28 moritz yes
15:28 timotimo ah, there's a "run" branch
15:30 TimToady this interpretation of non-lexical variables has the, er, advantage of being largely orthogonal to lexical scoping, unlike the various autodeclare schemes, which interact in various weird ways
15:31 timotimo hm, i can't seem to --gen-nqp=run, i wonder why
15:31 * TimToady thinks package globals are much more straightforward than audodecls
15:31 Vendethiel joined #perl6
15:32 raiph joined #perl6
15:33 moritz timotimo: if your last copy of moarvm is too old, you need a 'make realclean' in MoarVM first
15:34 Vendethiel joined #perl6
15:35 TimToady diakopter: sorry I wasn't very clear before my first cup of coffee--did you figure out what I was trying to say?  :)
15:36 diakopter hm, I didn't perceive that you were answering my question, so no
15:37 diakopter TimToady: if today is an opinionated one, maybe it's a good day to add a billion github issues to perl6/spec
15:38 moritz s/eval/EVAL/ !
15:38 diakopter or does opinionated not necessarily correlate with indefatigable?
15:38 timotimo moritz: sorry. that was in rakudo, not moarvm
15:39 moritz timotimo: oh, I somehow read --gen-moar
15:39 timotimo :)
15:39 moritz timotimo: can you please nopaste command + output?
15:39 TimToady Well, it's true that I'm not very opinionated when I'm asleep.
15:39 * moritz is usually very opinionated which side of the bed to sleep on
15:40 timotimo well, i run perl Configure.pl --backends=parrot,jvm --gen-nqp=run and it checks out a different commit
15:40 diakopter moritz: I like to sleep on the top side of the bed
15:40 timotimo parrot,jvm rather
15:40 timotimo hm. now it works
15:40 moritz timotimo: does it check out the one from tools/build/NQP_REVISION?
15:40 timotimo perhaps because my nqp-p is now of the right revision
15:40 timotimo yes, it does
15:42 masak I don't think the specialness of &eval rises to the level of, say, BEGIN or MONKEY_PATCHING. if I have a vote, I vote for keeping it as lower-case.
15:42 moritz masak: then you don't have a vote :-)
15:42 masak heh.
15:42 TimToady BEGIN is uppercase because it's a phaser, and runs at a weird time
15:42 telex joined #perl6
15:43 TimToady eval doesn't really run at a weird time, only what's inside it :)
15:43 flussence .oO( maybe it should be small-capitals )
15:43 dalek rakudo/nom: c71db36 | moritz++ | Configure.pl:
15:43 dalek rakudo/nom: [Configure.pl] try to fix --gen-nqp=branch
15:43 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c71db36072
15:44 moritz timotimo: please pull and try again
15:45 moritz uhm, not sure if that patch as a good one
15:45 moritz let me think a bit more about that
15:45 * diakopter stops the presses
15:48 timotimo i'm not sure how to reproduce the error case, tbh
15:48 timotimo it was one that also caused "wrong or missing dependency of ...QRegex.nqp"
15:51 TimToady well, even the insides of eval run at the normal time, they're just compiled at a weird time :)
15:51 dalek rakudo/nom: 6f5ceb8 | moritz++ | / (3 files):
15:51 dalek rakudo/nom: [Configure.pl] fix previus "fix"
15:51 dalek rakudo/nom:
15:51 dalek rakudo/nom: do not discard the desired minimum version so early
15:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6f5ceb8bf4
15:51 moritz TimToady: so, everything inside the eval needs to be upper-cased? :-)
15:52 TimToady no, just the call to .PARSE :P
15:53 timotimo huh, shouldn't this give me some kind of output?
15:53 timotimo Compiling lib/File/Find.pm to pir
15:53 timotimo build stage failed for File::Find: Failed building lib/File/Find.pm
15:54 timotimo maybe panda just can't handle the Proc::Status objects properly?
15:55 tadzik possibly
15:55 tadzik I should do something about panda error reporting
15:55 tadzik it sometimes tries to make them too user-friendly and then they don't tell anything
15:55 timotimo yes, indeed
15:56 timotimo it has shell "foo bar" and fail "failed building"
15:56 tadzik I think I'd rather have it the other way around
15:56 tadzik yeah, that's a bit bad
15:56 timotimo :)
15:56 tadzik I'll have tuits soon, I'll give it some love
15:56 timotimo it used to work, so how do i fix this properly?
15:56 tadzik change it to 'or'? :D
15:56 tadzik now, that'd be shotgun coding
15:56 timotimo haha
15:56 timotimo yes, i've done that. i mean in the broader sense
15:57 timotimo i guess i'll wait for run to be merged into both masters and then push the "or" change upstream
15:57 timotimo i think i have a panda commit bit and i think i could fix all the usages of shell and run to accept the new Proc::Status objects
15:57 tadzik if you do, please tag the previous panda revision as 2010.11
15:57 tadzik erm, 2010.10
15:57 moritz we're not that far in the future yet :-)
15:58 tadzik gah! 2013.10
15:58 tadzik you know what I mean :P
15:59 timotimo :)
15:59 timotimo All tests successful. test stage failed for File::Find: Tests failed
15:59 timotimo :P
16:00 tadzik wat :D
16:00 tadzik then maybe it's not "or"
16:00 tadzik maybe File::Find is indeed broken
16:01 timotimo no, or is correct
16:01 timotimo it was "and" again, this time in the Tester instead of the Builder
16:01 tadzik ah
16:02 timotimo curiously the fetcher still has that and and didn't seem to b0rk
16:02 timotimo probably because it didn't have to git clone
16:04 markov left #perl6
16:05 timotimo and with the run changes, perl6-bench runs again :3
16:05 timotimo i'm happy
16:05 timotimo FROGGS++
16:05 jnthn FROGGS++
16:05 masak FROGGS++
16:07 timotimo now i'll verify that my changed components.json are correct to build all the thing
16:07 timotimo all the things
16:07 timotimo and then i have to fix another file to change how the things are run and it should be good to push :)
16:15 brrt left #perl6
16:20 rurban joined #perl6
16:31 darutoko joined #perl6
16:41 spider-mario joined #perl6
16:52 jnap joined #perl6
16:55 xinming joined #perl6
17:01 sqirrel joined #perl6
17:01 raiph joined #perl6
17:02 sqirrel joined #perl6
17:20 rurban joined #perl6
17:21 [Sno] joined #perl6
17:27 ajr joined #perl6
17:29 masak a really nice blog post about the type model of JavaScript: http://vijayan.ca/blog/2012/02/21/javascript-type-model/
17:35 masak ...and this is a kind of follow-on, in literal-programming code: https://github.com/stevekwan/experiments/blob/master/javascript/object-vs-function.html
17:40 moritz I like the circular relation between Object and Function
17:41 masak yes, very MOP-y.
17:58 FROGGS timotimo: awesome! that is the best test I could imagine!
18:01 denis_boyun joined #perl6
18:05 dalek nqp: 54f6198 | (Tobias Leich)++ | src/vm/parrot/ (2 files):
18:05 dalek nqp: implemented our own nqp::spawn()
18:05 dalek nqp: review: https://github.com/perl6/nqp/commit/54f619846f
18:06 lizmat joined #perl6
18:06 lizmat at the AmsterdamX meeting, seeing Flavio Glock giving a presenation about Perlito
18:06 dalek rakudo/nom: ea5c22f | (Tobias Leich)++ | src/core/ (2 files):
18:06 dalek rakudo/nom: use nqp::spawn()
18:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ea5c22fa5a
18:06 dalek rakudo/nom: 0eda3d3 | (Tobias Leich)++ | src/core/ (2 files):
18:06 dalek rakudo/nom: Merge branch 'run' of github.com:rakudo/rakudo into nom
18:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0eda3d387d
18:06 dalek rakudo/nom: c27c7db | (Tobias Leich)++ | tools/build/NQP_REVISION:
18:06 dalek rakudo/nom: bump nqp revision (nqp::spawn)
18:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c27c7db68b
18:08 dalek roast: 3c43ace | (Tobias Leich)++ | packages/Test/Util.pm:
18:08 dalek roast: bring in line with rakudo's run()/shell() changes
18:08 dalek roast:
18:08 dalek roast: This should still work on niecza and pugs.
18:08 dalek roast: review: https://github.com/perl6/roast/commit/3c43ace358
18:09 colomon joined #perl6
18:09 xinming joined #perl6
18:21 rurban joined #perl6
18:27 TimToady masak: but it looks like he never wrote the third article...
18:28 TimToady "Function is the only given metatype in the system, but you can’t really do much with it. It sits there elegantly, being elegant."
18:30 FROGGS they should have called it Kitty instead
18:31 FROGGS (or Minka)
18:35 stevan_ joined #perl6
18:36 stevan__ joined #perl6
18:57 lizmat joined #perl6
18:59 colomon nothing quite as disturbing as discovering you had a big piece of the logic in your code EXACTLY BACKWARDS and the vast majority of the tests still passed…
19:00 timotimo colomon: like "shell foo bar and fail "failed the command!"
19:01 colomon timotimo: in this case I said "if there is no filename, write the file out with that name"
19:02 timotimo %)
19:03 colomon (with the implied "if there is a filename, don't write out the file")
19:03 timotimo oooooh, of course
19:03 FROGGS well, that saves disk space
19:03 timotimo yeah, i tend to not want to test things that touch the filesystem :|
19:03 timotimo FROGGS: files with no filename are super space-saving, eh? :)
19:04 colomon hard to delete if they actually get written.  ;)
19:05 colomon the sad thing is, I'm not very careful about cleaning up files generated by tests, so part of what was going on is the tests were trying to write a file and failing, and then reading a file of the same name written by something else.
19:07 colomon there are probably all sorts of lessons to be learned from this....
19:08 lizmat check the return value of say / print ?  :-)
19:08 ssutch joined #perl6
19:10 colomon lizmat: well, not as such.  It was my own file export routine that wasn't actually writing a file, and it returned SUCCESS even when it didn't.
19:11 nfg joined #perl6
19:12 lizmat but inside that export routine, was there a say/print that was executed and not checked ?
19:13 colomon nope
19:13 colomon the code to actually write the file to the disk was in an if-then with the logic of the if reversed.  So there never was an error of any sort.
19:14 colomon as far as the code is concerned, I mean.  obviously there was a huge error on my part.
19:15 Util #ps in 15m
19:18 nofks joined #perl6
19:19 fhelmberger joined #perl6
19:22 rurban joined #perl6
19:27 lue hell world o/
19:27 lue *hello
19:28 FROGGS hi lue :o)
19:28 lizmat lue /o
19:28 lue ✔ ⑫ upload tarball to rakudo.org (thanks to moritz++)
19:29 colomon lue++
19:31 lizmat lue++
19:31 moritz oh right, I was supposed to publlsh the annoucement on rakudo.org
19:31 lizmat AmsterdamX shutting down, socializing and decommiute&
19:35 lue aw shucks, you guys :)
19:37 moritz http://rakudo.org/2013/10/29/rakudo-star-2013-10-released/
19:37 moritz lue++
19:43 Util lue++
19:43 jnthn lue++
19:43 lue (mails sent; just Wikipedia left (manual moderation of the parrot-lists announcement may be required))
19:50 lue moritz: should it be my name or yours on the rakudo.org citation?
19:51 moritz lue: it should, but I have no idea how to make that happen with wordpress :(
19:52 lue moritz: I meant the wiki citation on the Rakudo page. I'll put my name there then :)
19:52 moritz lue: yes, do that
19:53 lue ✔ ⑬ Publicize release
19:55 dalek rakudo/moar-support: a1b98b0 | jonathan++ | src/vm/moar/ (2 files):
19:55 dalek rakudo/moar-support: Stub p6store.
19:55 dalek rakudo/moar-support: review: https://github.com/rakudo/rakudo/commit/a1b98b093c
19:56 jnthn Hm. Seems we now successfully make it into the first BEGIN block of CORE.setting, and then attempt the trait_mod:<is> call that it makes, and fail inside of there :)
20:00 xenoterracide joined #perl6
20:00 dalek star: bcd881c | lue++ | tools/star/release-guide.pod:
20:00 dalek star: Add name to release guide [RG 14], some fixes.
20:00 dalek star:
20:00 dalek star: Aside from my name, I decided to PODify the sublist in 13.
20:00 dalek star: review: https://github.com/rakudo/star/commit/bcd881cd17
20:00 lue ✔ ⑭ Update release guide with name.
20:01 lue ✔ ⑮ Celebrate the end! \o/ (in progress; considered done)
20:02 lue <== STAR RELEASE MODE DE-ACTIVATED
20:02 moritz lue.eor
20:04 TimToady lue++
20:05 TimToady (for finishing more things than I've finished lately :)
20:06 lue :)
20:06 moritz also, tools/build/create-moar-runner.pl doesn't exist
20:08 uvtc joined #perl6
20:09 uvtc Hi #perl6. Anyone have a rough idea on when Rakudo will be running on Moar?
20:10 diakopter uvtc: eh, before the end of the year I'd bet
20:10 moritz this year, mostl likely
20:10 uvtc Oooh. That's soon. Thanks.
20:10 uvtc Will it be included with an R* release?
20:11 diakopter uvtc: well, the real question is what in particular you're expecting/hoping from that rakudo... any particular features you're expecting?
20:11 moritz uvtc: that depends on a bit more than just rakudo, like having a native call interface
20:11 uvtc Just the basic language features, to try Perl 6 out again.
20:12 diakopter uvtc: it disappointed in the past? (if so, how in particular?) :)
20:12 uvtc I pop in every few months or so and see if any tutorials are around, and if I can figure out the difference between lists and parcels. :)
20:13 diakopter uvtc: I gave up on that long ago
20:13 uvtc Heh. Maybe early on I accidentally ascribed more importance to it than I should have. :)
20:13 diakopter I'm like, so what's the parcel sigil
20:14 jnthn argh, why does "make spectest" with Rakudo JVM re-build stuff? :(
20:14 TimToady parcels are just lazy tuples :)
20:15 * lue might do the release thing again, assuming it doesn't take days next time :)
20:16 TimToady we just won't change anything between now and then, so it'll be easy
20:16 jnthn we...we won't? :P
20:17 dalek nqp: 292dfa6 | moritz++ | tools/build/gen-moar-runner.pl:
20:17 dalek nqp: beautify tools/build/gen-moar-runner.pl
20:17 dalek nqp:
20:17 dalek nqp: I do not like overdose of backslashes
20:17 dalek nqp: review: https://github.com/perl6/nqp/commit/292dfa644a
20:17 pernatiy joined #perl6
20:18 uvtc diakopter, I'm currently using Clojure for hobby projects, but am not a fan of (A) slow start up time, and (B) asking friends to install stuff from Oracle to run my programs. So, I'm not too terribly interested in Rakudo on JVM. So, waiting for Rakudo+Moar. (Though I recall Rakudo + Parrot having very fast startup time.)
20:19 uvtc TimToady, are Parcels not-yet-realized Lists?
20:22 rurban joined #perl6
20:24 moritz http://doc.perl6.org/type/Parcel tries to explain what a Parcel is
20:24 uvtc lue, I like your release-stage-numbering. ① , ②, ③, ... (makes me want to hum "final countdown"). :)
20:25 lue :)
20:27 masak uvtc: except this was a count-up...
20:28 masak lue++
20:32 uvtc masak, Yeah. Actually, seeing them reversed for the Christmas release would be like watching the New Years Eve ball drop. :)
20:33 uvtc moritz, thanks for the link.
20:34 lue r: my $a = "①"; for ^25 { say $a; $a.=succ }
20:34 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«①␤②␤③␤④␤⑤␤⑥␤⑦␤⑧␤⑨␤⑩␤⑪␤⑫␤⑬␤⑭␤⑮␤⑯␤⑰␤⑱␤⑲␤⑳␤①①␤①②␤①③␤①④␤①⑤␤»
20:35 lue r: my $a = "①"; for ^25 { say $a; $a=$a.ord.succ.chr }
20:35 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«①␤②␤③␤④␤⑤␤⑥␤⑦␤⑧␤⑨␤⑩␤⑪␤⑫␤⑬␤⑭␤⑮␤⑯␤⑰␤⑱␤⑲␤⑳␤⑴␤⑵␤⑶␤⑷␤⑸␤»
20:35 uvtc lue, How would you count down instead of up?
20:35 lue r: say "⑳".ord; say "㉑".ord
20:35 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«9331␤12881␤»
20:35 lue no wonder 21..25 are in a different font to me :P
20:37 lue r: my $countdown = "㉕"; for ^25 { say $countdown; $countdown=$countdown.ord.pred.chr; $countdown = chr(9331) if $countdown eq chr(12880);}
20:37 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«㉕␤㉔␤㉓␤㉒␤㉑␤⑳␤⑲␤⑱␤⑰␤⑯␤⑮␤⑭␤⑬␤⑫␤⑪␤⑩␤⑨␤⑧␤⑦␤⑥␤⑤␤④␤③␤②␤①␤»
20:38 uvtc Neat. :) `pred` == "predecessor"? (and `succ` == "successor"?)
20:39 lue yep.
20:40 uvtc Nice. If there's one thing Perl 6 wins hands-down at, IMO, it's naming.
20:40 lue there's even a ⓪!
20:41 lue r: say "⓪".ord
20:41 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«9450␤»
20:41 moritz say "⓪".ord.base(16)
20:41 moritz p: say "⓪".ord.base(16)
20:41 camelia rakudo-parrot c27c7d: OUTPUT«24EA␤»
20:41 moritz p: say "⓪".ord.fmt: '%x'
20:41 camelia rakudo-parrot c27c7d: OUTPUT«24ea␤»
20:41 lue uvtc: also note that I had to do a bit of fiddling because Perl 6 knows to treat the "①" range as a vigesimal number system :)
20:41 moritz p: say "⓪".ord.fmt: '%X'
20:41 camelia rakudo-parrot c27c7d: OUTPUT«24EA␤»
20:42 FROGGS p: say "⓪".ord.fmt: '%#X'
20:42 camelia rakudo-parrot c27c7d: OUTPUT«0X24EA␤»
20:43 lue uvtc: whoops, not vigesimal, but base 19 (⑳++ becomes ①①, not ①⓪)
20:44 uvtc Weird. Can't find that circled 0 anywhere...
20:44 flussence that's weird, ①..⑩ work for me, then 11..20 show as missing font boxes, then 21+ show as doublewidth chars...
20:45 lue flussence: look at this:
20:45 lue r: my $a = "①"; for ^25 { say $a; $a=$a.ord.succ.chr }
20:45 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«①␤②␤③␤④␤⑤␤⑥␤⑦␤⑧␤⑨␤⑩␤⑪␤⑫␤⑬␤⑭␤⑮␤⑯␤⑰␤⑱␤⑲␤⑳␤⑴␤⑵␤⑶␤⑷␤⑸␤»
20:45 uvtc I see ① .. ⑳ as codepoints U+2460 .. U+2473.
20:45 uvtc Dunno where you're finding the others. :)
20:45 lue flussence: do you still see what you described?
20:45 flussence r: say ord '⑸'
20:45 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«9336␤»
20:45 geekosaur I get those and then I get (1) (2) ... except as chars
20:45 flussence it only shows up to 10 when you do that...
20:46 geekosaur (that is as single chars, not separate open-paren digit close-paren)
20:46 lue flussence: then your fonts aren't giving you 11..20 :(
20:46 flussence hm, I have fonts for the others but not in monospace :(
20:47 lue geekosaur: those last five at the end are the next codepoints in the sequence. ㉑..㊿ are in another part of Unicode all-together
20:48 lue r: my $a = "㉑"; for ^50 { say $a; $a=$a.ord.succ.chr }
20:48 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«㉑␤㉒␤㉓␤㉔␤㉕␤㉖␤㉗␤㉘␤㉙␤㉚␤㉛␤㉜␤㉝␤㉞␤㉟␤㉠␤㉡␤㉢␤㉣␤㉤␤㉥␤㉦␤㉧␤㉨␤㉩␤㉪␤㉫␤㉬␤㉭␤㉮␤㉯␤㉰␤㉱␤㉲␤㉳␤㉴␤㉵␤㉶␤㉷␤…»
20:48 flussence those all render fine using multiple fonts, which is even weirder :/
20:48 lue sorry, ㉑..㉟ are in another part. Where's 36?
20:49 masak ㉟ ought to be enough for anyone.
20:49 lue r: say "㉟".ord.fmt("%#X"); say "㊱".ord.fmt("%#X")
20:49 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«0X325F␤0X32B1␤»
20:50 lue r: my $a = "㊱"; for ^30 { say $a; $a=$a.ord.succ.chr }
20:50 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«㊱␤㊲␤㊳␤㊴␤㊵␤㊶␤㊷␤㊸␤㊹␤㊺␤㊻␤㊼␤㊽␤㊾␤㊿␤㋀␤㋁␤㋂␤㋃␤㋄␤㋅␤㋆␤㋇␤㋈␤㋉␤㋊␤㋋␤㋌␤㋍␤㋎␤»
20:50 lue (there probably is a (51), but (50) is where my XCompose draws the line)
20:51 geekosaur mrrr. that is not what my font shows...
20:52 flussence I don't see a 51 nearby but I wouldn't be surprised if it went up to 99
20:52 lue I'm guessing it'll go up to 99 in a future revision of Unicode :)
20:52 lue geekosaur: what's your font not showing?
20:52 geekosaur https://www.dropbox.com/s/79g42wdhx1mop1c/Screenshot%202013-10-29%2016.52.31.png
20:53 lue r: say "\c[FACE SAVOURING DELICIOUS FOOD]" # :D
20:53 camelia rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/f7s5CsWKG4�Unrecognized character name FACE SAVOURING DELICIOUS FOOD�at /tmp/f7s5CsWKG4:1�------> [32msay "\c[FACE SAVOURING DELICIOUS FOOD[33m�[31m]" # :D[0m�»
20:53 camelia ..rakudo-parrot c27c7d: OUTPUT«😋␤»
20:53 hoelzro fglock++ # perlito talk at AmsterdamX
20:54 hoelzro I was going over the notes on the MOP from the NQP internals talk; are the MOP objects meant to be exposed to the Perl 6 runtime so that users can create their own MOP objects that implement interesting behaviors?
20:54 lue geekosaur: that first series of boxes would be 36..50. The three at the end are scientific symbols of some sort (in order, "Hg", "erg", "eV")
20:54 hoelzro or is that something that will stay in NQP land?
20:55 moritz hoelzro: there is a rakudo MOP and an NQP MOP. The Rakudo MOP is certainly exposed to the user
20:56 hoelzro ok
20:56 hoelzro I'm just trying to figure out how to create a custom metaobject that does something special for type checking
20:56 jnthn There are already some Perl 6 modules that do custom MOP stuff.
20:57 * hoelzro adds TODO list item: "Read more Perl 6 code"
20:57 jnthn hoelzro: type_check and accepts_type
20:57 hoelzro right, I just don't know how to "register" the object with the runtime
20:57 stevan_ joined #perl6
20:57 hoelzro I suppose that it's probably simpler than that?
20:58 masak today's autopun: https://twitter.com/quietfanatic/status/395269592227909632
20:58 hoelzro I should just create a regular class, and create types with it?
20:59 xinming joined #perl6
21:01 mtj_- joined #perl6
21:02 lue masak: I still would really like it if autopun was defined as a "play on situations", just so the defintion of autopun was a pun on the definition of pun :P
21:03 lue .oO(And would that be an autopun?)
21:03 [Sno]_ joined #perl6
21:03 * moritz think it's an autounpun
21:05 uvtc What's an autopun? Closest I get is wikipedia and an autopen. :)
21:05 raiph joined #perl6
21:05 masak uvtc: http://masak.org/carl/gpw-2012-autopuns/talk.pdf
21:05 jnthn An autopen is what you write an autopun with.
21:06 masak :P
21:06 masak lue: "play on situations" isn't such a bad first approximation. but autopuns definitely have a language aspect.
21:06 bluescreen100 joined #perl6
21:06 * moritz recalls that presentation with pleasure
21:07 * masak recalls the plesentation with pressure
21:07 bluescreen__ joined #perl6
21:07 masak pleasantation*, d'oh
21:07 diakopter repleasantation
21:09 masak with my luck, my one lasting legacy will be autopuns.
21:10 jnthn :D
21:11 uvtc masak: that was a great talk, where did my autopen go, refrigerator.
21:11 uvtc :)
21:12 moritz masak: wouldn't be a bad legacy
21:12 moritz compared to, say, Hitler :-)
21:12 * diakopter replies to masak's non-pun
21:12 diakopter with triple-absurdity
21:14 ssutch joined #perl6
21:14 DarthGandalf joined #perl6
21:14 robinsmidsrod joined #perl6
21:14 ggoebel joined #perl6
21:14 tadzik joined #perl6
21:14 BooK joined #perl6
21:14 cxreg joined #perl6
21:14 szbalint joined #perl6
21:14 ingy joined #perl6
21:14 lue I tried to describe that as an autopun, but I was wrong.
21:14 masak moritz: I would never allow my legacy to be Hitler.
21:16 lue .oO(Poor Hilter, he never could get elected to British government.)
21:16 jnthn masak: I really can nazi that happening...
21:16 jnap joined #perl6
21:18 lue masak: Your legacy is pretty good at winning elections though :/
21:18 masak lue: autopuns are winning elections?
21:19 masak lue: "Winston Churchill" is not an autopun :)
21:19 lue General Betray-us^WPetrayus is, though :)
21:20 diakopter no, that's just a pun
21:20 masak what diakopter said :)
21:21 lue so would President Robert Trustmi be an autopun during his congressional trial?
21:22 diakopter it has to be an utterance
21:22 diakopter almost certainly intended
21:22 diakopter because being able to laugh with the writer/speaker is pretty necessary among friends
21:22 diakopter unless you like ridicule
21:23 diakopter "HAHAHA YOU FAIL, Failure.  way to autopun!"
21:23 rurban joined #perl6
21:23 diakopter .oO( "..but it was an intentional Freudian slip, not an autopun.." )
21:24 BenGoldberg joined #perl6
21:24 lue how 'bout automatic autopun, or autoautopun, or diautopun then? :)
21:25 diakopter lue: I'll send you a dollar if you can make one of those
21:25 masak my current definition of autopun is something like "bringing use and mention together deliberately for purposes of humor".
21:25 uvtc Off for dinner. Great to see all the Moar activity. Looking forward to trying out Ramoardo, Moarkudo, Rakumoar, ... whatever it's called. ;)
21:25 lue <lue> so would President Robert Trustmi be an autopun during his congressional trial? (Description of theroretical diautopun)
21:25 masak but note that the "bringing use and mention together" part is pretty vital.
21:26 lue masak: autoselfdemo then?
21:26 uvtc left #perl6
21:26 lue (but autopun is a cooler name)
21:27 masak yeah, "autoselfdemo" doesn't quite have that ring to it.
21:27 masak lue: <patient> Doctor, people have completely stopped paying attention to me... -- <doctor> Next!
21:27 diakopter anagrams for rakudo-moar:
21:27 diakopter u karma odor
21:28 masak :)
21:28 * lue wouldn't be surprised if masak means an alternate definition of "auto" and a archaic definition of "pun" for the resultant word
21:28 lue door u, karma!
21:29 diakopter Our Am A Dork
21:29 dalek rakudo/moar-support: 95476c2 | moritz++ | tools/build/ (2 files):
21:29 dalek rakudo/moar-support: import and adapot gen-moar-runner.pl from nqp
21:29 dalek rakudo/moar-support:
21:29 dalek rakudo/moar-support: pretty pointless so far, because we do not get that far in the compilation.
21:29 dalek rakudo/moar-support: review: https://github.com/rakudo/rakudo/commit/95476c2754
21:30 lue masak: <patient> Doctor, people have completely stopped paying attention to me... -- <doctor> don't worry, we'll go somewhere nicer as soon as I stop the daleks.
21:30 * diakopter boggles at what "adapot" could mean
21:30 diakopter oh, the preceding import was clouding my imagination
21:31 moritz can't write straight commit messages anymore?
21:31 moritz time for sleep&
21:31 * lue still wants new yoleaux to be named cyberman for consistency
21:31 lue ♞ moritz o/
21:31 diakopter Ok Maraudor
21:32 masak 'night, moritz. dream of specially imported adapots.
21:32 diakopter Ur A Dark Moo
21:32 * masak .oO( "addapot!" is what you affectionately say to your pot after it fetches that stick )
21:32 lue adapot is where you put your Ada code :P
21:33 masak well, remember that Ada was a gambler.
21:33 masak so, an Ada-pot would be...
21:34 diakopter moving on to rakudo-on-moar
21:34 diakopter Our Random Oak
21:35 diakopter Am A Round Rook
21:35 lue .oO("GNU Day Casino & Spa! Stunning views of the C++! Visit our museum of priceless Rubys and Perls! Compete in many of our Adapots!")
21:35 * lue &
21:35 masak lue++
21:37 diakopter Rank Odor Moar
21:38 lue masak: what for?
21:39 diakopter jnthn: you'll like this one..
21:40 diakopter Do Mu Or Anorak
21:40 jnthn diakopter: It stinks :P
21:41 * jnthn does the anorak
21:41 diakopter omfg
21:42 jnthn :P
21:42 diakopter Dr No Am Our Oak
21:42 jnthn It's useful for keeping the rain off :P
21:43 diakopter jnthn: oh; I thought there was slang for obsessed on esoterica
21:43 masak lue: that thought bubble :)
21:44 masak diakopter: "anorak" is slang for "obsessed on esoterica"?
21:44 diakopter this online dictionary might have been lying to me o_O
21:44 masak I'm not doubting you, I just wanted to be sure :)
21:45 segomos i'm doubtful
21:45 masak *Informal* a socially inept person with a hobby considered by most people to be boring
21:45 masak well, I'll be.
21:45 segomos re: amateur etymologist
21:45 diakopter :P
21:46 segomos :-)
21:46 masak touché.
21:46 * masak goes to hide under his big water-proof coat
21:46 segomos i guess that isn't really etymology, though
21:46 diakopter hey, I'm not amateur, I just cargo cult phrases like cargo cult
21:46 segomos haha
21:47 diakopter they say cargo culting is the highest form of flattening
21:48 masak I heard it was the highest form of flappery.
21:49 diakopter well, frippery, at least
21:49 segomos cargo cult programming wikipedia page reads like 99% of webscale javascript programmers
21:49 * masak .oO( cargo culting is the most sincere form of Richard P. Feynman )
21:52 timotimo oh hey
21:52 timotimo i totally forgot that i ran some benchmarks
21:52 timotimo so there you go: http://t.h8.lv/p6bench/all_backends.html
21:53 timotimo huh, seems like no parrot benchmarks were run, that's odd
21:53 masak 'night, #perl6
21:53 Mouq joined #perl6
21:53 diakopter what kind of crockery is this!?
21:54 * FROGGS .oO( What kind of sauce is this? )
21:54 diakopter saucier?
21:54 Mouq moritz: did you mean to commit your work with undeclared variables in 6f5ceb? »[Configure.pl] fix previus "fix" «
21:54 Mouq (rakudo)
21:57 FROGGS ohh, that does not seem right
21:59 felipe joined #perl6
22:04 Mouq r: 1
22:04 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: ( no output )
22:04 Mouq r: $abcd = 1234
22:04 camelia rakudo-jvm 882e33: OUTPUT«Cannot modify an immutable value␤  in block  at /tmp/zGytaL9fVL:1␤  in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤  in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤  in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196␤  in any command_eval at…»
22:04 camelia ..rakudo-parrot c27c7d: OUTPUT«Cannot modify an immutable value␤  in block  at /tmp/y6bnnfUhe1:1␤  in any  at /tmp/y6bnnfUhe1:1␤  in any  at gen/parrot/stage2/NQPHLL.nqp:1146␤  in any eval at gen/parrot/stage2/NQPHLL.nqp:1133␤  in any evalfiles at gen/parrot/stage2/NQPHLL.nq…»
22:07 Mouq It doesn't even look like we keep track of whether we're in a strict setting yet. Would that just be adding a $*NOSTRICT var or some such?
22:07 Mouq std: v6; $a = 1; say $a
22:07 camelia std 8adbc60: OUTPUT«[31m===[0mSORRY![31m===[0m�Variable $a is not predeclared at /tmp/biureBRib7 line 1:�------> [32mv6; [33m�[31m$a = 1; say $a[0m�Variable $a is not predeclared at /tmp/biureBRib7 line 1:�------> [32mv6; $a = 1; say [33m�[31m$a[0m�Check fa…»
22:17 FROGGS Mouq: there is no switch implemented
22:17 TimToady STD doesn't attempt 'no strict'
22:17 FROGGS (yet)
22:19 colomon joined #perl6
22:24 rurban joined #perl6
22:24 TimToady I'm thinking we should probably break the idea that ① .. ⑳ is a cycle, and recognize that some ranges are open-ended and Unicode might add more of them someday
22:24 TimToady especially since that's what happened in this case
22:24 timotimo http://t.h8.lv/p6bench/all_backends.html - now also has some parrot lines ... not sure about some of them ... something might have gone wrong
22:25 BenGoldberg r: say "adapot".comb.sort.join
22:25 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«aadopt␤»
22:25 timotimo at least it does hello and zero very, very fast
22:27 BenGoldberg r: my $a ($b) = 1; say $b
22:27 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«(Mu)␤»
22:27 BenGoldberg r: my $a ($b) = 1; say $b; say $c
22:27 camelia rakudo-jvm 882e33: OUTPUT«(Mu)␤No such method 'gist' for invocant of type 'NQPMu'␤  in block  at /tmp/Xee5OuXavy:1␤  in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤  in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤  in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196…»
22:27 camelia ..rakudo-parrot c27c7d: OUTPUT«(Mu)␤No such method 'gist' for invocant of type 'NQPMu'␤  in sub say at gen/parrot/CORE.setting:12856␤  in block  at /tmp/olu_wHe17F:1␤  in any  at /tmp/olu_wHe17F:1␤  in any  at gen/parrot/stage2/NQPHLL.nqp:1146␤  in any eval at gen/parrot/s…»
22:28 BenGoldberg r: my $a ($b) = 1; say $b; ++$b
22:28 camelia rakudo-jvm 882e33: OUTPUT«(Mu)␤java.lang.NullPointerException␤  in block  at /tmp/xLO1SZz_eJ:1␤  in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤  in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤  in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196␤  in any command_ev…»
22:28 camelia ..rakudo-parrot c27c7d: OUTPUT«(Mu)␤Cannot modify an immutable value␤  in sub prefix:<++> at gen/parrot/CORE.setting:1733␤  in sub prefix:<++> at gen/parrot/CORE.setting:1731␤  in block  at /tmp/HspbquR4Dn:1␤  in any  at /tmp/HspbquR4Dn:1␤  in any  at gen/parrot/stage2/NQP…»
22:29 Mouq r: my $r = rx/\w+(\d)\w*/; say "abcd89asdf" ~~ /<$r>/
22:29 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«「abcd89asdf」␤␤»
22:29 Mouq n: my $r = rx/\w+(\d)\w*/; say "abcd89asdf" ~~ /<$r>/
22:29 camelia niecza v24-98-g473bd20: OUTPUT«「abcd89asdf」␤␤»
22:29 BenGoldberg Surely both rakudo should say "Cannot modify an immutale value" when I do that?
22:29 BenGoldberg r: my $a ($b) = 1; say $b; $b = 1;
22:29 lue TimToady: I'm not sure ⑳ leads to ㉑... let me check.
22:29 camelia rakudo-jvm 882e33: OUTPUT«(Mu)␤java.lang.NullPointerException␤  in block  at /tmp/5UW1qT75Sa:1␤  in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤  in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤  in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196␤  in any command_ev…»
22:29 camelia ..rakudo-parrot c27c7d: OUTPUT«(signal SEGV)(Mu)␤»
22:30 lue ⑳: U+2473 CIRCLED NUMBER TWENTY
22:30 lue ㉑: U+3251 CIRCLED NUMBER TWENTY ONE
22:31 lue ㉟: U+325F CIRCLED NUMBER THIRTY FIVE
22:31 lue ㊱: U+32B1 CIRCLED NUMBER THIRTY SIX (turns out the pockets of circled numbers do connect)
22:31 TimToady well, the question is whether .succ should do that for you
22:32 lue does unicode define .succ-like things?
22:32 * TimToady doesn't recall seeing any such
22:32 TimToady but there's a lot of stuff there I've never gotten around to reading
22:33 TimToady obviously chaining 20 to 21 would be much more useful to the programmer, whether or not Unicode supports it directly
22:33 Mouq TimToady: $r = rx/…/; Should /<$r>/ retain grouping information? There's no way to access the '(\d+)'
22:33 BenGoldberg As far as I can recall, unicode defines groups of things
22:33 lue r: say "①".pred; # ideally should be ⓪
22:33 camelia rakudo-jvm 882e33: OUTPUT«Decrement out of range␤  in block  at /tmp/B7aOymziA5:1␤  in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤  in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤  in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196␤  in any command_eval at src/Perl6…»
22:33 camelia ..rakudo-parrot c27c7d: OUTPUT«Decrement out of range␤  in method gist at gen/parrot/CORE.setting:11956␤  in method gist at gen/parrot/CORE.setting:1014␤  in sub say at gen/parrot/CORE.setting:12856␤  in block  at /tmp/CqqERascT1:1␤  in any  at /tmp/CqqERascT1:1␤  in any  …»
22:34 Mouq Actually, why is that matching the whole thing? I only put (\d)
22:34 BenGoldberg According to wikipedia:
22:34 BenGoldberg The standard consists of a set of code charts for visual reference, an encoding method and set of standard character encodings, a set of reference data computer files, and a number of related items, such as character properties, rules for normalization, decomposition, collation, rendering, and bidirectional display order
22:34 TimToady the subrule matches the whole thing
22:35 Mouq r: my $r = rx/<-[\d]>+(\d+)/; say "abcd89asdf" ~~ /<$r>/
22:35 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«「abcd89」␤␤»
22:35 Mouq n: my $r = rx/<-[\d]>+(\d+)/; say "abcd89asdf" ~~ /<$r>/
22:35 camelia niecza v24-98-g473bd20: OUTPUT«「abcd89」␤␤»
22:35 TimToady r: my $r = rx/\w+<(\d)>\w*/; say "abcd89asdf" ~~ /<$r>/
22:35 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«「abcd89asdf」␤␤»
22:35 Mouq I didn't realize \w matched 0..9.
22:36 TimToady and _
22:36 lue TimToady: supporting non-western-arabic numerals is weird. Perhaps we should refuse succ/pred on things that can't be literal digits in P6 :)
22:36 TimToady r: my $r = rx/\w+(\d)\w*/; say "abcd89asdf" ~~ /<sub=$r>/
22:36 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«「abcd89asdf」␤ sub => 「abcd89asdf」␤  0 => 「9」␤␤»
22:36 Mouq :D
22:37 TimToady lue: perhaps we should allow them as literal digits :)
22:37 * TimToady is always more interesting in telling people what they can do than what they can't
22:37 lue base-51 number system GO!
22:38 Mouq Still, TimToady, is that correct behavior?
22:38 TimToady Unicode distinguishes numerals that can function in base-10 from numerals that can't
22:38 TimToady is what correct?
22:38 lue r: say $_ for ⓪..^①⓪ # equivalent to ⓪..㊿
22:38 camelia rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/m4SMH3SCEZâ�¤Confusedâ�¤at /tmp/m4SMH3SCEZ:1â�¤------> [32msay $_ for [33mâ��[31m⓪..^①⓪ # equivalent to ⓪..㊿[0mâ�¤    expecting any of:â�¤        postfixâ�¤        statement endâ�¤     …»
22:38 camelia ..rakudo-parrot c27c7d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/SjUSDBa_wdâ�¤Confusedâ�¤at /tmp/SjUSDBa_wd:1â�¤------> [32msay $_ for [33mâ��[31m⓪..^①⓪ # equivalent to ⓪..㊿[0mâ�¤    expecting any of:â�¤        postfixâ�¤        statement endâ�¤  â€¦Â»
22:40 Mouq Not capturing with just <$r>
22:40 TimToady yes, that's absolutely correct, relatively speaking
22:41 lue How's about "You can use any literal numeral system in Perl 6. The internal storage format (and default output format) is base-10 'arabic numerals'. Number ranges with no clear bound (e.g. the circled numbers ①, ②, etc.) are not recommended for general use, as Unicode may change the largest single-digit value at any time." for starters?
22:41 Mouq Huh. 'k
22:41 * lue gears up the gist machine
22:42 * timotimo is no longer sure why he even started up the benchmarks
22:42 timotimo but it seems to work all right
22:45 TimToady S05:1412 explains that leading alphabetic inside <> is what enables capturing; the <foo=...> is just a variant on that, but still starts alphabetic
22:45 synopsebot Link: http://perlcabal.org/syn/S05.html#line_1412
22:47 Mouq OK
22:48 TimToady in fact, <foo> and <.foo> are really the same thing, since the first is also a method call; the only purpose of the '.' is to turn of capture explicitly
22:48 TimToady *turn off
22:49 BenGoldberg joined #perl6
22:55 dalek perl6-bench: e53541a | (Timo Paulssen)++ | nqp/richards:
22:55 dalek perl6-bench: added an implementation of the richards benchmark.
22:55 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/e53541af9b
22:55 dalek perl6-bench: 689120e | (Timo Paulssen)++ | compilers.pl:
22:55 dalek perl6-bench: --omg-optimize
22:55 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/689120e14c
22:55 dalek perl6-bench: 59fc0f8 | (Timo Paulssen)++ | bench:
22:55 dalek perl6-bench: replace deprecated use of Hash.delete
22:55 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/59fc0f8e71
22:55 dalek perl6-bench: d94d6e8 | (Timo Paulssen)++ | comp (2 files):
22:55 dalek perl6-bench: chase recent nqp&rakudo build tool improvements
22:55 dalek perl6-bench: review: https://github.com/japhb/perl6-bench/commit/d94d6e8ed2
22:55 timotimo i has makes a push!
22:57 jnthn timotimo++
22:59 timotimo oh, i can tag panda 2013.10 and then push some more changes :)
23:00 panchiniak joined #perl6
23:00 dalek panda: 9f2591b | (Timo Paulssen)++ | lib/Panda/ (3 files):
23:00 dalek panda: shell now returns a Proc::Status object that bools.
23:00 dalek panda: review: https://github.com/tadzik/panda/commit/9f2591b3b0
23:05 FROGGS joined #perl6
23:16 raiph joined #perl6
23:21 dalek specs: 521e009 | larry++ | S03-operators.pod:
23:21 dalek specs: no cycles on rangechars that Unicode might add to
23:21 dalek specs: review: https://github.com/perl6/specs/commit/521e009c82
23:22 [Coke] lue++ #star
23:24 xenoterracide joined #perl6
23:25 timotimo lue++
23:26 timotimo i hope we will find the easybto fix bugs before the next release rather than directly after it...
23:28 [Coke] rakudo.jvm daily test seems to be getting slower.
23:28 [Coke] (it's 7:30, and it's only on S02)
23:30 [Coke] ISTR it finishing by 530ish in the past.
23:30 timotimo hmm anything pathological?
23:31 [Coke] rant: having the entire classpath in the executable makes for tough htop using.
23:32 timotimo hehe
23:32 timotimo i can imagine
23:32 timotimo how can we do better?
23:32 [Coke] Yes, something pathological. Looks like 5 hours on one test file.
23:32 [Coke] S02-lexical-conventions/comments.rakudo.jvm
23:32 timotimo is there a take classpath from file flag?
23:33 [Coke] 5.5h, even.
23:33 timotimo that is bad in deed
23:33 timotimo I'll be at my computer in a quarter hour
23:33 [Coke] timotimo: there's %CLASSPATH%/$CLASSPATH.
23:34 timotimo that sounds like an option
23:34 * [Coke] kills it by hand.
23:34 timotimo you run only one test in parallel?
23:35 [Coke] yes.
23:35 [Coke] I'm a guest on the box, and memory is always a concern when running/building java stuff for rakudo
23:35 timotimo that explains
23:36 [Coke] though diakopter will no doubt tell me to go ahead
23:36 diakopter go ahead
23:36 [Coke] (it also helps with day to day comparisions of what changed)
23:36 [Coke] doesn't help that the eval server was crapping out so I'm running the test suite without it.
23:36 diakopter I ugpraded jdk since then I think
23:42 jnap1 joined #perl6
23:42 pdurbin joined #perl6
23:44 TimToady lue++ for breaking the cycle conjecture on rangechars :)
23:44 lue just the no-upper-limit series. Indic numerals e.g. should work as expected.
23:45 bluescreen100 joined #perl6
23:45 lue r: say "Ⅻ".succ
23:45 camelia rakudo-parrot c27c7d, rakudo-jvm 882e33: OUTPUT«ⅠⅠ␤»
23:46 lue (Also undo it for non-positionals, like roman numerals, please.)
23:46 lue and finally, a :wholecharset adverb (name can change clearly) for .succ/.pred on Strs, so that way I can forcibly go to the next codepoint.
23:47 TimToady adverbs are sometimes a design smell
23:48 TimToady github seems...busy...
23:48 pochi joined #perl6
23:49 timotimo it's complicated to fudgeandrun with a different perl6 than your first backend
23:49 diakopter nqp: say(nqp::chr(nqp::ordfirst("Ⅻ")+1))
23:49 camelia nqp-moarvm, nqp-jvm, nqp-parrot: OUTPUT«Ⅼ␤»
23:49 diakopter yay, I think
23:50 arnsholt_ joined #perl6
23:50 baest_ joined #perl6
23:50 TimToady yes, and that's ... semantics, but not .. semantics
23:50 TimToady .. translation to ... implies *.succ
23:50 timotimo pff. of course i can run that file that blew up for coke just fine locally
23:50 lue hey look: https://gist.github.com/lue/7224781
23:50 TimToady I've got a git push clarifying that, but it's hung up
23:50 lue (based on earlier talks of the ranges)
23:51 [Sno]_ joined #perl6
23:51 xinming joined #perl6
23:52 lue Sometimes you just want a .succ/.pred on a Str that doesn't char about being (graphically|semantically|linguistically) correct.
23:53 lue eh. *care
23:53 JimmyZ_ joined #perl6
23:53 * lue accidental pun :)
23:54 amkrankr1leuen joined #perl6
23:54 Woodi_ joined #perl6
23:54 dalek specs: 065a718 | larry++ | S03-operators.pod:
23:54 dalek specs: clarify that range->seq translation implies *.succ
23:54 dalek specs: review: https://github.com/perl6/specs/commit/065a718ced
23:54 TimToady there we go
23:55 TimToady you'll note that roman numerals are already considered non-carrying
23:56 lue The best thing for context-sensitive .succ/.pred would be for "㊿".succ eq "①" or "⓪", IMO (just to avoid redefinitions of ①⓪/①① on Unicode's part.)
23:56 timotimo in the new makefile system, how do i get a spectest with the evalserver?
23:57 eternaleye_ joined #perl6
23:57 TimToady that's just ('⓪' .. *) xx *
23:58 TimToady no need to build cycles in
23:58 * lue boggles at the idea of a NOT infinite-elem ..* list :)
23:59 dayangkun joined #perl6

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

Perl 6 | Reference Documentation | Rakudo