»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31
Set by jnthn on 28 February 2015.
00:13 colomon joined
LonelyGM good night #perl 6 :) 00:16
vendethiel g'night 00:20
00:21 gfldex left 00:24 aborazmeh joined, aborazmeh left, aborazmeh joined 00:25 LonelyGM left 00:43 aborazmeh left 00:48 aborazmeh joined, aborazmeh left, aborazmeh joined
dalek kudo-star-daily: fba1aaf | coke++ | log/ (2 files):
today (automated commit)
00:52
kudo-star-daily: 482f76b | coke++ | log/ (2 files):
today (automated commit)
rl6-roast-data: 2d21a10 | coke++ | / (9 files):
today (automated commit)
rl6-roast-data: 66d15a2 | coke++ | / (9 files):
today (automated commit)
00:57 skids joined, eli-se left 01:01 aborazmeh left 01:04 aborazmeh joined, aborazmeh left, aborazmeh joined, isBEKaml left 01:06 BenGoldberg left, isBEKaml joined 01:12 Rounin left 01:50 grondilu left
nbdsp .moon 02:04
yoleaux New Moon (0.01)
02:05 bcode joined 02:06 noganex joined 02:09 noganex_ left
dalek ecs: 9831c81 | skids++ | S03-operators.pod:
Remove an extra word.
02:16
02:28 atta_ is now known as atta 02:49 nbdsp left 03:20 colomon left 03:29 BenGoldberg joined 03:32 BenGoldberg left 03:45 cschwenz joined, telex left 03:46 telex joined 03:51 egrep left 03:52 egrep joined 03:56 [ptc] left 03:59 [ptc] joined 04:01 egrep left, egrepnix joined 04:02 egrepnix is now known as egrep, araujo joined 04:09 egrep left 04:11 egrep joined 04:37 aborazmeh left 04:39 isBEKaml left 04:40 isBEKaml joined 05:00 laouji joined 05:03 aborazmeh joined, aborazmeh left, aborazmeh joined 05:07 aborazmeh left 05:14 tinyblak joined 05:19 mr-foobar left 05:21 mr-foobar joined 05:25 aborazmeh joined, aborazmeh left, aborazmeh joined 05:45 Patterner joined 05:49 Psyche^ left
cschwenz From yesterday: 19:28 raydiak looks like spec changes..."source-url" was the old place to declare it, now specs say it goes in "source" in a "support" subobject...but Cairo's meta has "source-url" inside "support", so not valid either the old or new way I guess 05:54
where is the referenced spec?
skids probably design.perl6.org/S22.html 06:01
cschwenz thanks :-) 06:04
doc.perl6.org/language/modules is in conflict with design.perl6.org/S22.html#DISTRIBUTION . who (or what process) updates doc.perl6.org/ ? 06:10
skids doc is in github pel6/doc repo. I don;t know if the update scripts are in there as well. Changes to the repo auto-update within 10 minutes or so. 06:11
cschwenz thanks! :-) 06:12
skids However, there is a dichotomy between modules.perl6.org and S22.
cschwenz ???
can you explain the dichotomy?
skids S22 is intended for CPAN, IIRC, and modules.perl6.org is "the ecosystem" which predates that. 06:13
isBEKaml I think he means thatThere are no start and end dates. You can join at any time and start learning. You can pick a learning path of your choosing and learn at your own pace. modules.perl6.org do not always keep up with spec changes in S22
grr
isBEKaml really should fix the touch pad
skids (predates not CPAN itself but S22)
cschwenz does panda track S22?
isBEKaml I think he means that modules.perl6.org do not always keep up with spec changes in S22
skids I seem to recall panda getting a few updates for S22 but likely not all the way, yet. 06:15
cschwenz hmm
skids There's a lot of work needed in this area. 06:16
cschwenz so, when creating a module for deployment… there are three moving targets to take into consideration? (S22, de facto, and panda)
skids Well, the latter two are mostly the same. 06:19
For now you'll want a META.info in the current ecosystem format and then a META6.json in the S22 format.
cschwenz is there a versioned copy of S22?
skids Not sure they are stamping versions on the desgn docs quite yet. 06:20
cschwenz :-(
skids If you look at Sum (one of my modules) it has both files, if you need examples.
cschwenz okay, will do 06:21
skids The design docs are github perl6/specs.
06:23 kaare_ joined 06:30 araujo left 06:32 rindolf joined 06:35 skids left 06:43 araujo joined 06:45 araujo left 06:46 aborazmeh left, [TuxCM] left 06:49 isBEKaml left 06:50 aborazmeh joined, aborazmeh left, aborazmeh joined 07:00 lizmat joined
lizmat good *, #perl6 from the last day of the QA Hackathon on Berlin 07:03
*in rather :-)
nwc10 good *, lizmat 07:04
please pass on my good *s to everyone else.
I hope tinita is still feeling sane.
cschwenz good *, lizmat :-) 07:07
lizmat nwc10: tinita_ is still asleep, I think... :-) 07:08
or having a quiet breakfast somewhere :0) 07:09
07:11 FROGGS joined
cschwenz when creating classes, both JSON::Tiny and Sum:: have their classes start with "class X::…", why is the X there? i would have thought the main class name would have been the same as either the module or file name. 07:12
s/main/primary/
FROGGS lizmat / tadzik / bartolin_: I'm going to stay at home.... does not make much sense to spend 2+ hours in buses to be at the betahaus for not more than 3 hours
lizmat :-( but understandable :-( 07:13
07:13 minde joined
FROGGS :/ 07:13
nwc10 were the busses busses yesterday too? (or trains?) 07:14
lizmat they were busses all the time, I understand
although FROGGS only lives 1km outside of Berlin, it's still an hour's ride from his place to the Betahaus 07:15
(Berlin is not small)
FROGGS would take more time on sunday, but I dont know how much 07:16
nwc10 I thought that only London was London. If you see what I mean. 07:17
I didn't realise that Berlin was just as epic 07:18
cschwenz <soapbox> if we want truly liveable mega-cities, then we will need a shift in thinking about how we construct cities. (current modes of building cities max out around 1 million people) </soapbox> 07:20
FROGGS if there were no railworks it would take about 30 minutes to the center on business days, and about 45 to the betahaus
07:20 [TuxCM] joined 07:21 minde left
nwc10 aha, so I was sort of guessing right about rail works? 07:25
FROGGS probably... I did not get the reference about london :o) 07:26
Timbus cschwenz, generally classes that begin with X:: are exception classes 07:30
nwc10 FROGGS: it takes ages to get anywhere, unless it happens to align exactly with key transport routes 07:33
well, from anywhere arbirary to anywhere arbitrary else
bartolin_ g'morning, #perl6 07:34
FROGGS :o)
morning bartolin_
bartolin_ o/ FROGGS
07:37 aborazmeh left
FROGGS okay I learned something: the name of the SC one deserializes must be the same as the one that gets serialized 07:37
07:38 cschwenz1 joined
cschwenz1 Timbus: what do you mean by exception classes? 07:39
FROGGS m: say X::AdHoc
camelia rakudo-moar 1edd51: OUTPUT«(X::AdHoc)␤»
FROGGS cschwenz: this ^^
an exception type
cschwenz1 FROGGS: can you point me to some tutorials/docs/whatever where i can read more about them? 07:40
lizmat doc.perl6.org/type.html perhaps ? 07:41
FROGGS cschwenz: www.youtube.com/watch?v=rymhMkCUtuA
cschwenz: moritz.faui2k3.org/files/talks/2013...xceptions/ 07:42
07:42 cschwenz left
cschwenz1 thanks! :-) 07:42
07:45 cschwenz1 left, cschwenz joined 07:48 darutoko joined 07:53 rindolf left, anaeem1 joined
dalek ast: 2be443b | usev6++ | S03-sequence/basic.t:
Add tests for containers returned from seq iterator
07:56
07:56 _mg_ joined
labster m: Str.Str.codes; say "alive"; 07:59
camelia rakudo-moar 1edd51: OUTPUT«use of uninitialized value of type Str in string context in block <unit> at /tmp/o2s4ZeqSSF:1␤␤alive␤»
07:59 _mg_ left
labster m: m: Str.codes; say "alive"; 07:59
camelia rakudo-moar 1edd51: OUTPUT«Invocant requires a 'Str' instance, but a type object was passed. Did you forget a .new?␤ in method codes at src/gen/m-CORE.setting:8603␤ in block <unit> at /tmp/isVWcUVTb8:1␤␤»
labster looks like something is missing a multi candidate. 08:01
lizmat well.... 08:02
Mu.Str returns ''
labster also it's kinda hilarious that it suggests fixing CORE.setting
Because that's what I'm doing. 08:04
lizmat labster: removing D: from Str.pm lines 61,62,63 ?
labster: cause that fixes it for me 08:05
08:05 RabidGravy joined
labster Well, Str.codes should return 0 with a warning 08:06
lizmat $ 6 'Str.Str.codes'
Invocant requires a 'Str' instance, but a type object was passed. Did you forget a .new?
should it?
labster .chars does, it's the same idea. 08:07
yoleaux ' , . a d e h i m o s t
labster .botsnack
yoleaux :D
synbot6 om nom nom
labster m: Str.chars.say 08:09
camelia rakudo-moar 1edd51: OUTPUT«use of uninitialized value of type Str in string context in block <unit> at /tmp/O8fB1CG30j:1␤␤0␤»
08:10 cschwenz1 joined, cschwenz1 left, anaeem1__ joined 08:11 cschwenz1 joined, anaeem1 left
labster Is str $!value in class Str equivalent to the result of nqp::unbox_s()? 08:11
lizmat yeah, was just looking at that, but yeas 08:12
*yes
according to BOOTSTRAP.nqp anyway
labster Because I think there are a lot of methods in Cool.pm that can be made faster by removing the unboxing op in Str.pm. 08:13
lizmat Str.HOW.add_attribute(Str, BOOTSTRAPATTR.new(:name<$!value>, :type(str), :box_target(1), :package(Str)));
labster Yeah, I saw that line, just didn't know how to interpret it :) 08:14
08:14 cschwenz left, cschwenz1 left
lizmat has str $!value is box_target # in Perl 6 code 08:14
08:15 anaeem1__ left
labster Yeah, it's the "is box_target" part I'm less clear on. I don't really know NQP, but I think I'm learning. 08:15
08:16 araujo joined, anaeem1_ joined
lizmat afaik, box_target is what is used to encapsulate self 08:16
so nqp::unbox_s(self) is the same as $!value
(someone please correct me if I'm wrong) 08:17
FROGGS: making CURLI even more lazy by doing the from_json (or whatever we're using) inside candidates() once? 08:18
instead of in BUILD ?
labster Well, for now, the opinion of lizmat++ is good enough for me. I'm going to try moving some methods from Cool.pm to Str.pm and see if I can find some speed improvements. 08:22
08:23 MARTIMM joined 08:27 gfldex joined
tadzik FROGGS: ah, okay :( 08:29
08:30 cschwenz joined
FROGGS lizmat: yes, that might make sense 08:33
unless the common case is to use a module
lizmat yes, but probably not from all CUR's at once 08:34
08:34 rindolf joined 08:35 cschwenz is now known as cschwenz_
FROGGS lizmat: true 08:35
lizmat FROGGS: especially if you're developing a module, it will most likely live in a CURLF anyway
08:35 cschwenz_ is now known as cschwenz
lizmat and not get to the CURLI 08:35
FROGGS yes, on the other hand you probably load the modules from the biggest CURLI 08:36
(non-dev stuff)
08:36 cschwenz is now known as cschwenz_
lizmat will, I think the extra check would be dwarved by the CPU used for the search 08:36
so the gain of not having to do it when *not* needed, could be significant in many use situations 08:37
one could even go so far as to create a separate CURLI for e.g. the whole of CPAN / ecosystem
08:37 cschwenz_ is now known as cschwenz1
lizmat and a smaller CURLI with the ones you need regularly :-) 08:38
08:38 leont joined, cschwenz1 is now known as cschwenz
bartolin_ FROGGS: wrt the freebsd failure with closing a pipe: do you think the following would be sane: github.com/usev6/MoarVM/commit/a3c1c21987 08:38
FROGGS: (it passes spectests on freebsd and linux for me) 08:39
08:44 MARTIMM left 08:45 anaeem1_ left, anaeem1 joined 08:49 cschwenz left 08:50 cschwenz joined, anaeem1 left
dalek kudo/nom: 788834d | lizmat++ | t/harness:
Don't show Inline::Perl5 message for specific test
08:51
FROGGS bartolin_: I dunno
nwc10: can you judge? github.com/usev6/MoarVM/commit/a3c1c21987
08:55 eli-se joined
masak good antenoon, #perl6 08:57
moritz \o masak 08:58
08:58 nbdsp joined, travis-ci joined
travis-ci Rakudo build passed. Elizabeth Mattijsen 'Don't show Inline::Perl5 message for specific test' 08:58
travis-ci.org/rakudo/rakudo/builds/59101185 github.com/rakudo/rakudo/compare/1...8834d4606a
08:58 travis-ci left
FROGGS hi masak 08:58
08:59 dolmen joined
moritz m: say unival [1] 09:00
camelia rakudo-moar 1edd51: OUTPUT«Cannot call unival(Array); none of these signatures match:␤ (Str $str)␤ (Int $code)␤ in block <unit> at /tmp/dSCSbOzJT0:1␤␤»
moritz m: say univals [1]
camelia rakudo-moar 1edd51: OUTPUT«Cannot call univals(Array); none of these signatures match:␤ (Str $str)␤ in block <unit> at /tmp/wAeMoJMQvY:1␤␤»
moritz m: say unival "12foo" 09:01
camelia rakudo-moar 1edd51: OUTPUT«1␤»
moritz m: say [1].unival
camelia rakudo-moar 1edd51: OUTPUT«Cannot call unival(Int); none of these signatures match:␤ (Str $str)␤ (Int $code)␤ in method unival at src/gen/m-CORE.setting:4755␤ in block <unit> at /tmp/JO3PQphJ2d:1␤␤»
moritz it's a bit weird to have method unival in Cool, but not coerce
I mean, what's the point? 09:02
m: say '¾a'.univals 09:04
camelia rakudo-moar 1edd51: OUTPUT«0.75 NaN␤»
moritz m: say '¾'.univals.^name 09:05
camelia rakudo-moar 1edd51: OUTPUT«List␤»
moritz m: say '5'.ord.unival 09:06
camelia rakudo-moar 1edd51: OUTPUT«5␤»
dalek c: a87aab2 | moritz++ | lib/Type/ (2 files):
unival, univals
09:09
c: b6d9fb1 | moritz++ | WANTED:
update WANTED
nwc10 FROGGS: I think that that commit is reasonable. I'm a bit surprised that the waitpid() call is blocking (I thought we were deep down trying to be a non-blocking event loop) 09:25
FROGGS: according to the docs, the only time you get a return value of EINTR is if it was interrupted by a signal
so I think it it's safe to loop on it 09:26
09:26 TimToady left
FROGGS k 09:28
09:28 TimToady joined
FROGGS we have to block for a spawned process to get its exit status... and I dont know other way to do that 09:28
lizmat I assume "use nqp" should have the same scope semantics as "use fatal", right ?
FROGGS probably, yes 09:29
lizmat as in: only allow in the scope that has nqp:: calls, but not in inner scopes ?
FROGGS only lexical inner scopes, but not scopes you call into 09:30
so this should be valid I think: use nqp; sub foo { nqp::whatever(); for ^2 { nqp::alsothat() } } 09:31
so 'use nqp' needs to set a lexical/local variable, and we need to check for that when calling nqp ops somehow 09:34
tadzik hmm, in Perl 6 grammars, where do you put :Perl5/:P5 to make it work?
FROGGS but I think it is easy to get wrong / unperformant
m: grammar G { rule TOP { :P5 \N{EURO SIGN} } }; say G.parse('€') 09:36
camelia rakudo-moar 788834: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7lh2_Z5EvA␤Unrecognized regex modifier :P␤at /tmp/7lh2_Z5EvA:1␤------> 3grammar G { rule TOP { :P7⏏055 \N{EURO SIGN} } }; say G.parse('€')␤»
FROGGS tadzik: this is meant to work I think
RabidGravy with NativeCall if one has a C prototype like "void syslog(int priority, const char *format, ...);" how does one present the additional arguments? 09:42
FROGGS RabidGravy: varargs? these are not yet implemented :o( 09:43
RabidGravy: I imagine they will just end up as a slurpy positional 09:44
RabidGravy right, fake it up time then ;-)
FROGGS yeah :/ 09:49
tadzik FROGGS: or, maybe even a better question: is there any working code in the wild that generates grammars?
like, does add_method('TOP', m{arysnraysn}) 09:50
maybe that'd Just Work
09:52 isBEKaml joined
dalek kudo/nom: 227cc6f | lizmat++ | src/Perl6/Grammar.nqp:
Centralize use/no token handling
09:52
lizmat tadzik: jnthn.net/papers/2013-yapcna-gramma...nerate.pdf 09:54
FROGGS lizmat: that talk was about generating text from datastructures using grammars 09:58
tadzik: IIRC someone tried and failed to add tokens/rules 09:59
lizmat ok, I guess I was just looking at "generating" and "grammars" :-)
FROGGS :o)
tadzik FROGGS: right. You can add methods, but you'd need to know what is the perl 6 method code equivalent to 'token Foo {blablabla}' 10:00
FROGGS aye 10:02
which is not trivial at all
so we probably want a .^add_rule and .^add_token
or so
vendethiel o/, #perl6 10:03
FROGGS hi vendethiel
tadzik /usr/bin/ld: /home/tadzik/.plenv/versions/5.20.0/lib/perl5/5.20.0/x86_64-linux/CORE/libperl.a(op.o): relocation R_X86_64_32S against `PL_sv_yes' can not be used when making a shared object; recompile with -fPIC 10:05
/home/tadzik/.plenv/versions/5.20.0/lib/perl5/5.20.0/x86_64-linux/CORE/libperl.a: error adding symbols: Bad value
nine: ^
nine tadzik: recompile with -fPIC?
yoleaux 18 Apr 2015 19:07Z <nbdsp> nine: thanks, for advise about CArray[int8]!
tadzik recompile what :)
it worked before
FROGGS: huh. It just works :o 10:09
r: gist.github.com/tadzik/626b00a9c7e26228979e
camelia rakudo-moar 788834: OUTPUT«「yaaaaaaay」␤»
..rakudo-jvm 788834: OUTPUT«cannot connect to eval server: Connection refused␤»
tadzik FROGGS: ^ 10:10
FROGGS O.o 10:11
nine Inline::Perl5 builds just fine here
FROGGS ahh of course
nine ==> Successfully installed Inline::Perl5
10:11 spider-mario joined
tadzik huh 10:12
FROGGS the regex gives you the right code object
nice
[TuxCM] rebuilds 5.20.2 without debugging ...
tadzik FROGGS: now this is a problem: 10:14
r: "yayayayaaay" ~~ regex :Perl5 { [ya]+y }
camelia rakudo-jvm 788834: OUTPUT«cannot connect to eval server: Connection refused␤»
..rakudo-moar 788834: OUTPUT«===SORRY!===␤Cannot invoke this object (REPR: P6opaque, cs = 0)␤»
tadzik so Perl 5 regexes are not invokable
but are they interpolatable in Perl 6 regexes? :D
FROGGS m: say "yayayayaaay" ~~ m:P5 { [ya]+y } 10:18
camelia rakudo-moar 788834: OUTPUT«False␤»
FROGGS m: say "yayayayaaay" ~~ regex { :P5 [ya]+y } 10:19
camelia rakudo-moar 788834: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gMhZED_2vC␤Unrecognized regex modifier :P␤at /tmp/gMhZED_2vC:1␤------> 3say "yayayayaaay" ~~ regex { :P7⏏055 [ya]+y }␤»
tadzik m: say "yayayayaaay" ~~ m:P5 {[ya]+y}
camelia rakudo-moar 788834: OUTPUT«「yayayayaaay」␤»
tadzik :o
FROGGS m is a quoting construct, regex is a declarator
tadzik yes
but I tried anyway :P Method 'match' not found for invocant of class 'Any'
FROGGS making the :P5 regex modifier work should not be that hard btw... it is just I'm still working on the serialization stuff 10:20
ab5tract FROGGS: regarding serialization -- are you using any existing libraries for that? 10:21
FROGGS ab5tract: no, just nqp ops 10:22
ab5tract FROGGS: okay. I was going to point to Sereal as a good existing option that has some nice features for supporting dynamic languages 10:25
github.com/Sereal/Sereal
for binary serialization, specifically. which I guess may not be what you are currently hacking on? 10:26
I am pretty sure that it is meant to be explicitly Artistic licensed, but I will ask after that 10:29
10:29 Rounin joined 10:30 mohij joined
dalek kudo/nom: 43db2d5 | lizmat++ | / (4 files):
Make use/no nqp a pragma
10:30
FROGGS ab5tract: it is about serializing Perl 6 datastructures, which is exactly what we do when we precompile modules... so I do just the same 10:32
masak .oO( it is about ethics in game journalism ) 10:33
tadzik masak, stahp 10:34
masak blames his pattern-matching abilities
10:34 FROGGS_ joined
leont nine: found it 10:36
10:38 tinyblak left, FROGGS left 10:40 tinyblak joined 10:52 yvan1 left
dalek pan style="color: #395be5">perl6-examples: c4c99b9 | paultcochrane++ | lib/Pod/Htmlify.pm6:
Extract repeated metadata collection code into its own routine
10:53
pan style="color: #395be5">perl6-examples: 3dfe034 | paultcochrane++ | lib/Pod/ (2 files):
Revert commit 974e959

This had removed the wrong pod-insertion code.
pan style="color: #395be5">perl6-examples: f650e84 | paultcochrane++ | lib/Pod/Htmlify.pm6:
Stop adding source code when no pod in source

  ... and this time do it in the right place!
leont paste? 10:54
10:56 espadrine joined
dalek kudo/nom: 9861648 | lizmat++ | src/Perl6/Actions.nqp:
Sample code handling nqp::ops without 'use nqp'
10:58
lizmat so what *are* we going to do if something has nqp::foo without use nqp ???
options: die, warn, deprecated type message ? 10:59
dalek ast: 4729c24 | usev6++ | S32-exceptions/misc.t:
Don't test for error message "will never work"
11:01
eli-se delete offending code 11:10
vendethiel damn
lizmat eli-se: that would be close to rm -rf ecosystem
eli-se works pretty well in practice; see github.com/munificent/vigil
vendethiel aug 2014 is "2 years ago" for github? what? 11:12
lizmat
.oO( brought to you from the future :-)
DrForr "15 minutes into the future" 11:14
RabidGravy has anyone indicated that they are thinking about making a logging framework?
timotimo has considered making a lagging framework 11:15
dalek pan style="color: #395be5">perl6-examples: dc21a89 | paultcochrane++ | categories/interpreters/ (3 files):
Document 'interpreters' category examples
pan style="color: #395be5">perl6-examples: 7ab417d | paultcochrane++ | categories/interpreters/calc.p6:
Wrap main code in MAIN sub
11:15 lolisa joined
eli-se here's my logging framework: IO, map and grep. 11:16
RabidGravy :-O 11:17
eli-se here's how you filter by level: messages.grep(*.level != DEBUG)
dalek ecs: b41dada | lizmat++ | S (5 files):
s/MONKEY_TYPING/MONKEY-TYPING/
lizmat DrForr: 15 minutes is enough, as long as you can recurse :-) 11:18
eli-se all that is useful that a logging library can still offer is a log record struct and a logging DSL 11:19
DrForr that's a Promise.
eli-se and perhaps a formatting thing. supplies are sufficient for everything else
DrForr Must...resist...UHF joke. 11:20
timotimo don't change the channel 11:21
don't touch that dial!
we have it all on UHF! 11:22
eli-se but none of that filter and handler stuff that are crappy substitutes for callables and supplies
DrForr Kick off your sneakers, stay around for awhile
11:27 colomon joined 11:29 mr-foobar left, tinyblak left
ab5tract FROGGS_: okay, I wasn't sure if the work was going into Storable territory or not 11:31
11:32 laouji left
FROGGS_ ab5tract: if it is good enough for an internal thing it might be also good enough as a general purpose module... 11:32
11:32 laouji joined
FROGGS_ ab5tract: the good thing about the used nqp ops is that we also can serialize routines that way 11:33
11:34 colomon left
nbdsp Greetings! Could someone advise please how to correctly update Rakudo from Git? When I do 'git pull', 'make', 'make install' I get then an error "Missing or wrong version of dependency 'src/gen/m-CORE.setting' " when using some module or when installing some module with "panda install ...". Clean new install of Rakudo solves the problem, but how to correctly update from git? 11:36
RabidGravy make distclean? at a guess
masak nbdsp: after 'git pull', you'll want something like 'perl Configure.pl --gen-moar --gen-nqp --backends=moar'
lizmat git pull/make/make install usually works for me
masak nbdsp: that should fix it.
lizmat also, if you have strange errors: rm -rf install 11:37
masak nbdsp: very occasionally, it doesn't. than I... what lizmat said.
11:37 mr-foobar joined
nbdsp thanks! will try. 11:37
dalek pan style="color: #395be5">perl6-examples: fbb5baa | (Steve Mynott)++ | / (2 files):
fix ?? precedence
11:38
pan style="color: #395be5">perl6-examples: caf2efe | (Steve Mynott)++ | / (5 files):
Merge branch 'master' of github.com:perl6/perl6-examples
lizmat .tell jnthn I want to eradicate 'use' from the settings (we discussed this before, a long time ago)
yoleaux lizmat: I'll pass your message to jnthn.
lizmat .tell jnthn use Perl6::BOOTSTRAP would then become something like 'bootstrap-from-nqp Perl6::BOOTSTRAP' 11:39
yoleaux lizmat: I'll pass your message to jnthn.
lizmat .tell jnthn that would allow us to handle "use" / "require" / "need" etc completely from Perl6 11:40
yoleaux lizmat: I'll pass your message to jnthn.
lizmat .tell jnthn with associated flexibility and compile time pluggability
yoleaux lizmat: I'll pass your message to jnthn.
masak ++lizmat # sounds worthy
lizmat .tell jnthn allowing something like: "use Inline::Python; use FooLib<from:python>" 11:41
yoleaux lizmat: I'll pass your message to jnthn.
lizmat spend the better part of the past 24 hours finding 3.5 codepaths that load modules 11:42
there should really be only 2: one for bootstrapping, one for all the others
FROGGS_ but use Inline::Python; use FooLib:from<python> already works, no?
11:43 tinyblak joined
masak .oO( watch the new episode of Three And A Half Codepaths ) 11:43
boarding a train & 11:44
FROGGS_ but yeah, having another codepath for nqp-ish module loading and one for P6ish sounds sane 11:45
11:49 rivarun left 11:50 rivarun joined 11:51 eli-se left, BenGoldberg joined 11:53 dolmen left 11:54 nbdsp left 11:55 Rounin left 11:56 Rounin joined, colomon joined
timotimo look at the wiktionary article on "apocalypse", example sentence of meaning 1 is about perl6 ... 12:05
tadzik :D
indeed 12:06
12:09 Gothmog_ left 12:10 Gothmog_ joined
itz is there anything outside of vim which colourises perl6? 12:18
tadzik github :)
RabidGravy print it out, use crayons ;-)
12:19 rmgk is now known as Guest74755, rmgk_ joined, Guest74755 left, rmgk_ is now known as rmgk
dalek pan style="color: #395be5">perl6-examples: 7c69243 | (Steve Mynott)++ | htmlify.pl:
add cookbook chapter nos and sockets reference
12:20
itz thinks RabidGravy colourises his code with spilt beer 12:21
[ptc] itz: pygments does, but you want that in an editor I'm assuming... 12:22
12:24 colomon left
itz I was thinking for perl6-examples 12:24
[ptc] my plan was to use the pygments code which docs.perl6.org uses 12:25
itz ah cool
moritz Text::VimColor is also an option
12:25 RabidGravy left
itz ptc: I was wondering about a quick hack to remove the # vim: line as well 12:25
[ptc] itz: have a look at how htmlify.p6 in perl6/doc does it, if you're looking for inspiration :-) 12:26
12:26 laouji left
itz will do 12:27
[ptc] itz: quick hack currently being implemented 12:28
dalek kudo/nom: bc7b4fa | lizmat++ | src/Perl6/ModuleLoader.nqp:
Some more debugging info
12:31
kudo/nom: ecfb15c | lizmat++ | src/core/CompUnitRepo.pm:
Don't specify "load" if there is none
12:31 laouji joined
spider-mario I have used pygments’ perl6 lexer to colorize Turtle “code” 12:36
it works quite well 12:37
it recognizes @prefix and <…>
12:38 RabidGravy joined 12:39 colomon joined
spider-mario hm, interestingly, it doesn’t seem to work that well on github 12:39
moritz github has stopped using pygments, iirc 12:41
12:41 colomon left 12:47 cschwenz left
[ptc] we need to convince github to implement perl6 highlighting somehow. Dunno how though :-/ 12:48
12:51 lolisa left 12:52 Rounin left 12:53 yvan1 joined
dalek pan style="color: #395be5">perl6-examples: dbcf8ec | (Steve Mynott)++ | categories/cookbook/ (13 files):
flesh out pod more
12:53
tadzik gists do have Perl6 hilighting 12:54
moritz [ptc]: by opening an issue? 12:57
dalek pan style="color: #395be5">perl6-examples: 5b3e591 | paultcochrane++ | lib/Pod/Convenience.pm6:
Remove vim coda from source code in html
13:04
pan style="color: #395be5">perl6-examples: 257224f | paultcochrane++ | categories/cookbook/ (13 files):
Merge branch 'master' of github.com:perl6/perl6-examples
13:04 lolisa joined 13:05 dolmen joined 13:06 tinyblak left
dalek ast: aa419eb | usev6++ | S02-literals/pairs.t:
Use throws_like with EVAL

  (tests are still not specific but don't rely
on being caught at runtime)
13:08
13:15 kaare_ left 13:20 andreoss joined, xtreak joined
andreoss m: my @s := False, False, True ... *; @s[1000]=False; say @s[1000] 13:20
camelia rakudo-moar ecfb15: OUTPUT«Cannot assign to a readonly variable or a value␤ in method ASSIGN-POS at src/gen/m-CORE.setting:2233␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3459␤ in block <unit> at /tmp/6PdscrqrYO:1␤␤»
andreoss m: my @s := False, False, True ... *; say @s.perl; 13:22
camelia rakudo-moar ecfb15: OUTPUT«(ListIter.new,)␤»
andreoss what's wrong here? 13:23
m: my @s = lazy False, False, True ... *; @s[1000]=False; say @s[1000] 13:25
camelia rakudo-moar ecfb15: OUTPUT«False␤»
13:28 rurban_ joined
dalek kudo/nom: 1659550 | lizmat++ | lib/Test.pm:
throws_like Str will EVAL in the scope of caller
13:31
13:38 rurban_ left
lizmat m: my @a := False,True; say @a; @a[1] = False 13:40
camelia rakudo-moar ecfb15: OUTPUT«False True␤Cannot modify an immutable Bool␤ in method ASSIGN-POS at src/gen/m-CORE.setting:9320␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3459␤ in block <unit> at /tmp/NvSi5VLpFf:1␤␤»
dalek ast: cdf3ea4 | usev6++ | S32-exceptions/misc.t:
Fix two tests now EVAL'd in scope of caller
lizmat andreoss: ^^ perhaps the same thing ?
andreoss: I mean my code, not the commit message
13:41 tinyblak joined 13:42 silug left 13:43 mr-foobar left
dalek ast: b0b8187 | usev6++ | S02-literals/pairs.t:
Use "throws_like '$code'"
13:49
13:51 zakharyas joined, diana_olhovik_ joined, kbenson joined
tadzik jnthn: are you around, perchance? 13:53
14:02 skids joined, anaeem1_ joined, anaeem1_ left 14:11 aborazmeh joined, aborazmeh left, aborazmeh joined, andreoss left
dalek ast: 2f3f43e | usev6++ | S02- (2 files):
Change to EVAL'd form of throws_like
14:12
DrForr tadzik: Panda question for ye - I'm getting the (rakudo) error 'Usupported serialization format version 12' (without the tyop) when attempting to run 'panda install Debugger::UI::CommandLine'. I've pulled panda from the git repo 10 minutes ago, and rakudobrew'd the latest maybe an hour ago. I assume I need to blow away a directory somewhere and rebuild? 14:13
tadzik DrForr: ow. Yeah, nothing else comes to my mind 14:14
dalek kudo/nom: ee40c0e | lizmat++ | src/ (2 files):
Eradicate 'use' from CORE settings

First step to sanitizing the 3.5 code paths to loading a compilation unit.
DrForr Fair enough.
tadzik rakudobrew nuke moar && rakudobrew build moar && rakudobrew switch moar && rakudobrew build panda && panda install Debugger::UI::CommandLine
this *should* be foulproof
er 14:15
foolproof, yeah :)
DrForr Obviously I have to self-upgrade first :)
14:16 aborazmeh left
tadzik oh yes :) 14:16
jnthn tadzik: Yes, for a little bit :)
yoleaux 11:38Z <lizmat> jnthn: I want to eradicate 'use' from the settings (we discussed this before, a long time ago)
11:39Z <lizmat> jnthn: use Perl6::BOOTSTRAP would then become something like 'bootstrap-from-nqp Perl6::BOOTSTRAP'
11:40Z <lizmat> jnthn: that would allow us to handle "use" / "require" / "need" etc completely from Perl6
11:40Z <lizmat> jnthn: with associated flexibility and compile time pluggability
11:41Z <lizmat> jnthn: allowing something like: "use Inline::Python; use FooLib<from:python>"
tadzik jnthn: gist.github.com/tadzik/7e7fcb0dfaf9be7dd9d9 funny riddle for you :)
tl;dr: a "token {}" object can only be passed once, otherwise it gets broken in transport 14:17
lizmat jnthn: after consultation with masak and FROGGS_, I just went for it
jnthn lizmat: We're not putting in anything magical like a "bootstrap-from-nqp", if nothing else we are going to just check that --setting=NULL was passed and assume we should call the approprite things on $*W to do it. 14:18
No point adding special syntax when we can just wedge it in somewhere around -M handling.
So that makes it simpler, even.
lizmat so no setting should assume loading Perl6::BOOTSTRAP ? 14:19
I can do that :-)
jnthn lizmat: Note tha it's not "no setting" which defaults to CORE, but rather an explicit --setting=NULL 14:20
lizmat: But we hang more things off that peg already.
lizmat found it
jnthn lizmat: See the line "unless %*COMPILING<%?OPTIONS><setting> eq 'NULL' {" for example :) 14:21
ok :)
lizmat yeah that one :-)
jnthn Except that's an unless and you're doin an if :) 14:22
Note that use is still going to have to go through $*W
Since it needs to do some code-gen
But it can from there call Perl 6 code.
tadzik: Can you try nqp::decont($<bottom>.ast[0]) ? 14:23
tadzik jnthn: ...that works 14:24
so, putting it in anything containerizes it
and I don't want that, right?
it worked! 14:25
THIS CHANGES EVERYTHING
jnthn tadzik: Yeah, I may well fix add_method :) 14:26
So you needn't do that hack.
tadzik jnthn: we were just thinking with sjn that add_method could perhaps say "WTF this is containerized (╯°□°)╯︵ ┻━┻" 14:27
(or any metamodel method) 14:28
jnthn yeah, building a fix now
Could you do a roast test for it?
lizmat: About nqp::op I think they need to give deprecation warning if used without nqp::op 14:31
Sorry
if used without *use nqp* :)
lizmat ok
jnthn lizmat: Last I checked, though, I noticed that nothing in Perl6::Grammar used deprecations
14:31 dolmen left
lizmat what is the way to get at the line number at that point ? 14:31
jnthn lizmat: And then wondered if that is because nobody figured how to do the plumbing.
lizmat I think the plumbing can be handled :-) 14:32
skids tadzik: JFYI, I install rakudo in a different path, and this has caused no end of rakudobrew/panda problems. Seems a different problem every week these days :-)
tadzik skids: :o
14:33 kaare_ joined
skids tries tadzik's foolproof recipe, with an instal path, and some extra deleting to start. 14:34
dalek kudo/nom: c94393f | lizmat++ | src/ (2 files):
Hardwire the bootstrap, jnthn++
14:35
jnthn lizmat: Search for HLL::Compiler.lineof in src/Perl6/World.pm
lizmat jnthn: okidoki
jnthn lizmat: Or even better example, SET_FILE_LINE 14:36
That has file and line number retrieval
dalek ast: 03018ed | usev6++ | S14-roles/mixin.t:
Unskip passing test for rakudo.jvm (RT #119371)
14:38
synbot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=119371
lizmat I only need the line number initiall 14:41
y
dalek kudo/nom: 9890d88 | jnthn++ | src/Perl6/Metamodel/M (2 files):
Missing nqp::decont on method additions.

Fixed meta-programming bug reported by tadzik++.
14:43
tadzik sjn: 14:44
sjn++ is onto the roast test :)
jnthn++ Thanks!
you know what I have, you know what I have?
lizmat .... ? 14:45
tadzik A SURPRISE \o/
jnthn Aww, I was hoping for cake!
DrForr THE CAKE IS A LIE.</obRef> 14:46
tadzik jnthn: I wrote a module that generates Perl 6 Grammars from BNF grammars 14:47
jnthn tadzik: Much wow!
tadzik++
tadzik \o/
DrForr tadzik: Quelle coincidence, I'm debugging an ANTLR4 grammar parser for much the same reason :)
tadzik :)
jnthn: have you seen the Qt profiler too? 14:48
14:48 laouji left, dayangkun joined
tadzik (on the note of advertising my products) 14:48
jnthn tadzik: I didn't have chance to look closely yet, but saw a screenie :) 14:49
Looks cool :)
tadzik \o/
14:49 Rounin joined
tadzik doesn't do half of what your does, but it needs less than a second to load a 20MB file 14:49
14:49 orevdiabl left
tadzik timotimo also said that an angular upgrade may help a lot with the webui too 14:50
skids tadzik: now just adapt it for ASN.1 (You do not actually want to try this, ASN is pathological :-)
14:50 dayangkun left
DrForr I've been segfaulting the grammar engine the last few days ;) 14:50
jnthn ASN = A Sordid Notation? :) 14:51
skids Abstract Syntax Notation
lolisa Does it has anything todo with AST?
tadzik 2 things
(☞゚ヮ゚)☞ 14:52
jnthn DrForr: Is that RT #124333?
synbot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=124333
jnthn DrForr: If so, does "SEGV the compiler" mean that it actually crashes while compiling?
14:52 revdiablo joined
skids lolisa: No, it is self-modifying BNF where they forgot to put in semicolons to help the parser. 14:52
tadzik jnthn: oh, I also found a way to segfault the compiler :)
jnthn tadzik: Did you put yours in RT? :P
DrForr Segfaults while running the tests. It's a helluva waterbed as well. 14:53
lolisa Don't get it... You mean index "+" := plus kinds of stuff? Any link?
geekosaur the right way to do ASN.1 is to use someone else's library
tadzik jnthn: not yet :)
dalek ast: 39edd9f | usev6++ | S02-names-vars/names.t:
Use typed exeption (1 test); use EVAL'd form of throws_like (4 tests)
jnthn DrForr: OK, I'll try and reproduce it tomorrow when I'll have lots of time when I can concentrate well and don't have distractions :)
DrForr jnthn: Yes, RT #124333
synbot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=124333
skids geekosaur: nobody's library does ASN "right" either.
geekosaur yes, but it becomes someone else's problem :) 14:54
14:54 laouji joined
DrForr I'm pretty sure it's to do with either the UnicodeLetter declaration, or a left-recursive declaration on 'in'. 14:54
geekosaur lolisa: ASN.1 is an attempt at supporting typed binary data streams. the spec is pathological and implementations are painful
lolisa Thx. Find it on wiki 14:55
skids lolisa: www.itu.int/ITU-T/studygroups/com1...0-0207.pdf # base ASN.1 spec. It will fry your brain.
lolisa: sites.google.com/site/ramaswamyr/a...sing-asn-1 # a good article on why ASN.1 is ugly 14:56
lolisa Thx... I just though it is some theoretical stuff... Sorry but I am not very interested in it :) 14:57
DrForr jnthn: I'll also warn you the code is very fragile. It's got nothing to do with tests that pass or don't pass, all I have to do is comment out one test and the problem goes away. Or comment out a grammar rule. 14:58
jnthn DrForr: Well, if it's GC related, or memory corruption related, I have means to provoke it. :) 14:59
DrForr valgrind++ # I'm guessing :)
14:59 spider-mario left 15:00 colomon joined
dalek ast: d100d7c | usev6++ | S02-names-vars/names.t:
Revert use of typed exception (39edd9fa0a)

X::Method::NotFound looks wrong, actually
15:00
DrForr I'd guess GC or related, but I don't have the tools/skillset to tackle the problem here. Yet.
Also, while I was working on perl6-readline, I noticed that GNU libreadline exports variables as well as functions. Is there a binding yet in NativeCall for that? 15:03
jnthn I think so 15:04
I think FROGGS++ implemented that a while ago
dalek osystem: d2279e8 | tadzik++ | META.list:
Add Grammar::BNF
tadzik \o/
jnthn \o/
DrForr Okay, I'll look. I didn't see that mentioned in docs, but I figured it was just there but silent.
15:05 colomon left
DrForr (though there's a crashing bug in that module too.) 15:05
skids Could someone pull PR #405 into rakudo please? 15:06
Oh dear it has picked up a merge conflict since.
skids wonders how to see such a conflict in github UI. 15:08
tadzik jnthn: btw, that localized $/ in the gist; we shotgun-coded it in so it works, but should it really be necessary?
jnthn DrForr: Well, due to the nature of NativeCall there's plenty of ways to get SEGVs by mis-using the module that we can't do anything about, since there's no introspection API to see if you're calling the C code right :) 15:09
DrForr Oh, that was a separate issue.
jnthn tadzik: Yes
tadzik: Your alternative solutions are to "$/ is copy" in the signature, or just not call the thing you bind in the signature $/ 15:10
(But then you can't say $<...>
)
tadzik right
15:10 cschwenz joined
jnthn I think you have the first case of needing to deal with that issue I've seen where I can't say "bah, you're doing 2 pass parsing, you deserve the pain" :P 15:11
FROGGS_ DrForr: there is a sub called cglobal
DrForr I don't mind SEGVing because I did something stupid, this was that I couldn't invoke a binding because the compiler didn't consider typed arrays correctly.
jnthn Ah
Maybe NativeCall ain't using 6pe right yet :)
DrForr cglobal, gotcha.
dalek ast: 78f18c3 | (Salve J. Nilsen)++ | S12-meta/grammarhow.t:
Test if one can pass containerized values to GrammarHOW.^add_method
tadzik sjn++
15:12 cschwenz left, cschwenz joined
tadzik where does dalek get nicknames from these days? 15:12
FROGGS_ rakudo/CREDITS 15:14
15:17 robinsmidsrod left
DrForr Hrm, my name seems to have gotten skipped (from Parrot days, I was release manager after Simon.) 15:18
15:19 robinsmidsrod joined
timotimo o/ 15:22
jnthn: i finally figured out why my mast_localref stuff was the b0rk
FROGGS_ m: use NativeCall; say &cglobal.signature 15:23
camelia rakudo-moar 9890d8: OUTPUT«(Any $libname, Any $symbol, Any $target-type)␤»
FROGGS_ introspection++
hi timotimo
timotimo turns out i locally overrided $res_kind so i ended up with NQPMu (probably) in the $res_kind at the end of compile_var, which the rest of the compiler interpreted to mean "generate a new register that's nulled and use that henceforth"
DrForr Aha, thanks.
timotimo jnthn: i'm not exactly sure what a variable that's decl'd to be a localref would ... do ... ? 15:25
except if it's a parameter; in that case it can make sense to me
15:28 laouji left 15:29 cschwenz left
timotimo i suppose i should build the same tests for lexicalref/lexical that i've built for localref/local 15:30
jnthn timotimo: Same as if it's decl'd as a lexicalref
timotimo: It's an obj type register and you may bind to it
lizmat jnthn others: how would I do: @*NQP_VIOLATIONS[$line].push($op)
in nqp (Grammar) ?
timotimo jnthn: OK, so i'd op<bind> something that'd decl'd local but referenced in localref scope into the localref'd thing? 15:31
jnthn timotimo: If you access it as a localref you get the thing in the register
timotimo: If you access it as a local then you get it decont'd. 15:32
timotimo and if i access it as a local, i get the value
jnthn decont_[ins]
*nod*
timotimo OK, that makes a lot of sense
jnthn lexical and lexicalref behave the same way
timotimo good, i think i can make tests for that
jnthn We need them to be very close semantically since we lower lexicals to locals.
15:32 zakharyas left
timotimo right 15:32
and maybe even build the pieces of the optimizer that do the lowering later today
jnthn lizmat: I'd...not do it like that as the array will end up sparse? 15:33
15:33 eli-se joined
jnthn lizmat: I'd probably keep a %*NQP_VIOLATIONS 15:33
lizmat even keyed to line number ?
I mean, how many lines do we expect in a compunit ?
jnthn No, I'd key it on the op
%*NQP_VIOLATIONS{$op} 15:34
*or
*or*
lizmat that doesn't make sense from a deprecation message point of view, I would think
jnthn Why? Don't you want to know what you did, and where you did it?
dalek pan style="color: #395be5">perl6-examples: 7704d1a | (Steve Mynott)++ | categories/interpreters/RPN.pl:
remove duplicate line
jnthn And grouped by where?
uh, grouped by *what*
15:34 BenGoldberg left
jnthn Anyway, easiest way is to just keep an array of violations if you don't need any grouping 15:35
moritz nqp:: is easy enough to grep for
group by file name?
jnthn @*NQP_VIOLATIONS.push([$op, $line])
lizmat but the fix is not changing each call, the fix is adding an "use nqp" as the simplest solution
15:35 xtreak left
lizmat to the applicable scope 15:35
jnthn lizmat: Fair enough, then just keep one violation or a list of violations.
15:36 BenGoldberg joined
jnthn lizmat: There's no auto-viv in NQP 15:36
lizmat this is different from the other deprecation messages where you would need to change actual calls
I know
but somehow I lack the foo to vivify manually
my @lines := nqp::getlexdyn('@*NQP_VIOLATIONS'); # is this valid ? 15:37
jnthn it's odd
my @lines := @*NQP_VIOLATIONS; is the same.
skids tadzik: gist.github.com/skids/86b2cd3bf4412efa44ac 15:38
15:38 colomon joined
jnthn @*NQP_VIOLATIONS[$line] := @*NQP_VIOLATIONS[$line] // []; @*NQP_VIOLATIONS[$line].push($thingy); 15:38
Is probably the shortest you can do.
lizmat @*NQP_VIOLATIONS is defined as part of the compunit initialization, under Extra
jnthn Uh
without pre-fetching it as a temp
If you do my @lines := @*NQP_VIOLATIONS; first then it's just (@lines[$line] := @lines[$line] // []).push($thingy) 15:39
tadzik skids: the thingy with panda on jvm is known
I spent 3 hours trying to minimize the testcase and it drove me nuts 15:40
skids tadzik: Last night I edited it to just "when Exception" and got through it, but the switchback to moar was still broken after that.
lizmat jnthn++ :-) 15:41
jnthn lizmat: But I'd still do hash instead. :)
uh, do *a* hash...
.oO( Freud strikes again! )
ugexe skids: i always do a manual rehash or i get similar problems seemingly randomly
jnthn lizmat: They're gonna be strings in the deprecation message anyway :) 15:42
lizmat jnthn: that's true, but I sort of expect many nqp::ops *if* they are being used anyway
jnthn True. :) 15:43
lizmat or not at all
jnthn Anyway, no point discussing it overly much, since this is code that we will kill pre-Christmas anyway :)
lizmat indeed :-)
skids ugexe: what is this "manual rehash" you speak of? :-)
masak wow, fancy this Christmas being *the* Christmas! 15:44
ugexe rakudobrew rehash
jnthn :)
masak even I, the Grinch, is slightly enthused by it.
jnthn I'll likely be gone-ish for the rest of the evening, but will be hacking on NFG and RTs all day tomorrow. :)
15:44 telex left
masak m: say Date.new # when is the Big Day? 15:44
camelia rakudo-moar 9890d8: OUTPUT«2015-12-24␤»
masak jnthn: o/
jnthn o/ 15:45
timotimo jnthn: i have a quick gist for you
jnthn timotimo: ok, be quick!
skids ugexe: no joy. But thanks.
timotimo gist.github.com/timo/40ccf1f09f3b94f47f2d
is that totally wrong?
sjn tadzik: stackoverflow.com/questions/9475642...ta-grammar
timotimo there's a decont in the spesh log that i wouldn't expect there
15:46 telex joined
jnthn timotimo: yeah, what the heck 15:47
decont r2(2), r1(1) const_s r3(1), lits(hooray) assign_s r2(2), r3(1)
That's never gonna work, surely 15:48
timotimo yes, very much not so
but the qast is right in principle?
jnthn That decont should not be there
Yes the QAST looks right
timotimo good
that's all i need to know
jnthn the bytecode we get looks busted
timotimo now i can go hunting :)
jnthn OK
timotimo have a nice evening!
jnthn gone :)
timotimo o/
jnthn you too! o/
ugexe skids: if thats the solution, it would need to be done after you switch and before you build panda 15:49
because it looks like you are using a panda built for the opposite VM 15:50
although that could be due to not properly respecting the --prefix stuff as well
sjn tadzik: www.hcs64.com/files/pd1-3-schorre.pdf 15:52
ugexe try invoking panda directly instead of using the rakudobrew shim
dalek pan style="color: #395be5">perl6-examples: 4916405 | (Steve Mynott)++ | / (2 files):
start web automation section
timotimo ah, that was easy to find 15:54
zu früh gefreut! 15:55
[Coke] still -1 from me on Date.new being christmas, btw. ew. 15:57
lolisa zu fr􏿽xFCh gefreut!? What's that? 16:00
16:00 synbot6 left
timotimo premature celebration, so to speak 16:01
16:01 colomon left
dalek pan style="color: #395be5">perl6-examples: 3ff0590 | (Steve Mynott)++ | categories/cookbook/09directories/09- (4 files):
4 more directory examples
16:03
16:04 araujo left
leont New trick, 􏿽xABHARNESS_PERL=perl6 prove t/perl6.t􏿽xBB 16:05
itz "by Christmas we always meant the Julian Calendar" :) 16:06
[Coke] I just did a fresh build of rakudo-moar and tried to run make spectest, and get:
perl t/harness --fudge --moar --keep-exit-code --tests-from-file=t/spectest.data
Unhandled exception: Unsupported serialization format version 15 (current version is 12) at <unknown>:1 (blib/Perl6/Pod.moarvm:<dependencies+deserialize>:239)
tadzik what is this madness ┻━┻ ︵ヽ(`Д´)ノ︵ ┻━┻ 16:07
lizmat [Coke]: fwiw, there was some chatter about ser format versions on MoarVM earlier todat 16:09
*today
16:11 slavik joined
lizmat jnthn: I'm not sure how to skip the non-initialized elements, nqp::isnull() doesn't seem to cut it ? 16:13
my $ops := @*NQP_VIOLATIONS[$line];
next if nqp::isnull($ops);
skids Hrm, MD.pm6 in Sum just spins and slowly eats ram when compiling mbc now. That will be "fun" to try to find the cause of. But for now, going to try to sleep off rest of this cold. 16:17
lizmat skids++ and get better!
16:18 MARTIMM joined
itz things like gethostbyname don't exist anymore do they? I assume they can be loaded via nativecall? 16:23
16:23 skids left 16:24 cschwenz joined, cschwenz is now known as cschwenz_, cschwenz_ is now known as cschwenz1 16:25 cschwenz1 is now known as cschwenz, BenGoldberg left
timotimo anything that's C can be nativecalled - except i think var args are missing 16:26
16:28 laouji joined, colomon joined
itz oh gethostbyname does exist 16:31
ermmm gethostname 16:32
16:33 laouji left 16:35 Ven joined
Ven should the "gotcha about <foo> + vs <foo>+" be added to faq.perl6.org? (I'm looking for it atm) 16:35
flussence whatever happened to the C++ nativecall thing? 16:36
Ven seems like Grammar::Debugger won't step through proto regexes? 16:39
DrForr timotimo: Ah, I was going to go digging for varargs as well, after the cglobal thing they're the last thing I need for a complete binding to readline. 16:40
Ven what's going on
timotimo cool
Ven the debugger sees " <expr> + %% ',' " and bails out. just plainly bails out. I don't get to see it try the options 16:41
(and trying to make that rule "regex" to backtrack doesn't help at all)
16:42 grondilu joined 16:44 zakharyas joined
Ven Grammar::Debugger seems to be too unreliable? I change the rule call, that's one of the options of expr (expr:sym<call>) make the debugger unable to step through <expr>. 16:46
flussence there's a long-term problem with it having side effects, something to do with LTM 16:47
DrForr I'm working with a grammar myself and haven't been able to use ::Debugger on it. Not just you. 16:48
colomon I usually use Grammar::Tracer, but that doesn’t work well for complicated parses. 16:49
DrForr The last time I tried that I couldn't get anything out of a failed parse. 16:50
nine waves from Vienna
Is there a way to hoik into serialization/deserialization of my module? 16:51
flussence oh... I wrote a test for that bug and forgot all about it - github.com/flussence/p6-misc/blob/...feb2015.p6
[Coke] yup, tried again with a fresh copy of rakudo - getting the error about serialization format consistently.
tadzik wow, fast trains 16:52
[Coke] ah... bug in t/harness. 16:55
dalek kudo/nom: d4a9878 | Coke++ | t/harness:
Use the correct perl6 to check for Inline::Perl5
16:57
16:58 colomon left 16:59 colomon joined 17:00 laouji joined
timotimo tadzik: you're going back home? 17:00
tadzik timotimo: no, but I noticed nine having arrived already 17:01
nine Coke: thanks for fixing my bug
tadzik I'll be back home monday late evening
nine tadzik: took a plane to Vienna, now a train to Linz
tadzik ah
that explains it 17:02
[Coke] nine: no worries, glad I was able to figure it out
nwc10 nine: direct train!
nine: are you at the airport currently? 17:03
17:05 laouji left
[TuxCM] [Coke], is that nom patch for jvm? 17:05
nine nwc10: just entered the bus to Westbahnhif
nwc10: no direct trains at this time, but next year we'll finally have good connections
[Coke] [TuxCM]: the thing I just patched was so that "make spectest" uses the same perl6 that it uses to run the tests to see if Inline::Perl5 was installed. previously it used first in path. 17:06
nwc10 waves in at the airport
(from here, can't see much more than the top of the control tower) 17:07
nine :)
lolisa dont get what is going on
17:08 tadzik left, tadzik joined
dalek kudo/nom: 7075007 | lizmat++ | src/Perl6/ (2 files):
List nqp::op violations after a compunit compiled

It turned out to be pretty bad to use the standard DEPRECATED mechanism for this. So instead of that, it's not writing the message to STDERR after the compunit has been compiled.
17:08
nine nwc10: do you have a quick idea on how to detect if we're compiling the main script in P5's pp_ctl.c? I'd like to make my use v6; support a little safer 17:10
I already improved its error handling on the way to the airport 17:11
nwc10 offhand, no.
nine Ok, will dig around a bit
I don't think I'll make much progress on Inline::Perl5's precompilation support. That will probably require more infrastructure in Rakudo. 17:13
dalek kudo/nom: 5d707b6 | lizmat++ | src/Perl6/Grammar.nqp:
Fix typo
17:15
17:18 mr-foobar joined
lizmat nine: seems like you have to patch: 17:19
Compilation unit 'lib/Inline/Perl5.pm6' contained the following violations:
Line 765:
nqp::getcurhllsym
:-)
17:19 lichtkind joined
nine lizmat: oh, a use nqp should fix that, shouldn't it? 17:24
FROGGS_ nine: that's correct
lizmat yes, that's the idea ?
nine Will be fixen once I'm on the train :) 17:25
typing on phone sucks...
17:25 Rounin left 17:26 Rounin joined
Ven wonders how he should parse a postfix if... <expr> 'if' <expr> will be recursive :( 17:29
lizmat jnthn: would it make sense to expose nqp %*PRAGMAS hash as %?PRAGMAS like $?LINE ? 17:33
geekosaur perl itself handles postfix if as a statement modifier instead of an expression 17:34
17:34 Ven left
eli-se vendethiel: don't do that 17:35
instead, design your grammar so that either operand is an expression with a higher precedence than postfix if expressions 17:36
vendethiel eli-se: yeah, yeah.
geekosaur thinks expression-if should have both then and else (compare ?? !!), if-then is a statement
eli-se then it's just <higher-precedence-than-if-expr> followed by zero or more ('if' <expr>) 17:37
geekosaur (of which postfix if is a subcase)
17:37 [TuxCM] left
eli-se just make if a function that takes a Boolean and two functions. 17:39
lizmat afk for kuchen kaiser& 17:42
dalek line-Perl5: 3e23d8c | (Stefan Seifert)++ | lib/Inline/Perl5.pm6:
Explicitly use nqp; for nqp::getcurhllsym

Thanks to lizmat++ for pointing this out
17:43 leont left 17:49 FROGGS_ is now known as FROGGS 17:50 cschwenz left
lichtkind hai lizmat 17:59
nine ribasushi: was module-authors the mailing list mentioned in today's discussion?
18:04 lolisa left 18:06 zakharyas left
nine lizmat: that's odd. With current rakudo and your lazy @*INC patch, make test passes. Panda is still broken. File::Find tests successfully but Shell::Command fails with write string requires an object with REPR MVMOSHandle 18:19
.tell lizmat that's odd. With current rakudo and your lazy @*INC patch, make test passes. Panda is still broken. File::Find tests successfully but Shell::Command fails with write string requires an object with REPR MVMOSHandle 18:21
yoleaux nine: I'll pass your message to lizmat.
18:23 aborazmeh joined, aborazmeh left, aborazmeh joined 18:26 _mg_ joined, isBEKaml left 18:36 egrep left
eli-se .botsnack 18:37
yoleaux :D
nine .tell lizmat seems like commit 43db2d5bbe75be4cb842d43991248c29b4a1897a is responsible for the progress. Maybe because use nqp; no longer invokes any ModuleLoader? 18:38
yoleaux nine: I'll pass your message to lizmat.
18:39 aborazmeh left 18:43 virtualsue joined, virtualsue left
nine .tell lizmat Shell::Command's tests fail with a precompiled Shell::Command, but not with the source version 18:56
yoleaux nine: I'll pass your message to lizmat.
19:12 Rounin left 19:15 zakharyas joined 19:19 tinyblak left 19:21 spider-mario joined 19:28 skids joined
FROGGS .tell jnthn after successfully bootstrapping panda I try to install a dist, and then it explodes when serializing a null object: gist.github.com/FROGGS/c6d637b32e4665ec3882 19:33
yoleaux FROGGS: I'll pass your message to jnthn.
FROGGS .tell jnthn I believe this object is a string, the absolute path to the panda script that is currently running (aka $*EXECUTABLE)... is there something I need to take care of? 19:35
yoleaux FROGGS: I'll pass your message to jnthn.
19:38 nbdsp joined
nbdsp Greetings! I wonder, does someone else have the same problem with 'use DBI:from<Perl5>;'? The followong two lines take several minutes to execute with a query result consisting of one row with one text field (several KB of text): my $arrayref = $sth.fetchall_arrayref; say $q[0].decode('utf8'); Profile stat is here: pastebin.com/wMwAsJLv 19:38
dalek kudo/jsoff: 52b1be7 | FROGGS++ | src/core/CompUnitRepo/Local/Installation.pm:
use nqp::(de)serialize instead of json to improve performance
19:39
FROGGS .tell jnthn I pushed to rakudo/jsoff in case you are curious
yoleaux FROGGS: I'll pass your message to jnthn.
nbdsp my $arrayref = $sth.fetchall_arrayref; for @$arrayref -> $q { say $q[0].decode('utf8'); }
19:41 colomon left, beastd joined
FROGGS nbdsp: cant you upload the html file? 19:42
19:45 [TuxCM] joined
nbdsp FROGGS: will upload 19:46
dalek q: 24f3a7c | lizmat++ | answers.md:
Mention Larry's announcement
19:54
nbdsp Err, pastebin has the limit 512 KB and the file report is about 1 MB. Is there another place for uploading? 19:55
Oh, I'jj upload to git
lizmat gist.github.com is used often around here, don't have any ideas about its limits though
yoleaux 18:21Z <nine> lizmat: that's odd. With current rakudo and your lazy @*INC patch, make test passes. Panda is still broken. File::Find tests successfully but Shell::Command fails with write string requires an object with REPR MVMOSHandle
18:38Z <nine> lizmat: seems like commit 43db2d5bbe75be4cb842d43991248c29b4a1897a is responsible for the progress. Maybe because use nqp; no longer invokes any ModuleLoader?
18:56Z <nine> lizmat: Shell::Command's tests fail with a precompiled Shell::Command, but not with the source version
lizmat use nqp not needing ModuleLoader is probably the reason, yes... 19:56
19:56 yqt joined 19:57 nbdsp left, revdiablo left, revdiablo joined
skids m: Array.new(0,1,2,3,4), { "OHAI $_".say; Array.new($_[1,2,3,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } # What broke Sum::MD 19:58
camelia rakudo-moar 5d707b: OUTPUT«0␤(Int)␤1␤(Int)␤2␤(Int)␤3␤(Int)␤»
skids m: [ 0,1,2,3,4 ], { "OHAI $_".say; [ $_[1,2,3,4,0] ]; } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } # works but... 20:00
camelia rakudo-moar 5d707b: OUTPUT«[0, 1, 2, 3, 4]␤(Array)␤OHAI 0 1 2 3 4␤0␤(Int)␤OHAI 1 2 3 4 0␤1␤(Int)␤OHAI 2 3 4 0 1␤2␤(Int)␤OHAI 3 4 0 1 2␤3␤(Int)␤»
20:00 _mg_ left
skids m: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } 20:01
camelia rakudo-moar 5d707b: OUTPUT«[0, 1, 2, 3, 4]␤(Array)␤OHAI 0 1 2 3 4␤0␤(Int)␤OHAI 0␤0␤(Int)␤Unhandled exception: Index out of range. Is: 1, should be in 0..0␤ at <unknown>:1 (/home/camelia/rakudo-inst-2/share/perl6/runtime/CORE.setting.moarvm:throw:4294967295)␤ f…»
lizmat skids: I probably did that 20:02
looking at the issue now
skids Not sure what the proper flattenning behavior is, but weird in any case that the "say" in the first one does nothing. 20:03
lizmat star: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } 20:05
star-m: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 }
m-star: [ 0,1,2,3,4 ], { "OHAI $_".say; Array.new($_[1,2,3,4,0]); } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } 20:06
20:06 nbdsp joined
lizmat what was it again? 20:06
camelia star-m 2015.03: OUTPUT«(timeout)[0, 1, 2, 3, 4]␤(Array)␤OHAI 0 1 2 3 4␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI 0␤0␤(Int)␤OHAI …»
nbdsp The file report is here: github.com/nbdsp/profile-report/bl...ofile.html
lizmat m: my $a = 1; $a[0] = 3 # skids, isn't this really the problem? 20:08
camelia rakudo-moar 5d707b: OUTPUT«Cannot modify an immutable Int␤ in method ASSIGN-POS at src/gen/m-CORE.setting:2231␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3457␤ in block <unit> at /tmp/vjzKls6AHe:1␤␤»
skids lizmat: No, nothing get modified, other then the being-built array-of-arrays. 20:09
FROGGS nbdsp: 99.4% spend in unpack_return_values at lib/Inline/Perl5.pm6:425
20:11 domidumont joined 20:13 [TuxCM] left
skids m: array[uint32].new(0,1,2,3,4).item, { "OHAI $_".say; array[uint32].new($_[1,2,3,4,0]).item; } ... { $_.perl.say; $_.WHAT.say; $_[0] == 3 } # This works OK for my purposes and is probably more correct. 20:14
camelia rakudo-moar 5d707b: OUTPUT«array[uint32].new(0, 1, 2, 3, 4)␤(array[uint32])␤OHAI 0 1 2 3 4␤0␤(Int)␤OHAI 1 2 3 4 0␤1␤(Int)␤OHAI 2 3 4 0 1␤2␤(Int)␤OHAI 3 4 0 1 2␤3␤(Int)␤»
nbdsp FROGGS: Is it normal for this function to take so long?
20:21 leont joined
lizmat some benchmarks: 20:23
m: my int $max = 1000000; loop (my int $i = 0; $i < $max; $i = $i + 1) { }; say now - INIT now # fastest
camelia rakudo-moar 5d707b: OUTPUT«0.006822␤»
lizmat m: my Int $max = 1000000; loop (my Int $i = 0; $i < $max; $i = $i + 1) { }; say now - INIT now # both Ints instead of natives, slower 20:24
camelia rakudo-moar 5d707b: OUTPUT«0.49885572␤»
lizmat m: my Int $max = 1000000; loop (my int $i = 0; $i < $max; $i = $i + 1) { }; say now - INIT now # mixed int and Int, slowest
camelia rakudo-moar 5d707b: OUTPUT«0.7657925␤»
lizmat skids: ^^^ there are several cases like that in Inline::Perl5 # nine :-) 20:25
20:25 zakharyas left 20:28 MARTIMM left 20:31 domidumont left
nine I guess it's so slpw because I have to copy blobs byte by byte from CArray[int8] 20:32
Proper buf support for NativeCall will improve this a lot 20:33
nbdsp: if you can try passing decoded strings from P5 to P6. Should be much, much faster 20:34
nbdsp nine: how to do this? 20:35
20:37 laouji joined
nine nbdsp: tell your dbd to decode text fields. Recent DBD::Pg will do this automatically. DBD::mysql has some mysql_enable_utf8 flag. Others will probably too 20:40
nbdsp Thanks!
nine nbdsp: please report your results :) 20:41
nbdsp Yes. 20:42
nine Really time to sleep now. Good night #perl6 :)
20:43 laouji left 20:45 diana_olhovik_ left
skids Oh, I guess my last example didn't "work fine". 20:48
20:51 darutoko left
lizmat night, nine! 20:52
nbdsp When I do as follows, the time doesn't seem to improve: my $dbh = DBI.connect( "DBI:mysql:database=testDB; mysql_enable_utf8=1; host=localhost; port=3306;", "user", "password" ); The size of text field if the query is about 75 Kb. Maybe the utf8 flag needs to be set in some other place? 20:56
*in the query
20:57 dolmen joined
DrForr Incidentally, github.com/drforr/perl6-ANTLR4.git # ANTLR4 grammar for perl6 - Still a few kinks to work out, but it can handle the sample CSV grammar from ANTLR4. 21:02
dalek kudo-star-daily: 7ebf7bd | coke++ | log/ (2 files):
today (automated commit)
21:05
RabidGravy in NativeCall is there a possibility that "const char *" is not doing something right when given a Str?
seems to come up with random garbage 21:06
skids m: my $i = 0; my @a = [0,1,2,3], { [$_[1,2,3,0]] } ... { $i++ == 4 }; @a.perl.say # note the last one is not itemized, another layer to the issue. 21:08
camelia rakudo-moar 5d707b: OUTPUT«[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2], 0, 1, 2, 3]<>␤»
skids (or maybe the same layer from a different view) 21:09
Hah. I got bit by ?"0" == True :-). Bad me. 21:16
21:21 mohij left
lizmat shutting down& 21:21
21:21 lizmat left 21:32 aborazmeh joined, aborazmeh left, aborazmeh joined
[Coke] t/spec/S17-procasync/kill.t is passing, but slow. Any reason not to add it to spectest.data ? 21:39
RabidGravy is sprintf implemented in such a way as it can be subverted^Wleveraged^Waugmented to provide domain specific formats? 21:47
dalek kudo/nom: c14bc41 | Coke++ | tools/update-passing-test-data.pl:
This isn't a Perl 6 test, don't try to run it.
21:49
kudo/nom: 4c1ae0d | Coke++ | t/spectest.data:
Run these passing tests

  ...some of which were recently fudged
