»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:03 BenGoldberg joined 00:05 rurban1 left 00:06 rurban1 joined, rurban1 left 00:08 thou left
Mouq m: ∅ 00:10
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/EFrtRZey8n␤Bogus statement␤at /tmp/EFrtRZey8n:1␤------> <BOL>⏏∅␤ expecting any of:␤ statement list␤ prefix or term␤ prefix or meta-prefix␤»
Mouq std: ∅
camelia std 0f2049c: OUTPUT«===SORRY!===␤Bogus statement at /tmp/gvyk70ZGrh line 1:␤------> <BOL>⏏∅␤Parse failed␤FAILED 00:01 122m␤»
Mouq is confused
00:17 Mouq left
BenGoldberg Totally bogus! :) 00:18
m: ∅.say 00:19
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/a7XqidXTED␤Bogus statement␤at /tmp/a7XqidXTED:1␤------> <BOL>⏏∅.say␤ expecting any of:␤ statement list␤ prefix or term␤ prefix or meta-pr…»
BenGoldberg m: say (∅)
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/hNkm3_e8i6␤Bogus statement␤at /tmp/hNkm3_e8i6:1␤------> say (⏏∅)␤ expecting any of:␤ semicolon list␤ prefix or term␤ prefix or meta-prefi…»
BenGoldberg m: say q∅bogus!∅
camelia rakudo-moar b20535: OUTPUT«bogus!␤»
00:20 atroxaper joined 00:21 ajr_ left
TimToady m: constant ∅ = set; say ∅ 00:22
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/xYaaK0ZhA4␤Missing initializer on constant declaration␤at /tmp/xYaaK0ZhA4:1␤------> constant ⏏∅ = set; say ∅␤ expecting any of:␤ statement list␤ …»
00:23 Psyche^ joined
TimToady m: constant term:<∅> = set; say ∅ 00:23
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/0Fv7nKlfNa␤Two terms in a row␤at /tmp/0Fv7nKlfNa:1␤------> constant term:<∅> = set; say ⏏∅␤ expecting any of:␤ argument list␤ prefix or term␤ …»
TimToady m: my \term:<∅> = set; say ∅
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/fb5Ud0qk3s␤Term definition requires an initializer␤at /tmp/fb5Ud0qk3s:1␤------> my \term⏏:<∅> = set; say ∅␤ expecting any of:␤ scoped declarator␤»
TimToady std: my \term:<∅> = set; say ∅ 00:24
camelia std 0f2049c: OUTPUT«===SORRY!===␤The 'set' listop may not be called without arguments (please use () or whitespace to clarify) at /tmp/crwVzpWW6Y line 1:␤------> my \term:<∅> = set⏏; say ∅␤Check failed␤FAILED 00:01 126m␤»
TimToady std: my \term:<∅> = set(); say ∅
camelia std 0f2049c: OUTPUT«ok 00:01 126m␤»
TimToady m: my \term:<∅> = set(); say ∅
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/0ffzozuPII␤Term definition requires an initializer␤at /tmp/0ffzozuPII:1␤------> my \term⏏:<∅> = set(); say ∅␤ expecting any of:␤ scoped declarator␤»
00:24 atroxaper left
TimToady std: constant term:<∅> = set(); say ∅ 00:24
camelia std 0f2049c: OUTPUT«ok 00:01 126m␤»
TimToady m: sub term:<∅> { set() }; say ∅ 00:25
camelia rakudo-moar b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/1a5r9xNym5␤Two terms in a row␤at /tmp/1a5r9xNym5:1␤------> sub term:<∅> { set() }; say ⏏∅␤ expecting any of:␤ argument list␤ prefix or term␤ …»
TimToady when did that stop working? 00:26
or contrariwise, why is it complaining about feeding a term to say?!? 00:27
00:28 skids left
TimToady m: sub term:<∅> { set() }; say 42 00:28
camelia rakudo-moar b20535: OUTPUT«42␤»
TimToady m: sub term:<es> { set() }; say es
camelia rakudo-moar b20535: OUTPUT«set()␤»
TimToady seems like a unicode feyl 00:29
p6: sub term:<∅> { set() }; say ∅ 00:30
camelia niecza v24-109-g48a8de3: OUTPUT«set()␤»
..rakudo-jvm b20535: OUTPUT«Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'gen/jvm/stage2/QRegex.nqp'␤ in (src/Perl6/Pod.nqp)␤ in (src/vm/jvm/ModuleLoader.nqp:78)␤ in load_module (src/vm/jvm/ModuleLoader.nqp:60)␤ in (src/Perl6/A…»
..rakudo-{parrot,moar} b20535: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Two terms in a row␤at /tmp/tmpfile:1␤------> sub term:<∅> { set() }; say ⏏∅␤ expecting any of:␤ argument list␤ prefix or term…»
TimToady m: sub term:<§> { set() }; say § 00:31
camelia rakudo-moar b20535: OUTPUT«set()␤»
TimToady hmmmmm
m: say '∅'.chars 00:32
camelia rakudo-moar b20535: OUTPUT«1␤»
ventica_desktop ur thinking possibly encoding issue? 00:36
TimToady for some reason the definition of ∅ is commented out
in src/core/set_operators.pm
was, but doesn't seem so
m: say '§' ~~ /\w/ 00:37
camelia rakudo-moar b20535: OUTPUT«Nil␤»
00:37 rurban left
geekosaur there was a time when rakudo's parser went insane with non-ascii in the setting, wasn't there? 00:38
TimToady why would § work but not ∅?
geekosaur (20x slower or something like that)
ventica_desktop maybe camelia is a liberal arts major
TimToady which is why the setting uses \x2205 instead
geekosaur ah
00:39 rurban joined
geekosaur I was wondering since I recall ∅ being around for a while, and wondered if someone commented it while trying to track down the slowness issue and forgot to uncomment, or something 00:39
TimToady the comment seems to indicate some other issue with ACCEPTS 00:43
00:44 ventica1 left 00:48 ventica joined
TimToady cxreg: re irclog.perlgeek.de/perl6/2014-07-14#i_9023077 I would point out that such a ruling would disallow the standard < or > comparison ops, and that regex also contain the unbalanced assertions <( and )>, nor do « and » need to come in matched pairs in either regex or hypers 00:53
(now only 9 days behind on the backlog...)
((if you guys would just quit doing stuff and talking about it, this would be a lot easier... :)) 00:57
00:58 wtw left, wtw joined
raydiak I *wish* I was only 9 days behind on the backlog :) 00:59
01:00 dayangkun joined, jack_rabbit joined 01:02 thou joined 01:03 raiph joined
raydiak hrm...and I'm having a heck of a time getting htmlify to run on the docs 01:05
raiph .tell timotimo gist.github.com/raiph/c1202f874c2477b09d1f done thru 21st, ie monday. (i think you should just do thru monday :) 01:07
yoleaux raiph: I'll pass your message to timotimo.
raiph raydiak: have you seen irclog.perlgeek.de/perl6/2014-07-07#i_8981246 ? 01:10
01:11 nbrown joined
raydiak raiph: no...wonder if it's related...my errors are different 01:11
01:11 figoe left 01:12 FROGGS_ joined
raiph raydiak: what are you seeing? 01:13
raydiak raiph: one gives me something quite mysterious: "Iteration past end of grapheme iterator"...the other just dies towards the end 01:15
2 different 64-bit linux machines
01:15 woosley left
raydiak ah, I just figured the one out...apparently the process needs more than 4 gigs :P 01:16
(the one that dies towards the end)
01:16 FROGGS__ left
raiph raydiak: did ya catch that jnthn did an overhaul of string handling on moar? 01:16
raydiak raiph: I've been gone for about...half a year
looks like I stopped in a couple times earlier this year, according to the log...but anyways, yeah, looks like I bettercatch up on news and such 01:22
raiph I'm really looking forward to 2014 advent calendar entries related to speed and imagining one comparing Pray speed and features as of Dec Nth 2013 with those as of Dec Nth 2014 would be perfect. :) 01:25
01:26 rindolf joined
raiph anyhow, gotta run, goodnight, great to see raydiak's bak 01:26
01:26 raiph left
raydiak that is an idea...thanks raiph, g'night! 01:26
rindolf Hi all. 01:27
raydiak hi rindolf
rindolf TimToady: how are you feeling?
TimToady I'm feeling fine; just can't do too much with my eyes. 01:30
wasn't allowed to read at all the first week 01:31
they'd really prefer me not to knock my retina loose again
and I'm not allowed to change altitude
since I have a gas bubble in my eye, perfluoro propane, in fact 01:32
my last bubble was sulfur hexafloride, so I'm not sure whether that's progress... 01:33
*fluor 01:34
well, two more fluorines, anyway, but trading sulfur for 3 carbons seems kinda mundane 01:35
TimToady wanders off to rest his eyes 01:40
colomon o/ 01:42
raydiak \o
01:44 jnap left 01:45 skids joined 01:47 klapperl joined 01:50 klapperl_ left 01:52 nbrown left 01:56 thou left
dalek c: 1e3415f | raydiak++ | template/search_template.js:
Auto-highlight first result in HTML search
01:57
01:57 silug left, figoe joined, perigrin joined 01:58 nbrown joined 01:59 perigrin left, nbrown_ joined 02:03 nbrown left 02:04 nbrown_ left, oJustDust joined
rindolf TimToady: bye. 02:05
raydiak: hi.
02:08 vendethiel left 02:09 noganex joined, silug joined 02:10 cognome joined 02:11 noganex_ left 02:13 oJustDust left 02:15 hoverboard joined 02:20 chenryn joined 02:21 atroxaper joined 02:23 dayangkun_ joined 02:25 nbrown joined 02:26 atroxaper left 02:27 dayangkun left 02:30 kaare_ joined 02:31 lustlife joined 02:33 nbrown left 02:41 dayangkun_ left 02:45 dayangkun joined 02:49 figoe left 02:53 figoe joined 03:08 rurban1 joined 03:09 rurban2 joined 03:12 rurban1 left
dalek ast/S26-WHY: 042b832 | (Rob Hoelz)++ | S26-documentation/multiline-leading.t:
Fix up multi-line leading decl comment test
04:03
ast/S26-WHY: 94c9408 | (Rob Hoelz)++ | S26-documentation/multiline-trailing.t:
Start on multi-line trailing decl comment test
ast/S26-WHY: 2429965 | (Rob Hoelz)++ | S26-documentation/multiline-leading.t:
Test nested definitions for multiline leading
ast/S26-WHY: 4fa875e | (Rob Hoelz)++ | S26-documentation/why-leading.t:
Make sure we don't have docs when we don't expect them
ast/S26-WHY: f6b14c5 | (Rob Hoelz)++ | S26-TODO:
More plans
04:05 bjz left 04:11 rurban2 left 04:18 atroxaper joined 04:19 BenGoldberg left 04:20 PotatoGim left, anaeem1_ joined, Alina-malina left 04:23 chenryn left 04:25 hoverboard left 04:31 Alina-malina joined 04:32 chenryn joined 04:35 Alina-malina left 04:36 bcode left 04:37 Alina-malina joined 04:55 [Sno] left 04:56 skids left 04:58 atroxaper left 04:59 lue left 05:07 DrSeki is now known as FartDemon 05:10 bcode joined 05:12 rurban1 joined 05:13 jack_rabbit left 05:14 lue joined 05:16 rurban1 left 05:21 FartDemon is now known as aoseki 05:27 gfldex joined 05:34 dayangkun left 05:36 Alina-malina left, Alina-malina joined 05:37 rurban1 joined, Alina-malina left 05:38 Alina-malina joined, gfldex left 05:39 dayangkun joined 05:41 rurban1 left 05:58 atroxaper joined 06:03 kaleem joined, atroxaper left
dalek rl6-bench: bc258b6 | (Geoffrey Broadwell)++ | / (3 files):
Add --skip-incomplete option for analyze

