»ö« 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.
timotimo we can turn lexicals into locals if they are not used by any embedded blocks 00:08
if we inline embedded blocks, more lexicals get eligible
skids tries to suss out how to maintain pod heirarchy while interspersing code. 01:00
timotimo hmm
=begin ambient / =end ambient 01:01
theoretically 01:02
skids Hmm. 01:04
Currently that produces a Pod::Block::Named(:name<ambient>) 01:07
Mouq skids: Uhhhhh 01:10
:/
sorry
I don't think there's any way to do that 01:11
adu timotimo: it sounds like you need more dataflow analysis
JimmyZ well, I'm like .ast too. 01:11
Mouq likes having both .ast and .made 01:12
JimmyZ so -1 to deprecate .ast 01:13
Mouq JimmyZ: Yes
.ast makes a lot of sense when that's what you're building
JimmyZ aye
Mouq And if you're parsing something, I don't think it's pretty likely that you *will* be building asts 01:14
skids Mouq: I don't even see that the spec defines a way to do that, though it does seem to say that pod is playing a "cpp"ish role and building the source for the compiler.
Mouq On the other hand, ast doesn't make a whole lot of sense a lot of the time
Mouq Like this thing I posted last night: codegolf.stackexchange.com/a/23787/15012 01:15
A reducing grammar like that (were that a grammar), doesn't make a whole lot of sense to say AST about
So, yeah, -1 to deprecate .ast 01:16
And +1 to .made
skids: If you really need to, you can fake it :P 01:17
Mouq r: =begin pod␤I really enjoy factorials␤=end pod␤say [*] 1..100␤=pod␤(Sometimes I mess up though)␤␤say [*] 0..100;␤say $=pod.reduce(*.content ,= *.content); 01:21
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Two terms in a row␤at /tmp/tmpfile:8␤------> <BOL>⏏say [*] 0..100;␤ expecting any of:␤ postfix␤ inf…»
Mouq r: =begin pod␤I really enjoy factorials␤=end pod␤say [*] 1..100;␤=pod␤(Sometimes I mess up though)␤␤say [*] 0..100;␤say $=pod.reduce(*.content ,= *.content); 01:22
camelia rakudo-parrot 5b109d: OUTPUT«93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000␤0␤can only reduce with arity 2␤ in method gist at gen/parrot/CORE.setting:12402␤ in m…»
..rakudo-jvm 5b109d: OUTPUT«93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000␤0␤can only reduce with arity 2␤ in method gist at gen/jvm/CORE.setting:12381␤ in method …»
..rakudo-moar 5b109d: OUTPUT«93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000␤0␤===SORRY!===␤can only reduce with arity 2␤»
Mouq Hm
r: =begin pod␤I really enjoy factorials␤=end pod␤say [*] 1..100;␤=pod␤(Sometimes I mess up though)␤␤say [*] 0..100;␤say $=pod.reduce({$^a.content = ($^a,$^b)».content});
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000␤0␤Pod::Block::Para␤ I really enjoy factorials␤ …»
Mouq r: =begin pod␤I really enjoy factorials␤=end pod␤[*] 1..100;␤=pod␤(Sometimes I mess up though)␤␤[*] 0..100;␤say $=pod.reduce({$^a.content = ($^a,$^b)».content}); 01:23
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«Pod::Block::Para␤ I really enjoy factorials␤ Pod::Block::Para␤ (Sometimes I mess up though)␤␤»
Mouq No?
r: =begin pod␤I really enjoy factorials␤=end pod␤[*] 1..100;␤=pod␤(Sometimes I mess up though)␤␤[*] 0..100;␤say $=pod[].reduce({$^a.content = ($^a,$^b)».content});
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«Pod::Block::Para␤ I really enjoy factorials␤ Pod::Block::Para␤ (Sometimes I mess up though)␤␤»
Mouq Oh well
skids The example for declarator blocks seems to imply that those form a nested structure based on the code they are attached to. But you can't say that for sure from the example because it just shows the results of a hypothetical renderer.
FOSScookie Will perl6 be able to access java libraries like Jython does? 01:27
Since it compiles to Java bytecode.
Could I also use Perl6 to access Java databases like HSQLDB? 01:28
Mouq FOSScookie: Well, only Rakudo on JVM does. I think there was a mechanism by which you could, I'm not sure how developed/syntactically sugared it was
FOSScookie So, I should probably use Jython or Jruby then? 01:29
Mouq FOSScookie: I don't know much about Jakudo, honestly :) sorry 01:30
JimmyZ yeah, Rakudo on JVM can access Java libs 01:32
Mouq "use org::FOSScookie::FOSScookieFactory:from<java>:jar('FOSScookie.jar');" is it? 01:34
FOSScookie: www.jnthn.net/papers/2013-yapceu-jvm.pdf slide/page 41 01:37
*41+
TimToady I have a script that does: use java::awt::MouseInfo:from<java>; 01:38
Mouq FOSScookie: And btw, JVM backend actually had been our implementation that passed the most spectests until it was usurped because of MoarVM's superior Unicode support 01:39
and because of TimToady++ :)
FOSScookie slide/page 41 "So, now we can run much of Perl 6 on the JVM, but can we call into Java libraries?" Does that mean it is having problems with compatibility or is that a statement like "At the current moment we can run much of Perl6 on the JVM but more development is needed before the compiler is finished." 01:42
Mouq FOSScookie: perl6.org/compilers/features 01:43
TimToady it is certainly Turing complete :)
FOSScookie So, it is this "At the current moment we can run much of Perl6 on the JVM but more development is needed before the compiler is finished." then. 01:47
TimToady well, nobody's compiler is ever really finished, but you can certainly run all kinds of stuff on it 01:48
and it seems quite stable
Mouq FOSScookie: At the time it may have meant the former
TimToady thing is, the people who work on that bit of it are mostly in .eu, and therefore asleep
there was some work on getting Java overloading mapped into Perl 6 multiple dispatch, but I'm not sure how far that is. 01:49
certainly you can call most any method if you're willing to be specific about the types involved
Mouq out 01:51
o/ #perl6
TimToady has to run off pretty soon too 01:52
skids o/
TimToady but yeah, ask again when the eurofolk are awaker
FOSScookie Alright, thanks. 01:53
japhb__ xfix: re: irclog.perlgeek.de/perl6/2014-03-12#i_8424386 , are you talking about something like github.com/TiMBuS/Net--IRC/blob/co.../Logger.pm but generalized, or are you thinking of something else? 02:20
yoleaux 12 Mar 2014 09:05Z <jnthn> japhb__: We don't have such introspection yet, sadly. Agree its needed. Also at some point the scheduler should start tuning itself based on throughput...
12 Mar 2014 09:09Z <jnthn> japhb__: It will not spin up a new thread for "then" if there's already a free one, though I guess the current doesn't count as free. The right API design is to make .then take a scheduler to use to schedule the then, though. Then you'd just pass it CurrentThreadScheduler and be done.
japhb__ .ask jnthn I know you've been working on NativeCall for r-m (and jnthn++ for that!) ... what's left to be done for the Moar concurrency work? 02:22
yoleaux japhb__: I'll pass your message to jnthn.
TimToady added a pure FP solution to rosettacode.org/wiki/Bernoulli_numbers#Perl_6 just for Ben_Goldberg++ 06:00
JimmyZ as fast as the pre one? 06:03
TimToady unlikey
*unlikely 06:04
in fact, about 3.5 times slower :) 06:05
but people will have their purity :)
JimmyZ :/ 06:06
jnthn .tell japhb the time related bits, debugging the parallel GC (yay fun :P) and then a whole bunch of safety/hardening. 07:54
yoleaux 02:22Z <japhb__> jnthn: I know you've been working on NativeCall for r-m (and jnthn++ for that!) ... what's left to be done for the Moar concurrency work?
jnthn: I'll pass your message to japhb.
jnthn .tell japhb__ the time related bits, debugging the parallel GC (yay fun :P) and then a whole bunch of safety/hardening. 07:58
yoleaux jnthn: I'll pass your message to japhb__.
jnthn .tell japhb__ I'll probably prioritize the nativecall bits though...and Star.
yoleaux jnthn: I'll pass your message to japhb__.
sergot morning #perl6 08:19
moritz \o * 08:22
brrt \o 08:36
lizmat good * #perl6, from the QA Hackathon in Lyon, France 08:49
moritz \o lizmat 08:55
lizmat moritz o/ 08:57
moritz has started to read dreamsongs.net/Files/PatternsOfSoftware.pdf 09:14
masak antenoon, #perl6 09:30
masak , for a while, thought the URL was rosettacode.org/wiki/Bernoulli_numb...oldberg++, which would've been brilliant :) 09:31
jnthn :D
lizmat, FROGGS: Greets to you and l'other hackathoners :)
FROGGS hi jnthn :o) 09:33
masak did someone say hackathon? 09:36
ooh!
hi, Lyon!
masak .oO( and it's the Lyon in France, too. that's my favorite Lyon! )
sjn \o masak 09:37
<- in Lyon
sjn if you have messages for the hackathon, type them in #perl-qa :) 09:38
jnthn is teaching, not hackathoning :) 09:41
Got at least 3 Perl workshops coming later on in the year though ;)
timotimo o/ 10:13
lizmat FROGGS + lizmat are considering where to spec the META.info contents 11:08
for perusal by the community
lizmat S11 seems to be the best place, does it not ? 11:08
FROGGS +1 :o)
other ideas? quick!
dalek ecs: 7cfb3b4 | (Elizabeth Mattijsen)++ | S11-modules.pod:
Proposed name change for S11
11:10
timotimo so, FROGGS, i didn't look carefully yet, but do you have a smart way to handle extra content, like for a game that has textures and sounds, or for an application that would like to install a .desktop file with icons? 11:16
FROGGS timotimo: not yet 11:16
timotimo also, python has an "entry points" list kind of thing where you specify a module(, class and) function to be run and a name for a script to be generated and that will be installed in the system's $PATH, are we getting something like that as well? 11:17
FROGGS there probably should be a section in the META.info called "files" that will be installed as well (like the folder "bin" gets installed)
and then perhaps a CompUnitRepo.where-are-my-files method that gives you the paths/contents 11:18
dunno yet
FROGGS please write down your mind about that and I'll think about how to solve it 11:19
(lunchtime now though)
bbiab
timotimo the python setup.py equivalent allows you to glob for files; i would prefer not to have to manually update the meta.info every time i add/remove/rename a single file or directory with lots of files
tadzik FROGGS wrote some tools that do that for you 11:20
timotimo ah, that's a start. 11:21
timotimo github.com/alexgorbatchev/syntaxhi...es/perl.js - do we have anything that's directly compatible with this thing? hoelzro? 11:40
Known Issues 11:41
Perl formatting is really crappy. Partly because the author is lazy and partly because Perl is hard to parse.
Ven timotimo: how can you parse stuff that relies on runtime behavior? 12:01
masak moritz++ # www.usenix.org/system/files/1403_0...ickens.pdf is extremely funny :D
colomon o/ 12:21
yoleaux 12 Mar 2014 23:38Z <Mouq> colomon: re: irclog.perlgeek.de/perl6/2014-03-12#i_8423436 There is github.com/perl-cldr/cldr-list-pm6/ by patch++, which solves half of your problem
colomon patch++
colomon I wonder why patch hasn't added that module to the ecosystem? 12:22
So, should I be expecting rakudo problems on OS X?
I've been working on a $work project using rakudo-moar on my Linux box.
I'm away from the office this morning, and tried to get r/m up and running on my MacBook Pro. 12:23
A fresh rakudo seemed to compile okay, but my (working on the Linux box) code fails with Nominal type check failed for parameter '<anon>'; expected Any but got Mu 12:24
(Trying to build all backends failed in the configure stage every time.) 12:25
colomon I'm torn between updating my rakudo build on Linux to see if it fails there now too, and just trying to work logged into the machine at home. (The auto dealership internet connection is terrible, but this SSH login has seemed stable so far.) 12:32
colomon cd .. 12:35
argh
Hmmm, looks like the problem is JSON::Tiny is broken on the latest Rakudo? 12:36
jnthn ugh 12:39
colomon no
jnthn wonders what did it...
colomon actually, I don't have the latest JSON::Tiny on my Mac
colomon I checked before I left, but somehow I completely failed to get it right. 12:39
jnthn And after that it works? :) 12:40
colomon Huh. So how can I trick this stupid internet into letting me get the latest JSON?
jnthn: I can't do git pull
or access github.com
jnthn I could gist it to...oh wait... 12:42
What *can* you access? :)
Ven jnthn: DCC send :p 12:44
colomon jnthn: sites they haven't thought to block. :) 12:46
SSH seems to work. 12:47
or at least, SSH to my home machine seems to work.
it's possible that no https links work at all.
don't worry about me, I'm fairly confident Rakudo and JSON work and it's just my ancient version of JSON::Tiny that's failing. 12:48
(Well, there was the difficulty trying to build all the backends, but I need to make forward progress on $work instead of investigating that at the moment.) 12:49
r: say .96 ~~ (.95 .. 1.05) 12:52
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«True␤»
jnthn colomon: jnthn.net/tmp/json.tar.gz
colomon jnthn++ 12:53
colomon and that has me $working on Mac! jnthn++ again 12:55
FROGGS timotimo: I think we could look into "share" for files to add to META.info and which we would install later 12:55
colomon r: say 1.38223e-10 13:02
camelia rakudo-jvm 5b109d: OUTPUT«1.3822300000000001E-10␤»
..rakudo-moar 5b109d: OUTPUT«1.38223e-1␤»
..rakudo-parrot 5b109d: OUTPUT«1.38223e-10␤»
colomon yow 13:03
biggish moar-bug there.
r: say (1.38223e-10).perl
camelia rakudo-jvm 5b109d: OUTPUT«1.3822300000000001E-10␤»
..rakudo-moar 5b109d: OUTPUT«1.38223e-1␤»
..rakudo-parrot 5b109d: OUTPUT«1.38223e-10␤»
masak submits moarbug
colomon masak++
probably a jvmbug too... not sure how .gist is supposed to work for Num. 13:04
masak I see nothing wrong about that -- just annoying.
colomon r: say 1.3822300000000001E-10 13:05
camelia rakudo-jvm 5b109d: OUTPUT«1.3822300000000001E-10␤»
..rakudo-moar 5b109d: OUTPUT«1.38223e-1␤»
..rakudo-parrot 5b109d: OUTPUT«1.38223e-10␤»
FROGGS when I have a distribution Foo that has :auth<cpan:FROGGS> or :auth<github:FROGGS>, how to call the "cpan"/"github" bit there?
lizmat is considering separating S11's "auth" into an authority and an author 13:05
colomon yeah, I guess the .perl roundtrip works with E-10 instead of e-10
masak r: say 1.38223e-10 > 0.1 13:06
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«False␤»
masak oh, interesting. 13:06
so it has the right number internally...
...but prints it wrong.
colomon masak: oh, yes
sorry I wasn't clear about that
masak just checking :)
colomon I noticed it because I was getting 6.72393e-11 / 1.38223e-1 = 0.486455220911136 13:07
masak well, that's better than the alternative.
colomon I suspect something is deleting trailing zeros when it shouldn't
r: say 1.38223e-20
camelia rakudo-moar 5b109d: OUTPUT«1.38223e-2␤»
..rakudo-parrot 5b109d: OUTPUT«1.38223e-20␤»
..rakudo-jvm 5b109d: OUTPUT«1.38223E-20␤»
colomon yeah
colomon just learned something scary about his $work C++ code, thanks to his new coded-in-p6 results comparison test. 13:21
FROGGS (learned something)++
I really do like cross language based learning :o) 13:22
colomon FROGGS: this is about me improving the testing of my C++ code. Using p6. :)
FROGGS colomon++
colomon though I may end up translating to p5 to get a Dancer UI working. 13:24
I actually started (very briefly) in p5, but got annoyed at it and switched to p6. 13:25
FROGGS yes, I understand that feeling, my problem is it is kinda hard for me at work to switch to p6 13:26
at least atm
colomon I figured worst case I was prototyping it in p6, thereby preserving the remaining shreds of my sanity. 13:28
dalek ecs: 800d9f6 | (Elizabeth Mattijsen)++ | S19-commandline.pod:
Remove pod tags as a source of meta-information

