»ö« 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.
sjn cool 00:00
sjn wanted to take a look at the Dockerfile, really
00:00 hobbs joined
sjn are they using the same as github.com/perl6/docker/blob/master/Dockerfile ? 00:01
hoelzro sjn: yes 00:20
sjn ok, cool 00:22
hoelzro: had a talk with tadzik today about deployment and stuff 00:23
ab5tract m: sub prefix:<%> ($s) { return so $s ~~ /thunk/ }; say <thunkadunk thunder thrunk>.map: % *; # instant fun when moving from '%' to '$
camelia rakudo-moar 416276: OUTPUT«True False False␤»
sjn hoelzro: we found a couple of interesting problems with the current scheme 00:24
and I'm wondering if it'll translate to the docker image creation things too
ab5tract Perl 6 is a pretty amazing thing. I wish everyone a fantastic *. 00:25
m: sub prefix:<z> (|c) { ~c xx 3 }; z "zZz"; 00:27
camelia ( no output )
hoelzro sjn: oh? do tell!
ab5tract m: sub prefix:<z> (|c) { ~c xx 3 }; say z "zZz";
camelia rakudo-moar 416276: OUTPUT«zZz zZz zZz␤»
hoelzro or was it here in #perl6? if so, I can backlog 00:28
00:35 noganex joined
timotimo m: sub prefix:<%> ($s) { return so $s ~~ /thunk/ }; say %<<<thunkadunk thunder thrunk>; 00:38
camelia rakudo-moar 416276: OUTPUT«5===SORRY!5=== Error while compiling /tmp/3eZpUG5cvu␤Unable to parse quote-words subscript; couldn't find right double-angle quote␤at /tmp/3eZpUG5cvu:1␤------> 3/ }; say %<<<thunkadunk thunder thrunk>;7⏏5<EOL>␤ expecting any of:␤ …»
timotimo m: sub prefix:<%> ($s) { return so $s ~~ /thunk/ }; say [%]<<<thunkadunk thunder thrunk>;
camelia rakudo-moar 416276: OUTPUT«5===SORRY!5=== Error while compiling /tmp/bts46uFdfW␤Unable to parse quote-words subscript; couldn't find right double-angle quote␤at /tmp/bts46uFdfW:1␤------> 3}; say [%]<<<thunkadunk thunder thrunk>;7⏏5<EOL>␤ expecting any of:␤ …»
timotimo m: sub prefix:<%> ($s) { return so $s ~~ /thunk/ }; say [%]«<thunkadunk thunder thrunk>;
camelia rakudo-moar 416276: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0gEyzVjUvZ␤Unable to parse quote-words subscript; couldn't find right double-angle quote␤at /tmp/0gEyzVjUvZ:1␤------> 3 }; say [%]«<thunkadunk thunder thrunk>;7⏏5<EOL>␤ expecting any of:␤ …»
timotimo m: sub prefix:<%> ($s) { return so $s ~~ /thunk/ }; say %«<thunkadunk thunder thrunk>;
sjn hoelzro: nah, skype
camelia rakudo-moar 416276: OUTPUT«5===SORRY!5=== Error while compiling /tmp/SGhuh3EGPY␤Unable to parse quote-words subscript; couldn't find right double-angle quote␤at /tmp/SGhuh3EGPY:1␤------> 3k/ }; say %«<thunkadunk thunder thrunk>;7⏏5<EOL>␤ expecting any of:␤ …»
timotimo :(
m: sub prefix:<%> ($s) { return so $s ~~ /thunk/ }; say %('thunkadunk' 'thunder' 'thrunk'); 00:39
camelia rakudo-moar 416276: OUTPUT«5===SORRY!5=== Error while compiling /tmp/bzYV47E2wh␤Two terms in a row␤at /tmp/bzYV47E2wh:1␤------> 3n so $s ~~ /thunk/ }; say %('thunkadunk'7⏏5 'thunder' 'thrunk');␤ expecting any of:␤ infix␤ infix stopper␤ …»
sjn hoelzro: basically, when installing into the CompUnit scheme, we're making it difficulty for file-based packaging systems like rpm & deb &c.
00:40 jack_rabbit joined
timotimo unless there's a CompUnitRepo::blah class that's tailored to file-access 00:40
hoelzro sjn: I don't know if that'll be a problem for Docker, but sounds like OS packaging will suffer 00:41
is it because paths are hardcoded into the comp units or something?
sjn hoelzro: well, if I've understood how docker works, each image is basically a filesystem layered "on top" of the previous base image's file system. (that was clumsily said, I know) 00:42
now, if you recreate the rakudo docker image from scratch, maybe that's not so bad, but if someone intends to add modules on top of the rakudo image, I'm wondering if some funky stuff can start happening 00:44
hoelzro sjn: kinda sorta, yeah
oh, I see now
that's an eventual goal I have for the images, but I think I'll wait for S22 and co to stabilize before I worry about it too much =) 00:45
sjn I'm partly thinking about the numbering scheme for the files in the CompUnit, and partly the manifest file contents, which might come out of sync with the other files
hoelzro docker images might be a good way for folks to deploy perl6 apps without realizing it
and that's how we'll get 'em >:)
hoelzro knows near-nothing about how the compunit stuff works =/ 00:46
sjn nah, if we're gonna "get" them, we also need the other packaging systems :)
sjn is pretty new to it too
hoelzro docker images are just the gateway drug =P 00:47
sjn hoelzro: here's something you can try. make a docker image of the previous release of rakudo *, and then install some modules on top of it, using docker (creating an updated image), then see what happens wheb you upgrade the rakudo star image to a newer version 00:48
hoelzro oh, you can't do that 00:49
sjn the filesystem diffs should be interesting to see & record
hoelzro think of it like git commits
the rakudo star image is a commit (let's say A), and the image after installing a few modules has A as its "parent"
sjn well, then apply the new rakudo star image on top of the old "in use" one?
hoelzro I don't think you can manipulate the layers with that level of control 00:50
sjn guesses this will fuck around with the manifest file
hoelzro the idea is that only the filesystem contents that differ are in the new image
sjn s/f.* around/break/ 00:51
hoelzro so a new manifest file, plus additional installed modules, would be in the topmost layer
sjn but are the contents tracked on a per-file level, per-line, or per-byte level?
or per-block?
hoelzro I want to say "per file", but I think that loses accuracy 00:52
let's say you have the root directory
and it's got 3 files in it: foo bar baz
if you add a new file, quux
and change baz
sjn how would you upgrade rakudo star? throw away the old stuff, and re-apply the new modification images (with the "current" in-use modules) on top of the new rakudo-star image? 00:53
hoelzro when you list that directory in the child image, it'll refer to the parent's foo and bar, bu the child's baz and quux
sjn right, per-file
that's where the manifest might break then
unless you reapply every change on top of the new base every time you want to upgrade the base 00:54
which kinda defeats the purpose of a scheme like this, methinks :-P
hoelzro what'd you do, if you want to update star, is build a whole new image 00:55
sjn although it could be that I'm expecting too much from docker :-P 00:56
(kinda sucks that you have to install *everything* every time you update the base image 00:58
)
but, I can imagine scenarios where docker still is useful :)
01:00 tinyblak joined 01:02 tinyblak_ joined, kurahaupo1 left 01:06 tinyblak left
sjn hoelzro: anyhoo, I could be wrong and worrying about nothing :) 01:06
although this may very well be a problem with other packaging systems :-( 01:07
(maybe it's possible to work around these problems by making sure the packages don't contain the manifest file itself, and instead generate/update it post-install) 01:09
still very cludgy 01:10
sjn isn't a fan of post-install scripts
and equivalents
hoelzro ah, interesting idea
that could work for now
sjn also suggested moving away from the numbered-file storage to instead use a sha-1 digest as filename 01:11
timotimo always very changable, of course 01:17
shouldn't you already be able to just move files around and change the manifest listing? 01:19
to try out how well it works?
sjn got the impression that moving around compunit files isn't trivial 01:20
(or are we talking about something different here?)
try out what?
timotimo hold on, i'll probably have to look myself ... 01:22
yeah, the files are referenced by a "file":... in the MANIFEST json file 01:24
if you change the path in that MANIFEST file and also mv the file on the file system
shouldn't that work?
sjn probably 01:25
timotimo shall i write a little script to do it or something? 01:33
Zoffix Do it! Do it! :D D
oops
timotimo hmm 01:34
01:34 gtodd left
timotimo CompUnitRepo::Local::Installation.new('/home/timo/perl6/moarvm/../install/share/perl6/site') 01:35
this is the one i have to look out for, right?
(also, these moarvm/../ pieces show up all over the damn place :S 01:36
actually ... now i'll play a bit of Distance 01:37
01:40 gfldex left 01:51 jack_rabbit left, eli-se left 02:14 noganex_ joined 02:17 noganex left
jdv79 is panda unhappy recently? 02:26
"resolve stage failed for Term::ANSIColor: Dependency nqp is not present in the module ecosystem"
Zoffix Installs fine for me: fpaste.scsys.co.uk/471174 02:29
Installed panda today or last night..
jdv79 i was y'day 02:30
i'll try rebuilding
02:32 mr-foobar joined
jdv79 yeah. all better. 02:37
Zoffix \o/ 02:38
jdv79 m: say .Str for "123"~~m:g/<$("2|3")>/; # why matching 1 there? 02:50
camelia rakudo-moar 416276: OUTPUT«1␤2␤3␤»
skids m: say .Str for "123"~~m:g/<$("[2|3]")>/; # workaround, don't know why. 03:01
camelia rakudo-moar 416276: OUTPUT«2␤3␤»
jdv79 hmm. nice. 03:02
skids say .Str for "1234"~~m:g/<$("2|4")>/; # the second number seems to be taken as a length
m: say .Str for "1234"~~m:g/<$("2|4")>/; # the second number seems to be taken as a length
camelia rakudo-moar 416276: OUTPUT«1␤2␤3␤4␤»
skids m: say .Str for "1234"~~m:g/<$("2|3")>/; 03:03
camelia rakudo-moar 416276: OUTPUT«1␤2␤3␤»
skids m: say .Str for "1234"~~m:g/<$("3|4")>/;
camelia rakudo-moar 416276: OUTPUT«1␤2␤3␤4␤»
jdv79 insanity but i pass another test so circle back later i guess - thanks! 03:05
Zoffix It seems more to be a "from-to" type of thing, instead of length:
m: say .Str for "abcd1ef2g"~~m:g/<$("1|2")>/;
camelia rakudo-moar 416276: OUTPUT«a␤b␤c␤d␤1␤e␤f␤2␤»
jdv79 from-to?
m: say .Str for "abc"~~m:g/<$("b|c")>/;
camelia rakudo-moar 416276: OUTPUT«a␤b␤c␤»
Zoffix so it matched all until it found "b" and then continued matching until it found "c" 03:06
m: say .Str for "bca"~~m:g/<$("b|c")>/;
camelia rakudo-moar 416276: OUTPUT«b␤c␤»
Zoffix *shrug*
Where did you find that syntax?
jdv79 i guessed it - sorry
Zoffix the $(...) bit
jdv79 it works the same, it seems if you just have <$var> 03:07
Zoffix Ah :) I'm looking at doc.perl6.org/language/regexes and not seeing anything resembiling it
Ah
jdv79 golfing
maybe too hard
m: say .Str for "abc"~~m:g/b|c/; # so its something with the interpolation?... 03:08
camelia rakudo-moar 416276: OUTPUT«b␤c␤»
skids Interpolation into regexes has like 5 open bugs. 03:09
jdv79 that makes sense then:)
03:12 Sqirrel left
skids RT#121024 03:14
.botsnack
yoleaux :D
jdv79 did someone change .perl on Hashes to use colonpairs?
skids botsnack
jdv79 is that what :k("v") is called?
makes trying to read big structures even more fun to try to read 03:15
skids yes apparently so. 03:17
r: my %x = ( "a", 3, "s", 4, 5, 5 ); %x.perl.say # they got nonidentifier keys right 03:18
camelia rakudo-moar 416276: OUTPUT«{"5" => 5, :a(3), :s(4)}<>␤»
jdv79 also, why does rt.perl6.org resolve the the synopsis index?
hmm
skids (and yes "colonpairs")
jdv79 s/the/to/
skids any undefined host in .perl6.org resolves there. 03:19
jdv79 neat. i guess now there's another reason why a dumper could be helpful.
oh
skids I think a dumper that made AST and Match really nice to read would be very popular. 03:20
(QAST)
b2gills adverb is another name for :k<v>, typically limited to its use as a named argument
03:23 Sqirrel joined
jdv79 i don't totally get that bug report but thanks for finding it 03:24
03:25 grondilu left
skids b2gills: properly adverb is the name of a semantic which a colonpair fills, while colonpair is the name of the syntax. There's a syntactically special meaning of "operator adverb" as well. 03:29
jdv79 WHOA. all tests pass. even though it all hacked up terribly. i can sleep now. 03:31
skids Heheh. Funnily, the :a(1) form is referred to almost everywhere in the design docs as "colon pair" except in the section of the docs that actually defines them which calls them the "Adverbial pair" form. 03:36
jdv79 optimized p5 version runs in 70ms while unoptimized p6 version runs in 7s. expected i guess. 03:41
dalek ecs: dcd6f6c | skids++ | S02-bits.pod:
Make it easy to find Adverbial Pair form section when searching for colon pair
03:44 raiph left 03:46 aborazmeh joined, aborazmeh left, aborazmeh joined 03:59 tinyblak_ left 04:01 aborazmeh left 04:05 Sqirrel left 04:08 tinyblak joined 04:11 mr-foobar left 04:31 aborazmeh joined, aborazmeh left, aborazmeh joined 04:54 telex left 04:56 telex joined
dalek c: ae713fe | skids++ | lib/Language/glossary.pod:
Add adverb and colon pair to glossary
05:01
05:02 xfix joined, xfix left 05:04 kaare_ joined 05:05 BenGoldberg left 05:36 skids left
dalek c: 8f9b970 | moritz++ | lib/Language/syntax.pod:
Syntax: Statements and expressions
06:00
c: 1128660 | moritz++ | lib/Language/syntax.pod:
Fix grammar
06:02
c: e88123d | moritz++ | lib/Language/syntax.pod:
syntax: more headings
06:12
c: f3008c5 | moritz++ | lib/Language/syntax.pod:
Terms, variables
06:19
06:21 WAANYC7 joined 06:28 sirdancealot left
jnthn morning, #perl6 06:42
yoleaux 3 Apr 2015 16:34Z <japhb> jnthn: My ++jnthn wish list, as requested: gist.github.com/japhb/a20fa0fc0423f11204bf
06:43 RabidGravy joined 06:57 Vlavv_ left 07:00 jack_rabbit joined 07:16 eiro left
dalek kudo/nom: d597a07 | jnthn++ | src/Perl6/Actions.nqp:
Remove left-behind debugging code.
07:19
07:21 eiro joined 07:46 Sqirrel joined, FROGGS joined 07:47 darutoko joined 07:48 rurban_ joined 07:49 Ven joined 07:56 prl joined
prl m: my $f = False; my $t = True; my $z = $f S& $t; say $z.Bool; 07:57
camelia rakudo-moar d597a0: OUTPUT«True␤»
prl wrong, right?
Ven S&, huh 07:58
08:01 jack_rabbit left 08:03 RabidGravy left
prl S&, yes, sequential metaoperator 08:03
dalek kudo/nom: 5692768 | jnthn++ | / (3 files):
Support int64 in NativeCall signatures.
08:06
kudo/nom: 6b27502 | jnthn++ | t/04-nativecall/03-simple-returns. (2 files):
Test for int64 as native call return type.
08:09
08:14 molaf_ left 08:15 Ven left 08:16 diana_olhovik_ joined 08:19 gfldex joined 08:32 prl left 08:37 diana_olhovik__ joined, diana_olhovik_ left
dalek p: 1c6c916 | jnthn++ | tools/build/MOAR_REVISION:
Bump MOAR_REVISION for unsigned int native calls.
08:42
08:42 darutoko- joined
nine_ jnthn: I know the source of RT #123989 08:44
rt.perl.org/SelfService/Display.html?id=123989
08:45 darutoko left
nine_ jnthn: the lambda in the multi method's signature like all blocks does a takedispatcher, thus eating the cur_dispatcher that was meant for the method's body. 08:45
08:47 Ven joined
jnthn nine_: Ah, oops. 08:47
nine_: Yeah, then takedispatcher will need to happen earlier... 08:48
Nice find.
Anyone else having problems building r-j?
While building BOOTSTRAP.jar I get: 08:49
java.lang.LinkageError: loader (instance of org/perl6/nqp/runtime/ByteClassLoader): attempted duplicate class definition for name: "FB6731E54858509E6CD874E56B41C332505A10A4"
moritz j: say 42
camelia rakudo-jvm 569276: OUTPUT«42␤»
08:49 eli-se joined
nine_ jnthn: I learned a lot about Rakudo's internals while investigating this :) 08:50
moritz jnthn: that's on your second-to-last commit
jnthn moritz: Hmmm...what on earth...
08:51 prl joined 08:55 prl left 08:56 Vlavv_ joined
moritz star: say 42 08:56
camelia star-{m,p} 2015.02: OUTPUT«42␤»
dalek p: 314a1cd | jnthn++ | src/vm/jvm/HLL/Backend.nqp:
Fix race/timing issue in JVM classname generation.