Skips test results that have data for some compilers and not others when computing summary scores; this allows comparison of compilers that didn't all complete every test successfully.
This option is defaulted on by `bench compare` and `bench history`.
06:08
06:08 rurban1 joined 06:12 rurban1 left 06:13 denis_boyun_ joined
timotimo ah, that'll also make nqp/rakudo comparisons interesting 06:18
yoleaux 01:07Z <raiph> timotimo: gist.github.com/raiph/c1202f874c2477b09d1f done thru 21st, ie monday. (i think you should just do thru monday :)
sergot carlin: I'm surprised then :) 06:28
hi #perl6 o/
06:44 zakharyas joined 06:51 salv0 left 06:53 lizmat joined 06:57 [Sno] joined 07:00 darutoko joined 07:02 woolfy joined
japhb timotimo: Yup, that's part of the reasoning for that change. When I ran a big all-of-2014 bench run, and then found NQP was -- for every entry in the historical comparison, I decided to fix that. :-) 07:06
timotimo: Are you still doing the perl6 summaries?
07:09 rurban1 joined 07:13 Ven joined, rurban1 left 07:18 Akagi201 joined 07:25 Alina-malina left 07:27 Alina-malina joined 07:39 atroxaper joined 07:45 woolfy left 07:46 woolfy joined, SamuraiJack__ joined 07:47 airen joined 07:48 atroxaper left 07:53 SamuraiJack__ left 07:57 lizmat left, woolfy left
Ven m: sub f(*%f) { say %f.perl }; f('a' => 1) 08:02
camelia rakudo-moar 1b2502: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤ in sub f at /tmp/pK8uk2C46n:1␤ in block at /tmp/pK8uk2C46n:1␤␤»
08:02 rindolf left
Ven m: sub f(%f) { say %f.perl }; f('a' => 1) 08:02
camelia rakudo-moar 1b2502: OUTPUT«"a" => 1␤»
08:02 Alina-malina left 08:05 telex left 08:06 Alina-malina joined, telex joined 08:10 rurban1 joined 08:12 rurban2 joined 08:14 rurban1 left 08:15 dmol joined, Alina-malina left 08:16 rurban2 left 08:24 xinming_ joined, bjz_ joined 08:27 xinming left 08:40 chenryn left 08:41 chenryn joined 08:42 bjz_ left 08:45 fhelmberger joined 08:48 dakkar joined, atroxaper joined 08:53 atroxaper left
masak good antenoon, #perl6 08:56
08:57 dayangkun left 08:58 Alina-malina joined, dayangkun joined
moritz good masaknoon, ante 08:59
masak and a good masaknoon it is!
09:00 lizmat joined
masak lizmat: is OSCON still going on? how is/was it? 09:00
09:00 lizmat left
nwc10 masak: internet says that today is the last day of OSCON. Last thing on schedule is at 1:15pm 09:01
www.oscon.com/oscon2014/public/sche...tail/35859
masak ah, ok. 09:02
nwc10++ # now I feel slightly bad for having someone else check for me :)
nwc10 and 24 hours later Google docs still doesn't support ODF. I thought that web businesses ran at internet speed :-)
masak: I knew the answer already. I just dug up the link for the exact time
it seems to be Sunday -> Thursday for the first time this year 09:03
masak I see.
TimToady: I don't think I had seen ((this solution :)) to the xkcd.com/541/ problem before -- logically, I don't like it, but esthetically I do. :) 09:04
09:06 psch left 09:07 psch joined
ventica or {maybe this :)} 09:10
masak "interesting" :)
09:12 rurban1 joined 09:17 rurban1 left
FROGGS_ .tell lizmat in some cases you can quote or escape paths, it does not work for all build systems but we should try 09:22
yoleaux 22 Jul 2014 23:26Z <japhb> FROGGS_: Since you used a new perl6-bench test to show the advantage of your charrange changes, can you commit and push said new test please? :-)
FROGGS_: I'll pass your message to lizmat.
Ven masak: (I usually do this :).) 09:30
(and it's funny because he actually did a ted talk)
masak oh, so he did! 09:31
but about the what-if posts, it seems.
Ven Yeah, about "what if" however.
FROGGS_ .tel japhb here is the test, I'd committed it if I could make a P5 version: paste.scsys.co.uk/409315 09:34
.tell japhb here is the test, I'd committed it if I could make a P5 version: paste.scsys.co.uk/409315
yoleaux FROGGS_: I'll pass your message to japhb.
timotimo japhb: i'm considering skipping it this week and making a rakudo star release post instead 09:41
09:52 eternaleye left 09:53 eternaleye joined
sergot .seen ajs 10:02
yoleaux I haven't seen ajs around.
10:08 treehug88 joined 10:09 Alina-malina left 10:10 Alina-malina joined 10:13 rurban1 joined 10:17 kivutar joined, rurban1 left, atroxaper joined 10:18 lustlife left 10:19 lustlife joined, skids joined 10:20 bjz_ joined 10:23 atroxaper left, Mouq joined, Alina-malina left
Mouq Pls break: gist.github.com/Mouq/13b4d684c58b4c6add9b 10:23
i.e. try to find cases where it has incorrect behaviour 10:24
Actually... I wonder why :delete doesn't delete the whole array, the way I have that coded... 10:26
Oh, nvm
Ahh, it looks like :kv, :p, :k, etc. are broken. I didn't think to test them 10:28
Though... I'm not sure exactly what exactly the behaviour of :kv etc sould be here... 10:31
s/exactly//
10:34 bjz_ left 10:38 chenryn left
tadzik hmm, is there anyone regularly using Panda on windows? 10:39
I'm looking at github.com/tadzik/panda/pull/91, and it surprises me that it only came up recently 10:40
FROGGS_ that patch looks very valid 10:41
tadzik huh, I just merged a pandabrew PR, and until the last moment I thought it's for rakudobrew
FROGGS_ I think I had that also that it had problems with deps or build order
masak I tried to install Rakudo on Windows to duplicate this problem, but I gave up because I remembered half way that I hate installing things on Windows.
tadzik now I wonder: "people use pandabrew? It works? :o"
10:42 mr-foobar left
masak I also approve of carlin++'s fix, and I think it should be applied. 10:42
but I would prefer if there were a long-term solution for this in IO::Path itself. 10:43
tadzik agreed
on both parts
colomon +1
masak IO::Path should be dealing with platform-dependent path separators.
FROGGS_ well, at least some stuff is normalized to forward slashes
tadzik but, does it need to be <$slash>, not just $slash?
masak tadzik: <$slash> is only if it's a string.
this is a regex.
tadzik aha
indeed 10:44
dalek nda: ff45e43 | Carlin++ | lib/Panda/Builder.pm:
Module paths contain backslashes on Windows

This should allow panda to build/install on Windows. Currently the required replacements are not done on Windows paths. This causes panda to not work out the dependencies properly and thus not compile the modules in the right order.
nda: 3f8d8b3 | tadzik++ | lib/Panda/Builder.pm:
Merge pull request #91 from carbin/master

Module paths contain backslashes on Windows
FROGGS_ <$slash> is like evaling a string to a regex
10:45 Ven left
FROGGS_ m: my $reg = /\w+/; say "abc" ~~ /$reg/ 10:45
10:45 davercc left
camelia rakudo-moar 1b2502: OUTPUT«「abc」␤␤» 10:45
10:49 brrt joined 10:52 atroxaper joined 11:00 chenryn joined 11:14 rurban1 joined
carlin re: panda on Windows, I was trying to start using rakudo at $dayjob when I came across that problem and was also surprised that it didn't work on Windows 11:17
not all modules will break from being compiled in the wrong order though, so it's possible that's why it wasn't caught earlier
nwc10 hackathon reminder: act.useperl.at/apw2014/talks
sign up! sign up! Send no money now. act.useperl.at/apw2014/stats 11:18
11:18 rurban1 left 11:20 figoe left
carlin ( and the error messages caused by wrong-order compiliation made me think it was a moar problem ) 11:21
11:22 atroxaper left 11:23 atroxaper_ joined 11:24 brrt left
Mouq Hmm... Moar dies with Stage parse : moar(50920,0x7fff77cde310) malloc: *** error for object 0x7fd4cb72cbe0: pointer being freed was not allocated when I use this patch on Rakudo: gist.github.com/Mouq/4d320515a1a718a75b22 11:27
11:27 atroxaper_ left, salv0 joined
Mouq It's late now for me, but if no one picks it up, I try to look at it tomorrow 11:27
\o 11:28
11:28 Mouq left
carlin if you have Foo.pm6 that `use Bar.pm6` and try to compile it, rakudo whinges that you have to compile its deps first 11:30
bit if it's `use Bar::Baz` moar will happily compile it without Bar/Baz.pm6 being compile first
11:32 pochi left 11:35 pochi joined 11:41 rurban1 joined 11:42 Ven joined
Ven masak: we can't return a string from macro atm, can we ? 11:43
11:43 Alina-malina joined 11:44 chenryn left
Ven ( I'm reallyy just trying to do something like github.com/manastech/crystal/commi...e1f3049R73 ) 11:45
11:46 yakudza left 11:47 skids left 11:51 prevost joined 11:53 ggoebel111119 left 11:54 anaeem1_ left
masak Ven: can't return a string, and -- I keep repeating until, hopefully, I believe it myself -- not my department :) 11:54
I'm the guy who does AST macros, thank you very much.
Ven well, how can I build AST nodes ? 11:55
masak quasi {} 11:56
I know that's not a complete answer, though. I'd be happy to map out a nice API with someone for building AST nodes.
kind of a combinator library.
12:00 yakudza joined 12:05 prevost left
Ven masak: well, how I can do a macro like `has-fields('a', 'b', 'c')` that does `has $.a; has $.b; has $.c;` ? 12:08
masak well, think about what that means.
m: has $.a
camelia rakudo-moar 1b2502: OUTPUT«===SORRY!=== Error while compiling /tmp/suOQAaG0Qt␤You cannot declare attribute '$.a' here; maybe you'd like a class or a role?␤at /tmp/suOQAaG0Qt:1␤------> has $.a⏏<EOL>␤ expecting any of:␤ scoped…»
betterworld can't you somehow make calls like QAST::Op.new() accessible from macros, in order to build AST nodes?
masak betterworld: I don't want to tie macros to QAST, necessarily.
betterworld: QAST is an implementation detail of the Rakudo line of compilers. 12:09
Ven: anyway, as I was beginning to say,
Ven: the quasi environment would need to suppress certain "environmental checks" such as the one you see in that eval. 12:10
Ven: that's all planned for Q4. it's a rather big job, but I think it's possible.
er, D4*
see news.perlfoundation.org/2011/09/hag...mplem.html 12:11
[Coke] are we using american english for the specs? (just saw some stuff get changed as "typos", but it could have just been british)( 12:14
masak we are definitely using American English for the spec.
moritz Britsh Typous 12:15
masak ==SOURRY== 12:16
carlin ==Very sorry, old chap== 12:18
Jolly good show, but we have some potential difficulties on line 1
Ven masak: you got D1 done, right ?
12:19 jnap joined
moritz masak: did you mean, === EXCUSE ME === ? 12:20
masak Ven: D1 and D2. 12:21
12:21 jnap left
Ven masak: oh, splicing is like {{{ }}} ? 12:21
masak aye.
the syntax everyone loves to hate :> 12:22
hoelzro morning #perl6
masak hoelzro! \o/
hoelzro ahoy masak 12:24
12:24 kivutar left
Ven masak: I don't love to hate it, I just can't understand what it does / is supposed to do 12:24
masak Ven: I'd happily explain, but I don't know what you already know. 12:25
hoelzro I remember hearing a while ago that Str would have a way of counting graphemes; is that NYI? 12:26
12:26 jnap joined
masak hoelzro: yes, it's NYI. 12:26
hoelzro =/
...would that be hard to do?
cognominal masak, for people reading the backlog, suppose he does not know anything :)
masak ok. 12:27
hoelzro a naive impl could walk the chars, counting which ones have the correct property
masak quasi splicing is the code equivalent of string interpolation.
hoelzro or is that overly naive =P
moritz hoelzro: well, it'd be very slow
masak that is "Look, interpolation: $string" is very similar to quasi { say "Look, splicing: ", {{{$macro_param}}} } 12:28
hoelzro true
masak cognominal: does that make sense?
hoelzro I figured that having something to start with would be better than nothing
cognominal good analogy I think. Not sure where it goes when you follow it through, though.
moritz hoelzro: if it makes all string operations noticably slower, it'd be a step back for all rakudo users 12:29
masak cognominal: well, it breaks down, but in interesting ways.
cognominal: a Str value is a single, unchanging value. so, in a sense, is an AST.
cognominal: but the difference is that the AST goes on to be *interpreted*, as part of running the program. and it can contain variables, loops, etc. so it ends up feeling very dynamic.
moritz but an AST implicitly carries context around
masak that, too. 12:30
in that sense, it's more like a function closure.
hoelzro it would make *all* operations slower? why's that?
moritz hoelzro: I wrote "*if* it makes..."
hoelzro I think I don't understand the implication of the implementation
oh, I hadn't seen that
Parse Error: ENOTENOUGHCOFEE
==SORRY== 12:31
moritz no problem
hoelzro: the trouble is, things should be consistent
hoelzro: so if regex matching works on the grapheme level, everything must work on the grapheme level
like .chars, .substr etc.
Ven masak: sorry, pretending to be working, I'll re-check the blogpost about them ;)
hoelzro ooooo 12:32
masak Ven: sure thing.
hoelzro moritz: ...do regexes currently work on a grapheme level?
moritz hoelzro: nope
hoelzro ok, that's kinda what I thought
I was thinking of just adding a .graphemes method to Str
Ven what I don't grasp is that variables passed/outside the quasi are available as `$foo` directly and not `{{{ $foo }}}` 12:33
moritz so, to make things consistent, they must be implemented on the level below the nqp ops
(that is, moarvm/parrot/JVM interop land)
Ven actually, no : stuff outside the quasi is available as `$foo` and the params are available as `{{{ $foo }}}` ?
masak Ven: both are available in both forms.
Ven wat
masak Ven: {{{ }}} just means "it's an AST, insert it *as code* here" 12:34
moritz Ven: {{{ ... }}} just means "use it as an AST, intesert it here"
masak moritz: spooky :)
moritz just like + means "use it as a number, add it here"
masak: ... even though we haven't seen each other for nearly a year now
Ven while no {{{ }}} means ?
moritz whatever a normal variable access means
masak moritz: quantum entanglement.
hoelzro moritz: so you think the right way to do it is to use .chars to count graphemes instead of having a .graphemes method? 12:35
Ven m: macro f($a) { quasi { say $a } }; sub a { "bar" }; f("a")
camelia rakudo-moar 1b2502: OUTPUT«AST.new()␤»
moritz hoelzro: the real question is, how do you interpret integers passed to .substr ?
hoelzro as the regex, or the replacement?
moritz hoelzro: substr doesn't take a regex :-) 12:36
12:36 kivutar joined
hoelzro oh, substR 12:36
heh
oh
well, I would interpret it as codepoints
moritz kill -SIGCOFFEE, hoelzro
erm, s/,//
masak .oO( moritz, in the billiard room, with the coffee ) 12:37
hoelzro wrong answer? =P
moritz hoelzro: not a wrong answer for a first-step implementation 12:38
masak moritz: by the way, I read a category theory joke the other day: "A comathematician is a device for turning cotheorems into ffee."
moritz hoelzro: but, in the long run, the default mode must be graph
hoelzro oh, really? I hadn't realized that
12:39 kivutar left
hoelzro I always thought codepoints were intended to be the default 12:39
moritz masak: lol
hoelzro: that would be far too easy :-)
hoelzro haha
so...do non-printable characters count as graphemes? 12:40
FROGGS_ everything that looks like one thing is a grapheme 12:42
masak but non-printable characters kind of look like zero things. 12:44
Ven m: macro f { my $s = "a"; quasi { say $s } } ; f; f;
camelia rakudo-moar 1b2502: OUTPUT«a␤a␤»
Ven That's really WAT-y. Either I have ASTs outside the quasi, either I don't. Having "both" feels weird. 12:45
masak Ven: right. if it's not an AST, you don't need to de-AST it with a {{{ .. }}}
Ven well, it's pretty useless to print an AST.
masak Ven: no, it's by design. I don't see anything weird about it.
Ven I'd really like being able to give a string to a macro and have it create functions based on that name, etc.
masak noted.
you're not the first.
Ven That's like, the most basic thing I expect from macros, I think. It's like that I've started liking them
masak I'm glad you like macros. :) 12:46
FROGGS_ ahh non-printable... somehow I was thinking of whitespace
hoelzro m: my @e = [1, 2], [3, 4]; say @e>>.[0]
camelia rakudo-moar 1b2502: OUTPUT«Cannot find method 'postcircumfix:<( )>'␤ in sub METAOP_HYPER_CALL at src/gen/m-CORE.setting:17543␤ in block at /tmp/lXKX4Mzx2L:1␤␤»
hoelzro should that work? ^
masak FROGGS_: whitespace also looks like zero things, but in a different way :)
12:47 guru joined
masak m: my @e = [1, 2], [3, 4]; say @e>>[0] 12:47
camelia rakudo-moar 1b2502: OUTPUT«1 3␤»
12:47 guru is now known as Guest50886
masak hoelzro: I don't know. can you find support for it in the spec? 12:47
12:47 Guest50886 is now known as ajr_
hoelzro well, this works: 12:47
m: my @e = 1, 2, 3; say @e.[0]
camelia rakudo-moar 1b2502: OUTPUT«1␤» 12:48
hoelzro so I figured .[$idx] "just works"
but *that* could be the bug
Ven masak: oh, I love macros. But I agree with that you said -- they're not currently very useful in Perl 6 :) 12:49
But as a racket fan (and somewhat a clojurer), I absolutely love macros.
masak I'm eager to give Perl 6 really good macros. it's fine if we steal/borrow ideas from other languages. 12:50
but at the same time, they need to fit into the Perl 6 model of thinking.
TimToady's idea about slang macros yesterday made me a bit hopeful. it sounds like the right thing to try.
it *may* solve a lot of design hurdles we've hit with the current design. 12:51
timotimo pastebin.com/dWRXGcAF - someone's trying to install moarvm on gentoo and it seems to be looking for stuff in the temporary build directory it's being compiled in 12:52
sergot m: my @a = 1, 2, 3; for @a -> $a { @a.push: 100; last if $a == 100; }
camelia ( no output )
sergot m: my @a = 1, 2, 3; for @a -> $a { @a.push: 100; last if $a == 100; say $a; }
camelia rakudo-moar 1b2502: OUTPUT«1␤2␤3␤»
sergot m: my @a = 1, 2, 3; for @a -> $a { @a.push: 100; say $a; } 12:53
camelia rakudo-moar 1b2502: OUTPUT«1␤2␤3␤»
sergot hm
FROGGS_ timotimo: that looks like a failed packaging attempt, looks at that path: moarvm-2014.07/image/usr/languages/perl6/lib
sergot m: my @a = 1, 2, 3; while my $a = @a.shift { @a.push: 100; say $a; }
masak sergot: modifying a thing you're iterating over is asking for trouble. 12:54
camelia rakudo-moar 1b2502: OUTPUT«(timeout)1␤2␤3␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤100␤1…»
masak sergot: if nothing else, you're introducing doubt in the *reader* as to whether you're iterating over the original thing or the modified thing.
sergot: so, in a word, don't ;)
Ven masak: I'm going to repeat myself, but -- crystal's macros are thousands of times more powerful than text-based macros
sergot masak: I know but I want to have some troubles! (in this case only) :)
masak sergot: then carry on. :) 12:55
12:55 lelf joined
FROGGS_ the behaviour is pretty correct though 12:55
masak aye.
Ven: I tried searching the irclogs for "Ven", "crystal", but failed utterly. 12:56
Ven: searching the web for "crystal macros" also failed.
Ven: do you have a link for me?
sergot I'm writing a crawler (to test HTTP::userAgent), which should have an endless loop 12:57
masak aha, a queue, eh?
then name your array @queue, and use .shift and .push explicitly. :)
sergot so i iterate over an array and push there next urls downloaded from current requesting site
Ven masak: well, maybe "vendethiel", but I just linked a commit showing how they were earlier 12:58
tadzik sergot: I'm pretty sure I wrote similar loops and they worked fine
Ven masak: github.com/manastech/crystal/blob/...ize.cr#L70
tadzik maybe even File::Find does that
Ven they're like templates, they have access to const variables/globals, can do loops, etc 12:59
tadzik github.com/tadzik/File-Find/blob/m...ind.pm#L36 indeed
masak Ven: thank you.
Ven: looks like a preprocessor thing. 13:00
Ven masak: "they have access to const variables/globals" 13:01
(also, I don't think you can do loops with cpp)
masak ok, got it.
fwiw, Perl 6's Pod also has access to const variables ;)
I think that crystal thing is useful as a bar to measure our own macro system against. 13:02
Ven (also, the code allowed inside is fully crystal
It's just not some kind of other language ...)
masak right. 13:03
13:03 rurban1 left, raiph joined
Ven Soo, it'd be more than happy with that kind of "preprocessor " =) 13:03
sergot tadzik: I have just written this: github.com/sergot/http-useragent/b...crawler.p6
Ven I don't want that much to have AST transformations (not yet :P)
sergot but I'll provide more debug info soon :)
masak Ven: I don't think I'd be happy with that kind of "preprocessor"... :) 13:04
Ven: but I have a hard time putting into words why.
13:12 skids joined
sergot m: my $s = Set.new(1,2,2,3,3,3); 13:13
camelia ( no output )
sergot ym, how to ignore an exception in p6?
moritz sergot: any exception? or a specific exception?
tadzik CATCH { default { } }
moritz tadzik: easier written as try { }
Ven masak: well, I'd be interested in discussing it if you can find some time for it =). 13:14
tadzik oh!
sergot moritz: a specific one
moritz if you want to ignore one exception type, you can say CATCH { when X::ThatException { } }
Ven In perl 6, we could have it access constants, begin time variable, modules stuff too, I think
moritz and the others get transparently re-thrown
masak Ven: *nod*
Ven: would also happily discuss it at some point.
sergot moritz++ thanks
masak alas, I too am pretending to work right now.
Ven well, I'm actually *not* working because I've been asked just too fill some forms :P 13:15
Ven goes back to read masak's grant 13:18
moritz did you notice that 'grant' contains 'rant'? :-) 13:23
colomon and ant
masak and gr
13:30 treehug88 left 13:33 FROGGS[mobile] joined
FROGGS[mobile] I think I can push / a**{ $foo} / in a bit 13:34
sergot FROGGS++ 13:35
FROGGS[mobile] only the case where we were asked to quantify 0..0 does strange things AFAIK 13:36
13:37 rurban1 joined
FROGGS[mobile] and I need to test Inf 13:37
PerlJam idly wonders about / a**{*} / 13:38
FROGGS[mobile] fail 13:39
this would imply *..*
masak why would it imply that? 13:40
I agree it's a weird thing to write, at least as a constant.
but to me a**{*} would read as a*
PerlJam I would disallow it personally. 13:41
masak me, too, I think.
moritz to me, a**{*} reads like a compiler error :-) 13:43
13:44 chenryn joined
sergot m: my $a ; say $a or 1; 13:46
camelia rakudo-moar 1b2502: OUTPUT«(Any)␤»
sergot m: my $a ; say $a // 1;
camelia rakudo-moar 1b2502: OUTPUT«1␤»
masak sergot: precedence.
sergot m: my $a ; say ($a or 1);
camelia rakudo-moar 1b2502: OUTPUT«1␤»
masak sergot: don't use the 'or' forms until you've studied what precedence level they're at ;)
sergot masak++ : thanks
masak sergot: personally, I use them only for failed *statements*, which is what they're for. 13:47
sergot: some people use them because they prefer words to symbols in their code. I don't do that.
sergot What do you mean by "faile statements"?
masak sergot: `open ... or die "couldn't open that thing"` 13:48
sergot I just didn't want to write "$a.defined ?? $a !! 1"
masak sergot: then infix:<//> is for you.
sergot yeah :)
masak infix:<or> and infix:<||> both check truthiness. 13:49
infix:<//> checks definedness.
sergot masak++ 13:50
carlin m: say ({ (1..2).pick } ... 2).munch(100); 13:51
camelia rakudo-moar 1b2502: OUTPUT«1 1 2␤»
carlin m: say ({ (1..2).pick } ... 2).munch(100);
camelia rakudo-moar 1b2502: OUTPUT«2␤»
carlin on OpenBSD that is giving me 100 "1"s
moritz not enough entropy?
masak .oO( put it down as "bad luck" ) 13:52
:P
carlin hmm, yeah, that would explain it 13:53
moritz carlin: if you run say join ',', (^100).roll(10) a few times (starting a new process each time), do you always get the same output?
13:53 nbrown joined 13:54 btyler joined
carlin no, different output each time 13:54
moritz at least that works.
13:55 thou joined
masak but that was .roll, not .pick 13:55
moritz but they share the same PRNG
13:57 nbrown left 13:58 chenryn left 13:59 nbrown joined
carlin (1..2).pick is always giving 1, (1..3).pick works 14:01
moritz off-by-one-error somewhere?
14:01 chenryn joined
moritz m: say (1..2) xx 20 14:01
camelia rakudo-moar 1b2502: OUTPUT«1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2␤»
masak m: for ^50 { say (1..2).pick } 14:02
camelia rakudo-moar 1b2502: OUTPUT«2␤1␤2␤1␤1␤1␤1␤1␤2␤1␤2␤1␤1␤2␤2␤2␤1␤2␤2␤2␤1␤2␤1␤2␤2␤1␤2␤1␤1␤1␤2␤1␤1␤2␤2␤1␤2␤2␤1␤2␤1␤1␤1␤1␤1␤1␤2␤1␤1␤1␤»
carlin > say (1..2) xx 20 14:03
1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2
> for ^50 { print (1..2).pick }
11111111111111111111111111111111111111111111111111
moritz m: say (1..2).pick xx 20
camelia rakudo-moar 1b2502: OUTPUT«1 1 2 1 2 2 2 1 1 1 1 1 2 1 2 2 2 2 2 1␤»
moritz that's what I actually wanted to do
carlin > say (1..2).pick xx 20 14:04
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
> say (1..3).pick xx 20
1 2 3 3 3 1 2 1 1 1 2 3 2 2 2 1 2 2 1 1
14:04 nbrown left
masak that looks submittable. 14:04
but it's only on your end...?
14:05 rindolf joined
carlin it seems to be any .pick(n..n+1) only returns the former 14:05
> say (4..5).pick xx 20 14:06
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
PerlJam carlin: what version of rakudo are you using?
carlin This is perl6 version 2014.07-28-g1b25025 built on MoarVM version 2014.07-15-gb6a4250
[Coke] m: say ((4..5).pick xx 10000).grep({$_ eq 5}); 14:07
camelia rakudo-moar 1b2502: OUTPUT«5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 …»
masak carlin: it would be interesting if you could extract the code from src/core/Range.pm and find out what part goes wrong. 14:08
hoelzro could someone sanity check my PR against Rakudo, please? github.com/rakudo/rakudo/pull/296
carlin masak: sure, I'll have a look. this is intriguing 14:09
masak agreed.
14:09 [particle] joined
carlin .oO (hopefully I don't just have chronic bad luck) 14:10
masak hoelzro: um, "so you don't have to constantly add -v to prove" -- aren't you then just removing the distinction -v provides?
14:11 hoverboard joined
masak hoelzro: assuming I get what you're doing right, I kinda like having the short output to prove by default, and switching on verbose with -v 14:11
hoelzro masak: what I mean by that is that currently, if a test fails, you only see that *something* failed
masak ...and without -v, that's what I would expect, no?
how does CPAN's test modules behave in this regard?
hoelzro I guess we differ in expectations, then =)
masak do*
hoelzro Test::More prints more verbosely than Test.pm does
I based the output off of Test::More 14:12
masak oh, ok.
then I have no complaint.
hoelzro masak: would you care to merge it? =) 14:14
masak done. 14:15
dalek kudo/nom: d812b71 | (Rob Hoelz)++ | lib/Test.pm:
Test: make sure diag prints to standard error
rakudo/nom: b71788d | (Rob Hoelz)++ | lib/Test.pm:
rakudo/nom: Test: When diag'ing, don't precede blank lines with #
14:15 dalek left
PerlJam carlin: fyi, I don't see that behavior with: This is perl6 version 2014.07-24-g1aa3b20 built on MoarVM version 2014.07-15-gb6a4250 14:15
masak dalek: sorry :/
hoelzro thanks masak
14:15 dalek joined, ChanServ sets mode: +v dalek 14:19 nbrown joined 14:22 ggoebel111116 joined, chenryn left 14:24 chenryn joined 14:30 chenryn left 14:32 figoe joined 14:43 molaf joined 14:46 jnap1 joined, Ven left, ajr_ left, jnap left 14:48 guru joined, guru is now known as Guest14832, Guest14832 is now known as ajr_ 14:52 rindolf left 14:53 treehug88 joined 14:55 mr-foobar joined
carlin m: my $elems = 2; say nqp::rand_I(nqp::decont($elems), Int) xx 30 14:56
camelia rakudo-moar 1b2502: OUTPUT«1 1 0 0 1 1 0 1 1 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 0 0 1 1 0 0␤»
carlin > my $elems = 2; say nqp::rand_I(nqp::decont($elems), Int) xx 30
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
now lets look at what nqp::rand_I does :)
14:57 salv0 left
masak carlin++ 15:01
"Returns a psuedo-random bigint up to the value of the given number." -- docs/ops.markdown 15:03
up to but not including, I'd venture.
carlin: how about just `say nqp::rand_I(2, Int) xx 30` ? 15:04
carlin > say nqp::rand_I(2, Int) xx 30
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
masak carlin: also perhaps test nqp::rand_n
anyone know where in NQP this op is defined? 15:05
I only see mappings for the various VMs.
15:10 denis_boyun_ left 15:13 nbrown left 15:17 brrt joined 15:19 btyler__ joined, fhelmberger left 15:21 zakharyas left, dayangkun left 15:22 rindolf joined, btyler left 15:28 ajr_ left
japhb botsnack 15:28
yoleaux 09:34Z <FROGGS_> japhb: here is the test, I'd committed it if I could make a P5 version: paste.scsys.co.uk/409315 15:29
15:29 ajr joined
japhb FROGGS[mobile]: Ah, I understand. 15:29
15:30 ajr is now known as Guest43016, Guest43016 is now known as ajr_
japhb FROGGS[mobile]: Thankfully (!) for this particular case, p5rx are unsanitary, so I'm betting with a little fiddling it can be made to work. Like generate the entire character class definition as a string and interpolate it wholesale, rather than trying to just interpolate one character into the char range. 15:32
FROGGS[mobile]: Gripping hand though is that it's OK to commit a version that lacks a language variant; someone can come back later and fill it in. And now that I default-on skipping tests that have incomplete timing data when computing summary scores, it's a no-harm choice. 15:34
As a side note, I'm considering converting a few tests that use for loops just because they are easy (but are actually testing something else, like string processing) to use while loops instead, so that we can get better comparisons with NQP. 15:35
15:37 hoverboard left 15:38 hoverboard joined 15:41 kaleem left
rindolf Hi all. 15:41
15:43 nbrown joined 15:49 brrt left 15:53 nbrown left 16:02 Rotwang joined, cognome left, cognominal left 16:03 cognome joined
cxreg TimToady: i wasn't serious about asymmetric operators, but it made me a little nauseous when I implemented one spelled "))<>((" 16:03
masak Perl has never been about limiting the crazy you decide to inflict, on yourself or on others. 16:05
cxreg tru dat
i heard some hate spewed at scala recently over things it lets you do to yourself and others
masak one reason for that (as spelled out in some SoTO or other) is that it's not possible to tell crazy-bad from crazy-useful.
ren1us plus sometimes crazy-bad *is* crazy-useful 16:06
cxreg many of the things sounded a lot like perl 6 features, though
i think those people were just too java centric
masak ren1us: yes, that's what "it's not possible to tell" means ;)
16:06 matija joined, matija left
masak or, stated in another way, if you remove the abilities to do crazy-bad stuff, you also remove some crazy-useful abilities. 16:07
cxreg does rakudo on moar have time-based supplies now?
that's a pretty nice idiom
timotimo yes
16:07 cognome left
cxreg woot 16:08
timotimo someone apparently has to make perl6.org/compilers/features be updated
cxreg it's not that far out of date
timotimo i removed the "missing time-based" note weeks ago
i mean be updated from the source
cxreg oh right
masak it usually updates automatically. 16:09
timotimo not this time
masak if it doesn't, then the JSON might be busted.
timotimo that must be my fault, then
cxreg I feel a binge of library writing coming on 16:10
colomon go go go go!
cxreg is there any coordination around that?
timotimo there's the "most wanted" list on github where you can announce what you're doing or what you're missing
cxreg not that duplication is *bad* but I wouldn't mind doing things that are as-yet untouched
cool 16:11
hey looking at profiling, and coming from some recent node.js, it would be *super awesome* if there was a brain-dead-simple way to get the compiler to tell you when you've pessimised some code 16:12
v8's is awful
at least last i tried anyway 16:13
btyler__ timotimo: the most wanted list could use some attention from people who are familiar with the state of different modules. for example, JSON::Tiny is pretty complete, right? the "most wanted" list still marks it as a maybe
16:18 dwarring left
carlin masak: I think it's declared in the VM itself: github.com/MoarVM/MoarVM/blob/mast...rp.c#L1895 16:19
I've looked at MVM_bigint_rand but have just gotten lost
16:22 nbrown joined, Dr_Ulti is now known as Ulti 16:24 cognominal joined, cognome joined 16:26 denis_boyun_ joined, [Sno] left, nbrown left
carlin cancel that, started making progress agan :D 16:27
16:31 hoverboard is now known as SCREAMANIA, SCREAMANIA is now known as hoverboard
timotimo btyler__: the json tiny module is very simple. one could build a performance-tuned version that doesn't use grammars 16:32
16:32 Woodi joined
timotimo cxreg: we have logs for things that MoarVM does, but it's far from brain-dead-simple 16:33
btyler__ timotimo: ok, fair enough 16:35
16:36 isBEKaml_mobile joined
carlin wishes he knew C 16:39
16:40 dakkar left, isBEKaml_mobile left
timotimo what? you use C every time you write your name! 16:41
carlin if only it were that simple :p 16:42
16:43 jnap1 left 16:45 klapperl_ joined 16:46 Akagi201 left 16:48 klapperl left, ajr_ left, guru joined, guru is now known as Guest56170, Guest56170 is now known as ajr_ 16:49 klapperl_ left 16:50 klapperl joined 16:51 ajr_ left 16:53 ajr joined, ajr is now known as Guest15361
dalek kudo-star-daily: 1d003d7 | coke++ | log/ (14 files):
today (automated commit)
16:55
rl6-roast-data: 735687c | coke++ | / (3 files):
today (automated commit)
16:55 klapperl_ joined
[Coke] parrot still the only clean implementation. 16:56
16:56 klapperl left, kaleem joined 17:01 btyler__ left 17:02 zakharyas joined, kaleem left 17:06 kaleem joined
masak carlin++ # go go go! 17:15
17:15 Guest15361 left
[Coke] imgur.com/gallery/2C2OWwI might be of interest to this crowd. 17:17
17:18 kaleem left
gtodd hmm what would be step 0 of "Migrating legacy Scala/Play Framework code to Perl6" 17:19
.... something like "start using perl6 in 2014" 17:20
anyway, there may still be 18-24 months before that document is needed ... 17:21
17:24 Alula_ left
masak [Coke]: ;) 17:27
17:40 mcbrian76 joined, Alula_ joined 17:46 Akagi201 joined 17:48 lizmat joined 17:49 mcbrian76 left 17:51 Akagi201 left 17:52 lelf left 17:55 [Sno] joined, synthkeys2 joined 17:57 lelf joined, synthkeys2 left 17:58 lizmat left, Brian joined 17:59 Brian is now known as Guest25619 18:00 lizmat joined 18:04 btyler joined, gfldex joined 18:09 dwarring joined 18:13 lelf left 18:16 lelf joined 18:17 woolfy joined 18:18 jnap joined
hoelzro when's the next Rakudo Star release supposed to be? it's been a while since the last... 18:18
nwc10 I fear that the answer may be "well volunteered" 18:19
18:19 lelf left 18:20 lelf` joined, lelf joined
PerlJam hoelzro: The last was april. The original plan was quarterly releases anyway, so I'd say we're back on schedule ;) 18:20
(I seem to recall that someone was looking into doing a star release, but that's just a vague memory) 18:21
ventica I think we need some kind of curated perl6 release... as far as I can tell, perl6 is plenty functional enough for real-world application... but devs aren't going to start adopting it until there's a subset of it that is very well-tested and stable
18:22 Guest25619 left, vendethiel joined 18:23 Brian_ joined
PerlJam "curated release" sounds like R* to me. 18:23
18:23 molaf left, Ven joined 18:24 Brian_ left 18:26 zakharyas left
ren1us m: sub recurse($pos is rw) { $pos -= 5; if $pos >= 0 { recurse($pos); }; }; recurse(5); 18:27
camelia rakudo-moar 4fd1fd: OUTPUT«Cannot modify an immutable Int␤ in block at src/gen/m-CORE.setting:17323␤ in sub recurse at /tmp/I6dOVjIUGo:1␤ in block at /tmp/I6dOVjIUGo:1␤␤»
ren1us i may be wrong, but shouldn't "is rw" be allowing that to work?
masak ren1us: yes.
PerlJam ventica: Having debian/rpm/whatever packages for Rakudo go a long way towards making it available for devs to start playing with it too 18:28
masak ren1us: but you're passing in a 5
ren1us: which is a constant.
Ven How is the syntax `f(|foo)` called ? (the `|`)?
masak Ven: "flattening"?
Ven arguments flattening ?
That doesn't seem right 18:32
well, s06 seems to use "flattening" too.
PerlJam S03:671
synopsebot Link: perlcabal.org/syn/S03.html#line_671
18:34 denis_boyun_ left
hoelzro ah, ok 18:35
Ven PerlJam, thanks.
| has quite a lot of meanings in perl 6 ... even just as a prefix
hoelzro bummer that S26 stuff won't make it in =/
18:35 eternaleye left 18:36 eternaleye joined
Ven list of stuff ? 18:37
Ven * doesn't even remember what are semicolons useful for
or maybe long arguments names, not to be considered in multi dispatch ? I don't remember correctly.
PerlJam Ven: you mean in a parameter list?
Ven PerlJam: yes
PerlJam yeah, I don't remember exactly either. But that sounds about right. 18:38
PerlJam looks at the synopses for guidance
dalek rl6-bench: f06e6d7 | (Tobias Leich)++ | microbenchmarks.pl:
add tests for character ranges in regexes
18:39
FROGGS_ japhb: I was unable to retest it, so use with caution (my SSD is full so I can't build that Perl 5 version right now)
Ven PerlJam: well, it's not very specific. Like, I know the declaration of listop uses semicolons 18:40
PerlJam ah ... it was double semicolon that separates those parameters that participate in multi dispatch 18:41
Ven oh yeah, double semicolon. But then, no clue of what "long paramater names" is
18:44 guru joined 18:45 guru is now known as Guest71384, Guest71384 is now known as ajr_ 18:47 rindolf left
PerlJam um ... I think you've split the important word in two. It's "longname", not "long parameter names". Most routines have a name. For multi-dispatch, there will be routines with the same "shortname" but different "longname". The shortname would be like "foo" and the long name would be like "foo(Int)" or "foo(Str)" (assuming those two multis exist) 18:47
So, with ;; you can choose which parameters are included as part of the "longname"
18:48 Akagi201 joined 18:52 Akagi201 left
timotimo Unicode Character 'SURROGATE PEAR;SORRY FOR LAME PUN, IT WAS...LOW HANGING FRUIT' (U+1F350) 18:56
hoelzro: avuserow is working on a Star release 18:58
PerlJam avuserow++ 19:00
timotimo++
Ven PerlJam: ooh, okay. 19:01
19:01 woolfy left 19:02 darutoko left 19:05 treehug88 left 19:06 lizmat left
hoelzro wondeful 19:09
avuserow++
FROGGS_ m: say 'abc' ~~ / <-['/']> /
camelia rakudo-moar 4fd1fd: OUTPUT«Potential difficulties:␤ Repeated character (') unexpectedly found in character class␤ at /tmp/wvuiyVfTGW:1␤ ------> say 'abc' ~~ / <-⏏['/']> /␤「a」␤␤»
FROGGS_ m: say "a'bc" ~~ / <-['/']>+ /
camelia rakudo-moar 4fd1fd: OUTPUT«Potential difficulties:␤ Repeated character (') unexpectedly found in character class␤ at /tmp/twM5QiBftk:1␤ ------> say "a'bc" ~~ / <-⏏['/']>+ /␤「a」␤␤»
FROGGS_ m: say "a'bc" ~~ / <-[/]>+ / 19:10
camelia rakudo-moar 4fd1fd: OUTPUT«「a'bc」␤␤»
19:11 Ven left 19:14 lelf left
hoelzro talking about longnames again...when would you actually use that? 19:14
I'm struggling to think of an example
dalek p/dynquant: 608ff67 | (Tobias Leich)++ | src/ (5 files):
allow code block in ** quantifiers, / foo ** { $a := 42 } /

In NQP the block can either provide a single item, which would be handled as foo**42, means that it must match exactly $item times. If the block provides a list [$min, $max], then the first two elems are used, like in foo**0..3. Note that the behaviour in rakudo is different, since we have Range objects there.
19:17
FROGGS_ ohh, I should've mentioned that this is moar only yet... that was the reason it is in a branch in the first place 19:18
ren1us okay, i've got a weird line of thought on this whole thing of not being allowed to modify params when they get passed in as a constant 19:20
19:20 Ven joined
ren1us m: sub b($b is rw) { $b--; }; b(5); # i see why this breaks 19:20
camelia rakudo-moar 4fd1fd: OUTPUT«Cannot assign to an immutable value␤ in sub postfix:<--> at src/gen/m-CORE.setting:4546␤ in sub b at /tmp/hSzG5oVNeZ:1␤ in block at /tmp/hSzG5oVNeZ:1␤␤»
ren1us m: sub b($b is rw) { $b--; }; my $var = 5; b($var); # i see why this works
camelia ( no output )
ren1us m: sub a($a) { my $var = $a; }; sub b($b is rw) { $b--; }; b(a(5)); # why doesn't this work?
camelia rakudo-moar 4fd1fd: OUTPUT«Cannot assign to an immutable value␤ in sub postfix:<--> at src/gen/m-CORE.setting:4546␤ in sub b at /tmp/Ib4J_596BI:1␤ in block at /tmp/Ib4J_596BI:1␤␤»
ren1us m: sub a(@a) { my @var = @a; }; sub b(@b is rw) { @b[0] = 0; }; b(a((1,2,3))); # but this does? 19:21
camelia ( no output )
FROGGS_ m: sub a($a) is rw { my $var = $a; }; sub b($b is rw) { $b--; }; b(a(5));
camelia ( no output )
FROGGS_ see?
a() needs to be an lvalue sub, to speak in P5 terms
ren1us so why does it work with a list? 19:22
well parcel
still fuzzy on the difference between all ten things that i consider to be practically lists
FROGGS_ even when lists are not marked as rw you can fiddle with its elements... dunno if this is a bug or feature though 19:23
ventica_desktop FROGGS added "is rw" after the sub declaratino so that b(a(5)) can modify a(5) itself
19:23 ab5tract joined
FROGGS_ m: my @a; a(@things) { @things[0] = 42 }; a(@a); say @a 19:24
camelia rakudo-moar 4fd1fd: OUTPUT«===SORRY!=== Error while compiling /tmp/QNNKVm2GnA␤Variable '@things' is not declared␤at /tmp/QNNKVm2GnA:1␤------> my @a; a(@things⏏) { @things[0] = 42 }; a(@a); say @a␤ expecting any of:␤ postfix␤»
FROGGS_ m: my @a; sub a(@things) { @things[0] = 42 }; a(@a); say @a
camelia rakudo-moar 4fd1fd: OUTPUT«42␤»
ren1us FROGGS_: m: sub b(@b is rw) { @b[0] = 0; }; b((1,2,3)); # then i assume this just pitches a fit because it's passed in as a constant?
woops
FROGGS_ this is a short example of not needing 'is rw' on an array
ren1us m: sub b(@b is rw) { @b[0] = 0; }; b((1,2,3)); # then i assume this just pitches a fit because it's passed in as a constant?
camelia rakudo-moar 4fd1fd: OUTPUT«Cannot modify an immutable Int␤ in method assign_pos at src/gen/m-CORE.setting:1764␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2457␤ in sub b at /tmp/jQ6Hxti0sh:1␤ in block at /tmp/jQ6Hxti0sh:1␤␤»
19:24 brrt joined
rjbs When I say "1 == 1" at the repl, in Rakudo, I get "True". I do not get a true after a "say" presumably because something "knows" that I wanted the output, not the result of outputting it. 19:24
What governs that?
FROGGS_ that's a constant list, aye 19:25
rjbs: good question
ventica_desktop rjbs: i don't see that behavior
rakudo$ ./perl6
> 1 == 1
True
> say 1 == 1
True
FROGGS_ do: say 42 19:26
you don't get a 42 *and* True
but 'say 42' returns True
rjbs Just so.
I have to detach and move (I'm at a conference) but am interested if there is a good answer! BRB
TimToady fwiw, I think of | as an insertion operator for parcels
ventica_desktop I mean, that's just the choice of the REPL re. what it wants to show... does it matter that much? 19:27
TimToady it's the picture of the slit into which you insert things :)
FROGGS_ rjbs: I think the result is not evaluated if something prints to stdout
rjbs: 19:28
> sub a { $*OUT.print: "42\n" }; a() # 42
> sub a { $*ERR.print: "42\n" }; a() # 42 *and* True
so stdout triggers it
ventica_desktop has a philosophical problem with REPLs printing stuff out when not asked... whatever is shown seems arbitrary to me anyway
FROGGS_ ventica_desktop: that's a reason I do not use the repl
-e wtf! 19:29
:o)
err, ftw actually :/
std: / foo ** { 0..Inf } /
camelia std 0f2049c: OUTPUT«ok 00:01 125m␤»
FROGGS_ std: / foo ** { 0..-Inf } /
camelia std 0f2049c: OUTPUT«ok 00:01 125m␤»
FROGGS_ std: / foo ** { Inf..-Inf } /
camelia std 0f2049c: OUTPUT«ok 00:01 125m␤»
ventica_desktop FROGGS_: Yep... I prefer a RE(P|)L to a REPL
19:29 AndChat-188244 joined
[Coke] timotimo++ #SURROGATE PEAR 19:32
19:33 Ven left, Ven joined
[Coke] rjbs: it's a hack I suggested that checks the position of STDOUT before and after; if anything moved, output was generated, do nothing extra. otherwise, print out the return value of the expr. 19:34
pretty sure pmichaud++ implemented it.
19:34 nbrown joined
hoelzro that's nuts. 19:34
in a good way =)
rjbs Thanks, friends! 19:35
dalek kudo/dynquant: b9be98c | (Tobias Leich)++ | src/ (2 files):
allow code block in ** quantifiers, / foo ** { $three..$seven } /

The code block in a quantifier can either provide a range object that is used for min and maximum quantity, or it provides a single numeric item that is used to match exactly that many times.
colomon \o/
that's been a blocker for ABC for *years*. 19:36
rjbs Is there a sane/useful "make install" from git these days? OR: I'd like to have a perl6 in my PATH. What shall I do? 19:37
FROGGS_ *g*
TimToady I presume the code is run every time the 'foo' node is reentered from the left?
hoelzro rjbs: do you want just perl6, or the star modules too?
rjbs I don't even know /what/ I want. ;) 19:38
hoelzro heh
rjbs TimToady: Everyone at OSCON (a) misses you and (b) is glad you're (presumably) taking it easy!
FROGGS_ rjbs: git clone github.com/rakudo/rakudo.git && perl6-m Configure.pl --gen-moar --make-install; then put the cwd/install/bin in PATH
hoelzro well, by the former I mean "just the interpreter, no real libraries"
the latter includes some handy modules
19:39 nbrown left
FROGGS_ what I pasted is the compiler only 19:39
ventica_desktop FROGGS_++
19:40 brrt left
FROGGS_ TimToady: I do not understand that question :/ 19:40
TimToady (.*?) foo ** { 1..$0.chars } bar / 19:41
is $0.chars recalculated each time the ** is re-entered?
from the left, not for each iteration, of course
colomon it has to be, doesn't it? 19:42
FROGGS_ perl6-m -e 'say "aafoobar" ~~ / (.*?) foo ** { 1..$0.chars } bar /' 19:43
「aafoobar」
0 => 「aa」
TimToady that is, can the range depend on a value that depends on the current backtrack status of $0
19:43 Brian joined, Brian left
TimToady well, that doesn't actually test it 19:43
FROGGS_ perl6-m -e 'say "afoofoobar" ~~ / (.*?) foo ** { say $0.chars; 1..$0.chars } bar /' 19:44
1
4
「afoofoobar」
that?
0 => 「afoo」 19:45
TimToady seems good
FROGGS_ perl6-m -e 'say "afoofoobar" ~~ / (.*?) foo ** { say $0.chars; $0.chars } bar /' 19:46
1␤4␤0␤3␤2␤1␤「ofoobar」␤ 0 => 「o」
pheew
TimToady oh, it's not anchored, hence the 321 19:48
TimToady was thinking of it with ^ on the front, and was puzzled by that last one, but it seems right too
FROGGS_ when I anchor it it fails 19:49
TimToady as it should
FROGGS_ I see: 1 4 Nil
k
std: my $a = 2; "foo" ~~ / o ** $a / 19:50
camelia std 0f2049c: OUTPUT«Potential difficulties:␤ Unsupported use of atom ** $a as separator; nowadays please use atom +% $a at /tmp/Qw9iGEn9Qe line 1:␤------> my $a = 2; "foo" ~~ / o ** $a ⏏/␤ok 00:01 127m␤»
FROGGS_ k, I'll remove a test like this from roast 19:51
TimToady yes, it was always the intent to use {$a} for anything dynamic
FROGGS_ ohh, it is just a warning...
okay
TimToady otherwise you get insanity like / o ** $foo.bar.baz(43)..$abc(rand) / 19:53
much better to encapsulate that into a curly pill 19:54
FROGGS_ absolutely 19:55
even that works:
perl6-m -e 'say "baaabbb" ~~ /a**:!{2..4}/' # 「aaa」
perl6-m -e 'say "baaabbb" ~~ /a**:?{2..4}/' # 「aa」
TimToady \o/
19:56 ggoebel111116 left
TimToady presumably /a**:?{2..4} % ','/ and such also works? 19:56
assuming a,a,a input
FROGGS_ erl6-m -e 'say "ba,a,abbb" ~~ /a**:?{2..4} % ","/' 19:57
===SORRY!=== Error while compiling -e
'' many only be used immediately following a quantifier
at -e:1
------> say "ba,a,abbb" ~~ /a**:?{2..4} % ","⏏/
TimToady er... 19:58
FROGGS_ std: "ba,a,abbb" ~~ /a**:?{2..4} % ","/
camelia std 0f2049c: OUTPUT«ok 00:01 125m␤»
FROGGS_ m: "ba,a,abbb" ~~ /a ** 2..4 % ","/
camelia ( no output )
FROGGS_ that should be an easy fix though, because the code afterwards can handle separators 19:59
huh, right now I found two test files we don't even run... 20:01
ahh, because of %foo= and @foo= captures 20:02
avuserow re star, yes, gradually working on it. I still need to send PRs to remove deprecated code from modules, and re-test. Moar is golden, Parrot had a few failures, and JVM is expected to have a few failures and does. All spectests seem happy on my 64-bit Linux box (3GB memory fwiw) 20:08
hoping to do some small fixes today/tomorrow and then be online Saturday when Europe is online to largely wrap things up :) 20:09
[Coke] avuserow: all spec test? I'm seeing consistent failures for moar & jvm. 20:10
FROGGS_ avuserow++
[Coke]: he's using the 2014.07 release
avuserow MVM has one failure, IIRC JVM was okay
FROGGS_ jvm was okay? wow
20:10 Brian joined
FROGGS_ I do not test jvm anymore, because it either fails all tests after a while or it takes the best time of a day 20:11
20:11 Brian is now known as Guest86586
avuserow I just ran it overnight on my old laptop which is my IRC box :) 20:12
hoelzro avuserow: do you need help testing? I have a beefy box at home I can help with
alas, it'll only be accessible tonight (going away for the weekend)
avuserow no that's okay. main problem I'm facing is that I'm in Pacific Time, and a lot of people here are asleep when I get off of work 20:13
FROGGS_ ohh, I love it btw when I can remove all rakudo fudges from a test file :o)
ventica Since rakudo runs on JVM, Is there a Rakudo Perl6 web toy?
avuserow if I need speed, I can always install Linux on my gaming machine which is much happier :D
hoelzro avuserow: I have a similar problem =)
ventica: we've discussed something like that 20:14
FROGGS_ ventica: not yet
ventica :\
20:14 kaare_ left
ventica is it due to the perf issue? i.e. not wanting to create bad first impressions of Perl6? 20:14
avuserow hoelzro: well, then hopefully I can be around when it's a bit more useful for you and vice versa :D
ventica or just nobody got around to it yet?
FROGGS_ ventica: the latter I guess
ventica k 20:15
hoelzro avuserow: I'm usually on IRC early (4:30 AM your time) and during work, but I'm starting to see others here later in the evening =)
20:15 ab5tract left
avuserow ohhh, apparently my testing of the JVM is flawed :( make rakudo-spectest apparently doesn't return non-zero on failure in star? 20:17
FROGGS_ TimToady: I found the issue about quant+sep 20:18
avuserow so no it is not as nice as I thought -_-
FROGGS_ avuserow: it continues, aye
20:19 ab5tract joined
FROGGS_ it also continues when it failed to build a module btw 20:19
avuserow more to the point, my large commandlines of 'make foo && make bar' won't help tons here
FROGGS_ so you have to grep for FAIL
avuserow okay, I'll boot up a faster machine and do it interactively for the final tests
and rely on scrollback for the time being :)
FROGGS_ :o)
20:19 lelf` left 20:20 rurban1 left 20:21 lelf` joined
FROGGS_ nqp-m -e 'say( "a,a,aabbb" ~~ / a ** { [0, 5] } % "," / )' 20:25
a,a,a
20:26 itz_ joined
dalek p/dynquant: a8da350 | (Tobias Leich)++ | src/QRegex/P6Regex/Actions.nqp:
fix separator use with code block in quantifier
20:26
20:28 itz left
FROGGS_ okay, porting this to Parrot should be fairly easy, but it makes me shudder when thinking of jvm 20:30
20:30 AndChat-188244 left
Ven FROGGS_++ 20:31
20:32 itz joined
FROGGS_ jvm means: like 5 times more instructions where you have to takes notes what is on the stack... 20:33
5 times more instructions == 5 times more pain ** stack size
20:35 itz_ left
Ven redefined trait_mod:<is>:rw, and it hurt 20:36
dalek ast: 659ac13 | (David Warring [email@hidden.address] | integration/99problems-11-to-20.t:
fixed/unfudged a logic error
20:37
Ven m: macro infix:<times>(Int $n, $watisit) { quasi { for ^{{{ $n }}} { {{{ $watisit }}} } } }; 3 times say hello 20:40
camelia rakudo-moar 4fd1fd: OUTPUT«===SORRY!=== Error while compiling /tmp/anczjZc1Kw␤Unknown QAST node type QAST::Unquote␤at /tmp/anczjZc1Kw:1␤------> ␤»
Ven :P
uh, oh,two parses errors and it heap corrupts 20:43
but that must've been fixed in the recent commits.
FROGGS_ Ven: yes, at least the things that failed two days ago do work now as expected 20:45
Ven nice :-) 20:46
jnthn Yeah, 'fraid there was a nasty OSR-related SEGV.
Ven hehe, it's fine now, I can just git pull :-)
FROGGS_ jnthn: I am happy that you found it :o) 20:47
(I can sleep better when moar is stable)
20:49 Akagi201 joined 20:52 ggoebel111116 joined 20:53 yoleaux left 20:54 Akagi201 left, Rotwang left, yoleaux joined, ChanServ sets mode: +v yoleaux 21:00 skids left
japhb_ FROGGS: Thanks for pushing the charrange benchmarks; I'll test them myself as well 21:00
21:00 grondilu joined
grondilu std: grammar { rule TOP { .**2 } } 21:00
camelia std 0f2049c: OUTPUT«ok 00:01 124m␤»
grondilu std: grammar { rule TOP :bytes { .**2 } }
camelia std 0f2049c: OUTPUT«ok 00:01 124m␤»
grondilu m: grammar { rule TOP :bytes { .**2 } } 21:01
camelia rakudo-moar 4fd1fd: OUTPUT«===SORRY!===␤Cannot invoke this object (REPR: P6opaque, cs = 0)␤»
grondilu n: grammar { rule TOP :bytes { .**2 } }
camelia niecza v24-109-g48a8de3: OUTPUT«===SORRY!===␤␤Colonpair traits NYI at /tmp/t27WFZ2gfG line 1:␤------> grammar { rule TOP :bytes ⏏{ .**2 } }␤␤Use of uninitialized value in string context␤ at /home/p6eval/niecza/boot/lib/CORE.setting…»
japhb_ FROGGS: That's a weird work estimate ... how do you figure 'work => sub { $_[0] += int($_[0] / 2) || 1 }'?
21:05 lelf` left
Ven >900 lines \o/. Which means next commit is the PR to learnxiny. 21:06
21:07 Ven left 21:10 FROGGS[mobile] left 21:13 Mouq joined, Mouq left, Mouq joined 21:16 raiph left 21:29 rurban1 joined 21:33 jnap left 21:36 nbrown joined
jnthn [Coke]: Please can you check the status of #122297 now; I suspect it may be fixed on latest 21:39
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122297
21:39 denis_boyun joined 21:40 nbrown left
Mouq jnthn: I'm running spectest on OSX right now 21:41
21:41 brrt joined
Mouq So I'll check if it segfaults for me 21:41
21:46 denis_boyun left
Mouq jnthn: Seems to have worked fine for me 21:47
dalek kudo/nom: 6cc8078 | Mouq++ | src/core/ (2 files):
Add LoL postcircumfix candidates