ast: efb1904 | Coke++ | S32-str/length.t:
Fudge for rakudo

Also make sure .length dies with appropriate exception type
21:50 andreoss joined
andreoss how can i have several :nth in subst? 21:51
21:51 skids left
andreoss m: "11123".subst("1", "0", :nths(1 3)); 21:51
camelia rakudo-moar 5d707b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7pjfpgp5S9␤Two terms in a row␤at /tmp/7pjfpgp5S9:1␤------> 3"11123".subst("1", "0", :nths(17⏏5 3));␤ expecting any of:␤ infix␤ infix stopper␤ statement end␤ …»
raydiak m: say "11123".subst("1", "0", :nth(1, 3)) # or :nth<1 3> if you prefer to skip the comma 22:04
camelia rakudo-moar 5d707b: OUTPUT«01023␤»
22:04 aborazmeh left 22:05 rindolf left 22:09 zjmarlow joined 22:12 kaare_ left, zjmarlow left 22:15 bjz left 22:17 nbdsp_ joined, nbdsp_ left, nbdsp left 22:18 jack_rabbit joined, nbdsp joined 22:25 nbdsp left 22:31 dolmen left 22:34 rararara joined, eli-se left 22:37 RabidGravy left 22:38 skids joined 22:41 colomon joined 22:46 jack_rabbit left 22:47 jack_rabbit joined, zeleiadi joined 22:48 lichtkind left 22:51 anaeem1 joined 22:55 zeleiadi left 22:59 lizmat joined 23:01 zeleiadi joined
lizmat [Coke]: re irclog.perlgeek.de/perl6/2015-04-19#i_10468028 (t/spec/S17-procasync/kill.t) 23:02
I would recommend against it as the tests that *really* matter, are TODO's because we cannot actually send signals yet 23:03
23:09 gfldex left 23:10 vendethiel left 23:16 rararara left
[Coke] lizmat++ thanks. 23:19
23:20 laouji joined 23:21 yqt left 23:23 andreoss left 23:24 BenGoldberg joined 23:25 laouji left, anaeem1 left
japhb Is Proc::Async now running correctly on r-j? 23:36
Or still just r-m?
lizmat japhb: I have no idea 23:38
japhb Fair enough. :-) 23:40
How was the hackathon? (I know it occurred, but I have no idea what awesomeness transpired ....) 23:41
dalek kudo/nom: 4ba4aab | lizmat++ | src/Perl6/Grammar.nqp:
Handle all pragmas with -M (not just "strict")
23:43
lizmat well, if you look at the past 4 days git log
I would think a lot has happened on the P6 end :-) 23:44
there was a lot of discussion at the QA hackathon
mostly about P5 / CPAN
I'm pretty sure we will here more about that in the near future from the people involved 23:45
also: PAUSE has been migrated from Apache/mod_perl to Plack
and 5.24 (next year) will most likely allow you to transparently execute Perl 6 code if Inline::Perl6 is installed 23:46
5.22 is already in code freeze, so we were too late for that
act.qa-hackathon.org/qa2015/wiki?node=Results for a list of achievements 23:47
23:48 telex left 23:50 telex joined, zeleiadi left
timotimo lizmat: oooh you improved autogenerated accessors? 23:52
lizmat One of the most exciting things I saw was tadzik developing a BNF to Perl 6 grammars converter
timotimo how?
:D
23:52 espadrine left
lizmat they have D: on them, and they don't show up in backtraces 23:52
m: class A { has $.a }; A.a 23:53
camelia rakudo-moar 4c1ae0: OUTPUT«Invocant requires a 'A' instance, but a type object was passed. Did you forget a .new?␤ in block <unit> at /tmp/NXg_R_vxCG:1␤␤»
timotimo ah
the next step for autogenerated accessors will be to actually generate code for them rather than just having closures that close over the attribute name 23:54
that ought to make accesses a bit cheaper
23:54 leont left
timotimo but custom code will be bigger in ram than just a closure clone :\ 23:54
lizmat I guess we could do that for autogenerated accessors in the core settings 23:55
or have a pragma like "use more memorry"
that would autogenerate them in a different way ? 23:56
so with 5.24 you should be able to say: "perl -Mv6 -e '.say for ^10' 23:58
iff Inline::Perl6 is installed
lizmat is tired and goes to sleep& 23:59