Meta-information of a compilation unit will need to be specified in the
  (currently being specced) META.info file of a distribution.
colomon woolfy and lizmat! 13:35
woolfy colomon!
we are at the QA Hackathon in Lyon, France: act.qa-hackathon.org/qa2014/ 13:36
colomon oooo, nice
woolfy No no, Lyon, not Nice (www.nice.fr/), they are completely different cities 13:37
colomon :p
moritz cool slogan for a city: "Lyon, not Nice" :-) 13:48
FROGGS hehe 13:48
lizmat and vice-versa: Nice, not Lyon :-) 13:49
[Coke] woolfy++ 13:53
colomon 's Odyssey is ready to go, afk 13:55
FROGGS p6: say $?PACKAGE:: # bug?
camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object␤ at Niecza.StashCursor.Core (System.String key, Boolean final, Niecza.StashCursor& sc, Niecza.Variable& v, Niecza.Variable bind_to) [0x00000] i…»
..rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«(GLOBAL)␤»
FROGGS p6: say $?PACKAGE.WHO # I've expected this 13:56
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«().hash␤»
..niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object␤ at Niecza.StashCursor.Core (System.String key, Boolean final, Niecza.StashCursor& sc, Niecza.Variable& v, Niecza.Variable bind_to) [0x00000] i…»
timotimo FROGGS: i would have thought that :: accesses the package itself 14:19
retupmoca so I tweaked MIME::Base64 to play nicer with precompilation on multiple backends 14:20
and it seems to work (for moar at least) 14:21
but I used EVAL to make it play nice - is this a bad idea?
timotimo well, for moar is moar than befoar
retupmoca github.com/perl6/Perl6-MIME-Base64...5b1303a150 14:21
timotimo did you try require?
retupmoca require doesn't precompile 14:22
timotimo oh
retupmoca even without the fancy if stuff I had in there
FROGGS m: module Foo { }; say Foo::
timotimo: :: is package.WHO, no?
camelia rakudo-moar 5b109d: OUTPUT«().hash␤»
timotimo it is? 14:22
retupmoca The way I had it before was working if used directly, but (a) didn't precompile properly, so it died when you used it from another module, and (b) panda still tried to compile the parrot-specific code on other backends 14:23
timotimo aaw :(
yeah, it's annoying that this is so hard 14:24
retupmoca now it works, but I don't really like EVAL
hoelzro timotimo: what do you mean wrt the syntax highlighting thing? 14:25
retupmoca what I really want for this is conditional compilation of some sort
retupmoca because PIR.pm6 won't compile at all without the EVAL in there 14:26
timotimo hoelzro: do we have anything written that could just plug into that and give working highlighting? 14:27
hoelzro you mean like a perl6.js?
timotimo no
er ... well, i guess? 14:28
just for highlighting, though
hoelzro you mean for JS highlighting 14:29
right?
timotimo ...
hoelzro sorry, I just woke up =/ 14:30
and my coffee cup is 95% full
timotimo the codehighlighter is a javascript thing that runs in the browser. and it's very bad at perl highlighting. but since perl6 is a bit nicer to parse and lex, maybe that'd be an option
so i was asking if we have anything written in javascript that would do perl6 syntax highlighting that could plug into that given "interface"
or if it would have to be built from scratch
hoelzro I don't think we have anything for Perl 6 highlighting on the JS side of things 14:34
but that highlighter looks pretty rudimentary
there's got to be a better JS highlighter out there 14:35
timotimo yes, the project also claims that it sucks
hoelzro haha
timotimo the point is that that thing is in widespread use :)
hoelzro there's probably like 20 other JS syntax highlighters
grrrr
timotimo so i thought if we could get that for free, we should
if not, we can care about it much, much later.
hoelzro well, even if it's crappy highlighting, it's better than nothing
timotimo i didn't think so when i saw my first crappy draft of p6 syntax highlighting in kate/qtcreator 14:36
:P
hoelzro heh 14:36
have you done anything with that since last we talked about it? 14:37
timotimo no, i was expecting you to take over completely :D
hoelzro it's on my TODO list, but that's been unaddressable, as I've been in work/living limbo for 3 weeks
hoelzro Rogue Legacy didn't help me there, either =/ 14:37
timotimo heh heh heh.
hoelzro hmm
next time someone asks "Why is Perl 6 taking so long?" 14:38
"Steam."
thilp excuse me, is that a bug or something I missed? 14:40
perl6: my Array[Array[Int]] $a .= new; my Array[Int] $b .= new(1,2); $a.push($b)
camelia rakudo-parrot 5b109d: OUTPUT«Type check failed in .push; expected 'Array[Int]' but got 'Array[Int]'␤ in block at gen/parrot/CORE.setting:7916␤ in method push at gen/parrot/CORE.setting:7899␤ in method push at gen/parrot/CORE.setting:1614␤ in block at /tmp/tmpfile:1␤␤»
..niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Excess arguments to List.new, used 1 of 3 positionals␤ at /home/p6eval/niecza/lib/CORE.setting line 0 (List.new @ 1) ␤ at /tmp/tmpfile line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) …»
..rakudo-jvm 5b109d: OUTPUT«Type check failed in .push; expected 'Array[Int]' but got 'Array[Int]'␤ in block at gen/jvm/CORE.setting:7893␤ in method push at gen/jvm/CORE.setting:7879␤ in method push at gen/jvm/CORE.setting:1610␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-moar 5b109d: OUTPUT«Type check failed in .push; expected 'Array[Int]' but got 'Array[Int]'␤ in block at src/gen/m-CORE.setting:7950␤ in method push at src/gen/m-CORE.setting:7936␤ in method push at src/gen/m-CORE.setting:1610␤ in block at /tmp/tmpfile:1␤␤»
timotimo perl6: my Array[Int] @a .= new; my Int @b .= new(1,2); @a.push(@b) 14:41
camelia niecza v24-109-g48a8de3: OUTPUT«Unhandled exception: Excess arguments to List.new, used 1 of 3 positionals␤ at /home/p6eval/niecza/lib/CORE.setting line 0 (List.new @ 1) ␤ at /tmp/tmpfile line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4595 (ANON @ 3) …»
..rakudo-moar 5b109d: OUTPUT«Type check failed in .push; expected 'Array[Int]' but got 'Int'␤ in block at src/gen/m-CORE.setting:7950␤ in method push at src/gen/m-CORE.setting:7936␤ in method push at src/gen/m-CORE.setting:1610␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 5b109d: OUTPUT«Type check failed in .push; expected 'Array[Int]' but got 'Int'␤ in block at gen/parrot/CORE.setting:7916␤ in method push at gen/parrot/CORE.setting:7899␤ in method push at gen/parrot/CORE.setting:1614␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-jvm 5b109d: OUTPUT«Type check failed in .push; expected 'Array[Int]' but got 'Int'␤ in block at gen/jvm/CORE.setting:7893␤ in method push at gen/jvm/CORE.setting:7879␤ in method push at gen/jvm/CORE.setting:1610␤ in block at /tmp/tmpfile:1␤␤»
timotimo huh.
at some point, we could be writing my Int @a[*;*] to get a 2-dimensional array
thilp n-dimensional arrays could seem strange in some contexts… When I first wrote the Array[Array[]] thing, it was precisely for a list of lists, not a matrix. I agree it could be a workaround though 14:47
[Coke] I can write ugly javascript with the best of them, if that syntax highliter is something we'll get some traction on. 14:48
[Coke] hoelzro++ 15:00
thilp On perl6.org, I can see [email@hidden.address] but no link to a bugtracker interface listing current bug reports. Does such interface exist? 15:11
moritz thilp: rt.perl.org/ 15:15
thilp thank you! 15:15
hoelzro is there a shorthand for $/[0], like $<foo>? 15:20
moritz $0
hoelzro ... 15:21
thanks moritz
hoelzro .oO( I really need to wake up )
colomon o/ 15:27
japhb__ lizmat, in github.com/perl6/specs/commit/800d9f6512 , it does not appear that the commit description matches the diff -- something missing? 15:39
yoleaux 07:58Z <jnthn> japhb__: the time related bits, debugging the parallel GC (yay fun :P) and then a whole bunch of safety/hardening.
07:58Z <jnthn> japhb__: I'll probably prioritize the nativecall bits though...and Star.
japhb__ jnthn: Gotcha, understood.
jnthn: Thanks for the info. 15:40
FROGGS japhb__: she's still writing the spec, so please hold your breath for another commit or two :o) 15:42
(or perhaps don't hold your breath)
FROGGS how far is the NativeCall stuff? I was unable to backlog yet :/ 15:43
japhb__ FROGGS: I was just noting that it looked like the commit was missing a file or somesuch. I take it you mean she'll fix that on the next commit? :-) 15:44
FROGGS japhb__: yeah, she does :o)
japhb__ FROGGS: Some more work by jnthn++ and jimmy++ last night. Seems to be moving along nicely. 15:45
FROGGS that are good news :o) 15:46
(also that I have got my luggage now, but that is another topic)
raiph FROGGS: see commit and plan at irclog.perlgeek.de/perl6/2014-03-12#i_8426599
japhb__ luggage \o/ 15:47
FROGGS raiph: thanks!
raiph yw
jnthn yay, course teached :) 15:50
japhb__
.oO( "I teached persons how to English." )
15:51
dalek ecs: 4d963d8 | (Elizabeth Mattijsen)++ | S11-modules.pod:
First stab at speccing distributions and META.info