If the time between two evals was too short, we could end up re-using a class name, thus upsetting the class loader.
09:07
albot: eb33872 | moritz++ | evalbot.pl:
remove star-p; make "star" be only star-m by default
albot: 9002c38 | moritz++ | service/camelia (2 files):
Add systemd service files
09:09
moritz star-m: say "version?"
09:09 camelia left
dalek p: a405133 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/NativeCallOps.java:
Support int64 arg/return in native call on JVM.
09:10
nwc10 jnthn: I guess you don't need me to answer "Anyone else ..."? 09:11
jnthn nwc10: No, I fixed the thing now :) 09:12
09:14 camelia joined 09:15 ChanServ sets mode: +v camelia 09:17 espadrine_ joined
dalek p: dbaecae | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/ (2 files):
Basic unsigned int native call support on JVM.

Java and the JVM don't really do unsinged, so it's a bit hacky, but it is at least enough to pass the tests added to Rakudo for unsinged int args and returns.
09:24
09:25 diana_olhovik__ left
dalek kudo/nom: 54d6aa0 | jnthn++ | tools/build/NQP_REVISION:
Bump NQP revision for int64/unsinged nativecalls.
09:26
kudo/nom: f2b9e0c | jnthn++ | / (5 files):
Support and test unsinged types in NativeCall.

