Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-05-18

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:06 flussence skids: a long time ago I mentioned an idea like that as a way to use the sprintf grammar in the spec to do an automated test coverage check. I don't think it ever went anywhere though...
00:06 phenny flussence: 16 May 22:03Z <not_gerd> tell flussence could you please verify that NQP still builds on the machine that got you https://gist.github.com/2050618
00:08 dalek roast: 781dc1f | (Solomon Foster)++ | S (2 files):
00:08 dalek roast: Change niecza fudging.
00:08 dalek roast: review: https://github.com/perl6/roast/commit/781dc1f2d4
00:09 flussence phenny: tell not_gerd I don't even remember what that error was from... but I've built rakudo on my desktop and netbook recently without problems so I'll assume it's fixed.
00:09 phenny flussence: I'll pass that on when not_gerd is around.
00:11 dalek roast: 291ac54 | (Solomon Foster)++ | S32-num/base.t:
00:11 dalek roast: Refudge for niecza.
00:11 dalek roast: review: https://github.com/perl6/roast/commit/291ac545b7
00:21 colomon n: say "f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ « <ident> /
00:21 p6eval niecza v17-4-ge5b869e: OUTPUT«#<match from(5) to(8) text(foo) pos([].list) named({"ident" => #<match from(5) to(8) text(foo) pos([].list) named({}.hash)>}.hash)>␤»
00:22 colomon r: say "f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ « <ident> /
00:22 p6eval rakudo 7165ff: OUTPUT«=> <foo>␤ ident => <foo>␤␤»
00:22 colomon n: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ « <ident> /)
00:22 p6eval niecza v17-4-ge5b869e: OUTPUT«foo␤»
00:24 colomon n: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ <ident> /)
00:24 p6eval niecza v17-4-ge5b869e: OUTPUT«o␤»
00:24 colomon n: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:1st/ <ident> /)
00:24 p6eval niecza v17-4-ge5b869e: OUTPUT«f␤»
00:25 colomon n: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:2nd/ <ident> /)
00:25 p6eval niecza v17-4-ge5b869e: OUTPUT«fo␤»
00:25 colomon n: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ <ident> /)
00:25 p6eval niecza v17-4-ge5b869e: OUTPUT«o␤»
00:25 Chillance joined #perl6
00:26 colomon r: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ <ident> /)
00:26 p6eval rakudo 7165ff: OUTPUT«foo␤»
00:29 skids https://gist.github.com/2722431  # <--- probably not the prettiest concept ever floated for regen-from-grammar
00:32 skids .oO(Of course, the whole separate actions class in .parse is a bit of a DRY violation to begin with, but probably worth the side-benefits.)
00:39 mikemol joined #perl6
00:44 benabik joined #perl6
00:51 NamelessTee joined #perl6
01:01 fgomez joined #perl6
01:09 scott_ joined #perl6
01:15 dalek roast: e2f3f78 | (Solomon Foster)++ | S (2 files):
01:15 dalek roast: Refudge for niecza.
01:15 dalek roast: review: https://github.com/perl6/roast/commit/e2f3f78b74
01:17 dalek niecza: eccf8f5 | (Solomon Foster)++ | lib/CORE.setting:
01:17 dalek niecza: Import moritz++'s substr-rw and improve it a tad.
01:17 dalek niecza: review: https://github.com/sorear/niecza/commit/eccf8f56aa
01:17 dalek niecza: ab55638 | (Solomon Foster)++ | t/spectest.data:
01:17 dalek niecza: Turn on S32-str/substr-rw.t.
01:17 dalek niecza: review: https://github.com/sorear/niecza/commit/ab55638b19
01:17 dalek niecza: fb910e4 | (Solomon Foster)++ | lib/CORE.setting:
01:17 dalek niecza: Reimplement substr-rw as an exact clone of the existing substr.  The existing substr should change to not be an lvalue, but I have no idea how to do it.
01:17 dalek niecza: review: https://github.com/sorear/niecza/commit/fb910e4c3e
01:19 wolfman2000 joined #perl6
01:22 ponpon joined #perl6
01:30 ponbiki joined #perl6
01:34 s1n joined #perl6
01:44 sorear good * #perl6
01:50 colomon o/
01:50 colomon So, how do we remove the lvalueness from substr?  That code is completely over my head.
01:57 thepler joined #perl6
02:06 s1n joined #perl6
02:20 sorear colomon: I guess it would have to start by making a new substr_ro C# entry point, and copying the substr logic but not the lvalue logic
02:21 colomon sorear: how does it work  to how "is Niecza::builtin" *and* a body for the sub?
02:22 sorear colomon: the body is used in cases where Niecza::builtin can't be - wrong argument count, or not a direct call
02:23 alvis` joined #perl6
02:24 colomon sorear: so in this case, when there are not three arguments?
02:26 orafu joined #perl6
02:29 sorear colomon: yes
02:30 fgomez joined #perl6
02:32 colomon so o2.Does(Kernel.CodeMO)  is $start ~~ Code in p6?
02:32 colomon and all the actual "magic" happens in SubstrLValue?
02:33 sorear yes and yes
02:35 colomon this is starting to make sense to me.  :)
02:35 colomon I will take a stab at this and see if I can get it to work.
02:38 tyatpi joined #perl6
02:49 araujo joined #perl6
02:49 colomon sorear: if I have a string which might be null, how do I return it as a Variable?
02:49 colomon MakeStr?
02:51 sorear I think so
02:52 sorear Yeah
02:55 colomon niecza> substr("This is a test", 2, 5) = "10"
02:55 colomon assigning to readonly value
02:55 colomon does that look like a correct result?
03:02 colomon I've now got all the substr.t tests passing but four
03:05 sorear reasonable to me?
03:05 colomon yes, that's what I was asking.
03:05 colomon sorear: MakeStr(null) doesn't seem to return Str()
03:06 colomon and Kernel.StrMO.typeObject is a P6any rather than a Variable.
03:06 colomon hints?
03:06 colomon n: my $a = Str; say $a.chars
03:06 p6eval niecza v17-8-gfb910e4: OUTPUT«0␤»
03:07 colomon If I do that with a null returned from my current substr_ro, I get
03:07 colomon System.NullReferenceException: Object reference not set to an instance of an object
03:07 colomon at Builtins.chars (Niecza.Variable v) [0x00000] in <filename unknown>:0
03:08 sorear huh!
03:08 sorear try StrMO.typeVar
03:09 colomon Kernel.StrMO.typeVar  ?
03:10 colomon lib/Builtins.cs(719,63): warning CS0414: The private field `Builtins.substr_ro3_d' is assigned but its value is never used
03:10 colomon ?
03:10 colomon still, with Kernel.StrMO.typeVar, all substr.t tests that pass before pass again.
03:11 colomon and the substr-rw ones pass as well.
03:13 colomon I'm spectesting now, but I'm going to go to bed.  In the morning I'll try to refactor (lots of duplicated code) and then push.
03:14 colomon afk # sleep
03:14 tadzik good morning
03:14 leprevost joined #perl6
03:20 sorear phenny: tell colomon The private field warning means there was a problem with copy-pasting... check the HandleSpecial3 call and make sure tghe arguments are right
03:20 phenny sorear: I'll pass that on when colomon is around.
03:38 Entonian joined #perl6
03:49 libertyprime joined #perl6
04:01 localhost joined #perl6
04:10 kaare_ joined #perl6
04:29 trexy left #perl6
04:33 sisar tadzik: panda build fail: https://gist.github.com/2723154 .
04:33 sisar The error at line no. 9 doesn't even mention  the file name.
04:34 sisar I just built rakudo before trying to build panda.
04:40 mikemol_ joined #perl6
04:47 xinming_ joined #perl6
04:49 jaldhar joined #perl6
04:49 * sisar afk
04:57 Juerd joined #perl6
04:58 PerlJam joined #perl6
04:58 dalek joined #perl6
05:03 birdwindupbird joined #perl6
05:06 Juerd joined #perl6
05:12 dalek joined #perl6
05:14 tadzik oh noes
05:14 tadzik also: wifi on the bus \o/
05:15 tadzik hmm hmm, that might be JSON fail actually
05:15 tadzik I don't think I do any regexes in panda itself
05:15 tadzik or maybe not
05:21 tadzik sisar: it's no one's fault, you just need to recompile panda and its dependencies
05:21 sisar recompile how?
05:22 sisar not sh ./bootstrap.sh ?
05:22 fgomez joined #perl6
05:26 sisar tadzik: probably it is refering to ext/JSON/Tiny/Grammar.pm, line 6 ?
05:28 sisar yup, that's it. That line is causing the problem.
05:30 alim joined #perl6
05:34 sisar r: say "Oh shark!";
05:35 sisar p6eval wake up
05:44 mikemol joined #perl6
05:44 moritz \o
05:45 moritz uhm, I can't reach any of the 'feather' server (p6eval, perl6.org, perlcabal.org and all that fun)
05:47 sisar moritz: aye
05:49 sisar moritz: put just this line in a file "rule pairlist   { [ <pair> ** [ \, ]  ]?   }" , and run it. The error which it throws, doe not report the filename.
05:50 moritz sisar: oh. That's bad
05:50 moritz sisar: fwiw the problem is that this syntax has been removed
05:51 sisar recently ?
05:51 moritz now should be written as    <pair>* % \,
05:51 lestrrat joined #perl6
05:51 moritz a few months ago from the specs, and two days ago from Rakudo
05:51 * moritz must fix JSON::Tiny
05:51 sisar ++moritz++
05:52 moritz oh, looks like it's already fixed there
05:52 moritz though the fix is LTA
05:56 adu joined #perl6
05:56 kaleem joined #perl6
05:59 spaceships joined #perl6
06:02 Juerd joined #perl6
06:05 pjcj joined #perl6
06:06 hugme joined #perl6
06:07 Juerd O hai. Feather's underlying physical box had a hardware crash. Please test if your data is intact asap; we have backups if necessary.
06:17 snearch joined #perl6
06:29 p6eval joined #perl6
06:40 moritz r: say so 'a,b' ~~ /:s <alpha>* % \, /
06:40 p6eval rakudo 7165ff: OUTPUT«True␤»
06:40 moritz r: say so 'a, b' ~~ /:s <alpha>* % \, /
06:40 p6eval rakudo 7165ff: OUTPUT«True␤»
06:40 moritz r: say so 'a , b' ~~ /:s <alpha>* % \, /
06:40 p6eval rakudo 7165ff: OUTPUT«True␤»
06:43 adu hi moritz
06:43 moritz \o adu
06:46 moritz somehow, in JSON::Tiny::Grammar,  % \,  and % [ \, ]  behave differently
06:46 sorear o/ moritz
06:50 moritz meh, fallout
06:51 moritz Term::ANSIColor doesn't compile
06:51 moritz and when I fix it, Grammar::Tracer cannot be found
06:52 moritz ah, because I misspelled it :/
06:53 moritz and now Grammar::Tracer errors out while tracing :/
06:59 corburn joined #perl6
07:01 tadzik joined #perl6
07:02 sisar * moritz anticipates a big fallout <--- well, you predicted it yesterday :-)
07:02 sisar (though in a different context)
07:04 brrt joined #perl6
07:07 fhelmberger joined #perl6
07:24 araujo joined #perl6
07:24 araujo joined #perl6
07:44 alim joined #perl6
07:54 b1rkh0ff joined #perl6
07:56 masak joined #perl6
07:56 masak morning, #perl6
07:57 jnthn o/ masak
07:58 masak oh! feather had a crash. that's why I couldn't find my screen session this morning ;)
08:00 masak Juerd++ # all the work he puts in behind the scenes
08:04 tadzik sisar: yeah, it seems to be ext's fault indeed
08:05 sorear "behind the screens"
08:05 sorear o/ masak
08:06 jnthn moritz: Term::ANSIColor - what caused that to break?
08:06 * jnthn didn't think it used regexes, let alone **
08:07 tadzik it broke? Gah
08:07 tadzik works here
08:10 jnthn Same here
08:10 jnthn Oh, moritz said didn't compile...wonder if he meant pre-compile. But that also works here.
08:15 masak sorear: \o
08:16 alim joined #perl6
08:16 masak sorear: one of the non-contestants in p6cc notes that Niecza barfs on unrecognized named arguments in methods. why is that?
08:17 masak walk &
08:17 NamelessTee joined #perl6
08:21 jferrero joined #perl6
08:24 sorear masak: NYI, supported by me not minding the status quo very mucgh
08:24 sorear I misspell named argument names all the time
08:24 sorear sleep&
08:54 kresike joined #perl6
08:59 Facefox joined #perl6
09:00 daxim joined #perl6
09:14 cognominal joined #perl6
09:14 alim joined #perl6
09:37 cognominal joined #perl6
09:44 tadzik again I find myself reimplementing HTTP::Request/HTTP::Response for yet another module
09:45 alim joined #perl6
09:48 frettled ISAGN.
09:48 birdwindupbird joined #perl6
09:50 masak sorear: it makes zbiciak-4 unrunnable on Niecza.
09:52 icwiener joined #perl6
09:55 tadzik p6: rx{^/NestedController/$}; say "alive"
09:55 p6eval niecza v17-8-gfb910e4: OUTPUT«[31m===[0mSORRY![31m===[0m��Unrecognized regex metacharacter / (must be quoted to match literally) at /tmp/aRYvaoaiCv line 1:�------> [32mrx{^/[33m�[31mNestedController/$}; say "alive"[0m��Couldn't find terminator } at /tmp/aRYvaoaiCv line 1:�------…
09:55 p6eval ..rakudo 7165ff: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<{ }>, couldn't find final '}' at line 2␤»
09:55 p6eval ..pugs: OUTPUT«alive␤»
09:57 tadzik huh, we have no like() in Test.pm?
09:57 daxim sacrilege!
10:01 masak tadzik: why not just ok() with an appropriate regex?
10:01 tadzik masak: that's how I implemented like :)
10:01 tadzik I'm converting WebNano tests to Perl 6
10:02 tadzik p6: sub POST($a) { say $a }; POST "blah"
10:02 p6eval pugs: OUTPUT«blah␤»
10:02 p6eval ..rakudo 7165ff:  ( no output )
10:02 p6eval ..niecza v17-8-gfb910e4: OUTPUT«Potential difficulties:â�¤  &POST is declared but not used at /tmp/2yI6hVHfUS line 1:â�¤------> [32msub POST[33mâ��[31m($a) { say $a }; POST "blah"[0mâ�¤â�¤Â»
10:03 tadzik it's probably not the best idea to name Perl 6 subroutines with capitals
10:05 kaleem joined #perl6
10:13 Chillance joined #perl6
10:39 spider-mario joined #perl6
10:42 alim joined #perl6
10:42 b1rkh0ff joined #perl6
10:43 jnthn p6: sub POST($a) { say $a }; POST("blah")
10:43 p6eval pugs, rakudo 7165ff, niecza v17-8-gfb910e4: OUTPUT«blah␤»
10:58 brrt left #perl6
11:06 fgomez joined #perl6
11:11 moritz jnthn: never mind, my copy of Term::ANSIColor was out of date
11:18 masak tadzik: not if they're "ordinary" subroutines, then it sounds like a bad idea from a design perspective.
11:21 tadzik masak: I was replicating HTTP::Request::Common behaviour
11:23 masak I see.
11:23 fgomez joined #perl6
11:23 masak I'd make them lowercase.
11:26 au p6: sub Post($a) { say $a }; Post "http://.../"
11:26 p6eval pugs, rakudo 7165ff, niecza v17-8-gfb910e4: OUTPUT«http://.../␤»
11:33 ponbiki joined #perl6
11:42 cognominal_ joined #perl6
11:42 moritz r: https://gist.github.com/2724830
11:42 p6eval rakudo 7165ff: OUTPUT«Unable to parse array, couldn't find final ']'␤  in any FAILGOAL at src/stage2/QRegex.nqp:1205␤  in regex array at /tmp/YzpRFaoGPE:9␤  in regex TOP at /tmp/YzpRFaoGPE:5␤  in method parse at src/gen/CORE.setting:9253␤  in <anon> at /tmp/YzpRFaoGPE:39␤  in block <ano…
11:42 moritz n: https://gist.github.com/2724830
11:42 p6eval niecza v17-8-gfb910e4: OUTPUT«True␤»
11:42 moritz the really odd thing is, if I change    % \,   in arraylist to  % [ \, ]  then it works
11:43 jnthn moritz: is it a rule or a token?
11:44 moritz jnthn: a rule
11:44 jnthn moritz: Does [\,] rather than [ \, ] make a difference?
11:46 ivan`` joined #perl6
11:46 moritz jnthn: aye
11:46 moritz fails with \,
11:46 cognominal___ joined #perl6
11:47 moritz but I thought I tested it:
11:47 moritz r: say so 'a , b', ~~ /:s <alpha>+ % \,/
11:47 p6eval rakudo 7165ff: OUTPUT«True_block1011␤»
11:47 moritz r: say so 'a , b' ~~ /:s <alpha>+ % \,/
11:47 p6eval rakudo 7165ff: OUTPUT«True␤»
11:47 moritz oh
11:47 moritz r: say so 'a , b' ~~ /:s ^ <alpha>+ % \, $/
11:47 p6eval rakudo 7165ff: OUTPUT«False␤»
11:47 moritz my tests were RONG
11:48 moritz oh, S05 says that % does not turn whistspace into <.ws>
11:51 tadzik masak: well, get() and post() may collide with Bailador
11:55 moritz use Get and Post
11:59 tyatpi joined #perl6
12:07 flussence .oO( or define things in such a way you can write "HTTP/1.1 GET 'foo.com/bar'" right in the code :)
12:11 kaleem joined #perl6
12:14 icwiener joined #perl6
12:16 arnsholt flussence: That'd be a slang, I suspect
12:17 cognominal___ joined #perl6
12:27 snearch joined #perl6
12:28 [Coke] joined #perl6
12:28 bluescreen10 joined #perl6
12:33 kaleem joined #perl6
12:37 [Coke] huh. starting a fresh screen takes advantage of some setup I did weeks ago so now I can share my ssh agent inside my screen. no more password prompts on git activity, yay ;)
12:40 ivan`` joined #perl6
12:55 PacoAir joined #perl6
13:05 tyatpi joined #perl6
13:06 Psyche^ joined #perl6
13:08 sergot joined #perl6
13:08 sergot hi o/
13:09 PerlJam joined #perl6
13:10 alim joined #perl6
13:13 alim_ joined #perl6
13:14 masak sergocie! \o/
13:15 masak is callsame a term?
13:15 jnthn No
13:15 masak r: class A { method Str { "A" } }; class B is A { method Str { callsame ~ " with additions" } }; say B.new
13:15 p6eval rakudo ce2fa3: OUTPUT«B.new()␤»
13:16 masak hm.
13:16 masak r: class A { method gist { "A" } }; class B is A { method gist { callsame ~ " with additions" } }; say B.new
13:16 p6eval rakudo ce2fa3: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤  in block <anon> at src/gen/CORE.setting:420␤  in method gist at /tmp/ZXH0o6MFX3:1␤  in sub say at src/gen/CORE.setting:6799␤  in block <anon> at /tmp/ZXH0o6MFX3:1␤␤»
13:16 masak right. it's not.
13:16 masak r: class A { method gist { "A" } }; class B is A { method gist { callsame() ~ " with additions" } }; say B.new
13:16 p6eval rakudo ce2fa3: OUTPUT«A with additions␤»
13:17 issuebot6 joined #perl6
13:17 jnthn What have we here...
13:18 jnthn !issues zavolaj
13:18 issuebot6 zavolaj currently has 6 open issues
13:18 jnthn !issues zavolaj search segfault
13:18 issuebot6 3: segfault with arrow-return syntax on native subs (by flussence)
13:18 jnthn !issues zavolaj search flussence
13:18 issuebot6 3: segfault with arrow-return syntax on native subs (by flussence)
13:18 issuebot6 4: pir::null__P hack no longer works (by flussence)
13:18 masak \o/
13:18 masak jnthn++
13:18 jnthn !issues zavolaj 2
13:18 issuebot6 2: Add a thing to fall back on the perl6 code when loading the native function fails (by flussence) OPEN
13:19 jnthn Timbus++, moritz++, ihrd++ and cosimo++ for modules that made this possible :)
13:19 Timbus the who now
13:20 jnthn Timbus: You wrote Net::IRC::Bot, no?
13:20 Timbus yase
13:20 jnthn Well. I maked soemthin' with it ;)
13:20 Timbus excellent
13:21 Timbus oh. oh the bot
13:21 Timbus rad
13:21 mikemol joined #perl6
13:21 Timbus still needs async IO before I try adding the twitter module
13:22 Timbus i also take it you worked around the .* slot/dispatch handling thingo
13:22 Timbus which YOU BROKE >:[
13:23 masak :[
13:23 masak I pang TimToady about that. I presume he saw it and that it's now brewing in the back of his brane.
13:23 Timbus well.. i guess method dispatch and event dispatch arent the same thing in the end
13:24 Timbus except in smalltalk
13:25 Timbus maybe i should remake the bot to use a custom dispatch. perldancer style
13:26 jnthn [Coke]: I'm not sure it repsonds to privmsg properly...
13:27 jnthn I hacked that up in about 30-45 minutes... Perl 6 FTW. :)
13:29 alim_ joined #perl6
13:31 alim__ joined #perl6
13:34 masak \o/
13:36 alim_ joined #perl6
13:40 skids joined #perl6
13:44 alim_ joined #perl6
13:45 cognominal___ joined #perl6
13:47 colomon joined #perl6
13:47 Tene joined #perl6
13:50 alim_ joined #perl6
13:52 colomon perl6: say '2+3 ab2' ~~ /<.ident>/
13:52 phenny colomon: 03:20Z <sorear> tell colomon The private field warning means there was a problem with copy-pasting... check the HandleSpecial3 call and make sure tghe arguments are right
13:52 p6eval rakudo ce2fa3: OUTPUT«=> <ab2>␤␤»
13:52 p6eval ..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤    unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib';␤    eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** Can't locate P…
13:52 p6eval ..niecza v17-8-gfb910e4: OUTPUT«#<match from(4) to(7) text(ab2) pos([].list) named({}.hash)>␤»
13:54 colomon wish I'd gotten that message from phenny *before* my last commit & push.  :(
13:55 mikec_ haha
13:55 cognominal___ joined #perl6
14:02 goraki joined #perl6
14:07 alim joined #perl6
14:09 Woodi q
14:09 felher 'enum Sex is export <male female>' doesn't export the enum in nom at the moment, does it? (Maybe i just got something wrong?)
14:09 masak doesn't the 'is export' go after the list of values?
14:09 jnthn No, I tink it goes there...and I thought it exported too...
14:10 felher hm, seems like it exports Sex but not 'male' or 'female'
14:10 jnthn r: module Foo { enum Sex is export <NoThanks YesPlease>; }; import Foo; say Sex::.keys
14:10 p6eval rakudo ce2fa3: OUTPUT«NoThanks YesPlease␤»
14:11 jnthn felher: Ah, yes.
14:11 jnthn Wonder if the spec says it should export the values too...
14:11 jnthn You can get at them fully qualified, anyways.
14:13 felher jnthn: yeah, i think i'll just go with their full name for now :) thnx
14:14 rafl joined #perl6
14:14 goraki left #perl6
14:17 alim_ joined #perl6
14:19 alim joined #perl6
14:24 nofp6 joined #perl6
14:25 flussence ooh, does that issue bot notify of status changes?
14:27 jnthn flussence: Not yet
14:28 flussence I can close that issue 4 as fixed if you need to test it :)
14:29 jnthn flussence: It's doing as much as it's going to for now..I built it for a small demo for a talk
14:29 jnthn And am flying to give that talk quite soon :)
14:30 * masak too! :)
14:30 Woodi hmm, PERL6LIB=lib perl6 `ls t/*` do not work as expected :) execute only first test... perl6 gets just one script file or some sh trick can be used ?
14:31 masak does perl (5) run all files?
14:31 Woodi no idea...
14:31 masak then probably perl6 shoukd too.
14:31 Woodi that does not matter :)
14:31 masak please try.
14:31 Woodi k
14:31 masak it does matter.
14:32 alim joined #perl6
14:32 masak something tells me that the things after the first file end up in @ARGV
14:32 jnthn yeah, they do
14:33 jnthn (In Rakudo today, that is)
14:33 Woodi file is in @ARGV probably too
14:33 Woodi Perl5 detects t/00-... is Perl6 code and returned error :)
14:33 mdupont joined #perl6
14:34 masak Woodi: I meant test whether you can run several files in the manner you request.
14:34 masak but I don't think you can. they end up in @ARGV
14:34 frettled yup
14:34 frettled in Perl 5 as well
14:35 masak Perl 5 is the one with @ARGV :P
14:35 masak flight &
14:35 flussence is there *any* language that runs multiple files that way?
14:35 Woodi probably some switch is needed... I barely remeber somewhere something like this...
14:36 Woodi maybe not in Perl but maybe sed
14:36 flussence you could just do "PERL6LIB=lib prove -e perl6"...
14:36 frettled flussence: I can't think of any at the moment, most languages assume that you would like to pass some arguments even if the first element is a program.
14:36 frettled s/some /some more /
14:36 frettled that was a lousy explanation
14:37 Woodi man sed: sed [-aEnru] command [file ...]
14:37 Woodi nvm
14:38 Woodi flussence: prove for now is advanced topic for me :) but looks it is time I should look there
14:38 brrt joined #perl6
14:40 Woodi `ls ...` works with prove
14:42 frettled Assuming that you're using bash or sh, using `ls ...` is a lousy way of doing it.
14:42 * jnthn -> airport, o/
14:43 frettled Woodi: compare the output of: echo `ls t/*`     with     echo t/*
14:43 Woodi echo is advanced sysadmin trick in case /bin disappear :)
14:43 frettled no
14:44 frettled The "echo" is there as an advanced programming trick to show you that the output of: ls t/*   and the glob t*
14:44 frettled t/* are the same
14:44 moritz thing is, it's the shell that expands the t/*
14:44 moritz so perl doesn't even see it
14:44 frettled Feel free to do: ls `ls t/*` instead
14:44 moritz it just sees the list of files
14:44 frettled yup
14:44 frettled or to be more accurate, perl just sees a list of arguments
14:44 frettled space-separated
14:45 Woodi I wanted just list of files
14:45 frettled Then avoid the useless use of "ls" and backticks.
14:45 frettled The shell will expand the asterisk for you.
14:46 frettled (which is what it does for ls anyway)
14:46 Woodi ah, now understand, yes
14:46 goraki joined #perl6
14:46 frettled If you want perl to run once for each file in t/*, you can do it like this (/bin/sh compatible code follows): for f in t/*; do perl $f; done
14:47 Woodi but I wanted to not making loop or xargs things
14:47 moritz well, you can't expect mind reading from your computer
14:47 moritz it operates by rules
14:48 moritz ok, you *can* expect mind reading, but you'll be disappointed
14:48 frettled You can add a small pause and debugging output if you like (I like that): for f in t/*; do date +"%F %T $f start"; perl $f; date +"%F %T $f end, sleeping 2 seconds"; sleep 2; done
14:48 alim joined #perl6
14:51 Woodi work nice :)
14:51 alim_ joined #perl6
14:54 fgomez joined #perl6
15:01 NamelessTee joined #perl6
15:01 alim joined #perl6
15:02 Woodi anyone have problems with ufo ? for me make 'don't know how to make blib/lib/...' and gmake how to do 'gmake test'. but maybe it is OpenBSD specific...
15:04 alim_ joined #perl6
15:15 alim joined #perl6
15:16 aloha joined #perl6
15:16 preflex joined #perl6
15:16 mikec_ joined #perl6
15:16 jnthn joined #perl6
15:17 araujo joined #perl6
15:17 Celelibi joined #perl6
15:18 preflex joined #perl6
15:27 cognominal joined #perl6
15:29 alim joined #perl6
15:33 [Coke] I see that ufo has lots of `stuff` in it, so it doesn't surprise me if something isn't quite right on openbsd vs. linux.
15:33 [Coke] can you give a specific example of what's not working?
15:35 hundskatt joined #perl6
15:43 sorear good * #perl6
15:44 felher Hm, i can do '$!priv-attribute = 3' in a BUILD-submethod. How do i initalize a public attribute? '$.pub-attribute = 3' doesn't seem to work :)
15:44 felher o/
15:45 sisar while running spectest, i get "t/spec/S03-operators/overflow.rakudo ......... Failed 28/98 subtests".
15:46 * sorear waves to colomon
15:46 colomon \o
15:47 colomon sorear: fixed my bug
15:50 sorear felher: Exact same way.
15:51 sorear felher: $!foo accesses attributes, period.  Doesn't matter if they are public or private.
15:51 sorear colomon: yay
15:52 s1n joined #perl6
15:53 felher sorear: ah, makes sense. Big thnx :)
15:53 colomon sorear: I do have a potential bug for you, from going over the tests yesterday
15:54 Woodi [Coke]: gmake test: env PERL6LIB=/blib/lib:/lib: perl6 --target=pir... and gmake test: Could not find Simple::Redis in any of: /blib/lib, /lib,... make just 'don't know...'
15:54 Woodi be later
15:54 colomon n: say "f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ <ident> /
15:54 p6eval niecza v17-11-g81d7b36: OUTPUT«#<match from(3) to(4) text(o) pos([].list) named({"ident" => #<match from(3) to(4) text(o) pos([].list) named({}.hash)>}.hash)>␤»
15:54 colomon n: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ <ident> /)
15:54 p6eval niecza v17-11-g81d7b36: OUTPUT«o␤»
15:55 colomon r: say ~("f fo foo fooo foooo fooooo foooooo" ~~ m:3rd/ <ident> /)
15:55 p6eval rakudo ce2fa3: OUTPUT«foo␤»
15:55 colomon sorear: I'm pretty sure rakudo's right on this one.
15:58 Chillance joined #perl6
15:59 Chillance joined #perl6
16:07 Chillance joined #perl6
16:07 sorear heh heh heh.
16:10 moritz p6: say ('f fo foo fooo' ~~ m:rd(3) / \w+ /).Str
16:10 p6eval rakudo ce2fa3: OUTPUT«foo␤»
16:10 p6eval ..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤    unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib';␤    eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** Can't locate P…
16:10 p6eval ..niecza v17-11-g81d7b36: OUTPUT«o␤»
16:11 moritz p6: say ('f fo foo fooo' ~~ m:rd(3) / \w+: /).Str
16:11 p6eval rakudo ce2fa3: OUTPUT«foo␤»
16:11 p6eval ..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤    unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib';␤    eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** Can't locate P…
16:11 p6eval ..niecza v17-11-g81d7b36: OUTPUT«o␤»
16:11 moritz does niecza backtrack two times, and take the second
16:11 moritz erm
16:11 colomon moritz: I played around with this a bunch yesterday.  Niecza gives f as 1st match, fo as second match, and o as the third match
16:12 moritz and take the third result as :3rd?
16:12 sorear yes, I'm fixing that now
16:12 colomon like it's starting the next match from   from+1 rather than to+1
16:12 colomon sorear++
16:12 sorear exactly
16:12 sorear actually I already fixed it, I'm just checking the build before pushing
16:12 moritz it should only do that if the previous match was zero-width
16:13 SHODAN joined #perl6
16:22 sorear ENODALEK
16:22 moritz ah, feather had some down time
16:22 moritz how does one restart dalek?
16:23 sorear I'm checking in
16:23 sisar who has access to phenny ?
16:23 sorear is feather2 currently running a screen?
16:24 moritz yes, one for hugme
16:24 moritz under my user
16:24 sorear how is p6eval running?
16:24 moritz in a screen on feather3
16:25 sorear oops, I meant f3
16:25 moritz (user p6eval)
16:25 adu joined #perl6
16:26 Vlavv` joined #perl6
16:26 spider-mario joined #perl6
16:27 mikemol joined #perl6
16:27 sorear moritz: do you remember anything about how perlbrew was set up on f3?
16:28 NamelessTee joined #perl6
16:29 [Coke] Woodi: how did you get to that step? ufo doesn't have a makefile, right? I presume you're running ufo somewhere else?
16:31 moritz sorear: no
16:31 moritz except "by me"
16:31 dalek joined #perl6
16:32 sorear dalek should be operational now
16:32 sorear p6: say ('f fo foo fooo' ~~ m:rd(3) / \w+ /).Str
16:32 p6eval rakudo ce2fa3: OUTPUT«foo␤»
16:32 p6eval ..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤    unshift @INC, '/home/p6eval/.cabal/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib';␤    eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime::Match::HsBridge'␤"␤*** Can't locate P…
16:32 p6eval ..niecza v17-11-g81d7b36: OUTPUT«o␤»
16:32 sorear ENOTYETREBUILT
16:33 sorear evalbot rebuild niecza
16:33 p6eval OK (started asynchronously)
16:33 corburn joined #perl6
16:38 TimToady masak: yes, I'm thinking about in my hindbrane, but must $job today, so it'll have to stay there.  I am thinking that assuming *%_ is the wrong solution to the right problem though.  We're missing a declarative way to talk about a vertical slice of methods of the same name, and it's not clear how to make a peg for that to hang stuff on yet.
16:39 TimToady afk &
16:42 icwiener joined #perl6
16:51 sorear TimToady: is that maybe actually for me?
16:55 gfldex r: https://gist.github.com/2726387
16:55 p6eval rakudo ce2fa3: OUTPUT«False␤»
16:55 gfldex shoud that work?
16:56 moritz gfldex: you're defining a method outside of any class
16:57 gfldex well, yes and should that work?
16:57 moritz no.
16:57 gfldex can i mixin a method into an enum?
16:57 moritz however should the dispatcher find it?
16:57 moritz that might work, dunno
16:58 gfldex what would be the syntax for that?
16:58 laen0k joined #perl6
16:58 laen0k left #perl6
17:02 moritz r: enum A <b c>; A does role { method foo { 'bar' } }; say A.foo
17:02 p6eval rakudo ce2fa3: OUTPUT«Cannot use 'does' operator with a type object.␤  in sub infix:<does> at src/gen/CORE.setting:10808␤  in block <anon> at /tmp/QjRsekWzhe:1␤␤»
17:02 moritz ok, you can't.
17:03 moritz r: enum A <b c>; A.^add_method('foo', sub ($) { "bar" }); A.^compose; say A.foo
17:03 p6eval rakudo ce2fa3: OUTPUT«bar␤»
17:03 moritz you can always go through the MOP though :-)
17:04 moritz "cheating is technique" -- Quirinius Quirrel, according to E.Y.
17:04 adu MOP?
17:05 gfldex meta object protocol
17:05 moritz Meta Object Protocol
17:05 adu oh I thought that was a lisp thing
17:05 moritz yes, and we steal everything worth stealing :-)
17:06 adu then you should steal Monads from Haskell
17:06 adu or is that what ==> and <== are?
17:06 s1n joined #perl6
17:06 moritz not really
17:07 adu are they closer to map?
17:07 moritz adu: so far I haven't heard a single convincing argument what benefit monads bring in a language that can do IO in a sane way without them
17:07 moritz well, in their current implementation they are closer to map
17:07 moritz but they are meant to be object pipes
17:07 adu moritz: the best argument I've heard is being able to overload ';'
17:08 moritz much like the | pipe in UNIX, but with objects instead of texts (think of powershell...)
17:08 moritz adu: and what's the use case for that?
17:09 adu moritz: from my understanding, <==, ==> are basically do/monad syntax only for the List monad
17:09 adu and I must say I understand Haskell better than <==, ==>
17:10 adu moritz: well, one large class of use case for Monads is parsers, which are not rare in the perl world
17:11 adu The most common monads in the Haskell world are: IO, List, Maybe, Either, State, and GenParser
17:11 sorear the only think I've used monads for in Perl was symbolic calculation of probability distributions
17:12 TimToady <semilist> in the grammar is more or less a list of computations without internal context, so whatever interprets the semilist can make it as monadic as it likes
17:12 adu but anyways, adding monads to Perl6 would be easy even if they aren't builtin, just define a "role Monad" and define infix operators for everything else
17:13 adu so I suppose Perl6 wins in that respect
17:16 adu moritz: but the Maybe and Either monads are the simplest to understand, and the hardest to explain how useful they are. If you use them in your code, then almost all your "if" statements disappear, because they've moved inside Maybe and Either methods
17:17 sorear adu, you're coming at this with too much of a Haskell perspective
17:17 adu agreed
17:17 sorear we do a lot of things differently here.  semipredicates are one of them.
17:17 adu how to I Perl6ify my brain?
17:20 adu or more importantly, should I?
17:20 sorear it'll happen on its own
17:22 adu I think I need more time working with the non-grammar aspects
17:23 adu so far I've only written grammars
17:23 adu sorear: did you see the library I wrote?
17:27 sorear no
17:28 adu https://github.com/andydude/p6-xml
17:29 mdupont joined #perl6
17:33 [Coke] how to use grep with the feed operator?
17:33 [Coke] r: my @a = <that is what he said>; say grep {/a/}, @a;
17:33 p6eval rakudo ce2fa3: OUTPUT«that what said␤»
17:33 [Coke] r: my @a = <that is what he said>; say grep {/a/} <== @a;
17:33 p6eval rakudo ce2fa3: OUTPUT«that is what he said␤»
17:34 moritz adu: thing is, we can do parsing, IO and lists fine without IOs
17:34 moritz erm, without Monads
17:39 [Coke] r: my @a = <that is what he said>; say @a ==>  grep {/a/};
17:39 p6eval rakudo ce2fa3: OUTPUT«that is what he said␤»
17:39 diakopter eh
17:40 moritz r: my @a = <that is what he said>; say @a ==>  grep(/a/);
17:40 p6eval rakudo ce2fa3: OUTPUT«that is what he said␤»
17:40 moritz r: my @a = <that is what he said>; @a ==>  grep(/a/) ==> say();
17:40 p6eval rakudo ce2fa3: OUTPUT«that what said␤»
17:41 diakopter r: my @a = <that is what he said>; @a ==>  grep(/a/) ==> .say();
17:41 p6eval rakudo ce2fa3: OUTPUT«===SORRY!===␤Sorry, do not know how to handle this case of a feed operator yet. at line 1, near " .say();"␤»
17:43 s1n joined #perl6
17:44 grondilu joined #perl6
17:53 [Coke] r: my @a = <that is what he said>; say ( @a ==>  grep {/a/} );
17:53 p6eval rakudo ce2fa3: OUTPUT«that what said␤»
17:53 [Coke] ah. precedence.
17:53 [Coke] Danke.
18:04 s1n joined #perl6
18:08 dalek rakudo/nom: 3b12853 | moritz++ | / (3 files):
18:08 dalek rakudo/nom: first try to move some functionality from Rat to the Rational role. Rather naive.
18:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3b1285367d
18:08 dalek rakudo/nom: 7e239ac | moritz++ | / (2 files):
18:08 dalek rakudo/nom: introduce Uint64, which we need for Rat (to distinguish it from FatRat)
18:08 dalek joined #perl6
18:09 moritz dalek-- swallowed the nice commits by kboga++
18:16 dalek roast: b180875 | moritz++ | S03-operators/autoincrement (2 files):
18:16 dalek roast: rakudo unfudges, kboga++
18:16 dalek roast: review: https://github.com/perl6/roast/commit/b1808759f8
18:22 moritz r: class A { has $.x = 0; method succ { A.new(:x($!x + 1)) } }; say (A.new ... *)[^5].perl
18:22 p6eval rakudo 45679a: OUTPUT«(A.new(x => 0), A.new(x => 1), A.new(x => 2), A.new(x => 3), A.new(x => 4))␤»
18:26 erkan joined #perl6
18:31 hundskatt joined #perl6
18:33 pat_js joined #perl6
18:36 s1n joined #perl6
18:39 adu colomon: hey
18:39 colomon adu: yes?
18:40 adu colomon: what did you mean by ""when" arg assumes more things will become obsolete after Perl 6 comes out"?
18:40 moritz r: say $*PERL<compiler><name>
18:40 p6eval rakudo 45679a: OUTPUT«rakudo␤»
18:40 moritz r: say $*PERL<compiler><version>
18:40 p6eval rakudo 45679a: OUTPUT«Any()␤»
18:40 moritz r: say $*PERL<compiler>.perl
18:40 p6eval rakudo 45679a: OUTPUT«{"name" => "rakudo", "ver" => "2012.05-12-g45679ab", "release-number" => "", "build-date" => "2012-05-18T18:09:24Z", "codename" => ""}␤»
18:41 colomon adu: context?  I don't remember saying that, I fear.
18:42 adu https://github.com/rakudo/rakudo/commit/761d05a257e737e634258431b0e655c56f8c71d6#src/Perl6/Grammar.pm
18:42 colomon oh, two years ago!
18:42 colomon that makes me feel better
18:43 diakopter that sounds like it was in STD.pm at the time
18:43 colomon right
18:43 colomon It's probably TimToady++'s originally
18:43 adu oh ok
18:44 diakopter it might be referring to the 6.0.0 feature freeze
18:44 ponbiki joined #perl6
18:45 colomon I believe the point is that the obs method will continue to be useful even past Perl 6's initial "release".  So you might set $when to be " in Perl 6.1" or something like that.
18:46 adu that makes sense
18:47 adu just wondering
18:47 adu so does "6.0.0 feature freeze" refer to the synposes?
18:48 diakopter some subset of the synopses that represents some consensus of the active/major implementations
18:48 [Coke] at some point, the syn will be tagged with versions, I imagine. we're still on release-candidate-0, I think. ;)
18:49 [Coke] spec+roast.
18:50 moritz phenny: tell tadzik that panda's copy of JSON::Tiny needs the same fixes as upstream JSON::Tiny
18:50 phenny moritz: I'll pass that on when tadzik is around.
18:50 moritz [Coke]: before RC0 even :-)
18:51 Woodi [Coke]: I think make in OpenBSD is BSD make :) just checked on Linux and ufo works great. here parrot and rakudo want me to use gmake for compilation. I do for modules: ufo && gmake && gmake test  and that wants /blib and /lib
18:53 Woodi looks ${PWD} in P6LIB = $(PWD)/$(BLIB)/lib:$(PWD)/lib:$(PERL6LIB) do not work...
18:54 adu macosx includes 3 GNU makes (make, gmake, gnumake) for scripts that think it's BSD make
19:01 Woodi PERL6LIB=`pwd`/blib/lib... is not ideal but work
19:04 Woodi ...but using precompiled modules coredumpes :)
19:05 rindolf joined #perl6
19:05 rindolf Hi all.
19:05 Woodi o/
19:11 moritz p6: say   'a', 'c' ... 'g'
19:11 p6eval pugs: OUTPUT«*** ␤    Unexpected "'"␤    expecting operator, ":" or ","␤    at /tmp/VnwmrSEFXF line 1, column 20␤»
19:11 p6eval ..rakudo 45679a, niecza v17-12-g8b5d5e7: OUTPUT«a c d e f g␤»
19:12 [Coke] does anyone else know what Woodi is trying to do? I apparently missed some early discussion.
19:13 moritz trying rakudo and modules on OpenBSD, it seems
19:14 birdwindupbird joined #perl6
19:14 [Coke] moritz: ... ok that is also vague. ah well. I can't even try the commands on another box if I don't know what he's doing.
19:17 s1n joined #perl6
19:21 moritz p6: say (1, 'a' ... *)[^5]
19:21 p6eval pugs: OUTPUT«*** unknown parse error␤    at /tmp/Sx8Tg6sgb7 line 1, column 19␤»
19:21 p6eval ..rakudo 45679a: OUTPUT«1 a -1 -2 -3␤»
19:21 p6eval ..niecza v17-12-g8b5d5e7: OUTPUT«1 a b c d␤»
19:21 moritz p6: say ('a', 1 ... *)[^5]
19:21 p6eval pugs: OUTPUT«*** unknown parse error␤    at /tmp/TEVuL5MEHD line 1, column 19␤»
19:21 p6eval ..rakudo 45679a: OUTPUT«a 1 2 3 4␤»
19:21 p6eval ..niecza v17-12-g8b5d5e7: OUTPUT«Unhandled exception: Cannot parse number: a␤  at /home/p6eval/niecza/lib/CORE.setting line 1379 (die @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3418 (ANON @ 10) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3420 (NumSyntax.str2num @ 4) ␤  at /h…
19:22 sivoais joined #perl6
19:23 NamelessTee joined #perl6
19:29 hundskatt joined #perl6
19:30 sisar r: for ^5 -> $n { say $n**2; }
19:30 p6eval rakudo 45679a: OUTPUT«0␤1␤4␤9␤16␤»
19:30 sisar r: say (^5).map: {$_**2};
19:30 p6eval rakudo 45679a: OUTPUT«0 1 4 9 16␤»
19:31 cognominal http://feather.perl6.nl:3000/list   # oops, cannot connect
19:31 sisar as in the for loop I can alias $n to $_, how do i alias $_ to $n in a map ?
19:32 moritz r: say <a b c>.map: -> $n { uc $n }
19:32 p6eval rakudo 45679a: OUTPUT«A B C␤»
19:32 sisar moritz: thanks !
19:33 cognominal I  suppose panda could get the list directly from :  https://raw.github.com/perl6/ecosystem/master/META.list
19:33 sisar i really love this .map: and .split: style :)
19:35 sisar r: map {$n ** 2 } , (^5) -> $n ;
19:35 p6eval rakudo 45679a: OUTPUT«===SORRY!===␤Variable $n is not declared␤at /tmp/BSSvQBXU7r:1␤»
19:35 sisar umm, if I don't use .map: syntax, how do I set $n ?
19:36 moritz the -> $n thingy is just a signature, and belongs to the block
19:36 moritz so
19:36 moritz r: say map -> $n { $n ** 2}, ^5;
19:36 p6eval rakudo 45679a: OUTPUT«0 1 4 9 16␤»
19:36 sisar moritz: oh
19:36 sisar thanks
19:37 sisar moritz++
19:40 sisar r: my $x = 1, 2, 3;
19:40 p6eval rakudo 45679a:  ( no output )
19:40 sisar why doesn't it complain when I try to assign a list to a scalar ?
19:40 moritz why should it?
19:41 moritz there are two things to consider
19:41 moritz first, you can assign a list to scalar, but you have to watch for precedence
19:41 moritz r: my $x = 1, 2, 3; say $x
19:41 p6eval rakudo 45679a: OUTPUT«1␤»
19:41 moritz r: my $x = (1, 2, 3); say $x
19:41 p6eval rakudo 45679a: OUTPUT«1 2 3␤»
19:41 moritz second, the precende of = depends on the left
19:42 moritz if there's an @, the precedence is looser than the comma. If there's a $, it's tigther
19:42 moritz that allows you to write things like
19:42 moritz my ($a, $b); say $a = 5, $b = 42; say $b
19:42 moritz r: my ($a, $b); say $a = 5, $b = 42; say $b
19:42 p6eval rakudo 45679a: OUTPUT«542␤42␤»
19:43 immortal joined #perl6
19:43 immortal joined #perl6
19:44 sisar hmm, interesting. ok, so when I say my $x = 1, 2, 3; what happens to the 2 and 3?
19:44 sisar it goes to the sink ?
19:44 moritz yes
19:44 moritz we should probably warn about that, but we don't detect it yet
19:45 sisar yes, a warning would be nice
19:49 spaceships joined #perl6
19:50 adu joined #perl6
19:52 sisar r: $_**2;
19:52 p6eval rakudo 45679a: OUTPUT«use of uninitialized variable $_ of type Any in numeric context  in block <anon> at /tmp/uUxfmOEKJJ:1␤␤»
19:52 sisar that gives a different error locally
19:53 sisar it says "use of uninitialized variable $_ of type Any in numeric contextMethod 'message' not found for invocant of class 'Any' "
19:53 moritz the second half looks like an error during error reporting :/
19:54 moritz ah, you run it in the REPL
19:54 sisar yup
19:54 sisar so ?
19:55 moritz that's why we don't see the same problem on p6eval
19:55 moritz but it's a bug that needs fixing
19:55 sisar right, coz p6eval ain't a REPL. Got it.
19:55 moritz r: say ($_ ** 2).WHAT
19:55 p6eval rakudo 45679a: OUTPUT«use of uninitialized variable $_ of type Any in numeric context  in block <anon> at /tmp/eWivcSD3YY:1␤␤Int()␤»
19:56 sisar well it is a REPL upto a first approximation :)
19:56 moritz well, the E part is there
19:56 moritz just R, P and L missing
19:57 moritz unless you count its persistance in the channel here as "looping"
19:57 sisar hehe
19:57 sisar oh, it does print anything until you ask it to
19:57 sisar *doesn't
19:57 sisar right
19:58 sisar so should I report a rakudobug, or are you fixing it right now ?
19:58 moritz please report
19:58 moritz I'm currently trying something else
19:58 moritz (the thing with big fallout :-)
19:58 * sisar can files some bugs in masak's absence, yay !
19:59 sisar moritz++
20:04 sisar reported
20:04 dalek tablets: 1856717 | (Herbert Breunung)++ | docs/appendix- (2 files):
20:04 dalek tablets: first draft explanation what escaping is
20:04 dalek tablets: review: https://github.com/perl6/tablets/commit/1856717eb8
20:04 moritz sisar++
20:05 sisar though many times I just can't think of the right title for the bug
20:07 sisar n: $_ + 2;
20:07 p6eval niecza v17-12-g8b5d5e7: OUTPUT«Use of uninitialized value in numeric context␤  at /home/p6eval/niecza/lib/CORE.setting line 1239 (warn @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 273 (Any.Numeric @ 6) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /tmp/eaBcJkDOkv line 0 (mainli…
20:07 moritz there's an art to summarizing such things
20:07 sisar it doesn't print the whole output, but there is actually a '2' at the end of it !
20:07 moritz 'Internal error message leaking out when getting warnings in the REPL' maybe?
20:08 moritz including full backtraces in warnings seems excessive
20:08 sisar yeah, clearly I need to file more bugreports :p
20:09 sisar moritz: yeah, but is the '2' doing at the end of it. Niecza actually prints the 2 from "$_+2" !
20:09 sisar s/is/what is
20:10 moritz in the REPL?
20:10 sisar yeah
20:10 moritz that's the P part :-)
20:11 sisar does it make sense to actually say the 2 ? coz rakudo doesn't.
20:11 moritz well, one could argue about that
20:11 sisar aye
20:11 moritz should it surpress output just because there was a warning?
20:11 moritz if you phrase it like this, probably not
20:12 Tedd1 joined #perl6
20:21 bluescreen10 joined #perl6
20:22 dalek tablets: 49e414b | (Herbert Breunung)++ | docs/appendix- (3 files):
20:22 dalek tablets: zero-width boundaries are escaped with pipe symbol
20:22 dalek tablets: review: https://github.com/perl6/tablets/commit/49e414b3f7
20:24 sisar /me reported another bug
20:24 sisar huh?
20:24 * sisar reported another bug
20:24 sisar not sure if a duplicate bug exists or not
20:25 dalek tablets: a838b4f | (Herbert Breunung)++ | docs/appendix-a-index.txt:
20:25 dalek tablets: link to the new table of zero-width-boundaries
20:25 dalek tablets: review: https://github.com/perl6/tablets/commit/a838b4f6eb
20:26 bruges_ joined #perl6
20:30 mdupont joined #perl6
20:30 shevy joined #perl6
20:32 shevy are there plants to release perl 6 like perl 5? i.e. you can compile perl 5 from source, without the requirement to have a perl working before (like perl 6 requires right now)
20:33 diakopter shevy: there are multiple implementations.
20:33 sorear I think you might be able to do that with pugs
20:33 diakopter correct
20:33 sorear the bootstrap requirement really annoys me too, and I'd like to make niecza bootstrap-free, but $tuits
20:33 shevy diakopter, one similar to perl 5 too?
20:33 diakopter shevy: similar in what way?
20:34 flussence ...doesn't perl5 bootstrap itself using miniperl?
20:34 moritz it does
20:35 shevy diakopter, I can wget http://www.cpan.org/src/5.0/perl-5.15.4.tar.gz extract it, enter the dir, then start configure with i.e. " ./configure.gnu -Dusedevel -Dstatic_ext='IO Fcntl POSIX',make,make install"
20:35 moritz shevy: niecza doesn't require perl 5 installed, as far as I can tell
20:35 shevy nieczca? sounds like sneezing in polish :D
20:35 sorear flussence: perl5 does not require a precompiled version of miniperl, though.
20:35 shevy https://github.com/sorear/niecza hmm think I found it
20:36 moritz easy to search for :-)
20:36 sorear niecza requires an existing set of niecza dlls to get started (platform independant CIL DLLs, but still binary blobs)
20:36 sisar sorear: you need to add a small audio file with niecza, pronouncing it the way it should be ;-)
20:36 dalek rakudo/strict-numification: c78c85c | moritz++ | src/core/operators.pm:
20:36 dalek rakudo/strict-numification: tiny sequence simplification
20:36 dalek rakudo/strict-numification: review: https://github.com/rakudo/rakudo/commit/c78c85cb15
20:36 dalek rakudo/strict-numification: 09e678f | moritz++ | src/core/ (2 files):
20:36 dalek rakudo/strict-numification: switch to strict numification by default
20:36 dalek rakudo/strict-numification:
20:36 dalek rakudo/strict-numification: also make non-numeric sequences a bit more robust
20:36 dalek rakudo/strict-numification: review: https://github.com/rakudo/rakudo/commit/09e678f678
20:37 sorear Rakudo requires NQP, which, at least pre-bs required a set of PIR files, which might as well be binary blobs
20:37 sorear I don't know what post-bs NQP doezs
20:37 moritz post-bs PIR is even more like binary blobs :-)
20:37 moritz since it contains the serialized SCs
20:37 moritz in base64 :-)
20:59 sisar joined #perl6
21:02 sisar https://twitter.com/#!/nlpnyc/status/203537565335306240
21:03 dalek tablets: e8cbb1e | (Herbert Breunung)++ | docs/appendix-a-index.txt:
21:03 dalek tablets: polish escaping
21:03 dalek tablets: review: https://github.com/perl6/tablets/commit/e8cbb1eb1a
21:05 dalek tablets: 1ae2b33 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt:
21:05 dalek tablets: backlink to pipe escape char
21:05 dalek tablets: review: https://github.com/perl6/tablets/commit/1ae2b33552
21:24 sisar r: $x = 4 + 2i; $x.re = 5;
21:24 p6eval rakudo 45679a: OUTPUT«===SORRY!===␤Variable $x is not declared␤at /tmp/84x34n_Y_a:1␤»
21:25 sisar r: my $x = 4 + 2i; $x.re = 5;
21:25 p6eval rakudo 45679a: OUTPUT«Cannot assign to a non-container␤  in block <anon> at /tmp/PeeJaa8bWJ:1␤␤»
21:26 sisar bah, $x.re should be allowed to be left-hand value
21:27 sisar i mean l-value
21:29 sorear I could do that but Team Rakudo wouldn't like me very much for it
21:29 sisar why ?
21:29 sorear they just killed transparent lvalue substr
21:29 sorear I guess lvalue support is very expensive in the rakudo guts
21:29 sisar :)
21:30 sorear so they wanted substr split into substr and substr-rw
21:30 sisar sorear: you seem a tad angry
21:31 sisar ?
21:32 sorear oh, no, sorry
21:32 sorear not angry at all :D
21:32 sisar :)
21:33 sisar "expensive" in what terms ?
21:34 sisar performance?
21:37 spaceships joined #perl6
21:38 s1n joined #perl6
21:39 corburn joined #perl6
21:41 adu is there a way to use HLL::Compiler from rakudo?
21:41 sorear sisar: yes, expensiveness in terms of performance.
21:41 sorear I could see .re-rw being added to the spec, but that looks ugly.
21:45 cognominal when listening adu about haskell Maybe and reading TimToady okness proposal, I wonder if there is the need of a synthesis. Or maybe okness proposal is the syntesis but flies over my head.
21:45 adu TimToady okness proposal?
21:46 cognominal adu,  https://gist.github.com/1828667
21:48 adu cognominal: thanks
21:48 cognominal .REALLY in this proposal sounds awfully like the Just constructor, except it is nothing like a constructor
21:48 cognominal adu, I am sure you can say something constructive about that proposal.
21:51 adu *still reading*
21:54 diakopter I wonder when the Dictionaries are going to add "Imunna" (short for I'm gonna, short for I'm going to). everybody I know uses it many times daily.
21:55 cognominal mañana?
21:55 sorear it could happen.
21:55 adu cognominal: is OK not in perl6 now?
21:55 sorear a professional linguist friend of mine told me that's where conjugations come from
21:56 sorear people slur auxilliary verbs until eventually they turn into endings
21:56 cognominal adu: I don't think so
21:57 adu cognominal: it sounds like in that table, OK&Nil would be similar to Bool, OK+&Nil would similar to Maybe, and OK+&Nil+ would be similar to Either
21:57 cognominal I am not sure. I don't know much of haskell.
21:59 adu Either is a pair where you're only interested in the right-hand-side, there is a connotation of "ugliness" to the left-hand-side, like error messages and the like
21:59 lichtkind joined #perl6
22:00 lichtkind may i use in a regex just |c without <> ?
22:00 cognominal adu, the okness proposal handles junctions too.
22:01 adu cognominal: remind me what junctions are?
22:02 cognominal S02-bits.pod:1333:    Junction    unordered superposition of data with and/or/one/none
22:02 adu oh
22:03 adu "but"?
22:03 diakopter also, go'head'n (short for go ahead and) - a now-practically-universal prefix on imperative verbs.
22:03 lichtkind adu: for such question we have the glossary http://tablets.perl6.org/appendix-g-glossary.html
22:05 diakopter my cube is near telephone customer service cubes, so I hear "goheadn" about a billion times a day
22:05 adu I suppose I thought those only worked in the regex sublang
22:07 Chillance joined #perl6
22:08 adu do junctions work on types too?
22:09 lichtkind what do you mean
22:09 flussence yes
22:09 adu like "my Str|Int $x"
22:09 lichtkind they work in signatures
22:09 flussence r: sub a(Str|Int $x) { }
22:09 p6eval rakudo 45679a: OUTPUT«===SORRY!===␤Missing block␤at /tmp/wyxauvJMHF:1␤»
22:10 flussence er
22:10 lichtkind i thought so
22:10 flussence std: sub a(Str|Int $x) { }
22:10 lichtkind rakudo doest implement all
22:10 p6eval std 8632387: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Unable to parse signature at /tmp/bPpB9yQFS1 line 1:â�¤------> [32msub a[33mâ��[31m(Str|Int $x) { }[0mâ�¤Couldn't find final ')'; gave up at /tmp/bPpB9yQFS1 line 1:â�¤------> [32msub a(Str|Int [33mâ��[31m$x) { }[0mâ�¤    expecting any of:â�¤  â€¦
22:10 flussence maybe not
22:10 cognominal NYI
22:10 adu one of those future features
22:11 lichtkind samething for perl 6.1 :)
22:11 flussence std: sub a($x where Str|Int) { }
22:11 p6eval std 8632387: OUTPUT«Potential difficulties:â�¤  $x is declared but not used at /tmp/KR8YpsEHTF line 1:â�¤------> [32msub a([33mâ��[31m$x where Str|Int) { }[0mâ�¤ok 00:00 43mâ�¤Â»
22:11 flussence that'll work
22:11 cognominal Also, in the oness proposal, I am surprised that   *.can('REALLY') can return a junction
22:11 cognominal *oknes
22:11 cognominal *okness !!
22:13 adu cognominal: oh
22:13 adu if that's true, then can you implement "OK" if you're returning Any|Nil?
22:16 cognominal adu, I don't know. Probably the okness proposal would make sens to me with some concrete examples and/or test code.
22:16 adu maybe I still don't understand what you mean by junction
22:17 adu do you mean a regex?
22:17 cognominal this is unrelated to regex.
22:17 adu because my only experience with junctions is with grammars
22:19 adu imho, type junctions are something that dynamic languages don't really need
22:19 cognominal This is just a way to shove many values in a scalar without it being an array.
22:19 adu but they are nice
22:20 adu ok I definitely don't understand
22:20 adu I thought you were talking about &, |, ^
22:20 cognominal I am not yet convinced of the necessity of junctions. This is a proposal from Damian Conway, and I am not sure I wrapped my head around it.
22:22 cognominal I mentionned junctions just to be sure you did not miss that dimension in the okness proposal.
22:23 cognominal adu: you can junction any  value, not only type value.
22:24 adu cognominal: yeah, I totally missed it, and I'm still missing it
22:26 cognominal welcome to the club, I noticed it, no more.
22:28 sorear I use junctions.
22:28 sorear Please do not remove them while you are redesigning OKness.
22:29 sorear Actually, please don't touch OKness at all.  It's already completely broken and it needs to be rebuilt by an implementor.
22:29 cognominal sorear, so maybe (no pun intended), you can cast light on the okness proposal.
22:29 cognominal ha, ok :)
22:30 bluescreen10 joined #perl6
22:31 sorear OKness is something that was written a couple months ago; I can't make sense of it, except for 'The compiler shall read the user's mind'
22:33 cognominal joined #perl6
22:37 lichtkind cognominal: junctions are very conviniant to abstract formal logic away
22:37 lichtkind cognominal: you put it in a variable give it nice name and smartmatch against it
22:38 lichtkind its like having good names instead of magic numbers
22:43 cognominal lichtkind, It is yet another way to loop over a bunch of value without saying it?
22:44 lichtkind cognominal: yes but a different way :)
22:44 cognominal that's probably that "different way" that escaped my mind.
22:44 lichtkind :)
22:45 cognominal and still does.
22:45 skids joined #perl6
22:46 lichtkind its like a reciepe
22:47 lichtkind you write a note to your friend please bring timmorow a onion or spinachi pizza
22:47 lichtkind and he prings you onion
22:47 lichtkind which is perfectly fine
22:47 lichtkind the junction was that reciepe
22:48 erkan joined #perl6
22:48 erkan joined #perl6
22:48 leprevost joined #perl6
23:03 Chillance joined #perl6
23:36 lichtkind good night
23:37 whiteknight joined #perl6
23:52 preflex_ joined #perl6
23:59 wknight8111 joined #perl6

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

Perl 6 | Reference Documentation | Rakudo