As part of the ongoing work at the QA Hackathon
15:52
jnthn No, just how to write parallel/concurrent software in a refashionliableSIGSEGV
japhb__ Heh. 15:56
japhb__ added 'Concurrent IRC bot' to his list of Q4/Q1 highlights for perf eval :-) 15:59
dalek ecs: a5e7fa1 | (Elizabeth Mattijsen)++ | S11-modules.pod:
Oops, "author" is not part of META.info
16:14
lizmat now on to merge my recent S11 changes with S22 :-( 16:15
dalek ecs: a421930 | (Elizabeth Mattijsen)++ | S11-modules.pod:
Add dependency info on the interpreter
16:32
dalek ecs: 1446a94 | (Elizabeth Mattijsen)++ | S11-modules.pod:
Remove some more pod-based authoritative info
16:52
dalek ecs: f2bf8b1 | (Elizabeth Mattijsen)++ | S02-bits.pod:
Spec %?META and %?RESOURCE minimally
16:55
masak lizmat: huh -- tell us more about %?META. 16:56
lizmat: maybe -- rather likely, actually -- I'm not backlogged fully. but I hadn't heard of %?META before.
lizmat it's new
it's basically the run-time introspection into the META.info file of the distribution from which the current module was installed / loaded 16:57
see also the changes I made to S11 today 16:58
lizmat %?RESOURCE is an easy way to access your resources from your module, e.g. images for a game 17:00
masak ok. 17:00
lizmat so that the installer can install the files, potentially with Unicode file names, onto an ASCII only file system 17:01
and the module can still access them transparently
masak *nod* 17:03
it beats having to programmatically locate the resources.
lizmat well, it hides it, really :-)
lizmat we've also come to the conclusion that in order to really be able to be file system independent 17:05
we will have to be able to unpack a distribution in memory in Perl 6
so I guess that puts Archive::Tar high on the list of modules to be ported to Perl 6 :-)
lizmat or we need to do a temp install of a distribution before we can actually test it 17:06
probably the latter 17:07
masak lizmat++ 17:07
lizmat and FROGGS++ :-) 17:08
masak lizmat: I'm doing a lot of Angular lately. Angular is rich in DI. so when I saw %?META and %?RESOURCE, I immediately thought "oh, the compiler is injecting those things into the program".
oh, FROGGS++
FROGGS :o) 17:09
sjohnson FROGGS: i like your cute emoticon
masak sjohnson! \o/ 17:10
sjohnson :))
masak sjohnson: long time no see, man!
sjohnson ^ double chin emoticon cause i haven't been dieting
masak: indeed, same to you.
isBEKaml OHHAI, #perl6! 17:12
lizmat masak: well, yes, more like the load module run time functionality :-)
FROGGS ohh, I like it too, obviously *g*
FROGGS m: my %a; %a<foo> = <a b c>; say %a<foo>.=uniq; say %a<foo> 17:16
camelia rakudo-moar 5b109d: OUTPUT«a b c␤a b c␤»
FROGGS m: my %a; %a<foo> = <a b c>; %a<foo>.=uniq; say %a<foo>
camelia rakudo-moar 5b109d: OUTPUT«␤»
FROGGS masak: please explain the above^^
[Coke] m: my %a; %a<foo> = <a b c>; %a<foo>.uniq.say 17:17
camelia rakudo-moar 5b109d: OUTPUT«a b c␤»
FROGGS why is it empty when the mutator is called in sink context? 17:18
p6: my %a; %a<foo> = <a b c>; %a<foo>.=uniq; say %a<foo>
camelia niecza v24-109-g48a8de3: OUTPUT«a b c␤»
..rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«␤»
FROGGS p6: my %a; %a<foo> = <a b c>; %a<foo>.=sort; say %a<foo> 17:20
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d, niecza v24-109-g48a8de3: OUTPUT«a b c␤»
FROGGS lizmat++ # a uniq bug!
masak looks like a bug to me too. 17:21
masak submits rakudobug
FROGGS thank you 17:22
masak r: my @a = <a b b b c c>; @a.=uniq; say @a 17:23
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«a b c␤»
masak innerestin'
lizmat this seems to be caused by having a map {} at the end of the method 17:26
.squish has the same problem
r: my @a = <a b b b c c>; @a.=squish; say @a
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«a b c␤»
lizmat r: my $a = <a b b b c c>; $a.=squish; say $a 17:27
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«␤»
lizmat r: my $a = <a b b b c c>; $a.=uniq; say $a
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«␤»
lizmat so, if we're doing it on an array, it works
if we do it on a scalar, it doesn't
colomon r: my %a; %a<X Axis> = 10; say %a.perl 17:36
camelia rakudo-jvm 5b109d: OUTPUT«("Axis" => Any, "X" => 10).hash␤»
..rakudo-parrot 5b109d, rakudo-moar 5b109d: OUTPUT«("X" => 10, "Axis" => Any).hash␤»
lizmat r: my $a=<a b b c>; say uniq($a); say $a.uniq 17:42
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«a b b c␤a b c␤»
lizmat this seems counter-intuitive
TimToady $ never, ever, ever, flattens 17:43
but .uniq is a list method
and methods bypass list context that listops have
TimToady or to look at it another way, you get a free deref on a method call 17:44
or to look at it yet another way, self is not a slurpy context that cares about $ vs @ 17:45
so yeah, .= should also work on a $a, so I agree it's a bug 17:48
FROGGS what is wrong with this map then? github.com/rakudo/rakudo/blob/nom/...st.pm#L407 17:51
FROGGS is happy to bug TimToady++ about that, now that he is a rakudo hacker too :P
TimToady well, it shouldn't be using Nil to mean (), for one 17:52
masak so, Perl 6's Nil, now that it doesn't signify "undefined/empty list", is pretty close to Python's None, right? 17:54
TimToady other than that, it's a map at statementlist level, so maybe you wanna put parens around it, or some such
and closer to P5's undef 17:55
masak *nod*
TimToady in fact, I think it should be using next rather than returning any value 17:56
lizmat testing that 17:59
TimToady I suspect the loops-at-statementlist-level fix is treating map as a loop, when it is obviously intended to produce a value here 18:00
TimToady and most people would expect map to be exempt from the statementlist rule 18:01
lizmat empirically, prefixing "lazy" doesn't fix the problem 18:01
TimToady interesting
lizmat prefixing "eager" does, but then of course doesn't return a lazy list anymore if given a lazy list 18:02
TimToady maybe lazy is defective somehow
do parens around it help? 18:03
dalek kudo/nom: d51edf9 | (Elizabeth Mattijsen)++ | src/core/List.pm:
.uniq and .squish use next rather than Nil to skip
lizmat you mean: lazy( map {.... } ) ?
TimToady oh, lazy {} will certainly not work
the {} introduce a new statementlist 18:04
just lazy map ...
lizmat that doesn't work, but you were saying about parens ?
TimToady re parens, I just meant (map ...)
lizmat ok, trying
TimToady wonders how many other places still assume Nil means () 18:06
lizmat will look at that tomorrow afternoon :-) 18:08
lizmat parens don't fix :-( 18:08
decommuting and dinner& 18:09
TimToady so likely an overzealous sink optimization that leapfrogs the mutator and throws the values away before the mutator sees 'em 18:11
colomon r: my $a; say $a.defined 18:14
camelia rakudo-parrot 5b109d, rakudo-jvm 5b109d, rakudo-moar 5b109d: OUTPUT«False␤»
jnthn The statementlist thing is done on for and statement modifier for only; if it doesn't hit the appropriate statement_control or statement_modifier it won't happen 18:22
It's not an AST level check like "look for map".
dalek href="https://perl6.org:">perl6.org: 3cd8f53 | moritz++ | source/getting-started/index.html:
Link to the rt.perl.org bug tracker
18:24
kudo-star-daily: 5c1f577 | coke++ | log/ (5 files):
today (automated commit)
rl6-roast-data: cbf8c15 | coke++ | / (6 files):
today (automated commit)
rl6-roast-data: b77c09c | coke++ | / (6 files):
today (automated commit)
[Coke] yay, one less moar segfault. 18:25
jnthn TimToady: The Nil is () thing was/is quite deeply assumed in Rakudo. It was a surprising and, from Rakdu's perspective, quite unfortunate spec change... 18:26
TimToady: Anyway, feel free to fix it :P
dalek href="https://perl6.org:">perl6.org: 1c17cc4 | moritz++ | source/getting-started/index.html:
more semantic markup

