Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-07-22

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:46 dayangkun joined #perl6
01:04 colomon joined #perl6
01:22 * grondilu has finished recompiling rakudo and no, it didn't help.  Kind of frustrating.
01:23 xinming joined #perl6
01:27 colomon joined #perl6
01:40 For-Odin joined #perl6
01:58 tokuhirom joined #perl6
02:00 colomon joined #perl6
02:02 lue grondilu: what's the error, specifically?
02:05 colomon he's gone?
02:09 snoopy joined #perl6
02:15 snoopy grondilu: has rakudo been rebuilt with icu support enabled (ICU=1 in Makefile)?
02:28 snoopy (icu = unicode)
02:48 OuLouFu joined #perl6
02:51 logie joined #perl6
03:04 kingbeast joined #perl6
03:07 JimmyZ \o/, now the left blockers for bootstrap are exception, serialization, nqp::sprintf
03:07 JimmyZ wrong channel...
03:16 felher joined #perl6
03:29 cognominal joined #perl6
03:58 jaldhar joined #perl6
04:01 jaldhar joined #perl6
04:07 berekuk_ joined #perl6
04:07 orafu joined #perl6
04:15 simcop2387_ joined #perl6
04:17 FOAD_ joined #perl6
04:36 Psyche^ joined #perl6
04:38 nyuszika7h joined #perl6
04:56 birdwindupbird joined #perl6
05:01 logie joined #perl6
05:05 zby_home_ joined #perl6
05:23 SamuraiJack_ joined #perl6
05:26 PacoAir joined #perl6
05:53 hypolin joined #perl6
05:59 konundra joined #perl6
06:04 fgomez joined #perl6
06:08 domidumont joined #perl6
06:16 PacoAir joined #perl6
06:18 yoleaux joined #perl6
06:21 SamuraiJack__ joined #perl6
06:34 domidumont joined #perl6
06:50 pupoque joined #perl6
06:57 kaleem joined #perl6
07:05 fhelmberger joined #perl6
07:07 FROGGS joined #perl6
07:13 domidumont joined #perl6
07:20 ugexe joined #perl6
07:20 sqirrel joined #perl6
07:28 kingbeast joined #perl6
07:34 daxim joined #perl6
07:48 dalek Perlito: 48b6949 | (Flavio S. Glock)++ | src5/lib/Perlito5/Grammar/Bareword.pm:
07:48 dalek Perlito: Perlito5 - indirect syntax TODO
07:48 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/48b6949fa5
07:53 moritz .tell grondilu Rakudo assumes UTF-8 as default encoding. Having another Unicode encoding in your environment isn't good enough.
07:53 yoleaux moritz: I'll pass your message to grondilu.
08:11 hypolin joined #perl6
08:25 preflex joined #perl6
08:34 dakkar joined #perl6
08:44 mls joined #perl6
08:48 kingbeast joined #perl6
08:54 iSlug joined #perl6
09:21 konundra joined #perl6
09:37 donaldh joined #perl6
09:41 colomon joined #perl6
09:49 konundra joined #perl6
09:54 rindolf joined #perl6
09:56 konundra joined #perl6
09:58 wk joined #perl6
09:59 fhelmberger_ joined #perl6
10:02 konundra joined #perl6
10:10 gwyddion joined #perl6
10:10 gwyddion left #perl6
10:21 SamuraiJack__ joined #perl6
10:46 bbkr joined #perl6
11:11 eternaleye joined #perl6
11:25 eternaleye joined #perl6
11:30 sqirrel joined #perl6
11:38 colomon joined #perl6
11:44 eternaleye joined #perl6
11:59 konundra joined #perl6
12:03 pmurias joined #perl6
12:05 SmokeMachine joined #perl6
12:13 domidumont joined #perl6
12:21 bbkr_ joined #perl6
12:25 [Coke] jnthn: finally got back to the rebuf roast enough times to kick off the testing.
12:25 [Coke] running on parrot on linux now.
12:27 pmurias jnthn: what does scwbdisable() and scwbenable() do?
12:27 pupoque joined #perl6
12:28 arnsholt Looks like write barriers on serialization contexts?
12:28 * moritz would guess that scwb stand for 'serialization context' and 'write barrier'
12:29 arnsholt I'm not familiar enough with the internals of the SCs to tell you what that entails though
12:29 domidumont joined #perl6
12:29 pmurias what it entails to is what I want to know
12:29 logie joined #perl6
12:33 dalek rakudo-js: bb6e12b | (Pawel Murias)++ | / (7 files):
12:33 dalek rakudo-js: Stub the NFA repr, compile QRegex.
12:33 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/bb6e12b58e
12:33 dalek rakudo-js: 695839d | (Pawel Murias)++ | / (7 files):
12:33 dalek rakudo-js: Implement 'is positional_delegate','is associative_delegate'.
12:33 dalek rakudo-js:
12:33 dalek rakudo-js: We depend on node-int64 to avoid fiddling with numbers.
12:33 dalek rakudo-js: We pass test 73 but it's not in our nqp (we still use a branch till I improve the double serialization hack).
12:33 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/695839d1db
12:46 jnthn pmurias: The SC write barrier thing catches cases where we modify an object that was deserialized from some other compilatino unit
12:46 yoleaux 21 Jul 2013 21:48Z <lizmat> jnthn: "my Buf $a = "asdf".encode" fails with "Type check failed in assignment to '$a'; expected 'Buf' but got 'utf8'"
12:46 yoleaux 21 Jul 2013 21:48Z <lizmat> jnthn: faliing IO tests in rebug branch: https://gist.github.com/lizmat/6050073
12:46 jnthn pmurias: This ties into the object repossession thing
12:46 jnthn pmurias: The most immediate Perl 6 example is augment.
12:49 GlitchMr rn: say (44 * hours).perl
12:49 camelia rakudo a1e237: OUTPUT«264␤»
12:49 camelia ..niecza v24-88-g1f87209: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤     'hours' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 36) â�¤  at /ho…
12:49 JimmyZ r: say hours
12:49 camelia rakudo a1e237: OUTPUT«hours␤»
12:49 JimmyZ r: say &hours
12:49 camelia rakudo a1e237: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &hours used at line 1â�¤â�¤Â»
12:49 moritz it's an enum value
12:50 moritz not a callable
12:50 JimmyZ ah
12:50 JimmyZ r: say hours.perl
12:50 camelia rakudo a1e237: OUTPUT«TimeUnit::hours␤»
12:51 benabik joined #perl6
12:51 FROGGS r: say hours and hours and hours
12:51 camelia rakudo a1e237: OUTPUT«hours␤»
12:53 pmurias jnthn: and why do we disable/enable this when pushing things into the mixin cache?
12:55 konundra joined #perl6
13:01 notjack joined #perl6
13:06 logie joined #perl6
13:08 GlitchMr rn: say :2('1.1').base(16)
13:08 camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: Unable to resolve method base in type Rat␤  at /tmp/5v41YnoUi3 line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4580 (module-CORE @ 576) ␤  at /home/p…
13:08 camelia ..rakudo a1e237: OUTPUT«1.8␤»
13:08 GlitchMr It segfaulted in REPL (Rakudo) for me
13:08 GlitchMr Strange
13:08 GlitchMr And now it doesn't. Really strange.
13:14 jnthn pmurias: Because we don't want to serialize the cache.
13:16 GlitchMr rn: sleep -10
13:16 camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: System.ArgumentOutOfRangeException: Negative timeout␤Parameter name: millisecondsTimeout␤  at System.Threading.Thread.Sleep (Int32 millisecondsTimeout) [0x00000] in <filename unknown>:0 ␤  at Builtins.sleep (Niecza.Constants c, Double …
13:16 camelia ..rakudo a1e237: OUTPUT«Cannot go back in time␤  in sub sleep at src/gen/CORE.setting:657␤  in block  at /tmp/TxNb8h4Krf:1␤␤»
13:16 fhelmberger joined #perl6
13:16 GlitchMr I like error message in Rakudo
13:18 pmurias printing out the argument would be even more awesome
13:19 GlitchMr r: say (dir,)
13:19 camelia rakudo a1e237: OUTPUT«IO::Path<star> IO::Path<src> IO::Path<.subversion> IO::Path<.bashrc> IO::Path<nom-inst1> IO::Path<toqast> IO::Path<test3.pl> IO::Path<.profile> IO::Path<t> IO::Path<nom-inst2> IO::Path<nom-inst> IO::Path<toqast-inst> IO::Path<toqast-inst2> IO::Path<examples> IO::Pa…
13:19 GlitchMr r: say (dir ,)
13:19 camelia rakudo a1e237: OUTPUT«[31m===[0mSORRY![31m===[0m�Preceding context expects a term, but found infix , instead�at /tmp/kOT9iFOclh:1�------> [32msay (dir ,[33m�[31m)[0m�»
13:19 GlitchMr r: say (dir '/tmp',)
13:19 camelia rakudo a1e237: OUTPUT«(timeout)»
13:19 GlitchMr r: say +dir '/tmp'
13:19 camelia rakudo a1e237: OUTPUT«(timeout)»
13:19 GlitchMr n: say +dir '/tmp'
13:20 camelia niecza v24-88-g1f87209: OUTPUT«Unhandled exception: dir may not be used in safe mode␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (dir @ 0) ␤  at /tmp/GqBeJGx1R1 line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4579 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.…
13:20 GlitchMr I've a feeling that /tmp is full of files
13:21 [Coke] jnthn: http://feather.perl6.nl/~coke/rakudo_summary.out is the rebuf branch. as of whenever I said I'd run it. ;)
13:22 [Coke] looks like mainly unicode errors.
13:22 [Coke] ... OH. because that machine has no icu? arglebargle.
13:24 PacoAir joined #perl6
13:25 pmurias nqp's Configure should check for that
13:25 [Coke] .to diakopter - can we get libicu-dev installed on 06?
13:25 yoleaux [Coke]: I'll pass your message to diakopter.
13:26 [Coke] it does, and if I had used 'make spectest', it wouldn't have tried to run those tests.
13:28 pmurias [Coke]: nqp's 'make test' fails without icu
13:30 moritz jnthn: I have a few spectest failures in rakudo-parrot on the 'rebuf' branch. Is that expected?
13:30 moritz if no, I can nopaste the output for you
13:32 moritz oh, here it is. If you're not interested, just ignore it :-) https://gist.github.com/moritz/6053821
13:33 bluescreen10 joined #perl6
13:33 jnthn moritz: Did you sue rebuf branch of roast also?
13:34 jnthn moritz: But the interesting one is the socket one, which didn't chang in the branch iirc,
13:34 jnthn moritz: It passes on my system, so I'd appreciate any analysis you have time for
13:34 moritz jnthn: no, used roast/master
13:34 moritz will fix that
13:35 FROGGS sometimes I have socket fails too fwiw
13:35 FROGGS (not me personally, but the tests)
13:41 timotimo i have sock fails all the time :(
13:41 timotimo damn washing machine
13:42 FROGGS *g*
13:42 btyler joined #perl6
13:44 tadzik :D
13:45 moritz t/spec/S02-names-vars/perl.rakudo.parrot says 'No plan found in TAP output', and t/spec/S32-io/IO-Socket-INET.t failed tests 17-19
13:45 moritz jnthn: that was in branch rebuf on rakudo+roast
13:47 skids joined #perl6
13:54 rindolf joined #perl6
13:58 crncosta joined #perl6
14:00 cognominal joined #perl6
14:01 cognominal joined #perl6
14:05 BenGoldberg joined #perl6
14:05 grondilu joined #perl6
14:07 grondilu what's the syntax to test a particular spectest file?
14:07 yoleaux 07:53Z <moritz> grondilu: Rakudo assumes UTF-8 as default encoding. Having another Unicode encoding in your environment isn't good enough.
14:08 FROGGS grondilu: make t/... should do
14:08 [Coke] I often use "prove -v -e t/fudgeandrun S02-blah/bar.t", for reasons.
14:09 grondilu ok
14:10 grondilu moritz: but my encoding is en_US.UTF-8  (that's what is in my system LANG env var)
14:14 moritz grondilu: but what about http://irclog.perlgeek.de/​perl6/2013-07-21#i_7355700 ?
14:16 moritz grondilu: the LANG var interprets how programs interpret byte streams as text, but not necessarily how your terminal translates key strokes into byte streams
14:16 grondilu ok
14:19 kaleem joined #perl6
14:22 grondilu still, I did get the same binary output than flussence, and it worked for him
14:22 * grondilu runs again 'echo "my $α = 1;" |xxd -p'
14:23 cognominal joined #perl6
14:23 grondilu 6d792024ceb1203d20313b0a
14:28 ecocode joined #perl6
14:30 moritz grondilu: what does   perl6 -e 'say $*VM<config><has_icu>'  say?
14:30 grondilu 0
14:31 grondilu ^
14:31 grondilu did you expect 1?
14:33 moritz grondilu: well, it explains a lot
14:34 moritz grondilu: Unicode support only really works if you have icu development files installed when configuring and compiling parrot, nqp and rakudo
14:34 moritz (as documented in the README, which nobody bothers to read anyway)
14:34 pmurias jnthn: what is the caps thing we push on top of the bstack? (which we seems to be taken from the previous top of the bstack?)
14:36 grondilu moritz: thanks, I'll install libicu-dev and libreadline-dev
14:36 grondilu (as suggested in README)
14:37 pmurias jnthn: ahh, found it, it seems to be the current head of the cstack
14:40 moritz grondilu: and throw away your old parrot build and installation before you recompile
14:40 grondilu k
14:42 pupoque joined #perl6
14:42 census joined #perl6
14:46 * grondilu had recently changed from debian to fedora so he should have expected that he'd have to do this kind of stuff...
14:48 sqirrel joined #perl6
14:48 ajr joined #perl6
14:56 crab2313 joined #perl6
15:00 woolfy left #perl6
15:05 PacoLinux joined #perl6
15:10 diakopter [Coke]: done
15:12 rindolf joined #perl6
15:12 [Coke] diakopter++
15:12 yoleaux 15:10Z <diakopter> [Coke]: done
15:13 [Coke] ? why did yoleaux repeat that?
15:13 diakopter you're a yoleaux
15:13 FROGGS [Coke]: see #moarvm
15:14 pupoque left #perl6
15:14 birdwindupbird joined #perl6
15:29 ecocode joined #perl6
15:40 Pleiades` joined #perl6
15:42 zby_home_ joined #perl6
15:54 colomon joined #perl6
15:56 * grondilu can confirm that installing libicu-devel and recompiling parrot/rakudo solved the unicode issues.
15:57 grondilu moritz++ ^
16:00 [Coke] grondilu++
16:06 diakopter [Coke]: would you like to help me get rakudo-jvm onto camelia?
16:06 diakopter or, "rj" as I affectionately named her
16:07 [Coke] Sure.
16:08 [Coke] nqp-jvm: nqp:say("barf");
16:08 camelia nqp-jvm: OUTPUT«Confused at line 2, near "nqp:say(\"b"␤  in panic␤  in comp_unit␤  in TOP␤  in parse␤  in parse␤  in <anon>␤  in compile␤  in eval␤  in evalfiles␤  in command_eval␤  in command_line␤  in MAIN␤  in <anon>␤  in <anon>»
16:08 [Coke] bah, no version #.
16:08 [Coke] nqp-jvm: nqp::say("barf");
16:08 camelia nqp-jvm: OUTPUT«barf␤»
16:09 Guest4583 joined #perl6
16:15 dalek rakudo/nom: 6404e52 | (Elizabeth Mattijsen)++ | src/core/control.pm:
16:15 dalek rakudo/nom: Make sleep() tell how many seconds we wanted to go in the past.
16:15 dalek rakudo/nom:
16:15 dalek rakudo/nom: As suggested by pmurias++.  This also makes the error message independent of
16:15 dalek rakudo/nom: the VM, as the original message apparently came from within Parrot itself.
16:15 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6404e5245c
16:15 lizmat and good *, #perl6!
16:20 dalek roast: 568df70 | (Elizabeth Mattijsen)++ | S29-context/sleep.t:
16:20 dalek roast: Add test for sleep with negative values
16:20 dalek roast: review: https://github.com/perl6/roast/commit/568df70419
16:20 ecocode lizmat: are you compiling nqp on macosx ?
16:20 lizmat ecocode: yes
16:21 ecocode on my system I got an error in t/jvm/06-sprintf.t when running make test for nqp on jvm 7.25
16:22 lizmat ah, but I only do parrot based nqp so far
16:22 ecocode Failed tests:  31, 239
16:22 ecocode ah, I'm doing the bleeding stuff ;)
16:22 lizmat fairly bleeding, yes
16:24 ecocode ok, I'll get back to parrot stuff then
16:25 ecocode thx
16:25 jnthn evening, #perl6
16:30 kaleem joined #perl6
16:31 lizmat o/ jnthn!
16:32 Pleiades` joined #perl6
16:37 domidumont joined #perl6
16:39 lizmat r: say Whatever.new # is this in violation of S02:1025?
16:39 synopsebot Link: http://perlcabal.org/syn/S02.html#line_1025
16:39 camelia rakudo a1e237: OUTPUT«WhateverCode.new()␤»
16:39 lizmat would expected to have that bomb, judging from the spec
16:39 lizmat oddly enough, Whatever.new is actually written as: "method new() { nqp::create(self) }"
16:40 [Coke] jnthn: http://feather.perl6.nl/~coke/rakudo_summary.out is updated several socket related failures remain. also a failure elsewhere with: Type check failed in assignment to '$a'; expected 'Buf' but got 'utf8'
16:40 jnthn [Coke]: OK, the latter is an out of date test, the first I'm not sure how to fix :(
16:40 SamuraiJack__ joined #perl6
16:41 lizmat r: say utf8.^mro # maybe because this fails?
16:41 camelia rakudo a1e237: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routine:â�¤    utf8 used at line 1â�¤â�¤Â»
16:42 jnthn lizmat: utf8 only exists in rebuf branch. :)
16:42 lizmat ah, good point
16:42 * lizmat goes check the branch
16:42 jnthn The spec ays that .encode should return the most specific reasonable thing.
16:42 jnthn .encode to utf-8 should return something of type utf8
16:42 jnthn (which ~~ Blob, but not ~~ Buf)
16:44 lizmat BTW, is there a reason to not merge the branch yet ?
16:45 lizmat or is the failing IO test a show stopper ?
16:46 zby_home__ joined #perl6
16:46 Vlavv joined #perl6
16:47 ajr joined #perl6
16:48 konundra joined #perl6
16:50 jnthn lizmat: I'm reluctant to merge it with the sockets issue but it doesn't show up for me :(
16:50 lizmat jnthn: when I look in the branch, I see utf8 inheriting from Any, not Buf or Blob
16:50 jnthn Buf and Blob are (per spec) roles.
16:50 lizmat $ perl6 -e 'say utf8.^mro' (utf8) (Any) (Mu)
16:51 jnthn So they won't show up in the mro, which is about classes.
16:51 jnthn (Yes, we had Buf as a class before. That's one of the things I fixed. :))
16:52 jnthn perl6 -e "say utf8 ~~ Blob" # should be True
16:53 lizmat jnthn: any reason for the "-" in "    method decode(utf16:D: $encoding = 'utf-16') {" ?
16:54 lizmat why not supply a default that doesn't need normalizing ?
16:54 jnthn lizmat: Was just following S32 :)
16:54 jnthn lizmat: And what we already had.
16:59 FROGGS joined #perl6
17:01 colomon joined #perl6
17:04 lizmat seems to me .encoding should only return normalized encodings
17:05 jnthn tbh, "normalized" so far means "what Parrot calls it"...
17:09 lizmat jnthn, lookting at src/core/Str's sub NORMALIZE_ENCODING: wouldn''t make sense to take the %map initialisation out of the sub, or is that optimized away already ?
17:09 lizmat so that it only initialises once
17:10 lizmat or am I thinking too much p5 here ?
17:10 jnthn lizmat: It'd probably make sense, or just make it a constant or state. :)
17:11 cognominal joined #perl6
17:18 FROGGS joined #perl6
17:22 * lizmat wonders whether NORMALIZE_ENCODING shouldn't live as a method in Any
17:25 jnthn It's not in any way spec'd
17:25 jnthn That sounds...weird
17:26 lizmat so where would be a good place to spec this ?
17:26 spider-mario joined #perl6
17:26 jnthn I'm not entirely sure if we should...
17:26 rafl joined #perl6
17:27 spider-mario joined #perl6
17:28 jnthn shop; bbiab
17:36 ajr_ joined #perl6
17:36 lizmat r: constant %H=a=>1,b=>2; say %H.WHAT # expected Hash rather than Parcel
17:36 camelia rakudo 6404e5: OUTPUT«(Parcel)␤»
17:37 lizmat n: constant %H=a=>1,b=>2; say %H.WHAT # just testing
17:37 camelia niecza v24-88-g1f87209: OUTPUT«(Hash)␤»
17:37 lizmat seems niecza gets this right, or maybe it doesn't implement "constant"  :-)
17:38 lizmat n: constant %H=a=>1,b=>2; %H<c>=3 # just testing
17:38 camelia niecza v24-88-g1f87209:  ( no output )
17:38 lizmat n: constant %H=a=>1,b=>2; %H<c>=3; say %H # just testing
17:38 camelia niecza v24-88-g1f87209: OUTPUT«{"a" => 1, "b" => 2, "c" => 3}␤»
17:38 lizmat seems like the latter  :-)
17:43 Psyche^ joined #perl6
17:48 lizmat r: constant %H=a=>1,b=>2; say %H<a>  # suspects rakudobug
17:48 camelia rakudo 6404e5: OUTPUT«postcircumfix:<{ }> not defined for type Parcel␤  in method gist at src/gen/CORE.setting:10565␤  in method gist at src/gen/CORE.setting:919␤  in sub say at src/gen/CORE.setting:11459␤  in block  at /tmp/3Nwuc63VyR:1␤␤»
17:49 sqirrel joined #perl6
17:55 moritz r: constant %H=(a=>1,b=>2).hash; say %H<a>
17:55 camelia rakudo 6404e5: OUTPUT«1␤»
17:56 lizmat r: constant %H=(a=>1,b=>2).hash; %H<c>=1
17:56 camelia rakudo 6404e5:  ( no output )
17:57 lizmat not really constant ;-(
17:57 lizmat r: constant %H=(a=>1,b=>2).hash; %H<b>=3
17:57 camelia rakudo 6404e5:  ( no output )
18:02 jnthn lizmat: constant just binds what you but on the LHS to the symbol at the moment
18:02 jnthn lizmat: It's wrong, but I'm short on details of how to do it "right"; as you've noticed, niecza is only marginally righter in terms of giving actual constantness, if that's what we are expecting.
18:03 lizmat indeed…  so where would I look to achieve the same amount of rightness as niecza
18:03 lizmat I mean, creating it as a parcel is just simply wrong (TM)
18:03 jnthn Well, you wrote a parcel there :)
18:04 jnthn So I guess you'd like it to do .hash or so
18:04 jnthn Based on the sigil
18:04 jnthn Take a look in the action method for constant declarator, I guess
18:04 lizmat r: my %hash=a=>1,b=>2; say %h.WHAT
18:04 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Variable '%h' is not declaredâ�¤at /tmp/GDN8mtrm57:1â�¤------> [32mmy %hash=a=>1,b=>2; say %h.WHAT[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤Â»
18:04 lizmat r: my %h=a=>1,b=>2; say %h.WHAT
18:04 camelia rakudo 6404e5: OUTPUT«(Hash)␤»
18:04 jnthn Yeah, thing is there that we create a hash and assign into it...
18:04 lizmat normal %h initlalization coerces to Hash
18:04 jnthn yes, but a constant isn't normal, is it... :)
18:04 moritz basically constant implicitly does a := in rakudo
18:05 jnthn moritz: Right.
18:05 moritz (and it doesn't even type-check wrt sigils)
18:05 timotimo is there a reason not to make := for constants explicit?
18:05 jnthn I've looked at fixing it in the past, but never figured out a way that felt truly "right"
18:06 jnthn I guess patches that make things somehow less wrong are ok, though :)
18:06 lizmat well, *my* expectation of constant %H would be an immutable hash with immutable values
18:06 jnthn lizmat: yes, but what about constant %h = a => [1, 2], b => [3,4]; or so?
18:07 timotimo hm, infectious constancy?
18:07 jnthn Do you expect it to somehow recursively "constant-ize" the thing?
18:07 Vlavv joined #perl6
18:07 lizmat yes, otherwise why bother making it "constant"
18:07 moritz lizmat: problem is, we don't have any mechanism to make composite data structures deeply read-only
18:07 jnthn Right, that's the heart of the issue.
18:07 woolfy joined #perl6
18:08 jnthn Right now constant in the implementations really means "evaluate the RHS at compile time and bind it to the symbol"
18:08 lizmat but the container descriptor as a read-only attribute, no?
18:08 lizmat *has
18:09 lizmat "has int $!rw;"
18:10 lizmat .oO( has visions of obfuscated Perl6 contests )
18:11 jnthn yes but that's exactly one level deep
18:11 lizmat we need more than one level?
18:12 dalek perl6-roast-data: 19e807f | coke++ | / (4 files):
18:12 dalek perl6-roast-data: today (automated commit)
18:12 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/19e807fa29
18:12 [Coke] got one more rakudo.jvm test. whee.
18:12 jnthn lizmat: hashes are already 2 levels
18:15 btyler joined #perl6
18:19 lizmat r: my %h := eval "constant %h=a=>1"; say %h[0]   # ;-)
18:19 camelia rakudo 6404e5: OUTPUT«"a" => 1␤»
18:20 lizmat r: my %h := a=>1; say %h[0]   # ;-)
18:20 camelia rakudo 6404e5: OUTPUT«"a" => 1␤»
18:20 lizmat hmmm
18:20 jnthn um, that last one shouldn't be possible...
18:21 jnthn r: say (a => 1) ~~ Associative
18:21 camelia rakudo 6404e5: OUTPUT«True␤»
18:21 jnthn oh.
18:21 fhelmberger joined #perl6
18:21 jnthn Well, that's why :)
18:21 lizmat only works on one key hashes  :-)
18:22 jnthn Yeah, worth checking spec to see if Pair is meant to do Associative.
18:23 lizmat r: my %h; %h[0]=1; say %h  #huh?
18:23 camelia rakudo 6404e5: OUTPUT«Odd number of elements found where hash expected␤  in method STORE at src/gen/CORE.setting:7319␤  in block  at /tmp/lLuCoIh1KH:1␤␤»
18:23 lizmat r: my %h:=a=>1; %h[0]=1; say %h  # huh?
18:23 camelia rakudo 6404e5: OUTPUT«Cannot modify an immutable value␤  in block  at /tmp/4JJmYbr9LI:1␤␤»
18:23 [Coke] r: my %h; %h<0>=1; say %h
18:23 camelia rakudo 6404e5: OUTPUT«("0" => 1).hash␤»
18:23 jnthn lizmat: You're forgetting that item[0] returns the item....
18:24 lizmat ah, yes
18:24 lizmat r: my %h := a=>1; say %h[1]   # ;-)
18:24 camelia rakudo 6404e5: OUTPUT«Index out of range. Is: 1, should be in 0..0␤  in method gist at src/gen/CORE.setting:10565␤  in method gist at src/gen/CORE.setting:919␤  in sub say at src/gen/CORE.setting:11459␤  in block  at /tmp/ERr4cJTXZO:1␤␤»
18:24 lizmat indeed
18:24 p5eval joined #perl6
18:25 jnthn :)
18:25 notjack r: my %h = {:foo :bar}; say %h{foo};
18:25 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routine:â�¤    foo used at line 1â�¤â�¤Â»
18:25 notjack r: my %h = {:foo, :bar}; say %h{'foo'};
18:25 camelia rakudo 6404e5: OUTPUT«True␤»
18:25 notjack r: my %h = {:foo, :bar}; say %h{foo};
18:25 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routine:â�¤    foo used at line 1â�¤â�¤Â»
18:26 notjack r: my %h = {:foo :bar}; say %h{:foo};
18:26 camelia rakudo 6404e5: OUTPUT«(Any)␤»
18:26 notjack r: my %h = {:foo,:bar}; say %h{:foo};
18:26 camelia rakudo 6404e5: OUTPUT«(Any)␤»
18:26 lizmat r: my %h = {:foo, :bar}; say %h<foo>;  # notjack: {} always executes what's inside of it
18:26 camelia rakudo 6404e5: OUTPUT«True␤»
18:26 notjack ah, thanks
18:26 lizmat also: :foo is short for foo => True
18:27 garfieldnate joined #perl6
18:27 notjack yeah, that's neat
18:27 lizmat :!foo is foo => False
18:28 notjack r: my $key='foo'; my %h = {:$key}; say %h.keys;
18:28 camelia rakudo 6404e5: OUTPUT«key␤»
18:28 lizmat :$foo is foo => $foo
18:28 timotimo there's also %h<foo> which is short for %h{'foo'}
18:28 lizmat r: my $foo=1; { :$foo }.say
18:28 camelia rakudo 6404e5: OUTPUT«("foo" => 1).hash␤»
18:29 lizmat r: my $foo=1; :$foo.say  # even shorter
18:29 camelia rakudo 6404e5: OUTPUT«"foo" => 1␤»
18:30 notjack lizmat: but your first expression is a hash, and the second just a bare pair, right?
18:30 lizmat yes
18:30 lizmat I think the phrase is "adverbial pair"
18:31 notjack r: my $foo='bar', $bar='foo'; my %h = {:$foo, :$bar}; say %h<foo>;
18:31 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Variable '$bar' is not declaredâ�¤at /tmp/mP4oUrBPBS:1â�¤------> [32mmy $foo='bar', $bar[33mâ��[31m='foo'; my %h = {:$foo, :$bar}; say %h<f[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
18:31 lizmat my %sliced = %hash{@slice}:delete:p
18:31 notjack r: my $foo='bar'; my $bar='foo'; my %h = {:$foo, :$bar}; say %h<foo>;
18:31 camelia rakudo 6404e5: OUTPUT«bar␤»
18:31 notjack heh
18:31 iSlug joined #perl6
18:31 lizmat r: my $foo='bar'; my $bar='foo'; my %h = (:$foo, :$bar); say %h<foo>;
18:31 camelia rakudo 6404e5: OUTPUT«bar␤»
18:32 domidumont joined #perl6
18:32 notjack is %h<blah> special syntax, or is <blah> interpreted normally, and somehow passed into %h as an argument?
18:32 benabik %h<foo> ~~ %h{"foo"}, IIRc
18:33 notjack r: my %h={foo=>'bar',baz='booze'};say %h  <bar>  ; #whitespace
18:33 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routines:â�¤    bar used at line 1. Did you mean '&bag'?â�¤    baz used at line 1. Did you mean '&bag'?â�¤    h used at line 1â�¤â�¤Â»
18:33 notjack special syntax then, but very mnemonic
18:33 lizmat actually, $h<foo> is %h{'foo'}  # note single quotes
18:33 notjack because <> is q<> ?
18:33 lizmat actually, $h<<foo>> is %h{"foo"}  # note double quotes
18:34 notjack or is <> qq?
18:34 benabik r: my %h={foo=>'bar', bar=>'quux'}; say %h<foo bar>
18:34 camelia rakudo 6404e5: OUTPUT«bar quux␤»
18:34 lizmat <> is 1, <<>> is qq
18:34 benabik r: my %h={foo=>'bar', bar=>'quux'}; say %h{<foo bar}
18:34 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Unable to parse expression in quote words; couldn't find final '>'â�¤at /tmp/QK5TbZXbtl:1â�¤------> [32mo=>'bar', bar=>'quux'}; say %h{<foo bar}[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        postfixâ�¤        subscriptâ�¤        semicolo…
18:34 benabik r: my %h={foo=>'bar', bar=>'quux'}; say %h{<foo bar>}
18:34 camelia rakudo 6404e5: OUTPUT«bar quux␤»
18:34 Vlavv joined #perl6
18:35 lizmat enjoying some thunderstorm rain, bbiab &
18:35 [Coke] .to blave which we all know means "to bluff."
18:35 yoleaux [Coke]: I'll pass your message to blave.
18:35 benabik %h<foo bar> ~~ %h{<foo bar>} ~~ %h{['foo', 'bar']} ?
18:35 timotimo yeah
18:36 benabik r: my %h={foo=>'bar', bar=>'quux'}; say %h{<foo>}.WHAT
18:36 camelia rakudo 6404e5: OUTPUT«(Str)␤»
18:37 benabik Important that %<> is %{<>} and not %{''}.  Multiple words get split.
18:38 lizmat benabik: qood point  :-)
18:38 lizmat r: my %h{Hash}= {a=>1} =>1; say %h  # the wonders of Perl 6
18:38 camelia rakudo 6404e5: OUTPUT«Hash[Any,Hash].new({"a" => 1} => 1)␤»
18:38 lizmat keys can be objects too, not just stringifications
18:39 notjack r: my @a=<what does this do>; my %h={what=>'WUT',does='DUZ'​,this='DIS',do='DUE'};say %h<@a>; # note <> not [];
18:39 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routines:â�¤    do used at line 1â�¤    does used at line 1â�¤    this used at line 1â�¤â�¤Â»
18:39 notjack r: my @a=<what doez this do>; my %h={what=>'WUT',doez='DUZ'​,this='DIS',do='DUE'};say %h<@a>; # note <> not [];
18:39 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routines:â�¤    do used at line 1â�¤    doez used at line 1â�¤    this used at line 1â�¤â�¤Â»
18:39 notjack r: my @a=<what doez this doo>; my %h={what=>'WUT',doez='DUZ'​,this='DIS',doo='DUE'};say %h<@a>; # note <> not [];
18:39 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routines:â�¤    doez used at line 1â�¤    doo used at line 1â�¤    this used at line 1â�¤â�¤Â»
18:40 diakopter anyone with expertise in two-factor, vpn, virtual desktop stuff please contact me...
18:40 rindolf joined #perl6
18:41 benabik r: my @a=<what does this do>; my %h={what=>'WUT',does=>'DUZ'​,this=>'DIS',do=>'DUE'};say %h<@a>; # note <> not [];
18:41 camelia rakudo 6404e5: OUTPUT«(Any)␤»
18:41 benabik notjack: ^^. you were missing some >
18:42 benabik r: my @a=<what does this do>; my %h={what=>'WUT',does=>'DUZ'​,this=>'DIS',do=>'DUE'};say %h<<@a>>;
18:42 camelia rakudo 6404e5: OUTPUT«(Any)␤»
18:42 benabik r: my @a=<what does this do>; my %h={what=>'WUT',does=>'DUZ'​,this=>'DIS',do=>'DUE'};say %h{@};
18:42 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![3​1m===[0mâ�¤Non-declarative sigil is missing its nameâ�¤at /tmp/HHar5oOkSQ:1â�¤------> [32mes=>'DUZ',this=>'DIS',do=>'DUE'};say %h{[33mâ��[31m@};[0mâ�¤    expecting any of:â�¤        postfixâ�¤        subscriptâ�¤        semicolon listâ�¤        prefix or te…
18:42 benabik r: my @a=<what does this do>; my %h={what=>'WUT',does=>'DUZ'​,this=>'DIS',do=>'DUE'};say %h{@a};
18:42 camelia rakudo 6404e5: OUTPUT«WUT DUZ DIS DUE␤»
18:42 lizmat benabik++
18:45 rindolf joined #perl6
18:52 lizmat r: say Hash[42]'  # seems odd
18:52 camelia rakudo 6404e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Two terms in a rowâ�¤at /tmp/oH8asoHUWo:1â�¤------> [32msay Hash[42][33mâ��[31m'  # seems odd[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-infixâ�¤        statement endâ�¤        statement modifierâ�¤  â€¦
18:52 lizmat r: say Hash[42]  # seems odd
18:52 camelia rakudo 6404e5: OUTPUT«(Hash+{TypedHash})␤»
18:52 kst joined #perl6
18:52 lizmat ah, it uses 42 as the type of the values
18:55 lizmat r: my $a= Hash[42].new; $a<a>=1; say $a  # actually, the type of 42
18:55 camelia rakudo 6404e5: OUTPUT«Hash[Int].new("a" => 1)␤»
19:21 lizmat r: Int(Str)  # should that call Str.Int ?
19:21 camelia rakudo 6404e5: OUTPUT«Invocant requires an instance, but a type object was passed␤  in method Int at src/gen/CORE.setting:4380␤  in block  at /tmp/DWdyyRLh0z:1␤␤»
19:22 dalek Perlito: 252f5ab | (Flavio S. Glock)++ | t5/01-perlito/27-syntax-indirect-object.t:
19:22 dalek Perlito: Perlito5 - indirect-object tests
19:22 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/252f5ab53b
19:23 lizmat .oO( does Flavio realize his "secret" work on Perlito is visible here )
19:24 fridim__ joined #perl6
19:35 timotimo what gives you the idea it's secret?
19:42 lizmat because at one point he told me he considered the Perlito project as "complete", as in that no further development would be done
19:43 benabik joined #perl6
19:43 iSlug joined #perl6
19:46 lizmat I guess things have changed since then: http://www.i-programmer.info/professio​nal-programmer/i-programmer/5770-perli​to-an-interview-with-flavio-glock.html
19:46 lizmat glad to see that  :-)
19:50 lue hello world o/
19:50 dalek rakudo/rebuf: 5df9466 | jnthn++ | src/core/IO/Socket.pm:
19:50 dalek rakudo/rebuf: Attempt some binary socket IO fixes.
19:50 dalek rakudo/rebuf: review: https://github.com/rakudo/rakudo/commit/5df946604d
19:51 jnthn plz can somebody who had the IO socket test fails with rebuf try the test with that patch?
19:51 jnthn hellue! o/
20:00 lizmat will do
20:05 [Coke] willen do
20:07 lizmat 100% success here
20:07 [Coke] holy crap you have a fast machine.
20:08 [Coke] (did you run the full test suite or just the failures?)
20:08 lizmat I just did the failing test
20:08 [Coke] heh
20:08 lizmat running full spectest now
20:08 jnthn lizmat: yay
20:08 jnthn That means we can merge all the things
20:09 lizmat should have full spectest result in ~ 5 mins
20:09 jnthn ok
20:09 [Coke] holy crap you have a fast machine.
20:09 jnthn I think there may be one spectest that wants fixes
20:10 jnthn ;)
20:10 lizmat the one with Buf and utf8 ?
20:10 jnthn yeah
20:10 jnthn I'm guessing it's a #icu one...
20:10 lizmat wonder whether that couldn't be handled by coercion
20:10 jnthn Or I just missed it for some other reason.
20:11 dalek Perlito: 294993d | (Flavio S. Glock)++ | t5/01-perlito/27-syntax-indirect-object.t:
20:11 dalek Perlito: Perlito5 - indirect-object tests
20:11 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/294993dbf7
20:12 lizmat [Coke}: I got it specifically for being able to do this fast  :-)
20:12 lue loliblog --> https://rdstar.wordpress.com/2013/07/2​2/some-thoughts-on-unicode-in-perl-6/
20:13 jnthn lizmat: OK, got merges done locally, will push once you confirm no negative fallout from my patch.
20:14 lizmat t/spec/S02-names-vars/perl.t still fails
20:15 lizmat that's the "my Buf $a = "asdf".encode();"
20:15 jnthn yeah, that's not right any more
20:16 jnthn .encode defaults to utf-8, which returns a utf8 now (as per spec), and from discussion with TimToady++ a couple of days ago we now know that utf8 ~~ Blob, and utf8 !~~ Buf.
20:16 jnthn (spec may need some synchronizing with that)
20:16 Alpha64 joined #perl6
20:16 lizmat no, it seems to fudge incorrectly now
20:17 jnthn ?
20:18 jnthn > say "asdf".encode().perl;
20:18 jnthn utf8.new(97, 115, 100, 102)
20:18 dalek roast/rebuf: 5e1fb84 | (Elizabeth Mattijsen)++ | S02-names-vars/perl.t:
20:18 dalek roast/rebuf: Fix problem in fudge
20:18 dalek roast/rebuf: review: https://github.com/perl6/roast/commit/5e1fb84b42
20:18 jnthn > "asdf".encode() ~~ Blob
20:18 jnthn True
20:18 jnthn > "asdf".encode() ~~ Buf
20:18 lizmat clean now
20:18 jnthn False
20:18 lizmat it was a problem in the fudge
20:18 lizmat missing quote
20:19 lizmat it's clean now
20:19 jnthn The test shouldn't be fudged, it should be brought in line with reality
20:19 jnthn Like I did with other tests
20:19 lizmat checking
20:19 arnsholt jnthn: One thing I've been pondering recently is unsigned natives. Have you thought any about that?
20:19 jnthn arnsholt: Yeah, it's been on my mind a bit.
20:19 lizmat jnthn: without the fudge I get "Type check failed in assignment to '$a'; expected 'Buf' but got 'utf8'"
20:19 [Coke] jnthn: https://gist.github.com/coke/6057285 - rebuf failures.
20:20 arnsholt Both Parrot and JVM have only signed integers, and I'm unsure what's good things to do about the whole thing
20:20 arnsholt At least JVM mandates twos complement representation
20:21 [Coke] updated with the actual -v output
20:21 jnthn lizmat: Right. The test currently reads:
20:21 jnthn my Buf $a = "asdf".encode();
20:21 jnthn lizmat: Expecting that encode returns something that ~~ Buf is no longer correct.
20:21 lizmat so what should the test read then?
20:22 jnthn lizmat: s/Buf/Blob/ is correct
20:22 * jnthn checks how well sync'd S02 is with his discussion with TimToady++
20:22 lizmat Can not decode a utf-8 buffer as if it were ascii
20:22 jnthn grr
20:22 jnthn Well, yeah...
20:23 * jnthn didn't read the next line of the test
20:23 [Coke] shouldn't that be a "sometimes" error? ;)
20:23 eirini_k joined #perl6
20:23 lizmat s/ascii/utf8 works
20:23 jnthn Well, it's more that utf8 buffers know their encoding type and get upset if you try to decode them as something else.
20:23 [Coke] jnthn: there are new errors for me in the socket tests.
20:23 jnthn [Coke]: With or without my latest rebuf patch?
20:24 lizmat [Coke]: also "rebuf" in roast!
20:24 [Coke] roast @ 5e1fb84, rakudo @ 5df9466
20:25 lizmat jnthn: fwiw, is eval($a.perl).decode("utf8"), "asdf"; passes
20:25 [Coke] I didn't do a full clean on rakudo.parrot like I would if it were the daily run, just did a git pull --rebase, reconfigure, make
20:29 dalek specs: 3a9c994 | jnthn++ | S (2 files):
20:29 dalek specs: utf8 is now a blob8, and encode returns Blobs.
20:29 dalek specs:
20:29 dalek specs: Per discussion on #perl6 with TimToady++.
20:29 dalek specs: review: https://github.com/perl6/specs/commit/3a9c994782
20:33 raiph joined #perl6
20:36 jnthn [Coke]: hmmm...oddness
20:36 jnthn lizmat: Yeah, that's a reasonable thing
20:37 jnthn lizmat: I'm wondering if we shouldn't complain if you try to decode it as something else, though..
20:37 lizmat I'll commit this now so that we can merge, and look at the failure modes later ok?
20:38 dalek roast/rebuf: bccdba9 | (Elizabeth Mattijsen)++ | S02-names-vars/perl.t:
20:38 dalek roast/rebuf: Make encode/decode test pass on rakudo for now
20:38 dalek roast/rebuf: review: https://github.com/perl6/roast/commit/bccdba976e
20:38 jnthn ok
20:38 lizmat I guess we're ready for a merge now
20:39 jnthn Yeah, I will still try to triage Coke's failure though
20:40 dalek rakudo/rebuf: def71e6 | (Elizabeth Mattijsen)++ | src/core/Str.pm:
20:40 dalek rakudo/rebuf: Make sure we initialize encoding normalization hash only once
20:40 dalek rakudo/rebuf: review: https://github.com/rakudo/rakudo/commit/def71e6a3f
20:40 dalek rakudo/rebuf: a50c61e | (Elizabeth Mattijsen)++ | src/core/Str.pm:
20:40 dalek rakudo/rebuf: Make NORMALIZE_ENCODING a bit faster
20:40 dalek rakudo/rebuf: review: https://github.com/rakudo/rakudo/commit/a50c61e4f8
20:40 [Coke] jnthn: heading out now, won't be able to run another test for a few hours.
20:41 dalek roast: a3094da | jnthn++ | S (5 files):
20:41 dalek roast: Various test updates for Buf changes.
20:41 dalek roast:
20:41 dalek roast: Rakudo has become more closely aligned with the spec in various ways,
20:41 dalek roast: and these tests were caught out in the process.
20:41 dalek roast: review: https://github.com/perl6/roast/commit/a3094da497
20:41 dalek roast: d237184 | (Elizabeth Mattijsen)++ | S02-names-vars/perl.t:
20:41 dalek roast: Make encode/decode test pass on rakudo for now
20:41 dalek roast: review: https://github.com/perl6/roast/commit/d237184164
20:41 jnthn lizmat: oops, I'd already merged that locally...
20:41 * jnthn rescues lizmat++'s commits from the branch
20:42 jnthn ugh, merge commits all over now...
20:42 * lizmat thanks jnthn
20:42 lizmat (about the resques)
20:43 jnthn gonna re-do the merge
20:43 jnthn better.
20:43 jnthn git++
20:44 dalek Heuristic branch merge: pushed 21 commits to rakudo/nom by jnthn
20:44 jnthn $dayjob++ # making me learn git well
20:44 notjack git well soon, jnthn
20:44 eirini_k joined #perl6
20:46 aindilis joined #perl6
20:47 * jnthn tries optimizing buf ~ buf
20:53 eirini_k left #perl6
21:05 dalek rakudo/nom: fbd875e | jnthn++ | src/core/Buf.pm:
21:05 dalek rakudo/nom: Make Buf concatenation more direct.
21:05 dalek rakudo/nom:
21:05 dalek rakudo/nom: Once VMArray on Parrot implements splice, this can be simplified. For
21:05 dalek rakudo/nom: now, this is an improvement.
21:05 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fbd875e71c
21:14 benabik What's the difference between Blob and Buf?
21:16 jnthn Blob is immutable
21:16 jnthn Buf is^Wwill be mutable :)
21:20 colomon joined #perl6
21:24 dalek specs: 0af5e95 | (Elizabeth Mattijsen)++ | S02-bits.pod:
21:24 dalek specs: Move Nil to its own section before Typed Objects
21:24 dalek specs: review: https://github.com/perl6/specs/commit/0af5e952c8
21:25 garfieldnate working a QH stencil for creating P6 modules. have a couple of questions for getting started.
21:26 garfieldnate First, is there any place someone should post if they decide to work on a module? I know there are the most wanted modules labeled WIP in the GitHub project. Is there a pre-pan type place? Should they mention it here? Or are there few enough that we don't worry about work duplication?
21:26 lue Is it just me or are S03:475 and S03:482 accidentally in descending order? (I can't tell what's originally in the file and what my browser/text editors are messing up)
21:26 synopsebot Link: http://perlcabal.org/syn/S03.html#line_475
21:26 Ulti garfieldnate: http://modules.perl6.org/
21:26 preflex_ joined #perl6
21:26 Ulti there is a git repo that has the list of modules you add your own as a patch
21:27 konundra joined #perl6
21:28 vol7ron joined #perl6
21:28 vol7ron hello
21:28 Ulti hi
21:28 garfieldnate Ah, ok. So with the release-early, release-often thing one should be fine adding it as a patch when they start writing their module?
21:29 Ulti garfieldnate: do you mean adding stuff to rakudo perl6 or do you mean a module cpan style?
21:29 garfieldnate module cpan/panda style
21:30 vol7ron has perl6 been released yet?
21:30 Ulti well my module relied on a not yet implemented feature for a long while and didnt pass its tests when installed with panda so yeah
21:30 Ulti vol7ron: the language spec hasn't been finalised but the most mature compiler Rakudo has been released monthly for a long time
21:31 dalek specs: e45fc46 | (Elizabeth Mattijsen)++ | S02-bits.pod:
21:31 dalek specs: Make type objects work as Nil in non-scalar contexts.
21:31 dalek specs: review: https://github.com/perl6/specs/commit/e45fc46ebd
21:31 Ulti vol7ron: http://rakudo.org
21:31 vol7ron yeah i know of Rakudo
21:32 Ulti did you know it now comes with compile to JVM
21:33 vol7ron I know that it's still so much in development that my systems team don't view it as stable, or at a state that promotes consistency
21:33 Guest1337 joined #perl6
21:34 vol7ron It seems perl6 has taken so long to "release" that we're switching over to Python or Ruby
21:34 Ulti why move from perl5
21:35 Ulti especially if stability and maturity is your criteria
21:39 jnthn sleep &
21:39 vol7ron Ulti: so perl5 is what I want to use
21:39 lizmat gnight jnthn!
21:39 jnthn 'ngiht
21:39 vol7ron but it has its problems
21:40 lizmat TimToady, pmichaud: re "e45fc46", I feel this is the best of both worlds
21:42 vol7ron I should add that perl6 is awesome, I need something to convince my systems team.  I think perl6 could use some better marketing in their release cycle
21:43 frettled joined #perl6
21:47 frettled vol7ron: I'm sure marketing help is appreciated
21:47 lizmat vol7ron: at this point in time, I would recommend rakudo in production only for very specific uses, depending on Perl6's unique featues such as grammars
21:48 lizmat wrt to marketing: I guess at this point in time, we're looking to gather a lot of (very) early adapters
21:48 lizmat adopters
21:51 garfieldnate Second question for the QH stencil: If new Perl6 users wanted a code review of some sort, is there a place they can go to get it? There isn't a perl-6 tag (yet) on http://codereview.stackexchange.com.
21:51 tadzik you usually get a response on perl6-users mailing list
21:51 vol7ron I think the whole community would like a plan stating what a stable version is.  perl6 contributors are awesome and have made huge improvements these last 3-5 years.  I don't want the community-at-large to move away from Perl because of the other new shiny languages
21:51 Ulti lizmat: yeah that's the main bit of *real* perl6 code I have a grammar that just goes from a horrific data format to something simple for a perl5 script
21:51 tadzik I think it's had a couple of "review my code" posts; if not, I'm sure they'll be welcome
21:52 raiph garfieldnate: i recommend u focus on this IRC channel
21:54 garfieldnate I'll do that. Thanks!
21:55 lizmat Personally, I think that after the dust has settled on having multiple VM's (specifically Parrot/Jvm/MoarVM)
21:55 lizmat and I expect that in a few months, that we can decide on what 6.0.0 would contain
21:56 raiph vol7ron: "as hard to stomach as it may be, the story remains, even though they've taken a decade to get this far, [p6ers] may well take another year or two to get to Perl 6.0.0 and a generally robust status"
21:57 raiph i think that
21:58 raiph ( from http://yesistilluseperl.blogspot.com/2009/0​8/parrot-even-runs-basic-programs.html?show​Comment=1249975161850#c6533761250394472828 )
21:59 vol7ron me too, which is understandable, but once people get into a new language, they are less likely to convert programs to a new language. The best hope is for them to begin writing new code in that language and eventually rewrite old applications when the time comes
22:00 Ulti vol7ron: have you seen the v5 slang is being developed too
22:00 Ulti I think if you are already in legacy perl mode it might be worth the wait rather than utterly port from scratch
22:01 Ulti and afaik (someone will correct me) MOAR VM plans to have perl5 embedded?
22:01 tadzik yes
22:01 Ulti though surely if you are doing perl stuff for the web you'd move to PHP for profit not love
22:02 lue .oO(It'll be *sooo* weird when we change features in the spec and it's *not* a change to 6.0.0, but 6.0.1 or something)
22:02 Ulti lol ^
22:02 Ulti something I said? >:D
22:04 Ulti lue: surely version 7.0 since people are already wanting that
22:06 lue .oO(Perl7 starts with taking the specifications of every programming language in existence, taking out the clearly unperly bits, and then smashing them together.)
22:07 Ulti nah Perl7 works out the probability of the source being a given language and then pre-emptively compiles it with the appropriate slang
22:07 Ulti so you can just mix any language with any other
22:08 diakopter ...
22:08 Ulti and Perl7 IDEs will just show the code in whatever language you want but preserve the source in the language it's stored in
22:09 * diakopter hopes posterity and lurkers know you're kidding
22:09 Ulti then people will argue about what is the best viewing language rahter than number of spaces for a tab
22:09 Ulti diakopter: lol
22:09 lue Ulti: Obviously, the best viewing language is Perl 6.
22:09 Ulti sounds like a plausible jump considering 5->6
22:10 Ulti version 8 would learn to watch your eye movement to alter the view to a language that is confusing you less as you glance through
22:10 huf_ and 9 will be a homoiconic lisp with complex syntax :)
22:11 Ulti I'd hope 9 just writes itself and is sentient, but ok
22:11 huf_ that already exists, you just need to become a boss
22:11 lue Hey, woah. You guys need to read your S01 and A01 again.
22:11 Ulti lol
22:11 lizmat .oO( Revolution #9 )
22:12 lue "Perl 6 should be malleable enough that it can evolve into the imaginary perfect language, Perl 7." -- S01
22:12 lue "So Perl 7 will be the last major revision. In fact, Perl 7 will be so perfect, it will need no revision at all. Perl 6 is merely the prototype for Perl 7. :-)" -- A01
22:12 Ulti we just got schooled
22:13 huf_ the number of perls shall be 7, no more, no less.
22:13 benabik joined #perl6
22:14 Ulti the seventh programming language implemented in Perl7 will allow the user to spell cast
22:15 lue Perl 7 is the implied perl in this --> https://xkcd.com/224/
22:15 huf_ no, sadly i think that's most likely perl4 or so
22:16 markov left #perl6
22:22 Ulti also regex is better in Perl5 than other languages, you can have them multi line with comments and named regex for code reuse... it's just no one does that because they read some aged tutorial/book :(
22:26 Ulti something like this http://adam.sardar.me.uk/?p=583 is crying out for a grammar, which is why Perl6 is awesome for bioinformatics
22:32 markov joined #perl6
22:32 Ulti can you have roles which are just a bunch of token definitions?
22:39 lizmat gnight #perl6!
22:40 lue good ♞ lizmat o/
22:43 Ulti the answer is yes you can :)
22:44 Ulti that's cool
22:44 Ulti can just have libraries of standard tokens like time stamp formats etc.
22:44 Ulti and just have  grammar MyGrammar does ISO-BLAH {}
22:45 Ulti hadn't really thought about that before
22:53 Ulti is there any guidelines on how tokens should be named CamelCase under_scores ?
22:53 benabik P6 style seems to use dashed-words.
22:55 huf joined #perl6
22:56 eiro_ joined #perl6
22:56 simcop2387_ joined #perl6
22:56 fgomez_ joined #perl6
22:56 Psyche^_ joined #perl6
22:59 Ulti benabik: oh really, ok
22:59 Ulti I like that better
22:59 benabik I think most of the stdlib uses that style, anyway
23:00 Vlavv_ joined #perl6
23:01 vaelxon joined #perl6
23:12 raiph joined #perl6
23:20 nebuchadnezzar joined #perl6
23:20 tokuhirom joined #perl6
23:36 rom1504 joined #perl6
23:43 Ulti if you have a proto token do you not get back in the match object the <sym> for the token that matched?
23:44 tokuhirom joined #perl6
23:45 timotimo i think you shouldk
23:46 Ulti Just been playing with it https://gist.github.com/MattOates/6058680 and I don't see it in .perl ?
23:46 Ulti what am I missing/doing wrong
23:46 timotimo oh!
23:46 timotimo that's what you mean
23:47 timotimo you only get it if you match <sym> inside the rule
23:47 timotimo otherwise you'll "get it" by implementing the foo:sym<something> method in the action class
23:47 Ulti makes sense
23:51 Ulti so I guess I want to build a phone number object where it has locale as an attribute along with areacode etc.
23:51 Ulti anyway, g'night
23:53 timotimo good night!
23:53 logie joined #perl6

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

Perl 6 | Reference Documentation | Rakudo