Tests pass on both MoarVM and JVM.
jnthn Hopefully that's enough to unblock those waiting for this. 09:27
(and let me know if not)
09:30 Perl6_newbee joined 09:32 Ven left
masak good almost-noon, #perl6 09:32
yoleaux 3 Apr 2015 23:17Z <ab5tract> masak: Sorry about that then, buddy :)
masak no sweat :)
jnthn o/ masak 09:35
09:36 rurban_ left 09:39 Alina-malina left 09:40 Alina-malina joined 09:42 Rounin joined 09:48 esaym153 left 09:56 esaym153 joined
moritz jnthn++ 10:03
10:06 camelia left, camelia joined 10:07 ChanServ sets mode: +v camelia 10:10 xinming joined 10:12 BenGoldberg joined
jnthn m: use Test; is ({ try { map { die }, 1,2,3 }; 42 }()), 42, "die in map"; done; 10:13
camelia rakudo-moar f2b9e0: OUTPUT«Died␤ in block at /tmp/W0kwmzfeta:1␤ in block <unit> at /tmp/W0kwmzfeta:1␤␤» 10:14
jnthn Seems that's a recent regression.
moritz regression?
jnthn Well
Hm
Behavior change, at least.
moritz the map isn't called in sink context
jnthn Aye... 10:15
hmm
Thing is, S29-context/die.t now explodes
oh
It looks like TimToady may have "fixed" a thinko... 10:16
dalek c: aeaa776 | moritz++ | lib/Language/syntax.pod:
document barewords
moritz in the test? or in rakudo?
jnthn Or a "thnko"
In the test.
github.com/perl6/roast/commit/cc2c...4c95caf2f8 10:17
I'm dubious that the test writer really intended ; there instead of ,
But it had the side-effect of sink-contexting the map
moritz well
since it's "die in map" 10:18
I'd propose to change the tests to try { eager map { die }, ... }
nwc10 jnthn: On Linux gcc2-power8.osuosl.org 3.17.4-301.fc21.ppc64le #1 SMP Mon Dec 1 07:51:01 UTC 2014 ppc64le ppc64le ppc64le GNU/Linux 10:20
dalek ast: f153994 | jnthn++ | S29-context/die.t:
Unbust tests after ; => , correction.