using manual numbering inside an unordered list just screams for <ol> instead. And inside a list, no need for manual bullet points
18:26
[Coke] jnthn++ 18:27
++TimToady
[Coke] devopsreactions.tumblr.com/post/691...ed-is-only - this may be relevant to our interests. 18:33
jnthn Well, NativeCall.pm compiles on Moar now... 18:36
Now we "just" need to make it run tests
TimToady yeah, who cares if it passes 'em? 18:38
jnthn :P 18:39
jnthn Turns out the thing that was making S14-traits/routine.t fail on Moar also blocked NativeCall. So I fux it. :) 19:03
Now it's onto trying to get it to compile the test libs... :) 19:04
TimToady
.oO(rated R for strong verbs)
19:07
vendethiel So, I finished reading the synopsis today (yay !) and I wanted to ask : what's `sub a(Int --> Int --> Int) {}` ? 19:13
a function that returns a function that returns an Int ? 19:14
masak my guess would be that's not allowed. 19:16
std: sub a(Int --> Int --> Int) {}
camelia std 09dda5b: OUTPUT«===SORRY!===␤Unable to parse signature at /tmp/Fklb8QIcvP line 1:␤------> sub a⏏(Int --> Int --> Int) {}␤Couldn't find final ')'; gave up at /tmp/Fklb8QIcvP line 1:␤------> sub a(Int --> Int ⏏--> Int…»
masak seems it ain't.
TimToady we ain't quite Haskell yet 19:17
vendethiel TimToady: haha, I thought about that, too 19:18
vendethiel perlcabal.org/syn/S32/Basics.html "multi method clone (::T $self --> T --> Any )" 19:18
should that first `-->` be `:` ?
TimToady looks like
actually, I'm not sure what the --> T is supposed to be doing there, or maybe the --> Any 19:19
vendethiel should it just be `::T $self: --> Any` ? 19:20
'cause the double `-->` is repeated below
TimToady or ::T $self: --> T
vendethiel uh yeah, T.
masak right.
TimToady presumably clone returns something of the same type
masak I can't think of a case when it doesn't. 19:21
[Coke] m: say Any.clone.signature 19:33
camelia rakudo-moar d51edf: OUTPUT«No such method 'signature' for invocant of type 'Any'␤ in block at /tmp/ZiwWy_dQLr:1␤␤»
[Coke] m: say Any.&clone.signature
camelia rakudo-moar d51edf: OUTPUT«===SORRY!=== Error while compiling /tmp/hZSIWeW1t2␤Undeclared routine:␤ &clone used at line 1. Did you mean '&close', '&none'?␤␤»
[Coke] m: Any.^methods(:all).grep({$^a.name eq "clone"})>>.signature.say 19:38
camelia rakudo-moar d51edf: OUTPUT«:(Mu: *%twiddles)␤»
[Coke] ^^ why doesn't that match any of the signatures in S32::Basics?
colomon any hints for intelligently initializing the attributes of a role? 20:06
moritz has $.x = ...; 20:07
colomon I'm thinking more of the equivalent of a method new?
dalek kudo/nom: 22a53c2 | jonathan++ | src/vm/moar/ops/perl6_ops.c:
Fix bug involving wrap and traits.