Though semilists don't work, so @a[0;1;0,1] is still NYI, the functionality can at least be accessed via e.g. @a[LoL.new(0, 1, $(0, 1))]
21:49
ast: 52054d8 | (David Warring [email@hidden.address] | integration/99problems-51-to-60.t:
changed a few is() to is_deeply()
21:50 Akagi201 joined 21:51 brrt left
cognominal I wish print would return the value printed or fail. Most calls ignore what print returns so that could be optimized out in this cases. But there are case that would make life easier like just adding a print at the end of a function to print its return value and indeed still returning it. 21:54
21:54 Akagi201 left
cognominal is there any compelling reason to keep the current behavior? 21:55
not sure a fail value is false though :( 21:56
21:56 avuserow left
cognominal r-m: sub a { fail }; say ?a, ?a.WHAT 21:58
camelia rakudo-moar 4fd1fd: OUTPUT«FalseFalse␤»
cognominal oops 21:59
r-m: sub a { fail }; say ?a, a.WHAT
camelia rakudo-moar 4fd1fd: OUTPUT«False(Failure)␤»
Mouq only notices github.com/rakudo/rakudo/pull/171 now. 22:02
luckily, there isn't much duplicated work 22:03
22:03 avuserow joined, lustlife left
timotimo was about to say :) 22:04
it's probably not worth terribly much
my pull request, that is
Mouq I think I can make @a[0,1;1] = <foo bar> DWIM. Currently (locally) it sets both to <foo>
dalek ast: b6edc5e | (David Warring [email@hidden.address] | integration/99problems-61-to-70.t:
changed some more is() to is_deeply()
masak carlin: how'd it go? did you track down the rand_I weirdness? 22:06
22:07 avuserow left
Mouq timotimo: Why does your PR change the code in method postcirucmfix:sym<[ ]> instead of in method semilist? 22:08
And timotimo++ :)
timotimo method semilist? 22:09
lue Huh, so you can do m:g now? I thought that was handled by m:ov and m:ex
Mouq so that <semilist>.ast always produces an AST, instead of it being a super special case 22:10
Uhm
s/AST/LoL/
lol
hoelzro perl6-language would be a good place to propose additions/changes, yes?
Mouq afk for a bit 22:13
masak hoelzro: sometimes, yes. 22:14
hoelzro masak: sometimes? where else would be appropriate? (I'm guessing here)
I don't know why, but e-mail seems like a better idea for that sort of thing 22:15
masak *nod*
hoelzro I guess since it kind of escapes time zones
timotimo Mouq: that was june last year. i was not good at perl6 back then :)
masak perl6-language does occasionally dig up useful responses.
22:16 gfldex left
zengargoyle wonders if R* == R + panda + Task::Star 22:16
masak occasionally it awakens some ancient bikeshedders, with ensuing hilarity as a result.
zengargoyle: that's a good description, I think.
hoelzro ah, ok
zengargoyle modulo the R* having all modules working...
masak zengargoyle: Linux kernel : Rakudo :: Linux distribution : Rakudo Star
hoelzro masak: do you have an alternative?
I mean, I could post the ideas here
I know most of the regulars backlog quite a bit 22:17
jnthn Well, one approach is a gist and post it here.
masak hoelzro: here and p6l are the two good places I know.
jnthn And if it's not enough responses, fall back to p6l :)
lue
.oO(we need a P6-powered forums.perl6.org :P)
masak what jnthn said.
hoelzro noted =)
zengargoyle and if Task::Star actually kept up to date
hoelzro thanks masak and jnthn
itz fora! </pedant>
timotimo lue: yeah, because web forums are the best thing ever!
(if you have never seen mailing lists before)
22:17 ventica left
lue Perhaps it's just me, but I don't prefer email for long threads of discussion :) 22:18
22:19 ventica_desktop left
zengargoyle so what's the intersection between rakudobrew and pandabrew? 22:19
itz the p6 mailing lists seem fairly quiet compared with IRC and blogs 22:20
timotimo that's true
22:20 btyler left
itz I think most mailing list traffic peaked several years back 22:20
masak oh, most definitely. 22:21
doesn't mean p6l is completely useless, of course.
22:21 avuserow joined
timotimo answers are usually very swift 22:22
masak for one thing, it's one reliable way to contact TheDamian ;)
timotimo as well as well thought out and written out (all in all)
lue thinks thunderbird's lack of smartness around mailing lists may have something to do with his dislike of them.
masak decides to write a p6l email about macros
thank you, #perl6. you inspired me :)
hoelzro decommute & 22:23
itz yeah I'm using a dumber mail client (gmail) than I used to (mutt) just due to convience 22:24
mutt and the old nntp clients threaded pretty well
PerlJam mutt++
itz I've sunk to my all time low in bothering with Facebook's Perl Developers :) 22:25
lue It'd be nice if I saw my responses properly intertwined, and if the various reply buttons made any (intuitive?) sense :)
itz Facebook Group that is 22:26
22:26 Guest86586 left
itz the web based forums don't seem to have lost that early 2000s PHP look 22:27
22:27 ventica joined, skids joined
lue Hah, I just saw S99's (erroneous) definitions of TIMTOWTDI and TMTOWTDI, I'm just tempted to fix it :P 22:28
22:28 ventica_desktop joined
Mouq timotimo: Ohh, ok :) I thought maybe there was a good reason that I just didn't know about 22:36
22:51 robinsmidsrod left, Akagi201 joined 22:53 robinsmidsrod joined 22:54 ajr_ left 22:55 Akagi201 left
masak 'night, #perl6 22:58
Mouq 'night masak! 22:59
Tene 'night masak
Mouq wonders if circumfix:<[ ]> and circumfix:<( )> actually want to be parsed as semilists or statementlists in STD.pm6/Grammer.pm 23:00
lue Mouq: I want to say "statement", if only because you can describe the structure yourself with another level of parens. I'm not an expert on S09 though. 23:09
Mouq I think it should be statement too. I don't think (my $as; $as ~= 'a' for ^3) should produce LoL.new(Any, ('a', 'aa', 'aaa')), which is what the implication seems to be. 23:11
23:11 ggoebel111116 left 23:12 rurban1 left 23:13 cognome left, cognominal left
TimToady we should only use semilist where we intend a lol-ish result 23:14
lue Mouq: Yeah, that'd be bad :) I feel like semilists are meant to make multidim array access be not a pain; since you're unlikely to need multiple statements in @a[here], ; is a good choice for dimension separator.
TimToady circumfixes are supposed to be statements inside
23:14 cognome joined
TimToady unlike postcircumfixes 23:14
23:14 cognome left, cognominal joined, cognome joined
Mouq Ok :) 23:15
TimToady and if a construct wants to give semicolons yet another meaning (monads anyone? :) it would probably be yet another rule, unless we just highjack semilist for anything that treats semicolon contextually 23:16
if you squint, statementlist is kind of the IO monad, imposing sequence on side effects 23:17
23:23 jack_rabbit joined 23:24 ggoebel111116 joined 23:25 rurban1 joined 23:30 dmol left
TimToady I suppose I could see a [;] as a LoL constructor, in which case we'd have to force people to use [(;)] to have statements inside 23:30
but [] is awfully useful for "array comprehensions" in its current form 23:31
ASCII just doesn't have enough brackets... 23:33
lue Or perhaps we need an END OF STATEMENT character that looks an awful lot like a semicolon :P 23:34
23:35 ab5tract left
TimToady ⊙⨀ 23:38
⧁°⧀
timotimo is that what your eyes look like at the moment? :O
TimToady lue earns a Bill-the-Cat award
that too
timotimo ±_± 23:40
jnthn wonders how much the cat was billed...
23:40 itz_ joined
TimToady well, in terms of looks, my right eye is redder, and the pupil is still mostly dilated after two weeks-ish 23:40
but I still just keep it shut much of the time 23:41
since everything I see through it is very...sloshy...
timotimo well, you should look at other things than the perl6 specs
lue timotimo: I was thinking the same thing! :D
TimToady I only looked at 'em once, I swear, yer honour! 23:42
and I said sloshy, not slushy...
23:43 itz left
TimToady my bubble is still quite a bit bigger than my puddle 23:43
but I did get a glimpse this morning of some light beams that were mostly in focus, if I looked down at exactly the right angle, so I'm hoping as the bubble shrinks and the puddle grows, I'll get more of that 23:44
up till now though, the optics have been...slushy...
in addition to sloshy
timotimo does the eye actually rebuild the fluid by itself? or is the amount of fluid just staying constant and the eye just got inflated a bit?
TimToady oh, that would be bad; you don't want pressure excursions 23:45
timotimo OK
TimToady no, it just replaces it gradually
timotimo could have been a bit of pressure would be good to push the retina back in its place
but i'm only speculating wildly
TimToady in fact, they mix air and gas (perfluoro propane in this case) such that it absorbs at the correct rate to maintain pressure 23:46
timotimo oh, that's smart
TimToady trouble with pressure is that it kills your optic nerve, as in gluacoma
*glau
which I already killed a bit of my nerve, I think, though it's anyone's guess whether it was pressure related 23:47
23:47 thou left
timotimo mhh :\ 23:47
TimToady anyway, I'm still largely missing the bottom half of my macula
but they hadn't done the emergency surgery, that point would be moot by now... 23:48
[Coke] jnthn: yup, fixed!
timotimo well, i'm glad you seem to be getting better 23:49
TimToady feistier, anyway :)
timotimo easy to confuse :3
TimToady looks like I'll have to miss my mom's 90th birthday though, since I'd violate altitude constraints to get there, even by the coast road 23:50
23:50 xragnar_ joined, xragnar is now known as Guest44710, Guest44710 left, xragnar_ is now known as xragnar
timotimo sometimes hearing about medical procedures that are actually possible today make me pretty excited for what's to come when i get old and brittle 23:50
jnthn [Coke]: yays; I trust you're closing the ticket?
timotimo (not implying you're old or brittle, i'm thinking more like in 60 years) 23:51
jnthn This also means that the ASAN explosion nwc10++ was seeing is gone, I hope.
23:51 rurban1 left 23:52 Akagi201 joined
TimToady the rosettacode entry for rosettacode.org/wiki/Find_palindrom...ses#Perl_6 passes now too, so jnthn++ 23:52
23:53 rurban1 joined
TimToady and it runs twice as fast as when I turned off inlining :) 23:53
TimToady wonders whether the JIT would make it fasterer 23:54
I assume the JIT is still not default?
timotimo that's right, you still need to build moarvm from a branch
dalek ast: 5579f8c | coke++ | integration/99problems-51-to-60.t:
unfudge 122297, passing now.

  jnthn++
[Coke] jnthn: all done. 23:55
jnthn: happy to do ticket mongering if you're doing real coding stuff. :)
jnthn timotimo: Hm, did I read that right? It runs twice as fast with inlining? 23:56
oops
TimToady: ^^
23:56 Akagi201 left
jnthn [Coke]: Well, I've not been doing a lot of that this week, that fix aside... 23:56
23:57 rurban1 left
TimToady well, I seem to remember it took 9 minutes before, but I might be remembering the JVM run 23:57
23:58 rurban1 joined
TimToady now it's 4 minutes something 23:58
jnthn Grr, still ages...
TimToady well, it's a tough algo
even in fast languages
jnthn ah, ok
TimToady I just realized I have a stupid for loop there with only one list item...
jnthn notes the comment above the Java one: "This takes a while to get to the 6th one (I didn't time it precisely, but it was less than 2 hours on an i7)" 23:59
TimToady was X~ before, and I changed them to ~ because only the '1' in the middle can produce a ternary palindrom that will also produce a binary palindrom, for some mathematical reason