We need to be eager with these operations to ensure they take place in the scope of the try.
nwc10 with avac 1.8.0_25
t/nativecall/01-basic.t ............... Dubious, test returned 1 (wstat 256, 0x100)
I have no idea if Power is the problem, or a dodgy version of Java 10:21
jnthn nwc10: Is that a recent regression, or a long-standing problem, or don't know?
nwc10 don't know - never tried before
jnthn Does it fail all the tests in that file or just some of them?
10:22 hobbs left 10:23 coffee` left, hobbs joined
nwc10 at the risk of a splat: 10:23
1..3
java.lang.NullPointerException in <mainline> (t/nativecall/01-basic.t:63) in eval (gen/jvm/stage2/NQPHLL.nqp:1160) in evalfiles (gen/jvm/stage2/NQPHLL.nqp:1358) in command_eval (gen/jvm/stage2/NQPHLL.nqp:1256) in command_line (gen/jvm/stage2/NQPHLL.nqp:1231) in MAIN (gen/jvm/stage2/NQP.nqp:4092) in <mainline> (gen/jvm/stage2/NQP.nqp:4088) in (gen/jvm/stage2/NQP.nqp)
jnthn eek
That's an...odd kind of failure.
10:24 eli-se left 10:25 rindolf joined
nwc10 I have no idea how old or buggy 1.8.0_25 is 10:26
particularly on not-x86
also, that machine has 160 cores, so that might shake out some bugs Oracle didn't know about 10:28
(or care about)
10:29 rindolf left, rindolf joined 10:30 Ven joined 10:31 rindolf left, rindolf joined
nwc10 makefile races, we have 'em: 10:32
/usr/bin/perl -MExtUtils::Command -e cp gen/jvm/stage2/QAST.jar .
nwc10 spares the channel all the other 10-fold duplication
jnthn It happens without parallel make too 10:33
10:34 rindolf left, coffee` joined
dalek c: 9fd2155 | moritz++ | lib/Language/syntax.pod:
Start to document literals
10:34
nwc10 oh. OK. Curious 10:35
10:35 rindolf joined
nwc10 also, I looked up the docs - ExtUtils::Command::cp can take file file file ... dir 10:36
(not sure if that's since forever)
but it would permit Makefile simplification, and a few fewer shell-outs
will patch at some point, but might be rendered irrelevant if someone else refactors that bit before I get there
10:37 dustinm` left, LonelyGM joined 10:38 rindolf left, rindolf joined 10:40 LonelyGM left 10:41 dustinm` joined
moritz why does the nqp-jvm makefile copy all those jars to the current working directory? 10:50
10:53 Perl6_newbee left
jnthn moritz: Probably 'cus NQP has no equivalent of the blib folder used during the Rakudo building. 10:57
10:57 xinming left
jnthn Oh, also because of the staged build thing 10:58
10:58 xinming joined 11:10 Ven left 11:11 Ven joined
nwc10 well, this isn't going to fly: 11:12
java.lang.UnsatisfiedLinkError: Native library (com/sun/jna/linux-ppc64/libjnidispatch.so) not found in resource path ([file:/home/nick/Perl/rakudo-j/, file:/home/nick/Perl/rakudo-j/, file:/home/nick/Perl/rakudo-j/blib/, file:/home/nick/Sandpit/jvm/share/nqp/lib/])
11:15 [Tux] left 11:21 [Tux] joined 11:25 KCL joined 11:28 KCL_ left 11:30 sirdancealot joined 11:35 mr-foobar joined 11:46 LonelyGM joined 11:55 ggoebel left
dalek p: 7aa9537 | moritz++ | tools/build/Makefile-JVM.in:
JVM build: reduce number of shellouts by combining several $(CP) steps into one
11:58
moritz nwc10++ 12:01
nwc10 moritz++ # doing the actual work 12:02
12:05 raiph joined
moritz FROGGS, tadzik: I don't know if it's a bug in rakudo or in panda, but since the last bigger merge, I can't bootstrap panda after I did a "make install" with a new rakudo version (and without cleaning the install location first) 12:09
that used to work, and it would be great if it worked again
Missing or wrong version of dependency 'src/gen/m-CORE.setting'
12:17 espadrine_ left 12:25 Sqirrel left
dalek kudo/nom: 4afc9e9 | moritz++ | tools/build/Makefile-Moar.in:
m-install: reduce the number of shell commands by combining several $(CP) statements into one, nwc10++
12:26
Iish: eb14b62 | moritz++ | lib/DBDish/mysql.pm6:
mysql: use proper unsigned types

requires very latest rakudo (at least 2015.03-159-g4afc9e9) to work
12:28
12:29 raiph left 12:31 Sqirrel joined 12:33 raiph joined 12:45 rmgk is now known as Guest63237, rmgk_ joined, Guest63237 left, rmgk_ is now known as rmgk 12:51 eternaleye left, eternaleye joined, pochi left 12:52 pochi joined 13:10 tinyblak left 13:11 tinyblak joined, BenGoldberg left
dalek Heuristic branch merge: pushed 27 commits to perl6-examples by paultcochrane 13:11
13:14 Sqirrel left 13:15 tinyblak left 13:16 Sqirrel joined 13:27 espadrine_ joined 13:34 diana_olhovik_ joined 13:46 lucasb joined 13:57 eli-se joined
moritz m: say :16<BEEF>.^name 13:59
camelia rakudo-moar 4afc9e: OUTPUT«Int␤»
moritz m: say -1 * -1 14:00
camelia rakudo-moar 4afc9e: OUTPUT«1␤»
14:03 tinyblak joined
lucasb m: say so False & False 14:04
camelia rakudo-moar 4afc9e: OUTPUT«False␤»
lucasb m: say so False S& False
camelia rakudo-moar 4afc9e: OUTPUT«True␤»
lucasb m: say False & False
camelia rakudo-moar 4afc9e: OUTPUT«all(False, False)␤»
moritz m: say 3_00_00e0
camelia rakudo-moar 4afc9e: OUTPUT«30000␤»
lucasb m: say False S& False
camelia rakudo-moar 4afc9e: OUTPUT«all()␤»
lucasb say so all()
m: say so all()
camelia rakudo-moar 4afc9e: OUTPUT«True␤»
lucasb As noted by prl++ in the backlog, there is something strange with the sequential metaoperator S
jnthn We would probably vote for un-stranging it by saying "not in 6.0" and throwing it out of Rakudo. :) 14:05
timotimo moritz: aye, i had to nuke my install directory, too ... that same error message :(
moritz timotimo: fwiw I found that rebootstrap still works; still not great 14:06
m: say 0755
camelia rakudo-moar 4afc9e: OUTPUT«Potential difficulties:␤ Leading 0 does not indicate octal in Perl 6; please use 0o755 if you mean that␤ at /tmp/1xrFa_lhzL:1␤ ------> 3say 07557⏏5<EOL>␤755␤»
timotimo yeah, the update path between previous panda and current S11-panda is a bit rocky :( 14:07
moritz not between previosu and current panda
between current panda and rakudo-1 to rakudo+0
jnthn Um, especially as I don't know that it does anything much...
timotimo oh
moritz m: say 0b1101e0 14:08
camelia rakudo-moar 4afc9e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/m2kxeCo9Dy␤Confused␤at /tmp/m2kxeCo9Dy:1␤------> 3say 0b11017⏏5e0␤»
14:09 skids joined
jnthn m: say 1 S+ 2 14:10
camelia rakudo-moar 4afc9e: OUTPUT«Cannot find method 'postcircumfix:<( )>'␤ in block <unit> at /tmp/6RBdPcsK5O:1␤␤»
jnthn It's actually compiling into &infix<+>.()(1, 2), or &infix:<&>().(True, False) in the original case 14:11
14:11 dsm left
moritz wtf. 14:11
jnthn That reduces to all()(True, False)
14:11 Perl6_newbee joined
jnthn Which auto-threads the call over zero elements 14:11
Meaning nothing ahppens. 14:12
*happens
Hmm 14:15
Though given we aren't doing any of the parallelism at present, we could equally well implement S as a no-op
skids moritz: what happens is that File::Find etc have old versions that request the now-missing old setting, so panda cannot run. 14:16
jnthn I don't think the optimizer goes re-ordering things either in such a way that'd bust stuff.
moritz skids: then installing rakudo should install a new, empty module registry too
skids I did post this late a night or two ago to make those error messages more awesome: gist.github.com/skids/dbe151cb35a4de8c4b9a 14:17
colomon is trying to remember what the use-case for Sop was…
timotimo yeah, i don't remember seeing any optimization in the tree-based optimizer that'd reorder things
retupmoca timotimo: I have PR's open for .dll bundling/fetching on your Cairo and SDL2::Raw modules :) 14:18
timotimo signaling "do not reorder" into spesh and jit would seem quite a bit more tricky, no idea how the signaling ought to work there
retupmoca: thank you! i didn't manage to merge it yet >_<
retupmoca: did you see my question about renaming "gtk-dlls.p6c.org" and hosting more dlls there? 14:19
jnthn timotimo: Typically these are handled by the compiler emitting memory barriers.
timotimo that seems simple & sensible
retupmoca timotimo: yeah - that would probably make sense. Anything less than a MB or two I tend to just drop into the repo directly, so zlib and openssl aren't downloading right now 14:20
but perhaps they should be made to
14:21 aborazmeh left
timotimo ah, SDL2.dll is just above a meg 14:21
that's not that terrible
retupmoca right, I gave you two different options for bundling that one :)
timotimo yes, i saw :)
moritz skids: I'd spectest that patch, and apply it, if you have no objections 14:22
skids Please. I don't know how to do a thorough spectest yet.
moritz well, "make spectest" in rakudo :-) 14:23
retupmoca timotimo: you may need a couple more 'is export' in your Cairo module BTW; I'm getting things like 'Undeclared name: FORMAT_ARGB32 used at line 46'
and adding an is export *seemed* to fix it
skids mortiz: Well, if that's the bar I can certainly fit under that. I thought it would be more involved.
moritz skids: I'll also try to provoke the error, and see if the error message improved 14:25
14:25 diana_olhovik_ left
jnthn skids: The patch looks sane to me at first glance. 14:28
timotimo retupmoca: i put a Cairo:: in front instead 14:33
retupmoca: especially since FORMAT_ARGB32 looks like something that could equally well come from SDL and/or OpenGL modules 14:34
moritz fwiw I've had some spectest weirdness 14:38
several (7 or so) test failed reported that no test output was found, but they were fine when run individually 14:39
retupmoca timotimo: ah, ok. your SDL2/examples folder needs the tweak then :)
moritz now testing with the previous MoarVM version
timotimo yes; i've got it locally and just neglected to push :S
dalek c: b7d5b91 | moritz++ | lib/Language/syntax.pod:
Start to document number literals
14:40
14:41 skids left 14:42 yvan1 left 14:43 eli-se left 14:44 mr-foobar left 14:51 Sqirrel left 14:53 Sqirrel joined 15:01 BenGoldberg joined, BenGoldberg left 15:02 BenGoldberg joined, Ven left
timotimo retupmoca, moritz: looking for suggestions for a new name for "gtk-dlls.p6c.org"; maybe "library-rehost"? "dll-rehost"? 15:03
15:06 Sqirrel left
flussence "mirror"? 15:06
15:06 mr-foobar joined
TimToady jnthn: according to S04:1018, the try should be sunk inside because it's sunk outside 15:07
timotimo "mirror" sort of implies - to me at least - an automated, swiftly updated copy of a different site; this host has something more akin to a selection/collection of dlls
15:07 raiph left
TimToady so the eager should not be necessary 15:07
jnthn TimToady: Ah...
TimToady: OK, I can fix that. 15:08
FROGGS moritz: I can rebootstrap just fine
jnthn (And unfix the test. :))
15:08 eli-se joined
moritz FROGGS: rebootstrap, yes; bootstrap, no 15:09
jnthn TimToady: I've been doing lots of reading/thinking/planning on NFG stuff today
FROGGS moritz: but that is the point of rebootstrapt
-t 15:10
jnthn TimToady: I've got a work-in-progress doc about where I got so far
TimToady: gist.github.com/jnthn/b312a7a211e78c27b96d
FROGGS moritz: bootstrap wont work when you reinstall rakudo
15:10 eli-se left
moritz FROGGS: it used to 15:10
15:10 Sqirrel joined
FROGGS moritz: I doubt that 15:10
jnthn TimToady: Drew on S15, S02, S05, the Unicode spec. :)
moritz FROGGS: it just didn't install the old modules
jnthn TimToady: Would very much appreciate any input on whether I'm wondering off in right-ish directions or thinking the right way about things.
timotimo "infix:<~^>, infix:, infix:, infix:, infix:, infix:, infix:, infix:, and infix:." 15:12
damn you, markdown
jnthn *sigh*, yes
moritz FROGGS: I still consider it a bug that installing a new version of rakudo invalidates old modules, without removing them
TimToady jnthn: okay, I'll try to have a glance at it
jnthn TimToady: Thanks. :)
FROGGS moritz: it is also a but that it wont fall back to .pm files when the precomped files are invalid 15:14
TimToady you'll have to debut it then 15:15
masak with a debutter
timotimo when that feature debuts, i'll be quite happy 15:16
jnthn timotimo: Fixed 'em, by the way 15:21
masak no, not "damn you, markdown". you meant "gosh, I need to learn markdown's simple and consistent rules" :P 15:22
15:24 eli-se joined
jnthn Why have simple and consistent when you could DWIM... :P 15:24
15:26 noganex_ left
TimToady moritz: might consider mentioning the my \foo = ... barewords along with constant 15:32
eli-se Writing interpreters is fun!
TimToady that's a matter of interpretation...
masak I agree! 15:33
15:33 fhelmberger joined
TimToady " 15:33
"Implement types Uni/NFC/NFD/NFKC/NFKD" -- we really need to sneak a KFC type in there somewhere 15:34
jnthn :D 15:35
masak .oO( "what's the matter, Colonel Sanders? chicken!?" -- I never got that joke when I was young )
jnthn To be honest, I'm quite happy with Not Kentucky Fried Chicken... :P
15:38 fhelmberger left, Ven joined
masak jnthn: why do you hate freedom? why do you hate America? 15:39
:P
TimToady "whereas a Buf/Blob may be holding UTF-32 in some other endian." -- could be other-endian UTF-16 too
jnthn TimToady: For sure. :) 15:40
TimToady actually, it's Not Fried Kentucky Chicken, which is different
jnthn I called out UTF-32 mostly 'cus I suggest a representation for Uni is a uint32 array... 15:41
ShimmerFairy A couple things I want to point out: first, I never got around to propagating S15's stuff through the other synopses, so I think in general trust S15 more on Unicode :)
Secondly, I wrote a new S32::Str about a year ago, but never really did much with it (I didn't want to put a third pod6 file in the specs repo). It's here in case it's still interesting: gist.github.com/lue/9941658 15:42
TimToady I also agree that the multi-view view of Stringy is probably not gonna ever happen, unless it becomes obvious how to do it later; but it's probably the same mistake as P5-style num/str allomorphism 15:43
that is, it's okay to cache alternate representations, but not okay to confuse the computer about the intended type
ShimmerFairy And I do recall TimToady once mentioning that StrLen/StrPos were a pre-NFG thing, so I'm confident those won't be around much longer. 15:44
TimToady we might possibly want to have a way of translating offsets along with a string though, just not with special types like that 15:45
jnthn ShimmerFairy: Yes, the conversation linked from S15 between you and TimToady was useful; I'm glad you left that link in there.
TimToady: Yeah, I can see how that might be useful 15:46
TimToady actually does feel like chopped liver this morning; finally caught the plague from my family, who's had it for a week and a half before me...
jnthn Urgh
Get Well Soon.
TimToady would like to blame my sniping at lizmat++ on this, but I'm sure it was just sheer cussedness :) 15:47
15:49 Ven left
jnthn It would be helpful to figure out concretely where what's in S11 and what you'd like diverge, so we can work out some decent way forward. 15:50
TimToady besides, lizmat++ is correct that I've been sniping for a good while now, instead of doing the review that I shoulda done when she asked me to
ShimmerFairy jnthn: in general, I'm of the opinion that buffers and strings don't go together (that is, I don't like how closely Buf and Str are linked together currently), in the case of any questions involving the two :) 15:51
15:52 Ven joined
jnthn ShimmerFairy: I don't see them as too closely linked fwiw; you have to explicitly encode/decode, unless the encoding is known. 15:52
TimToady several times as they were growing up, my kids pointed out this "sniper" failure mode in me...I guess it's a form of laziness...
jnthn Well, sniping is one way to defer decision making... :P 15:53
I think most/all of us need to better understand what you mean by "identity"
ShimmerFairy yeah, my issue is more with how Buf is interfaced with in a string-like, rather than array-like, way (.subbuf instead of .[], for instance), and how they share the same kind of operators (the ~ "prefix" on various ops)
TimToady me too :)
jnthn ShimmerFairy: Well, the trouble is that .[...] always give you back a Parcel, and we want a Buf of the same kind, presumably... 15:55
ShimmerFairy: You can use .[...] just fine on a Buf/Blob already.
ShimmerFairy Wasn't there a time where Parcels were supposed to be kinda invisible, though? :P
jnthn ShimmerFairy: I ever fixed it so you can list-assign to a Buf.
*even
TimToady well, they *are* strings, just not of Unicode characters
ShimmerFairy last time I tried [] it didn't work, though that was probably just an old rakudo :) 15:56
jnthn m: my $b = Buf.new; $b[^5] = 5..10; say $b;
camelia rakudo-moar 4afc9e: OUTPUT«Buf:0x<>␤»
jnthn uh...
m: my $b = Buf.new; $b[^5] = 5..10; say $b[0];
camelia rakudo-moar 4afc9e: OUTPUT«0␤»
jnthn wat... 15:57
ShimmerFairy TimToady: I personally find referring to buffers as strings misleading, considering they don't necessarily hold text. You definitely _could_ call it a string, but I think it conflicts with most programmers' understanding of the word "string" :)
TimToady to me, strings != text 15:58
but maybe that's BASIC showing through
15:58 raiph joined
ShimmerFairy I heavily associate the word "string" with "that data type you use for text", so that's why I don't like referring to buffers as such. 15:59
TimToady well, and that's why it's subbuf, not substr :)
ShimmerFairy As long as I can treat my Bufs as the arrays I see them as, I don't care what other methods are on them :) 16:00
TimToady and a buf is only Stringy in the sense that you *can* view it as a sort of string if you want
timotimo jnthn: seems to be limited to ranges being wrong; with an explicit list that works 16:01
m: my $b = Buf.new; $b[0,1,2,3,4] = 5..10; say $b;
camelia rakudo-moar 4afc9e: OUTPUT«Buf:0x<05 06 07 08 09>␤»
16:01 joss joined
jnthn timotimo: ah, interesting... 16:01
ShimmerFairy My other issue is that buffers and strings share the same ~ for their ops, like ~& and such, and at least now just about all of those in S03 mention a Str->Buf conversion being a design flaw (IIRC). I can't think of a suitable symbol for buffers though.
jnthn ShimmerFairy: ~ is more about Stringy than Str 16:02
16:02 joss left
jnthn ShimmerFairy: Once you accept buf ~ buf gives a buf, then the others feel OK to me. 16:02
colomon What is buf ~ Str ? 16:03
ShimmerFairy yeah, it's just the part where stuff like ~& will implicitly convert a str to a buf that feels wrong to me (as the "design flaw" comments in S03 would concur :) )
colomon would be happy if it was illegal….
jnthn colomon: I think buf ~ Str fails unless your buf is actually a utf8 16:04
16:04 RabidGravy joined
jnthn ShimmerFairy: It won't implicitly convert a Str to a Buf afaik 16:04
ShimmerFairy yeah, lemme check S03 to be sure :)
TimToady this also relates to the issue of ord/ords in NFG; when do we prohibit the user from thinking about characters as numbers? 16:05
timotimo news.perlfoundation.org/2015/04/wen...-to-n.html - oh, this seems nice :)
TimToady especially if they are synthetic
jnthn timotimo: Indeed :)
ShimmerFairy for ~& : "Coerces NFG strings to non-variable-encoding string buffer type (such as buf8, buf16, or buf32) and then does numeric bitwise AND on corresponding integers of the two buffers" ... "The use of coercion probably indicates a design error, however."
16:06 tinyblak_ joined, tinyblak left
TimToady (Liz & Wendy)++ 16:07
jnthn TimToady: One data point: if we reveal the synthetics and given I'm going for a global synthetics table, then people will be able to write code comparing them, and then we'll be in trouble if we want to have an implementation using a per-string NFG table in the future. 16:08
TimToady: The negatives would be meaningless in a per-string NFG table
TimToady we should also think about DoS attacks on a global table
especially if we can't GC it 16:09
jnthn Local ones could be vulnerable too, depending how many strings you can cause to be around in memory. 16:10
TimToady but you know which string to blame in that case
16:10 zakharyas joined
TimToady guesses we'll end up with a hybrid 16:10
ShimmerFairy I wrote in S15 that .ord would return negative numbers for NFG synthetics, but by no means would I insist on it.
TimToady some set of global codes that capture the local orthography, if any, and the overflow into locals 16:11
jnthn If we want to allow ourselves the freedom to do some locals scheme of any kind, we probably need to not expose the synthetics.
TimToady and we should just define our semantics from the getgo to discourage people from relying on the synthetic codes that way
and always send them to the NFD for such purposes 16:12
well, or just post a huge HERE BE MONKEYS warning
jnthn We could only support .ords on Uni and its descendents, yes
16:12 tinyblak joined
jnthn .ord is not a problem in that you can always hand back the base char if the first thing is a synthetic. 16:13
ShimmerFairy In general, I'd suggest kicking things down to NFC where NFG is inappropriate (which includes printing characters to a terminal or file, fwiw)
16:13 tinyblak_ left
TimToady well, .ords could essentially do the same thing, but it would be ambiguous whether they were wanting NFC or NFD in either case 16:13
jnthn We could kill off ords
TimToady so maybe we say we require explicit conversion for now 16:14
jnthn Since if Uni is an array-ish thing then we add .NFC and .NFD coercion methods and be done with it :)
And we also get to stop masak whining about us having a .ords method :P
TimToady likes to hear masak whine...
jnthn Don't worry, there are plenty of other things. :P 16:15
masak did somebody say "kill off ords"? \o/ 16:16
jnthn haha
masak: Yes by replacing it with 4 other methods :D
ShimmerFairy tentatively suggests .ordses :P 16:17
timotimo what's a bagginses ordses?
TimToady .NFD-ordeses
masak I'm just gonna let the dust settle on this one, and then come back and see if there's anything left to whine about :P
16:19 Ven left, Ven joined
jnthn is hungry and thirsty and should fix this :) 16:20
TimToady: I guess you'll need a bunch more thinking time, but I take from this that I can probably quite safely go ahead with a Uni type and the various subclasses as array-like things, and dig into implementing the normalization bits. 16:21
TimToady what I've seen so far (about 2/3 of doc) seems sane 16:22
16:23 Ven left
jnthn TimToady: OK, sounds good. 16:24
TimToady: Any thoughts on NFC vs. nfc for type names?
TimToady not entirely sure we want to include normalization as part of encode/decode; maybe a logically separate step that we can optimize
16:24 telex left
jnthn (given we picked utf8 for that kind of blob) 16:24
TimToady I still prefer the uppercase there, just 'cuz
jnthn OK, and Uni for the "worreva" type? 16:25
TimToady mostly because people are used to seeing NFC and such
jnthn *nod*
TimToady utf8 is trying to look 'native', I guess 16:26
but yeah, it's inconsistent...
16:26 telex joined
TimToady also, there's the p5 heritage of 'utf8' meaning something more than UTF-8, though perhaps we want a different type for "illegal" characters that p5 supports 16:27
utf8ish or so 16:28
Unicode-mandated semantics aside, it is fairly obvious how the format itself extends to any integers up to 32 bits, and p5 even supports a 64-bit form, urque 16:29
16:29 Ven joined
TimToady and UTF-8 is of course an illegal identifier... 16:30
jnthn True
TimToady one could argue that UTF8 is Unicode limited, and utf8 isn't, but maybe that's icky
one does need to be able to form illegal Unicode somehow for testing purposes 16:31
jnthn I think something called utf8 should be...
Sure, there's Buf for that 16:32
utf8 is a "we know it's utf8 'cus we just encoded it"
TimToady I think you also have to say that we don't trust incoming UTF-16, even when encoded to the Uni level 16:33
Uni should never see a bare surrogate
jnthn Oh, I was imagining Uni as basically native endian UTF-32 under the hood 16:35
So you've hve to .decode a bunch of UTF-16 to get a Uni
16:35 espadrine_ left
TimToady well, I'd call it UCS4, so we can talk about UCS2 and UCS1 as well :) 16:36
UCS1 being a string (or piece of rope) that contains only Latin-1
16:36 grondilu joined
jnthn Well, except you'll probably never see a Uni, but rather an NFC, NFD, etc. 16:37
grondilu m: say ([1], { @_; [@_, 0 Z- 0, @_] } ... *)[5]
camelia rakudo-moar 4afc9e: OUTPUT«1 1 1 1 1 -5␤»
TimToady afk a half hour or so &
grondilu m: say ([1], { [@_, 0 Z- 0, @_] } ... *)[5]
camelia rakudo-moar 4afc9e: OUTPUT«1 1 1 1 1 -5␤»
grondilu m: say ([1], -> @_ { [@_, 0 Z- 0, @_] } ... *)[5]
jnthn If we bring that axis into it also it gets tricky...
camelia rakudo-moar 4afc9e: OUTPUT«1 -5 10 -10 5 -1␤»
jnthn I'll take that as my cue to go for dinner :)
jnthn bbiab
16:38 yvan1 joined
grondilu m: say ([1], { [@$_, 0 Z- 0, @$_] } ... *)[5] 16:40
camelia rakudo-moar 4afc9e: OUTPUT«1 -5 10 -10 5 -1␤»
16:47 zakharyas left 16:50 KCL left 16:57 tinyblak left
ugexe so ive installed 'Encode', but everytime i try to install HTTP::UserAgent it fails with cannot find 'Encode::Windows1512' even though while isntalling encode it passed that specific test and also stated ' 17:00
Compiling lib/Encode/Windows1252.pm6 to mbc
17:02 pmurias joined
dalek p/js: 0df1882 | (Pawel Murias)++ | src/vm/js/ (2 files):
Pass test 78.