Unbusts S14-traits/routine.t; the same bug hurt NativeCall.
20:09
colomon more concretely: gist.github.com/colomon/b598829a9419bdb5a2ed
dalek volaj: 9e61713 | jonathan++ | t/CompileTestLib.pm:
Support compiling test libraries on Moar.
20:10
colomon I'd like to have any class which does this role be able to call initialize-attributes
(mind you, I understand this layout is probably fundamentally wrong. but at least it gets the notion across, I hope.)
dalek volaj: f2bc8d3 | jonathan++ | lib/NativeCall.pm6:
Add Moar hanlding of so/dll/whatever extension.
moritz colomon: did you try if submethod BUILD works in roles? 20:11
colomon moritz: I have not tried BUILD. It kind of scares me, to be honest.
jnthn 01-argless.t and 03-simple-returns.t of the NativeCall test suite pass fully now.
moritz \o/
arnsholt jnthn++ 20:12
Oh, I have to pull Zavolaj now. Just sat down to get compiling working on JVM as well
jnthn And 02-simple-args.t passes the first 9. Then explodes. 20:13
arnsholt jnthn: Any objections to adding the info from nqp::backendconfig to Rakudo's $*VM?
colomon jnthn: oh, that's on JVM? I was thinking moar...
jnthn colomon: My results are for Moar :) 20:14
colomon ah!
jnthn++ arnsholt++
jnthn arnsholt: On JVM? Sounds good ot me.
*to me
arnsholt Yeah, JVM
It's kind of weird to me that the JVM has a special op for its config, but this is the easiest way for now 20:15
We can remove nqp::jvmgetproperties later =)
arnsholt jnthn: 01, 03 and most of 02 passing means you've got basic arguments done, BTW 20:20
arnsholt The last few tests of 02 use the CStr REPR, which isn't entirely basic, admittedly 20:20
jnthn arnsholt: Yeah, I just noticed that. Guess it needs CStr fully supporting. 20:21
arnsholt YEp 20:22
It's a pretty tiny REPR, admittedly, but not crucial functionality in any way 20:23
jnthn yeah, and I know I did a "get basics working" thing there. 20:24
arnsholt I think I ignored CStr for a while there too 20:25
jnthn I'll probably do 04-pointers.t tonight, and maybe try for 05-arrays.t also 20:26
Trouble is that it uses the "call a method" approach at the moment, when it needs to use the compose prototocl. 20:27
*protocol
arnsholt Yeah, I know
jnthn Dunno if CStruct already switched voer?
*over
arnsholt I thiiiiink so
I looked into switching CArray over at some point, but couldn't quite figure it out at the time 20:28
jnthn yeah, CStruct seems to be switched voer 20:29
Needs clearing up but it's not too bad.
(as in, the code ported to Moar needs)
Happy JimmyZ++ brought it this far, though. 20:30
jnthn wonders how hard 07-writebarrier.t will be :)
arnsholt jnthn: Shouldn't be too bad I think 20:32
Also, there's a less subtle approach you can use if you look at the JVM version
jnthn ok :)
Callbacks are the tricky one I guess :)
Got tomorrow to work on it though...and I guess Sat too. 20:33
arnsholt Yeah, callbacks I'd expect to be the most fiddly, but even those worked out not too bad 20:34
And you can follow the Parrot version a lot closer on Moar. The JVM required some detours into bytecode generation you can skip =) 20:35
lue is very glad to discover that rakudo refuses to successfully match things like "SS" ~~ m:i/ß/ :)
larks does anyone have a threads perl6 program that works with the jvm backend? I tried a simple example from the perl6 spec but that didn't work. `~`
actually, hold on, I might have fubar'd something 20:36
moritz larks: I recently built a threaded, recursive directory traversal 20:37
jnthn larks: jnthn.net/papers/2013-npw-conc.pdf has some examples
larks well, is it open source? =]
moritz larks: gist.github.com/moritz/9293475
moritz I haven't added a license header, but hereby I declare that you can use it under the WTFPL 20:38
larks thanks 20:42
jnthn detrain & 20:48
TimToady testing a fix for $a.=uniq 20:53
problem is nothing clones an iterator before $a gets overwritten, and a gather/take inside uniq fixes it 20:54
(and why eager also fixed it, but is overkill) 20:55
lizmat++ for noticing 20:56
and FROGGS++ 20:57
dalek p: 48bc2c2 | (Arne Skjærholt)++ | tools/build/gen-jvm-properties.pl:
Add information on how to compile shared libraries.

All of this is extracted from Perl's config database. nwc10++ for pointing me to the right docs, which made this a lot easier than it would've otherwise been.
dalek kudo/nom: eebf846 | (Arne Skjærholt)++ | src/core/terms.pm:
Store both nqp::jvmgetproperties and nqp::backendconfig in $*VM on JVM.

This exposes information needed by NativeCall in $*VM.
21:00
volaj: c774705 | (Arne Skjærholt)++ | t/CompileTestLib.pm:
Let test suite compile libraries on JVM too.
arnsholt jnthn: Could you give that NQP/Rakudo/Zavolaj combo a whirl on Windows, when you get the chance? 21:01
It works on my Linux laptop, but I've no idea if it'll work on Windows, TBH =)
masak good night, #perl6 21:06
moritz good night masak, dream of... things! 21:07
dalek kudo/nom: 5226298 | larry++ | src/core/List.pm:
fix $a.=uniq

The referent of $a is getting clobbered before uniq can get any values from it. Wrapping the list in gather/take gives us enough indirection that we can return a new $a without clobbering the old value.
dalek href="https://modules.perl6.org:">modules.perl6.org: ef1e109 | (Alexander Moquin)++ | web/index.tmpl:
Suggest perl6-most-wanted instead of wiki

The wiki page itself says that it's been replaced by perl6-most-wanted, and modules.md is much more current and fleshed out than the wiki page
21:13
arnsholt Night, night!
[Coke] .uniq # is there an RT for that? 21:14
jnthn makes it home :) 21:20
[Coke] LHF: add a test for that .uniq failure 21:21
jnthn arnsholt: Lemme pull the latest stuffs :)
arnsholt Cheers! 21:25
jnthn++
dalek ecs: 59239b2 | (Alexander Moquin)++ | S11-modules.pod:
"excludes" key formatting consistent with others
21:27
rurban nqp on parrot master is broken. containers decls missings 21:28
jnthn rurban: Is that due to a Parrot change or an NQP change? 21:29
rurban github.com/perl6/nqp/issues/161 21:31
jnthn Ah, I see the ticket. Parrot change busted it.
rurban fatalizing a parrot warning
I'll fix it in nqp
jnthn OK, thanks.
BenGoldberg I just thought of the craziest idea... well, you folks tell me if it's crazy. A perl5 module, Perl6::LineNoise, which causes the . operator to do method calls, ~ to do string concatenation, |, &, and ^ to do Quantum::Superposition::..., +|, +&, and +| to do arithmetic bitwise ops, and so on and so forth. Obviously it would only have an effect in the lexical context of whatever code 'use'd the 21:35
module.
Mouq rurban++ 21:36
jnthn arnsholt: hmm
java.lang.UnsatisfiedLinkError: Unable to load library './01-argless.so': Native library (win32-x86-64/./01-argless.so.dll) not found in resource path ([file:/C:/consulting/rakudo/install/languages/perl6/runtime/, file:/C:/consulting/rakudo/install/languages/perl6/lib/, file:/C:/consulting/rakudo/install/languages/nqp/lib/])
rurban I've setup a private buildbot for several architectures perl514.cpanel.net:8010/builders/ this caught it 21:37
jnthn arnsholt: Seems it doesn't build the .dll :( 21:39
Does get the .obj though 21:42
arnsholt: I think I see what's up, or some of it at least. 21:46
Mouq TimToady: Str –> Buf; Cat -> ?? 21:47
jnthn arnsholt: If uses -o01-argless.dll but that option is spelt /Fo01-argless.dll - there'll be an ldout flag or so I think.
arnsholt: Also it misses symbols ("01-argless.obj : error LNK2001: unresolved external symbol __imp_printf") and it seems it's 'cus the various libs needed are missing from the link line 21:48
lue Mouq: Cat doesn't exist, as far as I'm concerned (as is Char, and CharLingua, and...). Don't even know what it's supposed to be exactly :) . 21:49
Mouq lue: Cat is LazySttr
*Str
jnthn arnsholt: It's $Config{libs} for the libs
nwc10 was wondering - will Perl 6 be released before Template::Toolkit 3?
lue ? Since when were lazy strings important? reading files?
Mouq LazyBuf would be nice for something I'd like to work on, once I get some other Perl 6 stuff off my plate
lue: Reading files, indefinitely continued input 21:50
e.g. remote connections
lue Mouq: almost feels like it should be a trait or something, unless we really want to double the number of string types :/
Mouq and I think Cat would encorage work on "Matching streams" stuff, which I think it important 21:51
*is
lue: What are our string types? 21:52
lue Mouq: according to S15: Str, NFC, NFD, NFKC, NFKD, and Uni
dalek p: f94c2da | rurban++ | src/vm/parrot/6model/containers.c:
fix GH #161: add missing #include"containers.h"