Implement bos, eos regex anchors.
17:02
p/js: fb42527 | (Pawel Murias)++ | t/nqp/62-subst.t:
Fix typo in test description
17:02 BenGoldberg left
pmurias hi 17:02
17:03 Akagi201 joined 17:04 Ven left 17:08 Ven joined 17:19 LonelyGM left 17:32 raiph left 17:36 Psyche^ joined 17:40 Patterner left
timotimo o/ 17:42
17:54 Ven left
TimToady m: reduce { die }, 1,2,3 17:55
camelia rakudo-moar 4afc9e: OUTPUT«Too many positionals passed; expected 0 or 1 arguments but got 2␤ in block <unit> at /tmp/82eRUCl_oA:1␤␤»
TimToady that dies anyway without the die
m: reduce -> $a, $b { die }, 1,2,3
camelia rakudo-moar 4afc9e: OUTPUT«Died␤ in block <unit> at /tmp/ZuIw2wMuWb:1␤␤»
TimToady m: reduce -> $a, $b { die } 1,2,3 17:56
camelia rakudo-moar 4afc9e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yzS02uzSd_␤Strange text after block (missing semicolon or comma?)␤at /tmp/yzS02uzSd_:1␤------> 3reduce -> $a, $b { die }7⏏5 1,2,3␤ expecting any of:␤ infix␤ infix stopper␤ …»
TimToady I guess I could add that to the list of functions that require a comma there, like map and grep
masak and sort 17:57
and classify
TimToady sort is already like map and grep :)
masak ok :)
eli-se Why does Perl 5 not require a comma there, actually? I always wondered. It seems so inconsistent. 17:58
17:58 tinyblak joined
eli-se Although it does make try { } catch { } looks good. :P 17:58
masak eli-se: the proximal reason I guess is that `map` and `grep` and `sort` were kind of special functions from the beginning.
TimToady because the extra block was shoehorned into the language as an indirect object, which in retrospect was suboptimal
eli-se I see. 17:59
masak eli-se: the distal reason is that prototypes allowed you to make functions behave like that, even user-defined ones.
TimToady except they were like that before prototypes ever existed
so aren't all that distal
eli-se Sometimes I feel like I'm the only one who programs without syntax highlighting. 18:00
Zoffix I do too 18:01
mst same.
eli-se OMG
Zoffix Kinda have to, since I can't find a working plugin for Sublime Text 2 that doesn't highlight Perl6 code one giant comment :)
mst I hate synhi full stop.
hence my dragging a patched ex-vi around with me 18:02
Zoffix I like it. Makes things less monotone
mst sure, it's a useful crutch for people who can't read code
Zoffix :D
eli-se I like syntax highlighting for diffs.
mst but once you can, it just gets in the way
18:03 tinyblak left
dalek kudo/nom: df5acd2 | TimToady++ | src/Perl6/Actions.nqp:
add reduce, classify, categorize to commatraps