parrot has now -Werror=missing-prototypes, which caught this omission
Heuristic branch merge: pushed 1000 commits to nqp/new-packfile-api by rurban 21:53
jnthn Mouq: Cat is one of my candidates for "put off until 6.1"
Mouq Serious question: why are NF* classes?
Wouldn't roles be easier?
nerm, s/easier/some other word :P/ 21:54
lue Mouq: because the non-typed route was a horrible reimplementation of the type system :)
rurban nqp/new-packfile-api by rurban with 1000 commits? oops. I believe this branch can be purged
lue fwiw, we're doing the inverse of what you're thinking at the moment: Unicodey and Stringy roles, with classes specializing on those (instead of base types modified by specialized roles). 21:56
Mouq lue: Ok, that makes sense 21:57
jnthn arnsholt: And I don't see anything which carries the /Fo option in %Config in Perl 5. Huh...
Mouq +1 :P
jnthn nwc10: Dunno if you know? :)
(How Perl 5 handles -ofoo.so not always being -o on differnet platforms as a link arg...) 21:58
Mouq wants Grammar::Expression to work without having to mess with src/core/Cursor.pm :(
lue Mouq: if you're curious, this was how I spec'd handling NF* stuff before TimToady kindly told me I was implementing a poor imitation of the type system :P gist.github.com/lue/7761244/0b84ad...792d4ef8cb 22:00
Mouq lue: Ahh, yes, this is probably far superior 22:07
lue besides, "thing".NFKD is much shorter than "thing".decompose(:k) anyway :) 22:08
Mouq lue: And if you're using NFKD you probably know "NFKD" pretty well already 22:09
lue The most severe hole in S15 at the moment (which is definitely blocking anyone from implementing the richer collection of string types) is the definition of the Stringy and the Unicodey roles (though listing out the specific methods of the two should probably go in S32::Str) 22:11
Mouq S32::Stringy, you mean ;)
lue Yeah, S32::Str should be renamed Strings or Stringy (à la S32::Containers, S32::Numeric ...) 22:13
Mouq
.oO(S32::Containerish)
22:14
rurban ah, cygwin64 support missing in dyncall, libffi is fine 22:15
jnthn rurban: Why are you filing an NQP ticket for that? It's dyncall you should be filing it on, no? 22:22
Oh, though we bundle, so if it's fixed upstream we should grab latest. 22:24
rurban ok 22:25
latest NativeCall -I7x../ is a,lso wrong. 5x../ it should be
upstream dyncall.org/svn/dyncall/trunk/dyncall/configure has no cygwin part at all 22:30
nqp_bigint_ops.dll and nqp_dyncall_ops.dll are missing the chmod +x treatment on cygwin 22:33
jnthn There's no practical reason why you can't grab a normal Windows build and use it from cygwin, though?
rurban I rather fix the normal procedures 22:34
jnthn OK. Well, fixes are welcome.
rurban sure 22:35
fixed both issues now
rurban t/nativecall/01-basic.t crashes in cygwin64 22:37
dalek p: 823fffe | rurban++ | tools/build/Makefile-Parrot.in:
fix GH #164. wrong -I../../.../ paths for src/vm/parrot/6model/reprs/
22:51
p: 3d56d2b | rurban++ | 3rdparty/dyncall/configure:
fix GH #162: add latest cygwin64 support to dyncall
22:52
p: 2dd4025 | rurban++ | tools/build/Makefile-Parrot.in:
fix Makefile-Parrot.in for cygwin GH #163

cygwin linker creates 644 .dlls, need chmod +x them. analog to parrot
Also add a Makefile coda for easier editing
22:55
c: 027778e | (Alexander Moquin)++ | WANTED:
Update WANTED
22:56
Mouq is really enjoying editing from Github 22:57
lue I'm not sure that I like how this requires you to put the module in some official place to be associated with a particular author/ity: github.com/perl6/specs/commit/a5e7...1a3abb346c 22:57
FROGGS TimToady++ # .=uniq 23:02
lue IIUC, the thing that makes our LTM work is apparently a really special feature in the eyes of Unicode: www.unicode.org/reports/tr18/#RL3.9
FROGGS: am I understanding the changes I just saw in my inbox, that you can't specify (or even use?) the auth part of a module anymore? 23:05
dalek rl6-most-wanted: d3783fe | (Alexander Moquin)++ | most-wanted/modules.md:
Mention the Perl 6 Lingua::* modules we know about
23:17
dalek rl6-most-wanted: d868712 | (Alexander Moquin)++ | most-wanted/modules.md:
Mention some more internationalization modules
23:21
kudo/nom: 3a30ddb | larry++ | src/core/List.pm:
fix .squish too, duh, same issue
23:29
lue m: my token foo($bar) { foo {say $bar} }; say "foo" ~~ /<foo("baz")>/ # any idea why this fails? 23:31
camelia rakudo-moar 522629: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in regex foo at /tmp/vcG5Vy7WhO:1␤ in method INTERPOLATE at src/gen/m-CORE.setting:12621␤ in method ACCEPTS at src/gen/m-CORE.setting:12804␤ in method ACCEPTS at src/gen/m-CORE.sett…»
timotimo because of $/? 23:40
timotimo that does not make sense 23:40
dalek p: 5623616 | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
Decont args to a native call.

Fixes 04-pointers.t from Zavolaj test suite, and likely more.
23:42
timotimo yaaay
lue timotimo: no clue, works within a grammar though. 23:43
TimToady no, the thing is failing to pass the argument when calling lexically
and, oddly, <&foo("baz")> doesn't parse at all
TimToady m: my token foo($bar = "oops") { foo {say $bar} }; say "foo" ~~ /<foo("baz")>/ 23:44
camelia rakudo-moar 522629: OUTPUT«oops␤「foo」␤ foo => 「foo」␤␤»
TimToady m: my token foo($bar = "oops") { foo {say $bar} }; say "foo" ~~ /<&foo("baz")>/ 23:45
camelia rakudo-moar 522629: OUTPUT«===SORRY!=== Error while compiling /tmp/iNN4hMhvSJ␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/iNN4hMhvSJ:1␤------> { foo {say $bar} }; say "foo" ~~ /<&foo⏏("baz")>/␤»
lue (by the way, I only used m: to avoid an explosion of slightly different errors; it fails across all backends) 23:45
timotimo mhm 23:48
i am kbdless atm
lue r: grammar G { token TOP { <multiple(2.3)> }; token multiple($by) { (\-? <digit>+ [\. <digit>+]?) <?{ (+$0 / $by).narrow ~~ Int }> } }; G.parse("4.6").say; G.parse("-5").say 23:50
camelia rakudo-parrot 522629, rakudo-jvm 522629, rakudo-moar 522629: OUTPUT«「4.6」␤ multiple => 「4.6」␤ 0 => 「4.6」␤ digit => 「4」␤ digit => 「6」␤␤(Any)␤»
lue That's www.unicode.org/reports/tr18/#RL3.11 :) 23:50
TimToady I think it's parsing <&foo> with the <variable> rule rather than a recursive assertion 23:51
dalek p: 74c2c59 | rurban++ | tools/build/Makefile-Parrot.in:
more Makefile-Parrot.in fixes for cygwin GH #163

CP destroys the -x attribute, because we are not using cp
23:52
Quom m: my sub foo($bar = "oops") { foo {say $bar} }; say "foo" ~~ /<&foo("baz")>/ 23:53
camelia rakudo-moar 522629: OUTPUT«===SORRY!=== Error while compiling /tmp/NksBFKP2Mb␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/NksBFKP2Mb:1␤------> { foo {say $bar} }; say "foo" ~~ /<&foo⏏("baz")>/␤»
Quom Huh
m: my sub foo($bar = "oops") { foo {say $bar} }; say "foo" ~~ /<&foo: "baz">/
camelia rakudo-moar 522629: OUTPUT«===SORRY!=== Error while compiling /tmp/xl3yVCCpRe␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/xl3yVCCpRe:1␤------> { foo {say $bar} }; say "foo" ~~ /<&foo⏏: "baz">/␤»
Quom std: my sub foo($bar = "oops") { foo {say $bar} }; say "foo" ~~ /<&foo("baz")>/ 23:54
camelia std 09dda5b: OUTPUT«ok 00:01 136m␤»
TimToady std calls EXPR there rather than variable
though arguably it should be limited to term 23:55
well, except that postfixes are done by EXPR, duh 23:56
timotimo happi day eu timezone inhabitants 23:57