also, lambdas can also begin with -> or <->
18:06
timotimo do we have a way to provide the contents of a compunit to the VM given just a buffer? 18:08
for example if i were to implement a "load multiple compunits from a zip file" CUR without extracting it to disk in between?
or for preventing race conditions between sha1-verifying a file and loading it in the VM 18:09
masak mst: I don't expect (or need) to convince you, but I used to be in your camp wrt syntax highlighting. 18:10
moritz n+1-fach
dalek ast: 7bb87ca | TimToady++ | S29-context/die.t:
get reduce to die for the right reason
mst masak: my real problem, tbh, is granularity
Zoffix masak, and what changed?
masak Zoffix: I guess I saw good syntax highlighting. 18:11
mst when I mentally switch between considering method level, block level, expression level etc.
the synhi doesn't follow, and it induces cognitive dissonance
TimToady you have to be able to put it into your backbrane as a sort of "getting warmer, getting cooler" hint that your forebrane can ignore 18:12
or maybe turn up and down the chroma in your visual cortex :) 18:13
masak I agree that any kind of syntax highlighting that *gets things wrong* is an immediate turnoff. literally, as it will make me turn it off.
TimToady I guess that's backbrane :)
one has to be able to ignore the "wrongness" when typing anyway, since you don't generally type both quotes at the same time 18:14
masak there's also small kvetches I have with most systems which try to fade comments into the background. don't do that, comments should be visible, sometimes moreso than the code.
TimToady well, helps to be able to pick your own color scheme
masak the most exciting types of syntax highlighting that I've seen are the ones that don't take a single view of the source, but which introduce "filters" that allow you to highlight various aspects of the code. 18:15
mst I didn't mind elvis' perl mode which mostly just highlighted things like parens and braces
FROGGS timotimo: yes
mst masak: right, I would be curious to try one of those
TimToady I did mind it when the highlighter tried to decide which words were keywords and which not, since those concepts are intentionally mushy 18:16
mst but honestly over the years I've been making my setup less featureful, not more
masak another cool feature that I would like in my editor is the ability to conceptually inline -- transclude -- a routine into another. kind of an inline-but-only-for-show operation.
mst TimToady: yeah, my only response to that is *inarticulate rage noises* followed by disabling it
FROGGS timotimo: ahh, it is probably still in a fork :/ 18:17
masak my main kvetch with vim's Perl 6 highlighter these days is that it's slow. though it's possible I'm not on the latest version.
sometimes I turn it off because it lags when I type.
TimToady gee, maybe we could build a whole network based on the concept of transclusion...
masak TimToady: that will never work 18:18
TimToady decrees a stately pleasure dome
masak more precisely, it will invariably be outcompeted by a network of breakable links :)
breakable one-way links, even
TimToady citation needed? :) 18:19
mst TimToady: I still can't work out why you'd want a pleasure dome to be *stately*
masak I could give you a citation, but the link would 404... :)
TimToady maybe your link went through caverns measureless to man 18:20
18:20 virtualsue joined
masak more like three totally useless URL shortening services 18:21
TimToady reminds himself not to write poetry while on cough medicine
masak .oO( don't sneeze and muse ) 18:22
timotimo masak: the vim highlighter recently got profiled and optimized 18:23
masak yeah. literal++
I realized while I wrote tha above that I'm probably not on latest.
timotimo yup, literal++ once again :)
don't forget you'll get a better experience with 7.4 18:24
masak I'm on 7.4.52 here
timotimo excellent
but that alone doesn't improve the highlighter; also need to get vim-perl from github, i'd expect 18:25
masak this one, right? github.com/vim-perl/vim-perl/blob/.../perl6.vim
timotimo i think so
masak oh, there's both ftplugin/ and indent/ and syntax/, all with their own perl6.vim 18:26
TimToady has been thinking about the problem of "0" being true/false if it's an IntStr 18:27
m: multi foo (Int() $i) { say "Int $i" }; multi foo (Str $s) { say "Str $s" }; foo "42"
camelia rakudo-moar df5acd: OUTPUT«Str 42␤»
TimToady m: multi foo (Int(Str) $i) { say "Int $i" }; multi foo (Str $s) { say "Str $s" }; foo "42"
camelia rakudo-moar df5acd: OUTPUT«Ambiguous call to 'foo'; these signatures all match:␤:(Str $i)␤:(Str $s)␤ in sub foo at /tmp/ClKOnFl4lg:1␤ in block <unit> at /tmp/ClKOnFl4lg:1␤␤»
18:28 Perl6_newbee left
TimToady arguably, the first should win because of the extra "constraint" of needing to be coercable to Int 18:28
m: multi foo (Int(Str) $i) { say "Int $i" }; multi foo ($s) { say "Str $s" }; foo "42"
camelia rakudo-moar df5acd: OUTPUT«Int 42␤»
TimToady m: multi foo (Int() $i) { say "Int $i" }; multi foo ($s) { say "Str $s" }; foo "42"
camelia rakudo-moar df5acd: OUTPUT«Ambiguous call to 'foo'; these signatures all match:␤:(Any $i)␤:(Any $s)␤ in sub foo at /tmp/7Ys71JMPrA:1␤ in block <unit> at /tmp/7Ys71JMPrA:1␤␤»
TimToady likewise there
if that worked, we might be able to do away with the concept of IntStr etc 18:29
masak new highligher feels much more snappy. nice!
literal++
TimToady: agree about the narrowness. 18:30
TimToady and if there were no IntStr, I wouldn't mind making "0" true
masak \o/
that's excellent news
TimToady well, I said much the same a couple weeks ago, but nobody noticed... 18:31
masak hehe
tony-o thanks for the vim-perl6 whoever made that ^^
masak tony-o: it was literal++
tony-o literal: ++
masak I think he might have inherited it from luqui or someone though.
TimToady alester++ and hoelzro++ I think 18:34
masak oh yes, I saw hoelzro++ had made a recent commit. 18:35
and now you mention it, I remember alester++ being in charge of that repo for a while.
tony-o alester++ hoelzro++ - much thanks 18:36
18:36 virtualsue left
TimToady jnthn: is it possible to treat Int() as an unconstrained type if you pass an Int, but as a constrained (albeit less exact) type if something looser is passed? 18:40
18:40 hobbs left
TimToady once had an idea about installing more than one candidate in the list to do something like that 18:41
though one should be aware of combinatorics if the args are considered independent in that regard
18:42 hobbs joined
TimToady and would an approach where we assume one candidate is exact, and another candidate has all the contraints, work, since that's essentially what we do now by hand with our Any,Any candidates 18:42
we don't generally bother to write the Any,Int or Int,Any candidates 18:43
so this would essentially just be automating what we already do by hand, and might let us get rid of IntStr and friends 18:44
if we can just write sub MAIN (Int() $i, Rat(), $r) and such
er, s:2nd/,// 18:45
masak I thinkg RT #124242 is a dupe of RT #122286
think*
also, I could've sword we had a ticket older than 9 months for this.
18:47 raiph joined
dalek p: 7533c6b | FROGGS++ | / (13 files):
take care of NativeRefs in nativecall op

If we would just decont as we did before, we'd strip the NativeRef container we need to be able to do assignments. This also needs a stage0 update, so we can use nqp::isont_[ins] here.
18:50
tadzik perl 6 core development fund! \o/ 18:51
tony-o github.com/rakudo/rakudo/blob/nom/...it.pm#L110
FROGGS: ping
tadzik it's like christmas morning
FROGGS tony-o: pong
tadzik: what did I miss?
tony-o do you know about that .precomp function? it doesn't look like it uses :INC anywhere in that method..
tadzik FROGGS: news.perlfoundation.org/2015/04/wen...-to-n.html
wenzperl++ 18:52
FROGGS tony-o: it was implemented to aid testing precomp bugs in roast...
tony-o should it be iterating somewhere to send -I flags further down in the 'shell' ?
FROGGS tony-o: so it might only work for that purpose atm, which means that little patches might be needed to make it useful
tony-o FROGGS: i'll play around with it 18:53
FROGGS tony-o++
tony-o thank you for the info ^
FROGGS tony-o: feel free to ping me when you come to a conclusion 18:54
tony-o FROGGS: roger 18:55
FROGGS WenZPerl++ # \o/
that is sooooo awesome!
tony-o what does a company like wenzperl get out of donating to the p6 cause?
aside from continuing progress on a language they want to see come to fruition 18:56
FROGGS tony-o: I guess it is also about 'giving something back' to the community
ugexe :INC was to get around setting PERL6LIB or whatever that hacky thing panda had to do
github.com/rakudo/rakudo/blob/2cd9...it.pm#L119 18:57
pmurias mst: just having things multicolored is useful to me as it helps tokenizing code
tony-o ugexe: yea but the point is that :INC isn't affecting the shell command at all
FROGGS like, you've built a company using Perl that lets you earn money, you can pay the community back by supporting it :o)
tadzik oh, it's the syntax hilighting discussion 18:58
I'm in mst's camp, and it's his fault :P
ugexe i dont think :INC works if you pass a -I
FROGGS tony-o: look at line 119 18:59
tony-o it doesn't work at all if you pass CompUnit.new(:INC(<somedir>)) - that somedir doesn't actually end up being visible to the precomp
tadzik I'd like to have hilighting of something I can't figure out (easily) on my own, so not syntax but profiling data or test coverage 19:00
FROGGS tony-o: shell() uses %*ENV
tadzik green for good, red for bad etc
tony-o FROGGS: yea i can't get that part to work :-), whatever i pass to :INC doesn't pass through into the shell()
moritz what do we call the 'key => "value"' form of pair literals? "fat comma pairs"? 19:01
or arrow pairs? 19:02
tony-o FROGGS: i'll upload a quick example of my predicament
19:03 vendethiel- left, vendethiel joined
ugexe shell should be reading ENV<RAKUDO_PRECOMP_WITH> which would be set by :INC 19:03
FROGGS and Inc.pm will put thing from %*ENV<RAKUDO_PRECOMP_WITH> to @*INC of the spawned process 19:04
moritz: fat arrow pairs?
tony-o FROGGS: ugexe here is a self contained example github.com/tony-o/CU-error-example 19:05
FROGGS moritz: fat comma might be very surprising for non-P5er
moritz FROGGS: agreed
the design docs say both "arrow pair" and "fatarrow pair"
and they also use both "colon pair" and "colonpair" 19:06
FROGGS tony-o: try :INC<file:lib>
jnthn mmm...that was some nice dinner :)
FROGGS :o)
ugexe you are supposed to pass an array or a scalar i believe, not a hash
FROGGS moritz: my English is not good enough to judge here :o) 19:07
tony-o passing it as an array or scalar errors with the same message, file:lib in both array or scalar or as FROGGS mentioned all fail with the same message
jnthn TimToady: Well, the property we really need to retain for optimizability is that we can statically sort candidate lists.
FROGGS jnthn: unsigned 'is rw's do not work... they'll end up signed :/ 19:08
19:08 brrt joined
tony-o none of the 'includes' in the error output include the path passed ^ 19:08
FROGGS jnthn: I'll push my rakudo changes to a branch in a bit, and will then test on the jvm
jnthn FROGGS: Do not work where exactly?
ugexe because they get deleted from @*INC
github.com/rakudo/rakudo/blob/2cd9...it.pm#L123
brrt \o
FROGGS jnthn: in nativecall tests I added 19:09
jnthn Well, that's a troubling sign...
19:10 raiph left
FROGGS but let's not think negative about that 19:10
dalek kudo/nom: 1c1e9a3 | FROGGS++ | lib/NativeCall.pm:
handle/add longlong and ulonglong in NativeCall
tony-o ugexe: that's not why they're not printed, the error comes from the shell command
jnthn FROGGS: Ah, is it restricted to "is rw"? 19:11
FROGGS: I know we're going to have problems with 64-bit unsinged int for now
ugexe well you are hard coding the entire path of the module, including lib, and then passing 'lib' into :INC
dalek kudo/param-is-rw-tests: 81e1822 | FROGGS++ | t/04-nativecall/15-rw-args. (2 files):
add tests for 'is rw' parms in native calls
19:12
TimToady jnthn: in that case, we'd be the same as now, because we have an Int,Int candidate, and an Any,Any candidate; the only difference would be that with Int(),Int() we'd have something that is considered to have coercion constraints on the Anys, so it would sort slightly tighter than an explicit Any,Any
ugexe remove lib/ from the first argument and you wont get an error
FROGGS jnthn: that's the test output: gist.github.com/FROGGS/dfd3880da345f37348c9
TimToady so you'd only get the explicit Any,Any case if you couldn't coerce both args to Int
FROGGS jnthn: only char is tested with a high enough number to trigger that problem 19:13
tony-o ugexe: i also don't get a compiled unit
ugexe: the CU just returns Nil
FROGGS jnthn: but yeah, I've seen that longlong will be a problem
jnthn TimToady: I wonder if we can do it by duplicating the candidate during the sort. 19:14
TimToady: So it shows up in two places
TimToady that's my thought
jnthn TimToady: Of course it's gonna be visible if you do .candidates on the proto
But I guess we can live with that.
Oh
It doesn' thave to be
'cus .candidates ain't in sort order iirc 19:15
ugexe you just have to look at the zef source. the modules it builds that end up in /lib are build using that technique. the ones in blib use the command line and -I
jnthn It's the input list to sort
ugexe for instance, you arent supplying an output file
im sure there are some other things missing that ive forgotten since i last worked on that
jnthn TimToady: Anyway, I think in principle it's possible
tony-o it doesn't do anything for the default
ugexe it does for me
tony-o just run the build in the repo, the thing doesn't work
jnthn TimToady: Since the stuff the multi-dispatcher works with is a projection of the candidates, not the candidates themselves. 19:16
ugexe it outputs compiled files though
and it doesnt give an errors about not finding what its missing
tony-o gist
19:16 rindolf left
ugexe im just using bin/zef test 19:16
jnthn TimToady: Is there a combinatorial issue though?
tony-o in zef's directory?
TimToady not if we treat all the args the same in parallel, as I said
ugexe :INC might need to carry over between builds or something 19:17
tony-o do it in the repo
ugexe which is why it might not work
jnthn I wonder if that creates oddness :)
tony-o that i made to show why it isn't working
TimToady as I said, we don't do that now with our explicit solutoin
and it seems to work out
jnthn Point.
tony-o it just isn't passing anything you give it except for what exists in @*INC
ugexe well your example was wrong
tony-o my example is 100% correct
jnthn I shoulda full backlogged before answering the first bit of the backlog :P
ugexe lib/p.pm6 was not the correct first argument for example 19:18
tony-o make the example work without doing perl6 -Ilib
jnthn TimToady: Would you prefer it prototyped in a branch to play with, or put straight in if it works out not to break anything? 19:19
TimToady I think we mostly agree that replying to backlog during stream of backlogging is better than not replying at all because you forgot
dalek c: 0e60c9a | moritz++ | lib/Language/syntax.pod:
Pair and Blob literals
19:20
TimToady jnthn: I'd go for all the marbles, but I'm a gamblin' man
feel free to branch if it you think it'd be more expeditious
as in, if you feel you'd want to interleave work on that with other things. 19:21
FROGGS Unhandled exception: java.lang.RuntimeException: Missing or wrong version of dependency 'gen/jvm/stage2/nqpmo.nqp' 19:23
:o(
jnthn TimToady: In theory, it'll be a small patch
TimToady I'm also fine with it going in immediately, if it passes roast 19:24
jnthn I was gonna hack on NF* stuff more, but guess I'll do this instead, since I can probably do it before sleep time :)
jnthn makes a cuppa first :)
FROGGS ahh, I had to delete it from share/nqp/lib 19:31
tony-o FROGGS: what would be a good test to make sure i didn't break anything else after i have something i think might be ok 19:32
19:32 raiph joined
FROGGS tony-o: run the spectest 19:32
tony-o roger
19:33 brrt left
raydiak tony-o: :INC should be passed to .precomp, not .new 19:33
tony-o raydiak: thank you 19:34
raydiak yw :)
tony-o raydiak: still doesn't add that lib to the searched paths :-) but i'll fix my example ^^ 19:35
raydiak tony-o: changes the behavior of your example when I tried it here, gives a different error 19:36
now I get "No such method 'short-id' for invocant of type 'Str'"
tony-o hmm, i get the same 'could not find p in any of ...'
jnthn TimToady: Just to check: gist.github.com/jnthn/67a5c42a0ce9a1ba2424 should all pass once I get this right? 19:37
(Set chosen 'cus Set !~~ Cool) 19:39
colomon Sets aren’t Cool? Huh. 19:48
jnthn uh-oh :)
Looks like I'd better define my own not-Cool type with an Int coercion :) 19:49
colomon They might not be, but I don’t remember them not being. If you know what I mean.
jnthn Well, Array and Hash *are*
So it's certainly a question worth asking. :)
colomon Oh, ++TimToady? 19:50
jnthn Anyway, thanks for the poke, I'll make my test robuts against such a change :) 19:51
colomon Actually, I’m also a bit surprised by your example, even leaving out the Set question
Looking at that, my presumption would be Int() takes Any and gives you Int, therefore I would expect Cool to be a better match for an actual Int input. 19:52
19:52 espadrine_ joined
masak m: say Set ~~ Cool 19:52
camelia rakudo-moar 1c1e9a: OUTPUT«False␤»
masak Set isn't Cool, nor does it have any claim to be. 19:53
colomon understanding that I haven’t been following the latest in coercion syntax.
masak the original purpose of Cool was to emulate the interconversion behavior from Perl 5 between numbers and strings.
tony-o raydiak++
jnthn colomon: Yes, that's the current behavior; TimToady just above was asking if we can have it behave as if there were two candidates, an exact match and a coercive one. 19:55
colomon jnthn: ah
dalek ecs: 5c8213f | (Lucas Buchala)++ | S03-operators.pod:
Use unicode notation; \x escape is defined elsewhere
19:57
ecs: 8e1c6ee | (Lucas Buchala)++ | S02-bits.pod:
Wrap unicode chars in C<>
ecs: 5da63dc | (Lucas Buchala)++ | S (6 files):
Small POD and typographical fixes
ecs: df6c1b4 | (Lucas Buchala)++ | S19-commandline.pod:
Update URLs mentioned in S19
ecs: 43579ec | (Lucas Buchala)++ | S03-operators.pod:
Update comment about that Fido dog
ecs: c040f33 | (Zoffix Znet)++ | S (6 files):
Merge pull request #92 from lucasbuchala/random-changes1

Miscellaneous changes
p: 52b8347 | FROGGS++ | tools/build/Makefile-JVM.in:
fix install location of {ModuleLoader,nqpmo}.jar
19:58
kudo/nom: 1ccb19d | FROGGS++ | tools/build/NQP_REVISION:
bump nqp rev for jvm build fix
19:59
20:00 tinyblak joined 20:05 tinyblak left
jnthn TimToady: Darn, seems we do get some spectest fails 20:06
Oh, rather dodgy candidate set though 20:09
20:12 baest_ joined
jnthn TimToady: Ah, the other thing we run into is that if there *was* a hand-coded Str and also a Str() then we now end up with amgibuity 20:12
masak yeah, that doesn't sound right. 20:13
20:14 baest left
jnthn Well, I suspect ecosystem impact will be small in so far as we ain't had coercion types in for long. 20:14
masak indeed. 20:15
jnthn Not to mention so far I only ran across one case of it in CORE.setting - and the body of both candidates was copy-paste. 20:16
Which is kinda telling... :)
We can let spesh write our micro-optimized duplicate code for us. :)
masak :) 20:18
20:20 darutoko- left
dalek kudo/coerce-multi-tweak: 0611b09 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Change semantics of coercion types in multis.

Before, a "sub foo(Int() $x) { }" would act as a candidate taking Any for the purposes of the multi-dispatch candidate sort. Now, it gets two entries in the list that we sort: one Any, as before, and an extra one with Int.
20:33
kudo/coerce-multi-tweak: 40f8883 | jnthn++ | src/core/List.pm:
Fix dodgy xx candidate set.

We had a Real() candidate that accepted a thunked required named arg, and an Int() one that did not. Make them both Int(). This is likely how they should have been in the first place, and fixes a regression introduced by the multi-dispatch coercion semantics changes.
kudo/coerce-multi-tweak: 93e0f3c | jnthn++ | src/core/Hash.pm:
Remove DELETE-KEY Str candidate; let Str() do it.

With the new multi-dispatch semantics around coercion types, this led to an ambiguous dispatch error.
20:34
jnthn TimToady: So, I patched it into the multi-dispatcher. It wasn't particularly hard (which is good). I had to change two things in CORE.setting to keep things happy. Both of the changes I made felt like improvements, though.
TimToady: With those 3, spectest looks good. Let me know what you think. :) 20:35
20:35 morgan_ joined
jnthn (Feedback from others welcome too, of course.) 20:35
masak just looking at the commit messages and your descriptiong of it, I have a good feeling.
m: multi x() { say "tighter" }; multi x(*@a) { say "looser" }; x(); x(1, 2, 3) 20:36
camelia rakudo-moar 1ccb19: OUTPUT«tighter␤looser␤»
masak is ^^ somewhere in the spec?
jnthn I'm not sure, off hand.
I think so though
masak I remember us adding it to Rakudo back in, um, 2009 or something.
jnthn The whole arity and slurpy thing still has at least one open RT, iirc 20:37
Or maybe it's about optionals.
I'm pretty sure at one point we had RTs that were asking for two conflicting things inn this area; I forget the details.
But the rules have already kinda reached a point where I can only just remember them, which is probably a sign they're already involved enough :)
masak to be honest my internal simulation of you had you sighing and complaining about added complexity at TimToady's suggestion... :) 20:38
jnthn Well, when I first saw it I worried because I fear it was going to encroach on an important invariant. 20:39
*feared 20:40
But once I realized it could be done with a second entry in the candidate sort DAG, it felt not so bad.
20:40 H2O1 joined
masak yeah, the design seems to nicely allow this one. 20:40
jnthn And then the patch in the end was smaller than I'd expected.
20:41 H2O1 left
jnthn Yeah...sometimes denormalization wins. :) 20:41
masak hehe
jnthn Seems actually we don't have any really crazy rules around optionals at the moment. :)
In fact, the only thing they really do is help us decide how many types to involve in narrowness analysis. 20:42
dalek kudo/nom: 07bf03b | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Fix comment typo.
20:44
20:51 kurahaupo1 joined
TimToady returns from trying (and failing) to fix the church's video projector; fortunately we have a backup 20:55
TimToady will have to play with the new bits, and see how they play now with MAIN and such 20:57
so, I take it that's still in a branch? 20:59
masak coerce-multi-tweak
21:06 morgan_ left
jnthn What masak said 21:07
I can put it in nom, if you're OK with the two changes I had to do in CORE.setting for it to work out 21:08
Though I'm going to sleep in a few minutes. Or attempting to, at least. :)
m: say uniname(0x16AD0) 21:09
camelia rakudo-moar 1ccb19: OUTPUT«BASSA VAH LETTER ENNI␤»
21:09 kaare_ left
jnthn We has le Unicode 7 :) 21:09
TimToady I'm fine with putting it in 21:10
masak .oO( we got Unicode 7, and all we felt was a certain enni ) :P
jnthn One of the BASSA chars looks like an overweight snowman...
masak now all we need is a skinny comet 21:11
jnthn rebases and puts it in
dalek kudo/nom: 8f5865b | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Change semantics of coercion types in multis.

Before, a "sub foo(Int() $x) { }" would act as a candidate taking Any for the purposes of the multi-dispatch candidate sort. Now, it gets two entries in the list that we sort: one Any, as before, and an extra one with Int.
21:12
kudo/nom: ef3ef50 | jnthn++ | src/core/List.pm:
Fix dodgy xx candidate set.

We had a Real() candidate that accepted a thunked required named arg, and an Int() one that did not. Make them both Int(). This is likely how they should have been in the first place, and fixes a regression introduced by the multi-dispatch coercion semantics changes.
kudo/nom: 6e7735d | jnthn++ | src/core/Hash.pm:
Remove DELETE-KEY Str candidate; let Str() do it.

With the new multi-dispatch semantics around coercion types, this led to an ambiguous dispatch error.
colomon launches a new smoke run with that 21:13
21:13 jack_rabbit joined
dalek ast: 0f4a710 | jnthn++ | S06-multi/type-based.t:
Basic test for new multi/coercion semantics.
21:15
jnthn colomon++
I hope the relative youth of coercion types will make impact be nothing to minimal. 21:16
otoh, today I taught NativeCall about unsigned types that that made the ecosystem already, so... :)
Anyway, time to get some rest. :) 21:17
colomon o/
TimToady 'night
jnthn 'night o/
masak 'night, jnthn 21:18
TimToady starts his own test runs and his own snooze & 21:19
21:31 lucasb left 21:32 kurahaupo1 left 21:44 raiph left 21:53 raiph joined 21:54 lichtkind joined
lichtkind how do i remove the filename part from $?FILE.IO.abspath ? 21:54
raydiak $?FILE.IO.parent.abspath 21:57
grondilu Stage mast : Segmentation fault 22:00
linux, 32bits, MoarVM
lichtkind grondilu++ that works thanks
raydiak yw :) 22:02
grondilu not sure what you refer to with "that works"
lichtkind sorry
22:02 pmurias left
lichtkind i meant raydiak++ 22:02
and dont worry i dont -- you :)
grondilu so I have no more perl6 on my machine :( what shall I do? :) 22:03
lichtkind install from git :) 22:04
grondilu by the way it's quite not normal that a fail build breaks my install
lichtkind go with freshest and help the guys here with testing
raydiak grondilu: yeah that is weird...rakudobrew?
grondilu no 22:05
now when I try to run perl6 I get:
Missing or wrong version of dependency 'gen/moar/stage2/QRegex.nqp' (from 'src/gen/m-main.nqp'
raydiak oh cd out of the build dir
grondilu still
raydiak weird/sad :P 22:06
grondilu runs which perl6 to make sure his path is ok
grondilu gets /usr/local/bin/perl6 as expected
raydiak that's the same error I get when I try to run the perl6 in my path from a (different) rakudo's directory 22:07
22:10 eli-se left 22:14 RabidGravy left 22:15 ggoebel joined 22:19 jack_rabbit left 22:26 jack_rabbit joined 22:33 lichtkind left
grondilu plus, why would perl6 ever need some nqp code? 22:39
22:53 espadrine_ left
raiph grondilu: irclog.perlgeek.de/perl6/2015-04-04#i_10390072 ? 22:54
23:13 jack_rabbit left 23:19 ggoebel left 23:47 Rounin left 23:57 grondilu left