Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-04-19

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:12 estrabd joined #perl6
00:15 BenGoldberg joined #perl6
01:00 anuby joined #perl6
01:02 Chillance joined #perl6
01:04 pmichaud I'm not too surprised that using QRPA doesn't significantly change parsing speed; the big improvements are in shift/unshift, which the grammar engine doesn't do a lot of.
01:05 fgomez joined #perl6
01:07 japhb_ pmichaud, mostly just push/pop?
01:09 pmichaud yup.
01:09 pmichaud and those aren't significantly different from RPA
01:09 pmichaud https://github.com/perl6/nqp/commit/b13610905d  # ouch, PLEASE don't give QRPA any METHODS!
01:10 pmichaud better is to find the places that are using .push and get them to do nqp::push instead.
01:11 japhb_ I get the feeling there is some miscommunication happening.  There seems to be some confusion throughout the day about .push versus nqp::push, and when each is used.
01:11 japhb_ (That may be an incorrect impression.)
01:12 pmichaud one does .push on higher-level sixmodel-based structures.
01:12 pmichaud one does nqp::push on low-level vm-specific stuff
01:13 pmichaud so, on a QAST node, use .push
01:13 pmichaud on a QRPA PMC, use nqp::push
01:14 pmichaud RPA provided both .push method and nqp::push (vtable) forms, which was okay at the time, but now we really need to be more strict about usage I think.  Also, the vtable form is incredibly slow.
01:14 pmichaud sorry
01:14 pmichaud the vtable form is okay, the method form on a (Q)RPA is incredibly slow.
01:14 pmichaud because it creates an inferior runloop
01:15 * japhb_ wonders if there is some slow in NQP or Rakudo because of .push used on (Q)RPAs
01:15 pmichaud I don't mind if QPRA keeps the METHODS on a very temporary basis to assist with converting, but I don't want them there for long.
01:16 pmichaud (and yes, I see that they were added in a branch, not the master, but I just wanted to point out that they're heading in the wrong direction :)
01:17 pmichaud I don't know if there's some slow in NQP/Rakudo because of .push on (Q)RPAs... I've been trying to eliminate them as much as possible over time.
01:18 pmichaud Obviously they're not all gone, though, if there was a need to add them to QRPA in order to make it work.
01:18 japhb_ .oO( That's one of the duties of project leads: pointing out when things are headed the wrong way ... )
01:19 * japhb_ is not-so-secretly hoping one of the remaining (Q)RPA .push locations turns out to have been a hot spot, and we get a visible win fixing it
01:23 Psyche^ joined #perl6
01:30 [Coke] hacking on release: ! Couldn't find module or a distribution Time::y2038 ()
01:32 [Coke] hurm. might be due to networking issue.
01:33 timotimo pmichaud: thanks very much about the clarification on .push!
01:33 timotimo i'm glad i put the nqp::push changes i made thus far into a branch so that i can now (tomorrow!) salvage them
01:34 timotimo is there a good way to collect places where .push has been called "wrongly"? as in source locations? but maybe not die with a stacktrace, but continue running and collect occurences, so i could fix them in bulk?
01:34 * [Coke] should nto have volunteered.
01:35 timotimo .o(also, if the .push method is incredibly slow, maybe there'll be a bit more improvements to be had still!)
01:42 pmichaud timotimo:  add a METHOD push to QRPA that throws an exception immediately.
01:42 pmichaud and maybe gives a stacktrace that lets you find out where it's being called wrongly.  :)
01:43 pmichaud or, if you want it to keep running, have METHOD push do some sort of logging w/stacktrace and then you'll have them all collected.
01:43 pmichaud there really shouldn't be that many, though.
01:45 timotimo i believe there were a whole bunch in rakudo
01:45 timotimo anyway, i'll see tomorrow.
01:46 pmichaud .push on RPA?
01:46 pmichaud that'd be... interesting.
01:46 pmichaud anyway, again, it's not .push/.pop that are slow on RPA, it's .shift and .unshift
01:46 pmichaud although .push and .pop are definitely slower than nqp::push and nqp::pop
01:47 pmichaud I bet I could benchmark those :-)
01:48 japhb_ :-)
01:53 * colomon has URI working again.
01:54 japhb_ colomon++
01:56 FROGGS_ joined #perl6
01:58 gtodd Europeans - it is too late to be working !! :-)
01:58 diakopter FROGGS_: hey it's lats
01:58 diakopter late
01:59 * gtodd wonders if yoleaux  has TZ time for bed feaures
02:03 labster r: https://gist.github.com/la​bster/aaa720c8659549616cd0
02:03 camelia rakudo 203e3a: OUTPUT«[31m===[0mSORRY![31m===[0m�Two terms in a row�at /tmp/VuMMNiyebU:1�------> [32mhttps[33m�[31m://gist.githu​b.com/labster/aaa720c865954[0m�    expecting any of:�        argument list�        postfix�        infix stopper�        infix or meta-infix�        st…
02:04 labster camelia doesn't like to run gists now?
02:05 labster anyway, that bit of code is mysteriously parsefailing on me with role composition, and I don't know why.
02:05 diakopter labster: it never cohld run private ones I think
02:06 labster oh, right
02:06 DreamingInCode joined #perl6
02:06 lustlife joined #perl6
02:07 labster r: https://gist.github.com/labster/5417609
02:07 camelia rakudo 203e3a: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse class definition�at /tmp/COCPCaaRlw:7�------> [32mmy class IO::Path is Cool does IO::[33m�[31mFileTestable {[0m�    expecting any of:�        scoped declarator�        generic role�»
02:08 [Coke] are we still creating an NQP release at the same time as the rakudo release?
02:10 diakopter have to if it's needed
02:10 diakopter er
02:11 diakopter is that a tautology or a truism
02:11 [Coke] ah, just because we tag a release of nqp doesn't mean we have to require it.
02:13 diakopter yeah, but why bother; nobody uses nqp releases except rakudo downloaders
02:13 labster class nqp::release { has $to if need Ed; }
02:15 labster Okay, if I swap the location of the last two classes in my gist, it works, but neither depends on each other.
02:15 * labster is confused
02:15 * diakopter wonders how many end up using --gen-nqp anyway
02:15 labster I used it once, but then I needed to gen a new parrot anyway.
02:17 diakopter would hou mail me the gist url i can't click links here now
02:18 diakopter nm
02:18 diakopter I can use the  log
02:18 fgomez joined #perl6
02:19 pmichaud [Coke]: standard is to create a release of nqp and use it for the rakudo release, yes.
02:19 pmichaud thus the 2013.04 rakudo release should be using the 2013.04 nqp release.
02:21 [Coke] ok.
02:26 pmichaud https://gist.github.com/pmichaud/5417664  # timings, RPA vs QRPA, and native calls versus METHOD calls
02:27 pmichaud using .push and .pop for RPA is 20x-50x slower than using nqp::push or nqp::pop
02:32 daniel-s_ joined #perl6
02:35 [Coke] "Surely someone has written a script to automate cutting a release". :P
02:35 gdey joined #perl6
02:42 colomon another proto question: is there a way to specify that a parameter may be @ or %?
02:43 [Coke] but not other things that would fit in $ ?
02:44 colomon well, I think anything that allowed those two choices would be okay.
02:49 colomon [Coke]++ # that did it.
02:49 colomon I'm starting to have serious doubts that Algorithm::Diff ever worked...
02:53 japhb_ pmichaud, that level of timing difference is ... scary
02:53 japhb_ Some of the modules seem to have been written speculatively.
02:55 preflex_ joined #perl6
02:57 colomon does if (&keyGen eq &default_keyGen) have a chance of working correctly?
02:57 colomon r: my &a = -> $a { say $a; }; say ~&a;
02:57 camelia rakudo 203e3a: OUTPUT«␤»
03:03 dayangkun joined #perl6
03:08 dayangkun joined #perl6
03:10 [Coke] I do not have permission to upload files to rakudo.org
03:12 xinming joined #perl6
03:14 Chillance joined #perl6
03:15 fgomez joined #perl6
03:16 dalek rakudo/nom: c984cfe | coke++ | docs/ChangeLog:
03:16 dalek rakudo/nom: Updating changelog for release prep
03:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c984cfe0ce
03:16 dalek rakudo/nom: 9dadcf2 | coke++ | docs/release_guide.pod:
03:16 dalek rakudo/nom: label release
03:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9dadcf2d9f
03:16 dalek rakudo/nom: c06a447 | coke++ | docs/announce/2013.04.md:
03:16 dalek rakudo/nom: add new release announcement
03:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c06a44773c
03:16 dalek rakudo/nom: 5566844 | coke++ | tools/build/NQP_REVISION:
03:16 dalek rakudo/nom: [release] bump NQP revision
03:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/556684447f
03:16 dalek rakudo/nom: 88221cf | coke++ | VERSION:
03:16 dalek rakudo/nom: [release] bump VERSION
03:17 japhb_ [Coke], shouldn't the release guide say to push to nqp before rakudo ...?
03:17 dalek nqp: 891075b | coke++ | VERSION:
03:17 dalek nqp: bump VERSION to 2013.04
03:17 dalek nqp: review: https://github.com/perl6/nqp/commit/891075b0b3
03:19 jaldhar joined #perl6
03:19 [Coke] it was stuck due to git branch silliness.
03:19 japhb_ ah
03:20 japhb_ [Coke]++ # April releases!
03:20 japhb_ Who volunteered for Rakudo Star?
03:20 japhb_ (Or am I imagining that?)
03:23 [Coke] no one volunteered for star that I recall.
03:26 tangentstorm so do you need someone to do it?
03:26 [Coke] we don't always do a star release.
03:26 tangentstorm I will do it if you tell me how :D
03:26 tangentstorm oh
03:26 [Coke] tangentstorm: I'm pretty sure it'll be in teh sar repo under something like docs/release_guide.pod
03:27 japhb_ Although there have been enough module fixes in the last couple days that it seems like a good idea, *assuming* we haven't regressed on any.
03:32 tangentstorm so it's supposed to release in 2 days?
03:36 pmichaud anytime between now and end-of-april, but only if there aren't any module failures.
03:36 pmichaud however, it would be good to find/fix the module failures.
03:37 pmichaud I was on the hook for the March Star, and would like to do April, but I'm unreliable for any specific tasks at the moment.  :-(
03:37 tangentstorm 2013-04-18   Rakudo #63 "Albany"             (Coke)
03:37 tangentstorm did you just put your name there by default, [Coke] ?
03:37 pmichaud that's for the compiler, not Star
03:38 pmichaud star's release instructions are at https://github.com/rakudo/star/blob/​master/tools/star/release-guide.pod
03:38 japhb_ tangentstorm, he just did that one.  :-)
03:38 * [Coke] kicks of a test/build... on OSX which has known test failures on spectest. coke starts over on feather.
03:39 tangentstorm oh i missparsed the "star repo" part. :)
03:39 pmichaud Albany++
03:40 * japhb_ has been building the new Rakudo on linux/x86-32
03:41 japhb_ Parrot and NQP built so far, working on CORE.setting
03:42 pmichaud I think I want "Austin" for the 2013.05 release.
03:43 pmichaud in honor of yapc::na 2013, which has a *ton* of Perl 6 related talks, hackathons, and the like.
03:43 pmichaud [Coke]: let me know when it's safe to modify release_guide.pod for that.
03:43 tangentstorm Okay I will volunteer.
03:44 tangentstorm For Star I mean.
03:45 pmichaud [Coke]: did you get permission to rakudo.org yet?
03:46 fgomez joined #perl6
03:46 tangentstorm is it okay if i use emacs instead of vi though? ;D
03:46 labster heresy!
03:46 pmichaud tangentstorm: as long as we don't know about it, yes.  :D
03:47 tangentstorm i'll keep it on the down low
03:48 japhb_ Rakudo built fine, rebootstrapping panda
03:51 Nom- emacs?  pfft ... I use Textmate :
03:51 Nom- :P
03:52 Nom- vim when I have nothing but a terminal
03:52 pmichaud I sometimes use cat(1) as my editor.  :-P
03:53 * japhb_ considers App::EDLIN
03:53 japhb_ ... but only for a moment
03:54 japhb_ panda and my usual modules all installed fine
03:56 labster reinstall and repanda works fine here too.
03:57 [Coke] pmichaud: nope
04:00 pmichaud [Coke]: do you have a public ssh key?
04:00 pmichaud (that I can use to enable login to rakudo.org)
04:00 pmichaud one used with github is fine, fwiw
04:00 * tangentstorm is writing a new kind of editor but will stick with ema--... whatever he's using now...  for the time being :)
04:17 pmichaud afk # sleep
04:19 fgomez joined #perl6
04:22 pmichaud https://gist.github.com/pmichaud/5418133  # slightly better benchmark of RPA vs QRPA and native vs METHOD
04:27 * labster managed to break RESTRICTED.setting while CORE.setting works fine:  Null attribute map for P6opaque in class 'IO'
04:27 [Coke] arglebargle, feather so slooooow
04:27 [Coke] (for spectesting)
04:31 Heather joined #perl6
04:32 Heather hi
04:34 labster hi
04:51 SamuraiJack joined #perl6
04:51 [Coke] WTF is make stresstest?
04:53 [Coke] ah, runs 2 more tests, thank goodness, I can run those 2 by hand.
04:53 moritz spectest + a few files that are known to take very long
05:04 DreamingInCode joined #perl6
05:06 kurahaupo joined #perl6
05:10 Heather how to regex string in % % ?
05:10 Heather r: say '%a%' ~~ /%/w+%/
05:10 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![31​m===[0m�Non-declarative sigil is missing its name�at /tmp/Tl1AmXJcAG:1�------> [32msay '%a%' ~~ /%[33m�[31m/w+%/[0m�    expecting any of:�        postfix�        infix stopper�        infix or meta-infix�        prefix or term�        pre…
05:10 rindolf joined #perl6
05:11 Heather r: say '%a%' ~~ /%/
05:11 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![3​1m===[0m�Unrecognized regex metacharacter % (must be quoted to match literally)�at /tmp/T3rpWFrrrG:1�------> [32msay '%a%' ~~ /[33m�[31m%/[0m�    expecting any of:�        postfix�        infix stopper�        infix or meta-infix�        p…
05:11 Heather r: say '%a%' ~~ /\%/
05:11 camelia rakudo 88221c: OUTPUT«「%」␤␤»
05:11 gtodd joined #perl6
05:11 Heather r: say '%a%' ~~ /\%/w+/
05:11 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![31m===[0m�Two terms in a row�at /tmp/5TRHZQ82Wo:1�------> [32msay '%a%' ~~ /\%/[33m�[31mw+/[0m�    expecting any of:�        postfix�        infix stopper�        infix or meta-infix�        statement end�        statement modifier�        Ã¢â‚¬Â¦
05:11 sorear r: say "this is my %foo%".comb(/\%<(\S+)>\%/)
05:11 camelia rakudo 88221c: OUTPUT«foo␤»
05:12 Heather sorear thank you )
05:12 Heather sorear but what's comb ?
05:12 Heather r: say '%a%' ~~ /\%<(\S+)>\%/
05:12 camelia rakudo 88221c: OUTPUT«「a」␤␤»
05:13 sorear Heather: Extracts all matches, returns them as list of strings
05:13 raiph_ joined #perl6
05:13 Heather sorear I've got it as given pattern when /\%<(\S+)>\%/
05:14 Heather sorear how can I use it there?
05:15 Heather I see, as "$/"
05:16 raiph joined #perl6
05:16 Heather sorear but what if there is a list...
05:16 Heather then @/ ?
05:16 labster still $/
05:17 labster it would have a list in $/[0]
05:17 Heather labster I need to subst all this matches
05:17 Heather labster isn't [0] a first element?
05:17 labster that's a different matter entirely...
05:22 labster why not just run a substitution, like $pattern ~~ s:g/'%' (\S+) '%'/{  foo(~$0)  }/
05:22 Heather labster what...
05:22 Heather is it
05:22 Heather r: say $pattern ~~ s:g/'%' (\S+) '%'/{  foo(~$0)  }/
05:22 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY!​[31m===[0m�Variable '$pattern' is not declared�at /tmp/nTolrB5eav:1�------> [32msay $pattern[33m�[31m ~~ s:g/'%' (\S+) '%'/{  foo(~$0)  }/[0m�    expecting any of:�        postfix�»
05:22 Heather r: say '%a%' ~~ s:g/'%' (\S+) '%'/{  foo(~$0)  }/
05:22 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared routine:�    foo used at line 1��»
05:23 Heather r: '%a%' ~~ s:g/'%' (\S+) '%'/{  say (~$0)  }/
05:23 labster you can't substitute unless it's a container, like $var... raw strings are immutable
05:23 camelia rakudo 88221c: OUTPUT«a␤Cannot modify an immutable value␤  in sub infix:<=> at src/gen/CORE.setting:12888␤  in block  at /tmp/KRosAE5Diq:1␤␤»
05:23 labster tx camelia :)
05:23 Heather r: my $x = '%a%'; x ~~ s:g/'%' (\S+) '%'/{  say (~$0)  }/
05:23 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared routine:�    x used at line 1��»
05:24 Heather r: my $x = '%a%'; $x ~~ s:g/'%' (\S+) '%'/{  say (~$0)  }/
05:24 camelia rakudo 88221c: OUTPUT«a␤»
05:24 Heather r: my $x = '%a% + %b%'; $x ~~ s:g/'%' (\S+) '%'/{  say (~$0)  }/
05:24 camelia rakudo 88221c: OUTPUT«a␤b␤»
05:24 labster r: my $x = '%a%'; $x ~~ s:g/'%' (\S+) '%'/{  uc (~$0)  }/; say $x
05:24 camelia rakudo 88221c: OUTPUT«A␤»
05:25 Heather r: my $x = '%a% + %b%'; $x ~~ s:g/'%' (\S+) '%'/{  subst(~$0, 'zzz')  }/; say $x
05:25 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared routine:�    subst used at line 1. Did you mean '&substr'?��»
05:26 Heather r: my $x = '%a% + %b%'; $x ~~ s:g/'%' (\S+) '%'/{  ("-> ~$0")  }/; say $x
05:26 camelia rakudo 88221c: OUTPUT«-> ~a + -> ~b␤»
05:26 Heather ah
05:26 Heather Cool
05:26 Heather labster thanks !
05:26 labster after the first slash, we have the pattern, which captures \S+ in $0.  the second part is the string to substitute there.  But we're using a block inside a string "{ do stuff() }", to make it do anything.
05:27 [Coke] have kicked off last run of stresstests, but it's not going to finish for another hour. I'll do the final push tomorrow.
05:31 Heather labster it's something awesome )
05:32 rindolf joined #perl6
05:33 Heather labster how to say that string myst start with xxx in regex?
05:33 labster Heather: $string ~~ /^ xxx/
05:34 Heather labster thank you!
05:41 rindolf joined #perl6
05:48 rindolf joined #perl6
05:51 Heather r: say dc("A")
05:51 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared routine:�    dc used at line 1. Did you mean '&lc', '&uc'?��»
05:51 Heather r: say bc("A")
05:51 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared routine:�    bc used at line 1. Did you mean '&lc', '&uc'?��»
05:51 Heather r: say lc("A")
05:51 camelia rakudo 88221c: OUTPUT«a␤»
05:55 rindolf joined #perl6
06:00 cognominal joined #perl6
06:02 sqirrel joined #perl6
06:05 FROGGS_ joined #perl6
06:07 rindolf joined #perl6
06:08 frdmn joined #perl6
06:14 sjohnson joined #perl6
06:19 rindolf joined #perl6
06:25 rindolf joined #perl6
06:31 FROGGS morning
06:32 FROGGS [Coke]++
06:33 rindolf joined #perl6
06:34 odoacre joined #perl6
06:34 kshannon joined #perl6
06:37 rindolf joined #perl6
06:44 Heather I want this https://github.com/potyl/perl-Gtk3-We​bKit/blob/master/examples/browser.pl in perl6 )
06:45 sorear Heather: start with https://github.com/sorear/niecza/blo​b/master/examples/gtk-webbrowser.pl
06:46 Heather sorear it's CLR ...
06:46 Heather sorear I mean I can write it 10 times faster and beautier in F# :D
06:48 rking joined #perl6
06:50 Heather I know I will try servo :D
06:50 awwaiid joined #perl6
06:52 sjn joined #perl6
06:52 rindolf joined #perl6
06:54 TreyRust joined #perl6
06:55 FROGGS .ask jnthn Any objections about giving nqp a bunch of install directories like nqp/vendor/site/home ?
06:55 yoleaux FROGGS: I'll pass your message to jnthn.
06:55 hoelzro haha, yoleaux?
06:55 hoelzro that's hilarious
06:55 hoelzro (also, good morning)
06:59 pupoque joined #perl6
07:00 FROGGS what does it mean?
07:00 FROGGS (also, good morning :o)
07:01 domidumont joined #perl6
07:01 rindolf joined #perl6
07:01 mst it's a pun You Only Live Once
07:01 mst s/pun/pun on/
07:02 FROGGS ahh, thanks mst
07:03 FROGGS just thought it might be more than yolo
07:14 rindolf joined #perl6
07:23 rindolf joined #perl6
07:28 rindolf joined #perl6
07:29 anuby_ joined #perl6
07:34 daxim joined #perl6
07:36 domidumont joined #perl6
07:41 lizmat joined #perl6
07:42 rindolf joined #perl6
07:44 lizmat morning #perl6
07:45 diakopter 'marn
07:46 hoelzro morning
07:54 diakopter heh
07:55 rindolf joined #perl6
08:08 rhr joined #perl6
08:09 rindolf joined #perl6
08:13 tadzik hello
08:18 rindolf joined #perl6
08:21 dpk joined #perl6
08:21 yoleaux joined #perl6
08:35 Heather tadzik hi
08:37 kresike joined #perl6
08:37 kresike hello all you happy perl6 people
08:39 * lizmat is glad that there aren't any unhappy perl6 people around
08:42 skids joined #perl6
08:42 FROGGS *g*
08:42 FROGGS hi all
08:42 labster hi FROGGS
08:44 kresike FROGGS, o/
08:45 FROGGS hi labster, kresike
08:46 lizmat rn: say (a => 1)
08:46 camelia rakudo 88221c, niecza v24-37-gf9c8fc2: OUTPUT«"a" => 1␤»
08:46 lizmat rn: say :a<1>
08:46 camelia niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Excess arguments to gistcat, unused named a␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (gistcat @ 1) ␤  at /home/p6eval/niecza/lib/CORE.setting line 1366 (say @ 7) ␤  at /tmp/9inWGs7rd2 line 1 (mainline @ 3) ␤  at /home/p6eval/ni…
08:46 camelia ..rakudo 88221c: OUTPUT«␤»
08:47 FROGGS rn: say :a(1)
08:47 camelia niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Excess arguments to gistcat, unused named a␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (gistcat @ 1) ␤  at /home/p6eval/niecza/lib/CORE.setting line 1366 (say @ 7) ␤  at /tmp/6cLimTmHeE line 1 (mainline @ 3) ␤  at /home/p6eval/ni…
08:47 camelia ..rakudo 88221c: OUTPUT«␤»
08:47 lizmat I feel that the error in Niecza is correct, and silentness of rakudo in this case is not helpful for beginning Perl 6 rogrammers
08:47 FROGGS hmmm
08:48 FROGGS r: say :a(1).WHAT
08:48 camelia rakudo 88221c: OUTPUT«(Pair)␤»
08:48 FROGGS r: say :a(1).key
08:48 camelia rakudo 88221c: OUTPUT«a␤»
08:48 FROGGS r: say :a(1).kv
08:48 camelia rakudo 88221c: OUTPUT«a 1␤»
08:49 kaleem joined #perl6
08:49 Heather rn: CLR::("System.Console").Write("hi");
08:49 camelia niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: CLR objects may not be used directly in safe mode␤  at /tmp/wbJnhbz1BX line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583) ␤  at…
08:49 camelia ..rakudo 88221c: OUTPUT«[31m===[0mSORRY![​31m===[0m�Combination of indirect name lookup and call not (yet?) allowed�at /tmp/RIRCuVBC1p:1�------> [32mCLR::("System.Console")[33mâ​��[31m.Write("hi");[0m�    expecting any of:�        argument list�»
08:49 lizmat (found this while preparing a lightning talk about Perl 5's fat comma to Perl6' pairs
08:50 * Heather can't use CLR :(
08:51 FROGGS Heather: safe mode
08:51 Heather I see
08:51 Heather but I wonder why CLR ~~ unsafe
08:51 diakopter just because it's too hard to filter out all the possibly destructive ones
08:52 Heather diakopter well, I guess not much harder than in perl
08:52 spider-mario joined #perl6
08:53 FROGGS is somebody aware of nqp's dynamic variables for runtime? I mean, are there any yet available?
08:53 arnsholt NQP has dynamic variables, yes
08:53 FROGGS arnsholt: I know that much :o)
08:54 arnsholt Not sure what you mean by "for runtime"
08:54 FROGGS nqp: say($*OS);
08:54 camelia nqp: OUTPUT«␤»
08:54 FROGGS are there any "installed" ?
08:55 FROGGS nqp: say($?FILES);
08:55 camelia nqp: OUTPUT«Null PMC access in get_string()␤current instr.: '' pc 768 (src/stage2/gen/NQPCORE.setting.pir:355) (src/stage2/NQPCORE.setting:645)␤»
08:56 FROGGS nqp: say($?LINE);
08:56 camelia nqp: OUTPUT«Null PMC access in get_string()␤current instr.: '' pc 768 (src/stage2/gen/NQPCORE.setting.pir:355) (src/stage2/NQPCORE.setting:645)␤»
08:56 FROGGS nqp: say(%*COMPILING<%?OPTIONS>);
08:56 camelia nqp: OUTPUT«␤»
08:56 diakopter nqp-jvm: say($?LINE);
08:56 camelia nqp-jvm: OUTPUT«Lexical '$?LINE' not found␤  in <anon>␤  in <anon>␤  in eval␤  in evalfiles␤  in command_eval␤  in command_line␤  in MAIN␤  in <anon>␤  in <anon>»
09:19 jnthn %*COMPILING exists while things are compiling
09:19 yoleaux 06:53Z <FROGGS> jnthn: Any objections about giving nqp a bunch of install directories like nqp/vendor/site/home ?
09:19 FROGGS hmmm
09:20 skids joined #perl6
09:20 FROGGS jnthn: what I want to do is make v5 installable via panda, and for that it would be handy if there was a nqp-home, which panda could install to
09:21 FROGGS since nqp won't ever load modules from perl6 land
09:27 rindolf left #perl6
09:27 berekuk joined #perl6
09:27 jnthn FROGGS: Is there anything that stops you installing things to the place that Rakudo itself gets installed to?
09:28 jnthn Perl6::Grammar etc. are NQP modules.
09:29 FROGGS jnthn: that is what I do currently, v5's make install does that for example
09:29 FROGGS but I'm not sure how panda chooses the install path
09:33 berekuk joined #perl6
09:37 jnthn FROGGS: Maybe see how perl6-debug gets installed? It must figure out a path not too differently from how you need to...
09:38 tadzik perl6-debug installs to a regular locatin
09:38 Heather left #perl6
09:38 tadzik it's just altering the build process, not the install process
09:38 tadzik altering the install process is not currently possible with panda :(
09:38 FROGGS right: https://github.com/jnthn/rakudo​-debugger/blob/master/Build.pm
09:39 FROGGS and since you use a custom binary, it is not the same like use'ing a module from perl6, which loads nqp-modules
09:39 FROGGS *same as
09:40 jnthn Oh, and panda already knows where to put a binary?
09:40 FROGGS I mean, it is not ideal anyway if a module-author could tell panda that it wants to be installed in a specific location
09:41 FROGGS well, it gets locally made into bin/..., and panda puts all from bin/* into home/bin for example
09:41 jnthn Well, Panda's job is to install Perl 6 modules really, so it's not so surprising installing NQP with it doesn't quite work out...
09:42 FROGGS ya, but I guess we'll need that anyway
09:42 tadzik wouldn't v5 want to be a core-core thing eventually?
09:42 FROGGS there will be other modules which are directly ontop nqp
09:42 FROGGS tadzik: no idea
09:42 tadzik as the last resort we can make panda respect Makefiles again
09:43 tadzik it used to do that. "If there's a makefile, 'make test install' and we're done here"
09:43 FROGGS possible, but not ideal
09:44 tadzik aye
09:44 FROGGS I'd like to see that if I'm not rootish, that panda installs modules to [nqp|perl]/home
09:44 tadzik explain: [nqp|perl]/home?
09:44 * lizmat thinks that v5 is a core core thing now already  :-)
09:44 FROGGS but I dont know how to tell panda that a module (a file) is an nqp module rather than an perl6 one
09:45 tadzik there's no way to tell panda that
09:45 tadzik but!
09:45 tadzik you could adjust CUSTOM_LIB somehow
09:45 tadzik that's what panda uses as an install location
09:45 tadzik but how to do that from inside the installation process, I don't know
09:45 FROGGS subclassing?
09:46 tadzik subclassing what?
09:46 FROGGS the installer class, and overwrite method install, set custom lib, call SUPER...
09:46 moritz EVERYTHING
09:46 tadzik that's one of the ideas
09:46 FROGGS *override
09:46 tadzik that's how Build.pm works I think
09:46 FROGGS ya
09:47 jnthn Well, a .nqp file extension is a good "this is NQP" hint :)
09:47 tadzik "is there a Build.pm? Is it a Panda::Builder? Good, load it and use it instead"
09:47 tadzik haha
09:47 FROGGS and having nqp recognizing nqp/vendor/site/home is not a big deal
09:47 berekuk joined #perl6
09:47 tadzik I'd like to ship panda2 soon
09:47 jnthn I've already changed all the NQP files in the jvm-support branch to be Foo.nqp.
09:47 lizmat nr: say $_:p for 11..20
09:47 camelia niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31​m===[0m��Variable $_:p is not predeclared at /tmp/zm6ZJV_zQt line 1:�------> [32msay [33m�[31m$_:p for 11..20[0m��Unhandled exception: Check failed��  at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) �  at /home/p…
09:47 camelia ..rakudo 88221c: OUTPUT«11␤12␤13␤14␤15​␤16␤17␤18␤19␤20␤»
09:48 FROGGS jnthn: hmmm, but it compiles to bpc anyway, no?
09:48 FROGGS *pbc
09:48 tadzik it's not complete, but maybe someone can either fix the remaining bits, or at least plan ahead for a new architecture
09:48 tadzik (or tell me that the new one is very wrong)
09:48 tadzik it's a least a lot less painful to reuse
09:48 lizmat nr: say $_ :p for 11..20
09:48 camelia rakudo 88221c: OUTPUT«[31m===[0mSORRY![31m===[0m�You can't adverb that�at /tmp/fAmrvfd7eE:1�------> [32msay $_ :p[33m�[31m for 11..20[0m�    expecting any of:�        pair value�»
09:48 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![​31m===[0m��You can't adverb that at /tmp/MZUDT_IvnT line 1:�------> [32msay $_ :p[33m�[31m for 11..20[0m��Unhandled exception: Check failed��  at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) �  at /home/p6eval/niec…
09:48 FROGGS tadzik: is there a roadmap, or at least some doc that tells what's missing?
09:48 tadzik FROGGS: no, there's just a 90%-working code on my laptop
09:48 FROGGS k
09:49 tgt joined #perl6
09:49 tadzik I think only the bootstrap is not working
09:49 tadzik or maybe the installer itself too ;)
09:49 FROGGS tadzik: just spit it out to github :o)
09:49 FROGGS and lizmat, don't use smilies in code :P
09:50 jnthn FROGGS: Yes, true.
09:50 FROGGS jnthn: and I installed these, not the nqp's
09:51 jnthn FROGGS: May want both so the .pbc can be re-created in the future, just as we do with Perl 6 modules
09:51 FROGGS jnthn: ya, good point
09:52 FROGGS so if panda would decide about the install location depending of the filename *before* compilation, it would work
09:53 FROGGS or we have to create special module-subdirs like nqp-blib and perl6-blib :o)
10:20 * lizmat suddently notices that S02 talks about "fatarrow" rather than "fat comma"
10:21 lizmat fat comma seems to be a more common term than fatarrow.
10:21 lizmat Does anybody know why TimToady used "fatarrow" rather than "fat comma" ?
10:22 moritz it's not a comma anymore in Perl 6
10:22 FROGGS r: my %h = 1, 2; say %h
10:22 camelia rakudo 88221c: OUTPUT«("1" => 2).hash␤»
10:22 FROGGS r: my %h = 1 => 2; say %h
10:22 camelia rakudo 88221c: OUTPUT«("1" => 2).hash␤»
10:23 FROGGS looks like it is still commaish
10:23 FROGGS at least when assigning to a hash
10:24 Timbus :I thats because it is a hash. which contains pairs
10:24 moritz but not in other contexts
10:25 moritz foo(a => 1) is totally different from foo('a', 1)
10:25 FROGGS well, that is the same in perl5
10:25 FROGGS you need to assign %var = @_ to get a hash
10:26 moritz in p5 it's the same, but in p6 it's totally different
10:26 moritz and afaict lizmat asked about S02
10:26 lizmat indeed… this is not about functionality, but nomenclature
10:27 lizmat so: consensus is that "fat comma" is Perl 5, whereas "fatarrow" is Perl 6?
10:27 jnthn The semantics/meaning are different, and imho highlighting that through a different name is a good idea.
10:27 tadzik I think fat arrow makes more sense, because fat comma... isn't a comma
10:28 FROGGS and => doesnt look like a comma at all :o)
10:28 tadzik my point exactly :)
10:28 huf it does if you're high on perl5 :)
10:28 lizmat well, that's what "=>" is called in Perl 5
10:28 huf but yeah, dont call it that ;)
10:28 tadzik .u comma
10:28 yoleaux U+002C COMMA [Po] (,)
10:30 lizmat .u arrow
10:30 yoleaux U+02C2 MODIFIER LETTER LEFT ARROWHEAD [Sk] (Ë‚)
10:30 yoleaux U+02C3 MODIFIER LETTER RIGHT ARROWHEAD [Sk] (˃)
10:30 yoleaux U+02C4 MODIFIER LETTER UP ARROWHEAD [Sk] (Ë„)
10:30 lizmat no fatarrow yet
10:31 tadzik .u front-facing baby chick
10:31 yoleaux U+1F425 FRONT-FACING BABY CHICK [So] (🐥)
10:31 huf dammit, not another one
10:31 lizmat .u camel
10:31 yoleaux U+1F42A DROMEDARY CAMEL [So] (🐪)
10:31 yoleaux U+1F42B BACTRIAN CAMEL [So] (🐫)
10:31 tadzik .u side-facing baby chick
10:31 yoleaux No characters found
10:31 lizmat no camelia  :-(
10:32 tadzik .u back-facing baby chick
10:32 yoleaux No characters found
10:32 tadzik stupid. Why is there front-facing then
10:32 diakopter .u onion
10:32 yoleaux No characters found
10:32 tadzik perhaps PILE OF POO was more necessary
10:34 cxreg joined #perl6
10:34 FROGGS hehe
10:36 tadzik I mean, onions? Eww, gross.
10:38 sqirrel joined #perl6
10:41 FROGGS .u Peril
10:41 yoleaux No characters found
10:41 FROGGS .u Geek
10:41 yoleaux No characters found
10:42 FROGGS had expected 'U+04FC OILY HAIRED FAT GEEK [Po]'
10:43 FROGGS .u chick
10:43 yoleaux U+1F414 CHICKEN [So] (🐔)
10:43 yoleaux U+1F423 HATCHING CHICK [So] (🐣)
10:43 yoleaux U+1F424 BABY CHICK [So] (🐤)
10:45 SamuraiJack_ joined #perl6
11:02 PacoAir joined #perl6
11:03 SamuraiJack__ joined #perl6
11:17 FROGGS joined #perl6
11:18 woosley joined #perl6
11:26 shinobicl joined #perl6
11:30 SamuraiJack joined #perl6
11:38 tgt joined #perl6
11:52 drbean joined #perl6
11:54 FROGGS .ask TimToady Should the grammar switch to Peril5 too if it detects a 'use 5.10', rather just for a 'use v5' ?
11:54 yoleaux FROGGS: I'll pass your message to TimToady.
11:57 nwc10 Peril 5 :-)
11:59 * mst dons his Peril Sensitive Sunglasses
12:00 lizmat it's just the German's way of pronouncing Perl
12:00 amkrankruleuen joined #perl6
12:00 amkrankruleuen joined #perl6
12:01 timotimo personally, i pronounce it "pörl"
12:02 * lizmat says purl
12:02 lizmat which in Dutch is the same as pörl in German (or close to it, anyway)
12:03 timotimo i'm convinced they end up sounding the same, yeah
12:06 drbean joined #perl6
12:08 frdmn joined #perl6
12:10 LylePerl joined #perl6
12:12 Patterner germans shout "PÖRL!"
12:12 lizmat unless they live in Perl, we found out
12:14 timotimo is there documentation on how to manipulate stage0?
12:16 moritz make bootstrap-files
12:16 timotimo is it that easy? :)
12:16 lizmat rn: my $a= 'foo'; my $b= :$a; say $b.WHAT
12:16 camelia rakudo 88221c, niecza v24-37-gf9c8fc2: OUTPUT«(Pair)␤»
12:17 timotimo moritz: either i'm not doing it right or i miscommunicated what i wanted to do
12:17 lizmat rn: my $a= 'foo'; my $b= :$a; say $b
12:17 camelia rakudo 88221c, niecza v24-37-gf9c8fc2: OUTPUT«"a" => "foo"␤»
12:17 timotimo in my source code for nqp i removed the method versions of the QRPA push and friends, but it's still being used in the stage0
12:17 timotimo i suppose i'll have to put the methods back, compile a full nqp and then recreate the bootstrap files to not use the method forms any more?
12:18 jnthn Correct.
12:18 moritz unless you want to edit several dozen thounds lines of PIR code :-)
12:19 timotimo i would prefer not to have to do that :)
12:21 jnthn Another thing maybe worth checking: that you can build Rakudo on Parrot with the latest jvm-support branch. It works for me; I'd apprecaite a check of it from a non-Windows platform.
12:26 nwc10 NQP revision 2013.04 required (currently 2013.03-77-g635e421).
12:26 nwc10 last I checked earlier today
12:26 jnthn grr
12:26 nwc10 IIRC before that the spectest was exploding quite spectacularly
12:27 moritz echo 2013.03-77-g635e421 > nqp/tools/build/NQP_REVISION # to shut up the version check
12:27 nwc10 I didn't say - I assumed it was in hand, or a spurious thing to say
12:27 jnthn Odd, I got a working Rakudo out of it.
12:28 nwc10 me repeats
12:28 nwc10 ^/
12:28 jnthn I guess an NQP release has been tagged now, though, so I'm keen to merge it soon.
12:28 [Coke] tagged. need privs to upload to rakudo.org
12:28 jnthn (Though gotta do $dayjob stuff for the next hours...)
12:28 nwc10 moritz: it's not that
12:28 moritz [Coke]: need a public SSH key for that
12:29 nwc10 hell Pm
12:29 moritz [Coke]: I can give you access when I know your pubkey
12:29 nwc10 moritz: s!nqp/!
12:29 nwc10 gah
12:29 nwc10 moritz: s!nqp/!! I think
12:30 * nwc10 blames the network
12:30 moritz nwc10: depends on your directory layout
12:30 nwc10 it can't be the beer :-)
12:32 shinobicl left #perl6
12:32 amkrankruleuen joined #perl6
12:32 amkrankruleuen joined #perl6
12:34 [Coke] moritz++
12:34 [Coke] release files uploaded.
12:36 pmichaud Coke++
12:36 pmichaud good morning, #perl6
12:36 moritz good am, pm
12:36 jnthn o/ pmichaud
12:37 jnthn pmichaud: On the .push thing, NQP on JVM actually supports it by declaring an NQPArray type with the VMArray REPR.
12:37 jnthn pmichaud: It has a method push($x) { nqp::push(self, $x) }
12:37 dalek rakudo/nom: de2080d | pmichaud++ | docs/release_guide.pod:
12:37 dalek rakudo/nom: Propose "Austin" for the 2013.05 release name.
12:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/de2080dec3
12:37 jnthn pmichaud: So no nested runloop.
12:38 jnthn pmichaud: Anyway, that's why I didn't end up removing all of them in the porting work.
12:38 [Coke] email sent.
12:39 [Coke] (ah, much easier to *announce* compiler releases, anyway.)
12:40 pmichaud jnthn: no problem.   do you agree that we'd still be better of with nqp::push for the vm-level objects, though?
12:40 * [Coke] snickers at his tired self from last night.
12:40 [Coke] "* various optimizations in the optimizer and the runtime
12:40 [Coke] optimizations!? in the OPTIMIZER!? WHAT IS GOING ON!?
12:41 pmichaud in other words, the note about optimizations to the optimizer is sub-optimal.
12:41 pmichaud :-)
12:41 jnthn pmichaud: Well, it'll be faster to use nqp::push
12:41 pmichaud jnthn: right.
12:41 jnthn pmichaud: Other thing we need to be careful with these days: the nqp::push_[sin]
12:41 pmichaud and in parrot's case, a lot faster :-)
12:42 jnthn pmichaud: Parrot's QRPA has coercive semantics.
12:42 jnthn pmichaud: 6model semantics are constraining. That is, you can do nqp::push_s on an nqp::list_s, not on an nqp::list.
12:43 pmichaud I don't think there's much code where we use push/unshift to coerce a native value.
12:43 pmichaud most of the stuff written with nqp::push pre-dates the natives work
12:43 moritz .oO( push'in now is a [sin] )
12:44 jnthn pmichaud: Yeah, it's not a huge issue, just one of those places where you can write code that works on the Parrot backend at the moment, but that will fail in JVM land.
12:44 jnthn There's plenty of stuff you can do the other way round, mind...
12:44 jnthn nqp: say(42.HOW.name(42))
12:44 camelia nqp: OUTPUT«Can only use get_how on a SixModelObject␤current instr.: '' pc 43 ((file unknown):40) (/tmp/DsDfb0thPj:1)␤»
12:44 jnthn nqp-jvm: say(42.HOW.name(42))
12:44 camelia nqp-jvm: OUTPUT«BOOTInt␤»
12:44 jnthn :)
12:44 pmichaud eventually I suspect we'll be able to tighten these things up a fair bit.
12:44 jnthn *nod*
12:45 nwc10 jnthn: http://pasta.test-smoke.org/484
12:45 jnthn wtf...
12:46 moritz [Coke]++ # rakudo release
12:46 jnthn nwc10: Thanks, will see if I can reproduce this evening :)
12:47 nwc10 jnthn: exmaple http://pasta.test-smoke.org/485
12:48 pmichaud I'm building nqp-parrot from the jvm branch now, will test rakudo on it in a bit.
12:48 pmichaud (have to wait to clone the gargantuan parrot repo first)
12:48 SamuraiJack joined #perl6
12:48 nwc10 jnthn: also http://pasta.test-smoke.org/486
12:49 nwc10 surely you already have a clone of that?
12:49 jnthn nwc10: Curious. I don't have an immediate guess of what that's about...
12:50 nwc10 me neither :-)
12:50 tadzik oh, apparently I contributed to Rakudo this month :)
12:51 pmichaud oh, apparently I didn't.  :)
12:51 jnthn Both Carl Masak *and* Carl Mäsak contributed too... :)
12:51 * lizmat thinks an honorary mention would be in place
12:51 jnthn .oO( But we all know they's a bunch of clones... )
12:52 pmichaud perhaps masak++ has also been upgraded to an entangled form of existence?
12:53 pmichaud bbiab
12:54 mtk joined #perl6
12:55 moritz of six clones one two have contributed to rakudo? :-)
12:55 * diakopter read that as clowns
12:56 LylePerl joined #perl6
12:56 colomon far more than two clowns have contributed to rakudo!
12:56 tgt joined #perl6
12:57 lizmat some of them even twitter
12:57 pmichaud pmiclown, clownomon, carlown masak, moritz clownenz, and jnthn
12:59 moritz I mean masak clones, of course :-)
12:59 lizmat n: my %foo = (:a<1>,:b<2>); say %foo.val("a")
12:59 camelia niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Unable to resolve method val in type Hash␤  at /tmp/otiOJ1cOfB line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583) ␤  at /home/p…
13:00 * lizmat wonders what %foo<a> desugars to for instructional purposes
13:00 moritz at_key in rakudo
13:00 pmichaud %foo<a>  is   %foo.{'a'}
13:00 jnthn %foo.postcircumfix:<{ }>('a')
13:01 lizmat thanks!
13:01 moritz and for a single key, the postcircumfix then re-dispatches to at_key
13:01 kaleem joined #perl6
13:02 [Coke] jnthn: we need to update the toolto fold carl back into a single person.
13:03 [Coke] ... because who is in their right mind when cutting a release to check that. Grumblefutz.
13:03 pmichaud release_guide, item 5:  Please check the result manually for duplicates and other errors.
13:03 kaare_ joined #perl6
13:04 pmichaud :-P
13:04 LylePerl_ joined #perl6
13:04 lizmat for instructional purposes, I was hoping this would have worked:
13:04 lizmat rn: my %foo = (:a<1>,:b<2>); say %foo.at_key("a", p => 1)
13:04 camelia niecza v24-37-gf9c8fc2: OUTPUT«Unhandled exception: Excess arguments to Hash.at_key, unused named p␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (Hash.at_key @ 1) ␤  at /tmp/DRhg3WkuPS line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/…
13:04 camelia ..rakudo 88221c: OUTPUT«1␤»
13:05 [Coke] pmichaud: in my defense, I feel asleep accidentally at least twice while trying to cut the release last night. :|
13:05 lizmat I think I'll use that nonetheles, for instructional purposes (lightning talk about adverbial pairs coming up at DPW)
13:05 jnthn lizmat: :p is an argument to postcircumfix:<{ }>. at_key is specifically for getting *one* key.
13:05 lizmat I get that
13:06 jnthn lizmat: The idea is that if you're implementing your own hashish types, you only need implement at_key
13:06 lizmat but for Perl 5 people,  postcircumfix:<{ }> is very scary
13:06 lizmat aha, ok, good to know
13:06 timotimo so many invocations to replace ... :|
13:06 moritz hashish types? :-)
13:06 lizmat plenty of those in Amsterdam  :-)
13:06 jnthn *lol*
13:06 lizmat and don't even start about hashish pipes!
13:06 jnthn Didn't mean *that* :P
13:07 jnthn lizmat: But it's very general syntax
13:07 jnthn lizmat: But yeah, you don't normally ever write that.
13:11 LylePerl_ hi
13:11 lizmat agree, but Perl 5 people need to hang something to hang new concepts on
13:12 LylePerl_ Some of you are probably aware that jnthn and masak come to Bristol last year to give a Perl6 talk and workshop
13:12 timotimo hang some hooks on the wall
13:12 LylePerl_ this year our event clashes with YAPC::NA
13:12 LylePerl_ and so masak and jnthn aren't available
13:13 LylePerl_ would anyone else be interested?
13:13 LylePerl_ details of the event are here: http://bristol.itmegameet.co.uk
13:14 snearch joined #perl6
13:17 timotimo oh, damnit
13:17 lizmat alas, I have the same clash  :-(  otherwise I certainly would have come, potentiallly even to give a (beginners) Perl 6 presentation
13:17 timotimo i made some change that causes rakudo to use up all of my ram when trying to parse the core setting
13:17 timotimo and i can't tell what's wrong >_<
13:17 timotimo my diff looks sane, i.E. never turned a shift into an unshift by accident or anything like that
13:18 * jnthn had a nice time at LylePerl_++'s event last year. :)
13:18 pmichaud might be caught in an exception loop
13:18 timotimo oh, damn, that could be
13:18 timotimo how do i figure out such a thing? :(
13:18 jnthn timotimo: Try --ll-exception
13:20 timotimo will that trigger a backtrace if perl6 gets killed by oom? :|
13:20 moritz no, but the reason might be an exception from within the exception handler
13:21 moritz also, exceeding a certain stack frame depth causes an exception
13:21 moritz and then the exception handler needs a call frame
13:21 moritz causing parrot to throw the original exception again
13:22 LylePerl_ we had an open bar after the event last year ;)
13:23 pmichaud https://gist.github.com/pmichaud/5420322   # jnthn, I also get large number of spectest fails when using jvm-support version of Rakudo on Parrot
13:24 jnthn pmichaud: Looks like same set nwc10++ got, give or take
13:24 pmichaud likely.
13:26 diakopter what do you guys think about 2 alc drink tickets per person at the yapc banquet - and those who want to drink more can get tickets from those who have extra
13:27 diakopter [seems to work well at some business events I've been to]
13:28 timotimo jnthn: i'm at 1gb of parrot in my swap now, when will i actually get an exception? >_<
13:29 pmichaud timotimo: I said it *might* be an exception loop.  :-)
13:30 diakopter er, to be clear, "guys" means guy-ettes, too
13:30 jnthn diakopter: Depends, is the alc all like Bud Light? :P
13:30 jnthn .oO( Sir, my water tastes funny... )
13:31 timotimo that's quite a few that fail, but amazingly also a bunch that seem to pass :D
13:31 diakopter http://www.utexas.edu/cee/tcc/down​loadzone/menus/menuBarService.pdf
13:31 diakopter all our drinks are $6, so includes cocktails, it seems
13:31 diakopter note the "premium" beer
13:31 timotimo is list.push(%foo) somehow special for rpa?
13:31 jnthn oh ffs Bud Lite actually is on the list :P
13:31 jnthn I WAS JOKING!!
13:31 diakopter don't worry, I'll bring some Natural Light for you
13:32 * diakopter nudges pmichaud
13:32 jnthn diakopter: Anyway, it sounds sensible.
13:32 diakopter Natural Light is several steps below Bud Light
13:32 * moritz agrees
13:33 pmichaud diakopter: am I being nudged about the alc question?  I don't know if it'll work or not; I tend to be one that doesn't always use my tickets.  :)
13:33 diakopter unfortunately we are clearly prohibited from bringing ANY outside food/drink...
13:33 diakopter to that venue
13:33 diakopter pmichaud: no, the Natural Light reference :)
13:34 * diakopter has never used a ticket...
13:34 diakopter pmichaud: I was just hoping you could back me up on Nat Light's reputation, even if you hadn't had it yourself
13:34 bloonix joined #perl6
13:35 pmichaud diakopter: I don't think I'd ever heard of Natural Light, tbh.  But sure, I suspect its reputation isn't very high.
13:35 diakopter hahaa
13:36 LylePerl_ timotimo: thanks for considering it
13:36 pmichaud 13:31 <timotimo> is list.push(%foo) somehow special for rpa?
13:37 pmichaud shouldn't be special, should be the same as nqp::push(list, %foo)
13:37 pmichaud just be sure that 'list' is really an RPA.  :-)
13:37 pmichaud (or QRPA)
13:41 raiph joined #perl6
13:45 timotimo hm. my @params := $block<placeholder_sig> || ($block<placeholder_sig> := []); - seems so
13:45 kbenson joined #perl6
13:47 nwc10 diakopter: suggest asking the Frankfurt lot what they budgeted, as the paid-for didn't *quite* run out, but it wasn't beer
13:47 diakopter this is cocktails, beer, and wine
13:47 nwc10 that was apfelwein
13:49 colomon cider!
13:49 * colomon starts fantasizing about cracking open that bottle of JK's Scrumpy....
13:50 timotimo --trace doesn't work, does it?
13:50 timotimo probably since the problem occurs before parsing is even finished, so i'd need --meta-trace
13:50 nwc10 aye, cidah!
13:51 frdmn joined #perl6
13:54 rindolf joined #perl6
13:58 raiph joined #perl6
13:59 * nwc10 finds that menu troubing. Heineken has positioned itself as "premium"
14:00 jnthn nwc10: I think premium here means "in a blind test, you would not confuse it with water" :P
14:00 diakopter yeah, probably
14:01 nwc10 mmm yes, I would not fonuse Heineken with water.
14:01 nwc10 I think I'd prefer the water.
14:01 nwc10 assuming that it's potable.
14:01 woosley left #perl6
14:02 nwc10 (we're back to that one)
14:02 nwc10 while we're flogging dead memes, lunch today had tentacles. Chance of contamination with horsemeat - pretty much zilch :-)
14:03 sergot Hi! o/
14:03 sergot Is there any way to fix "failed to load libpcre" problem?
14:03 moritz configure parrot --without-pcre
14:03 sergot Other than --without-pcre (or somelike)
14:03 sergot :)
14:04 moritz fix pcre lookup in parrot :-)
14:04 sergot Oh.. That's not for me I think. :(
14:04 PerlJam sergot: why do you want pcre?
14:04 sergot PerlJam: What is it really for? :P
14:05 sergot PerlJam: I just don't wanted to have any errors like that. :P
14:06 moritz I think deinstalling pcre headers could also make the error go away
14:06 PerlJam then --without-pcre gets rid of that error  :)
14:06 skids joined #perl6
14:06 PerlJam sergot: but pcre isn't needed for NQP or Rakudo to my knowledge, which is why I was asking.
14:07 sergot PerlJam++
14:07 sergot moritz++
14:07 sergot thanks! :)
14:15 kborer joined #perl6
14:17 kresike bye folks
14:20 * PerlJam never sees kresike say anything other than "bye"
14:20 moritz PerlJam: there's a roughly corresponding number of "hello"s :-)
14:21 PerlJam moritz: any other correspondence?
14:21 moritz a bit
14:22 daxim I switched my unicode dingus from fileformat.info to codepoints.net, example page:  http://codepoints.net/U+1F63B
14:22 daxim tell me what you think about it
14:23 * moritz kinda likes it
14:23 pmichaud daxim: first glance -- looks very nice
14:23 pmichaud lots of good detail there
14:27 moritz just misses "follow this character on twitter", and "people who liked this character also liked ..." :-)
14:31 daxim "also mentioned on G+ Fake Unicode Consortium"
14:31 xilo joined #perl6
14:41 kborer joined #perl6
14:42 * lizmat just finished two lightning talks at DPW: "Fat Comma to Adverbial Pairs" and "Is Perl 6 'Perl'?"
14:49 PerlJam lizmat: Is Perl 6 'Perl'?   ;)
14:49 moritz PerlJam: any(True, False)
14:49 lizmat True
14:49 moritz nr: say so any(True, False)
14:50 camelia rakudo de2080, niecza v24-37-gf9c8fc2: OUTPUT«True␤»
14:50 moritz lizmat, rakudo, niecza and me agree :-)
14:50 lizmat BTW, this also goes for Perl 4..5
14:50 lizmat not sure whether Perl 1..3 would be considered Perl nowadays
14:55 [Coke] r: say "{1..6.pick} is the best perl."
14:55 camelia rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.␤»
14:55 [Coke] r: say "{1..6.pick(1)} is the best perl."
14:55 camelia rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.␤»
14:55 PerlJam heh
14:55 [Coke] O_o.
14:55 geekosaur parens?
14:58 lizmat rn: say "{(1..6).pick} is the best perl."
14:58 camelia niecza v24-37-gf9c8fc2: OUTPUT«1 is the best perl.␤»
14:58 camelia ..rakudo de2080: OUTPUT«3 is the best perl.␤»
14:58 * lizmat submits bug
14:58 lizmat :-)
14:59 lizmat n: say "{1..6.pick} is the best perl."
14:59 camelia niecza v24-37-gf9c8fc2: OUTPUT«1 2 3 4 5 6 is the best perl.␤»
15:00 lizmat so why are the parens needed?
15:03 PerlJam to listify the range looks like
15:03 PerlJam (or is that parcelify?)
15:04 [Coke] oh, it's picking -the range- and then stringifying the whole thing.
15:04 [Coke] duh. perljam++
15:04 PerlJam yep
15:04 [Coke] r: say "{1..6.flat.pick(1)} is the best perl."
15:04 camelia rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.␤»
15:04 [Coke] r: say "{1..6.list.pick(1)} is the best perl."
15:04 camelia rakudo de2080: OUTPUT«1 2 3 4 5 6 is the best perl.␤»
15:04 [Coke] now explain that. ;P
15:04 PerlJam flat may suffer the same problem with ranges.
15:05 PerlJam r:  say (1..6.flat).WHAT;
15:05 camelia rakudo de2080: OUTPUT«(Range)␤»
15:06 jnthn 1..6.pick is 1 .. 6.pick
15:07 PerlJam oh, precedence
15:07 jnthn Method calls bind tight.
15:07 PerlJam indeed
15:07 jnthn I find it helpful to always imagine infixes as having spaces around them, even if I don't actually type them.
15:08 PerlJam jnthn++
15:09 PerlJam r: say 1..6.flat
15:09 camelia rakudo de2080: OUTPUT«1..1␤»
15:09 PerlJam I don't get that one.
15:09 Nom- Alrighty... back to seeing what I can do about this rbx nqp compiler :)
15:09 PerlJam r: say 1 .. 6.flat
15:09 camelia rakudo de2080: OUTPUT«1..1␤»
15:09 PerlJam r: say 6.flat
15:09 camelia rakudo de2080: OUTPUT«6␤»
15:09 takadonet joined #perl6
15:11 flussence r: say 6.flat.perl
15:11 camelia rakudo de2080: OUTPUT«(6,).list␤»
15:11 flussence it's effectively 1..(+[6])
15:13 PerlJam ah. interesting.
15:14 flussence that one trips me up a lot... maybe the parser should warn if it sees .. and . consecutively with no punctuation inbetween
15:15 lizmat something that just tripped me up:
15:15 lizmat rn: (say (1..6).pick), " is the best perl."
15:15 camelia rakudo de2080: OUTPUT«2␤»
15:15 camelia ..niecza v24-37-gf9c8fc2: OUTPUT«5␤»
15:16 lizmat just a parentheses open at the wrong place, but no warning that there is a value that just drops on the floor
15:16 daxim .u bottle
15:16 yoleaux U+1F376 SAKE BOTTLE AND CUP [So] (🍶)
15:16 yoleaux U+1F37C BABY BOTTLE [So] (🍼)
15:17 daxim needs moar coke bottle
15:17 lizmat .u coke
15:17 yoleaux No characters found
15:17 daxim .u cola
15:17 yoleaux No characters found
15:17 daxim ☹
15:18 daxim http://www.catb.org/~esr/ja​rgon/html/C/cokebottle.html
15:18 lizmat true, having a character for it, would make it a commodity, and thus useless as a trademark
15:18 lizmat .u camel
15:18 yoleaux U+1F42A DROMEDARY CAMEL [So] (🐪)
15:18 yoleaux U+1F42B BACTRIAN CAMEL [So] (🐫)
15:18 lizmat too bad for O'Reilly  :-)
15:19 daxim PHOTOSHOPPED MONKEY
15:20 tgt joined #perl6
15:22 LylePerl joined #perl6
15:23 awwaiid joined #perl6
15:23 Nom- So correct me if I'm wrong here... NQP compiles into QAST... which the JVM modifications then convert into a string stream which can be parsed by a Java class to create bytecode?
15:24 PerlJam "string stream"?
15:25 Nom- Well, yes... found the java class which parses input which appears to be simple strings... things like "+ class"
15:25 colomon r: say (0..10)[(1, 2, 3, 5, 6, 7).list.item]
15:25 camelia rakudo de2080: OUTPUT«6␤»
15:25 colomon r: say (0..10)[(1, 2, 3, 7).list.item]
15:25 camelia rakudo de2080: OUTPUT«4␤»
15:26 PerlJam Nom-: that doesn't jibe with my mental model, but then I also haven't looked into the details of how things work either  :)
15:27 Nom- fair enough :)
15:27 mattp__ joined #perl6
15:28 Nom- It looks like, based on what I've toyed with so far, I can pretty easily start creating an AST in rbx using the Rubinius::Compiler classes
15:28 Nom- How closely things match is a bit unknown... the compilers are very Ruby centric, but it might be 'close enough'
15:29 masak oh hai, #perl6
15:30 hoelzro ahoy masak
15:30 PerlJam greetings masak \o/
15:30 masak Juerd++ # photoshopped monkey
15:30 masak so, I'm kinda stoked about https://github.com/perl6/mu/​wiki/perl6-workshop-may-2013 -- I hope y'all are, too.
15:31 masak I want to spend parts of the weekend drawing up a more exact agenda for the thing.
15:31 PerlJam http://photoshopmonkeys.com/
15:31 hoelzro I'm pretty excited
15:31 hoelzro what kind of stuff will be covered?
15:32 masak hoelzro: things I know how to explain about programming that I consider worth knowing, filtered through the lens of Perl 6 / Perl 5.
15:32 hoelzro hmm
15:33 masak I expect there to be interesting, deep discussion during those hours, of concepts that we all care about but don't often put into words.
15:33 masak kind of like a live c2.com
15:33 jnthn Nom-: It's a textual format 'cus text is the easiest thing to throw over a boundary. When I have time, I'll probably get rid of it.
15:34 jnthn Nom-: During the cross-comp phase you have a process boundary. Once you self host, that goes away
15:35 Nom- jnthn: Yeah, figured... I wouldn't mind seeing the raw output to see if it's close enough to what I can parse, but i'll be damned if I can work out something that can do that ... scouring makefiles now
15:37 jnthn Nom-: Yeah, I didn't want the epic hassle of generating the bytecode format itself.
15:39 Nom- Is there anything still in that branch which will generate the output which runtime/.../JASTToJVMByecode.java ?
15:40 masak hoelzro: could you elaborate a bit on your "hmm"? it felt like a bit of a drop from "I'm pretty excited". :P
15:41 timotimo here come some embarassing commits
15:41 dalek nqp/qrpa_experiment: af36e92 | (Timo Paulssen)++ | src/ (12 files):
15:41 dalek nqp/qrpa_experiment: search&replace nqp::list -> nqp::qlist; change .push to nqp::push etc
15:41 dalek nqp/qrpa_experiment: review: https://github.com/perl6/nqp/commit/af36e9244e
15:41 dalek nqp/qrpa_experiment: 491eec9 | (Timo Paulssen)++ | src/ (6 files):
15:41 dalek nqp/qrpa_experiment: so many search and replace. probably too many.
15:41 hoelzro well, I'm just hoping to learn some of the neat Perl 6 tricks I occasionally see here =)
15:41 timotimo oh, saved by the bell :D
15:41 PerlJam masak: I'm pretty excited!
15:41 PerlJam masak: hmm!
15:41 PerlJam ;-)
15:41 hoelzro masak: an example of a "thing you know about programming" would be welcome =)
15:41 Juerd masak: :)
15:41 dalek joined #perl6
15:43 FROGGS timotimo: does it still compile?
15:43 masak hoelzro: <masak> I want to spend parts of the weekend drawing up a more exact agenda for the thing.
15:43 FROGGS (and work?)
15:43 masak hoelzro: could you maybe ask me on Sunday? :)
15:43 timotimo FROGGS: nqp compiles, perl6 compiles, but it can't compile the setting (it will spend all its time eating up memory before parsing has finished)
15:43 hoelzro if I remember =)
15:43 masak hoelzro: I have a pretty good idea myself, but I don't want to pre-commit on a bad representation of anything.
15:43 hoelzro fair enough
15:43 timotimo if you're able to figure out where it infiniloops, that would be splendid.
15:43 timotimo and some time in the future, i shall squash all those useless revert commits and friends
15:44 FROGGS timotimo: need to get 'require' done for v5 :/
15:44 timotimo sure.
15:51 masak that said, I'm really happy/flattered that 11 people have signed up just to come to hear me blabber about something unannounced.
15:51 masak if there's something you'd *like* to hear about/discuss/go through, it's definitely not too late to request stuff.
15:52 masak when I teach, I tend to do less of features/syntax, and more of concepts. or rather, the concepts drive the features/syntax.
15:53 lizmat maybe there is a set of Synopses that all people should be familiar with, other than (All) ?
15:54 PerlJam masak: Could you do a complete GEB-esque treament of programming?  ;)
15:54 masak lizmat: I'd say so. S01-S06, and S12. basically all the ones with Apocalypses.
15:55 lizmat ack
15:55 masak PerlJam: even though I have no idea what you mean, that sounds like a nice goal for the day. :)
15:55 rom1504 joined #perl6
15:55 masak PerlJam: are we meant to dress up as Greek demigods and turtles?
15:55 PerlJam that's okay, I'm not sure what I mean either  ;)
15:55 frdmn joined #perl6
15:56 masak or will we alternate between academic treatment of recursion and silly prose?
15:56 PerlJam isn't that what we do everyday anyway?
15:56 lizmat dinner at DPW&
15:56 * masak .oO( with Perl 6, every day is Christmas. with #perl6, every day is GEB. )
15:56 dmol joined #perl6
15:58 [Coke] .u lizmat
15:58 yoleaux No characters found
15:59 masak .u les_miserables
15:59 yoleaux U+005F LOW LINE [Pc] (_)
16:00 yoleaux U+0061 LATIN SMALL LETTER A [Ll] (a)
16:00 yoleaux U+0062 LATIN SMALL LETTER B [Ll] (b)
16:00 sitaktif1 joined #perl6
16:02 takadonet left #perl6
16:05 [Coke] .meow
16:05 yoleaux http://edgecats.net/cats/catselfscare.gif
16:10 masak the bottle noise was an inside job!
16:28 gdey joined #perl6
16:32 awwaiid joined #perl6
16:37 Chillance joined #perl6
16:38 awwaiid joined #perl6
16:44 Nom- blah i'm lost... will look again in the morning :(
16:49 pmichaud timotimo: now that I've had a chance to see the diff, I'm not so sure I want to switch all  $rpa.push(...)  to be nqp::push($rpa, ...), at least not in the NQP sources.  It doesn't read as well.
16:50 pmichaud I think I might live with the .push overhead for non-hotpaths, if only to make the code more p6-ish
17:00 awwaiid joined #perl6
17:08 [Coke] r: https://raw.github.com/coke/p6-lingua-en-​syllable/master/lib/Lingua/EN/Syllable.pm
17:08 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![31m===[0m�Two terms in a row�at /tmp/4Sfco1fWCD:1�------> [32mhttps[33m�[31m://raw.github​.com/coke/p6-lingua-en-syll[0m�    expecting any of:�        argument list�        postfix�        infix stopper�        infix or meta-infix�        st…
17:08 [Coke] (should we allow that to work?)
17:13 tgt joined #perl6
17:15 FROGGS why not?
17:22 moritz maybe we should allow any URLs that return text/plain content type
17:23 japhb_ joined #perl6
17:27 FROGGS and do not exceed X MB
17:27 [Coke] that seems dangerously reasonable.
17:36 dalek v5: 7ae7577 | (Tobias Leich)++ | lib/Perl6/P5 (2 files):
17:36 dalek v5: steal `require`-mechanism from rakudo
17:36 dalek v5: review: https://github.com/rakudo-p5/v5/commit/7ae75778b1
17:46 cognominal joined #perl6
17:52 awwaiid joined #perl6
18:06 SamuraiJack joined #perl6
18:28 labster r: class Foo::One { }; my class Foo is Foo::One { }; class Foo::Two is Foo::One { };
18:28 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![​31m===[0m�'Foo::Two' cannot inherit from 'Foo::One' because it is unknown.�at /tmp/TZ9M7g2JKq:1�------> �»
18:28 labster is that supposed to happen?
18:30 moritz no.
18:34 colomon r: class Foo::One { }; class Foo::Two is Foo::One { };
18:34 camelia rakudo de2080:  ( no output )
18:34 awwaiid joined #perl6
18:34 colomon oooo, funky
18:35 masak what's so oooo funky? :)
18:36 sorear injecting Foo as a class makes rakudo lose the package of the same name
18:37 colomon that.  though I hadn't figured out what was going on with it.  sorear++
18:37 [Coke] r: class Foo::One { }; class Foo is Foo::One { }; class Foo::Two is Foo::One { };
18:37 camelia rakudo de2080:  ( no output )
18:37 masak <hoelzro> well, I'm just hoping to learn some of the neat Perl 6 tricks I occasionally see here =)
18:37 [Coke] even better, it's the 'my'.
18:37 masak hoelzro: oh, I wouldn't rule that out.
18:38 masak hoelzro: "things I know about programming" is fairly tied to "some of the neat Perl 6 tricks you occasionally see here" :)
18:38 colomon oh, does that actually make sense?
18:38 colomon n: class Foo::One { }; my class Foo is Foo::One { }; class Foo::Two is Foo::One { };
18:38 camelia niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![31m​===[0m��Unhandled trait Foo::One for this context at /tmp/FN3PuYDsfX line 1:�------> [32moo::One { }; class Foo::Two is Foo::One [33m�[31m{ };[0m��Unhandled exception: Check failed��  at /home/p6eval/niecza/boot/lib/CORE.setting…
18:38 colomon n: class Foo::One { }; class Foo is Foo::One { }; class Foo::Two is Foo::One { };
18:38 camelia niecza v24-37-gf9c8fc2:  ( no output )
18:38 colomon it's not a bug, it's a feature.
18:39 colomon [Coke]++
18:40 DreamingInCode joined #perl6
18:46 masak hoelzro: it's just that... even Perl 6, cool as it is, is just a substrate. I program in order to make the computer do useful things. and I wouldn't attend an evening course in French "hoping to hear some of the cool French sounds I occasionally hear". :) I would do so in order to be able to talk to the waiter in his own tongue.
18:46 masak if you see what I mean.
18:46 labster Yeah, it's definitely the 'my'.  I was trying to figure out why src/core/IO.pm doesn't compile with perl -c, when the setting builds (ignoring the stub classes, of course).
18:48 labster r: https://gist.github.com/labster/5417609
18:48 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse class definition�at /tmp/ENJUV2W32I:7�------> [32mmy class IO::Path is Cool does IO::[33m�[31mFileTestable {[0m�    expecting any of:�        scoped declarator�        generic role�»
18:48 labster the same bug happens in reverse here.
18:51 colomon n: https://gist.github.com/labster/5417609
18:51 camelia niecza v24-37-gf9c8fc2: OUTPUT«[31m===[0mSORRY![3​1m===[0m��Pathed definitions require our scope at /tmp/VlaOJPYP_u line 1:�------> [32mmy role IO::FileTestable [33m�[31m{ }[0m��Pathed definitions require our scope at /tmp/VlaOJPYP_u line 3:�------> [32m class IO::Handle does IO…
18:51 masak heh, "Pathed".
18:55 awwaiid joined #perl6
18:55 japhb_ .tell daxim re: http://irclog.perlgeek.de/​perl6/2013-04-19#i_6723489 , it's strange that when you mouse over a small glyph image, it zooms without improving resolution (I end up looking at a blur of large pixels).  Otherwise, very nice indeed.
18:55 yoleaux japhb_: I'll pass your message to daxim.
18:57 fgomez joined #perl6
18:58 berekuk joined #perl6
19:02 dalek v5: 69273e3 | (Tobias Leich)++ | Makefile:
19:02 dalek v5: added "make uninstall"
19:02 dalek v5: review: https://github.com/rakudo-p5/v5/commit/69273e3132
19:02 dalek v5: 565c60d | (Tobias Leich)++ | STATUS.md:
19:02 dalek v5: updated STATUS, the QRPA changes can be ignored
19:02 dalek v5: review: https://github.com/rakudo-p5/v5/commit/565c60dce2
19:06 mattp__ joined #perl6
19:14 jnthn If you declare a "my" something it hides anything we may otherwise find via GLOBAL
19:15 FROGGS but is something inherit from a global, even if this something is 'my', this should not affect the global, right?
19:16 supernovus joined #perl6
19:16 jnthn I'm not exactly sure what's happening, or if it's right, but...
19:16 jnthn class Foo::One { }; my class Foo is Foo::One { };
19:16 jnthn The first one installs a GLOBAL::Foo::One for sure.
19:17 FROGGS r: class A { }; my class B is A { }; class C is A { }
19:17 camelia rakudo de2080:  ( no output )
19:17 jnthn The second installs a lexical Foo that hides it
19:17 FROGGS hmmm, so it is about nested namespaces too
19:17 FROGGS so it might be right
19:18 jnthn When you write Foo::One it really means find Foo, .WHO it to get the Stash associated with it, then look up One in that hash.
19:18 FROGGS labster: so doing a my class IO::Path will hide an global IO
19:21 jnthn I originally didn't support my Foo::Bar { } at all as I could see the can of worms it could open, as if packages needed any more of those. Then somebody (probably moritz++) quickly pointed out to me that if I did that, we couldn't declare things like my X::OhNoes { } in CORE.setting.
19:23 jnthn So we got it, and the semantics are that if there's no lexical X already in the declaring scope, it creates one, and then the rest of the path has the usual semantics.
19:30 gdey_ joined #perl6
19:38 FROGGS note to myself: perl5 has an implicit namespace if there is no package declarator
19:41 FROGGS so if it require-s a script, I just have to put its symbols into main::, and lookup these by default
19:49 awwaiid joined #perl6
19:55 diakopter posted my first ever significant-size thing on perlmonks: http://perlmonks.org/?node_id=1029571
20:00 masak diakopter: I enjoyed reading that. thanks.
20:06 Tene diakopter: "flood algorithm"?
20:06 awwaiid joined #perl6
20:08 masak Tene: many people redundantly solving the same problem in different ways.
20:08 masak a kind of Darwinian problem solving.
20:08 Tene Ah.
20:08 masak I think "flood fill" comes from a TimToady SoTO.
20:08 masak the one with cards describing various Perl 6 people.
20:09 flussence I've heard the term "rampaging horde syndrome" used in a similar way... :D
20:11 PerlJam with the CPAN way you get the benefit of darwinism, but you also suffer the tyranny of choice.
20:12 PerlJam it all goes back to the waterbed theory of "language" complexity  :)
20:13 masak my personal solution to the tyranny of choice is: listen to people who know shit. in IRC channels and at conferences. use the modules they enthuse about.
20:13 masak after I started doing that, things got *much* simpler.
20:13 masak but it essentially means that in order to use CPAN well, one has to be a Perl community member.
20:13 PerlJam a very active member
20:14 PerlJam your work-a-day coder who doesn't hang out on IRC is at a severe disadvantage.
20:14 masak yes. they'd have to, like, take a Perl course at Edument or something.
20:14 masak (where I distil the required knowledge and sell it to them at a reasonable price.)
20:15 masak I dunno, I find that a fair deal.
20:17 masak (by which I think I mean, on balance I prefer the darwinism and the tyranny of choice to pre-chewed and pre-vetted)
20:17 PerlJam yeah, I'm pretty much the same.
20:21 PerlJam what would be nice would be some sort of community best practices (I don't know if I mentioned that here or on #perl the other day) that were kept up-to-date by those people who are in-the-trenches using and building stuff.
20:21 PerlJam sort of like cpan-ratings but with more of "use module X because ..." and "don't use module Y because ..."  and a lot of "I use X, Y, and Z because ..."
20:22 masak yeah.
20:22 masak I tend to find that sort of info "between the lines", not online, but at confs, in talks, in the hallway track, and in the pub in the evening.
20:23 PerlJam exactly.  I'd like to bring that out into the open where more eyes can see it  :)
20:24 masak goodspeed.
20:24 masak as with all derived information, the challenge will be to pump tuits into it to keep it up-to-date.
20:24 masak but certainly not impossible; just adequately challenging ;)
20:25 PerlJam yep.
20:25 PerlJam But now it's time for me to attend a talk on ocean going robots
20:25 * PerlJam &
20:28 awwaiid joined #perl6
20:38 yoleaux joined #perl6
20:52 awwaiid joined #perl6
20:57 tgt joined #perl6
21:04 berekuk joined #perl6
21:05 dalek perl6-roast-data: 4995a5f | coke++ | / (4 files):
21:05 dalek perl6-roast-data: today (automated commit)
21:05 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/4995a5fb9d
21:07 mattp__ joined #perl6
21:11 jac50 joined #perl6
21:22 awwaiid joined #perl6
21:22 * masak skims through http://rosettacode.org/wiki/N-queens_problem and decides he dislikes all of the solutions posted
21:23 masak except perhaps the Rascal solution.
21:23 masak all of the other ones contain cruft or take their eye off the ball in some way.
21:41 pupoque joined #perl6
21:48 grondilu_ joined #perl6
21:57 zacts joined #perl6
22:05 felipe joined #perl6
22:08 diakopter http://i.imgur.com/INVnQtp.jpg    just now. ftw-doze
22:09 masak "anything that can crash, will crash as t -> \infty"
22:12 awwaiid joined #perl6
22:26 FROGGS hmmmm, I can't have several v5 scopes atm :/
22:29 * lue never understood why (La)TeX's abbreviation of infinity was infty (as opposed to inf)
22:31 adu_ joined #perl6
22:33 awwaiid joined #perl6
22:33 adu_ how do I prepend to a list?
22:34 flussence @l.unshift
22:34 adu r: say 1 + [2, 3]
22:34 camelia rakudo de2080: OUTPUT«3␤»
22:35 adu r: say [1] ~ [2, 3]
22:35 camelia rakudo de2080: OUTPUT«12 3␤»
22:35 adu r: say [1] _ [2, 3]
22:35 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![31m===[0m�Two terms in a row�at /tmp/EuFz3zi_Gq:1�------> [32msay [1] [33m�[31m_ [2, 3][0m�    expecting any of:�        postfix�        infix stopper�        infix or meta-infix�        statement end�        statement modifier�        stat…
22:35 FROGGS r: say (1, 2).unshift(3)
22:35 camelia rakudo de2080: OUTPUT«Cannot call 'unshift'; none of these signatures match:␤:(Any:U \SELF: *@values, Mu *%_)␤  in method unshift at src/gen/CORE.setting:1461␤  in block  at /tmp/mXJJZARmOd:1␤␤»
22:35 FROGGS r: say Array.new(1, 2).unshift(3)
22:35 camelia rakudo de2080: OUTPUT«3 1 2␤»
22:35 adu r: say [1, 2].unshift(3)
22:35 camelia rakudo de2080: OUTPUT«3 1 2␤»
22:35 FROGGS right
22:35 adu thanks :)
22:36 FROGGS <--- is slow at typing right now
22:36 adu r: say [1, 2].cat([3, 4])
22:36 camelia rakudo de2080: OUTPUT«No such method 'cat' for invocant of type 'Array'␤  in block  at /tmp/HCXARUed6W:1␤␤»
22:36 FROGGS r: say [1, 2] | [3, 4]
22:37 camelia rakudo de2080: OUTPUT«any(1 2, 3 4)␤»
22:37 FROGGS hmmmm, there is an operator for that
22:37 masak 'night, #perl6. see you tomorrow.
22:37 FROGGS night masak
22:37 adu r:say(list([1, 2] & [3, 4]))
22:38 adu r: say(list([1, 2] & [3, 4]))
22:38 camelia rakudo de2080: OUTPUT«all([1, 2], [3, 4])␤»
22:38 FROGGS r: say ([1, 2] | [3, 4]).flat
22:38 camelia rakudo de2080: OUTPUT«any(1, 2, 3, 4)␤»
22:38 FROGGS but I guess there is a nicer way
22:39 FROGGS and you see that this is a junction
22:39 adu yes
22:39 FROGGS r: say ([1, 2] | [3, 4]).flat.WHAT
22:39 camelia rakudo de2080: OUTPUT«(Junction)␤»
22:40 adu r: say [1, 2].push([3, 4])
22:40 camelia rakudo de2080: OUTPUT«1 2 3 4␤»
22:40 adu yey
22:40 FROGGS ahh, of course
22:40 lizmat joined #perl6
22:45 [Coke] rnp: my $a = (1,2,3); say $a.WHAT;
22:45 camelia rakudo de2080, niecza v24-37-gf9c8fc2: OUTPUT«(Parcel)␤»
22:45 camelia ..pugs: OUTPUT«Array()␤»
22:46 [Coke] according to RT #66304, that should be a Seq.
22:46 [Coke] I think that's probably a fossil.
22:47 sorear r: Seq
22:47 camelia rakudo de2080: OUTPUT«Cannot look up attributes in a type object␤current instr.: 'gimme' pc 284714 (src/gen/CORE.setting.pir:125032) (src/gen/CORE.setting:6046)␤called from Sub 'sink' pc 293821 (src/gen/CORE.setting.pir:128675) (src/gen/CORE.setting:6354)␤called from Sub 'MAIN' pc 381 (…
22:47 sorear wat
22:48 sorear I was going to say that I think Seq is gone, but ... this is a new bug?
22:48 sorear r: Sq
22:48 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared name:�    Sq used at line 1��»
22:48 FROGGS r: my $x = Seq
22:48 camelia rakudo de2080: OUTPUT«Cannot look up attributes in a type object␤current instr.: 'gimme' pc 284714 (src/gen/CORE.setting.pir:125032) (src/gen/CORE.setting:6046)␤called from Sub 'sink' pc 293821 (src/gen/CORE.setting.pir:128675) (src/gen/CORE.setting:6354)␤called from Sub 'MAIN' pc 381 (…
22:48 sorear r: &x
22:48 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared name:�    &x used at line 1��»
22:48 sorear r: &Seq
22:48 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![​31m===[0m�Undeclared name:�    &Seq used at line 1. Did you mean 'Seq'?��»
22:48 sorear ah, the Seq type object does not like being sunk
22:49 FROGGS r: Seq.new()
22:49 camelia rakudo de2080:  ( no output )
22:49 diakopter r: &(Seq)
22:49 camelia rakudo de2080: OUTPUT«Cannot look up attributes in a type object␤current instr.: 'gimme' pc 284714 (src/gen/CORE.setting.pir:125032) (src/gen/CORE.setting:6046)␤called from Sub 'sink' pc 293821 (src/gen/CORE.setting.pir:128675) (src/gen/CORE.setting:6354)␤called from Sub 'MAIN' pc 381 (…
22:49 lizmat joined #perl6
22:49 timotimo adu, FROGGS, the operator to concatenate lists is ","
22:50 timotimo r: my @a = 1, 2, 3; my @b = 100000; say (@a, @b).perl
22:50 camelia rakudo de2080: OUTPUT«(Array.new(1, 2, 3), Array.new(100000))␤»
22:50 timotimo r: my @a = 1, 2, 3; my @b = 100000; say (@a, @b).flat.perl
22:50 camelia rakudo de2080: OUTPUT«(1, 2, 3, 100000).list␤»
22:50 diakopter sorear: looks liks you're right
22:50 timotimo r: my @a = 1, 2, 3; my @b = 100000; my @c = (@a, @b); say @c.perl; # see how assigning to a @variable will flatten the list automatically for you
22:51 camelia rakudo de2080: OUTPUT«Array.new(1, 2, 3, 100000)␤»
22:51 diakopter like
22:51 skids joined #perl6
22:52 FROGGS timotimo: ya, and it makes sense :o)
22:52 FROGGS it is just to late...
22:52 timotimo sorry :(
22:52 timotimo i was watching the new doctor who episodes i missed
22:52 adu timotimo: ooooo
22:53 * adu <3 dr.who
22:53 diakopter oh oops didn't see the orig; sry
22:57 adu how do I add properties to a Match object?
22:57 ifimbres joined #perl6
22:57 [Coke] sorear: this is somethin b used to do.
22:57 adu $<name> = … isn't working, I get "Cannot modify an immutable value"
22:58 FROGGS timotimo: I meant it is too late to proper use my mind... :o)
22:59 FROGGS so, dont worry about missing an SLA :o)
23:00 [Coke] r: my $a = 1,2,3; say $a<1>.WHAT
23:00 camelia rakudo de2080: OUTPUT«WARNINGS:␤Useless use of "," in expression "my $a = 1,2,3" in sink context (line 1)␤(Failure)␤»
23:00 [Coke] r: my $a = (1,2,3); say $a<1>.WHAT
23:00 camelia rakudo de2080: OUTPUT«(Failure)␤»
23:00 jnthn Hm, I didn't think Seq existed any more...
23:00 [Coke] r: my $a = (1,2,3); say $a[1,2].WHAT
23:00 camelia rakudo de2080: OUTPUT«(Parcel)␤»
23:00 jnthn Well, sleep time...should have for JVM porting tuits tomorrow. :)
23:01 jnthn 'night, #perl6
23:01 FROGGS jnthn: sleep well!! :o)
23:01 xilo joined #perl6
23:01 [Coke] jnthn: it's in the spec in a few places, and about a dozen tests.
23:01 census joined #perl6
23:02 [Coke] .ask pmichaud if we can get a spec ruling on if we should rip out Seq based on your understanding of the current list situation.
23:02 yoleaux [Coke]: I'll pass your message to pmichaud.
23:06 BenGoldberg joined #perl6
23:07 mattp__ joined #perl6
23:12 [Coke] r: Coke]: I'll pass your message to pmichaud. [19:12] [[Coke](
23:12 camelia rakudo de2080: OUTPUT«[31m===[0mSORRY![​31m===[0m�Unexpected closing bracket�at /tmp/WFPZ2rYKSr:1�------> [32mCoke[33m�[31m]: I'll pass your message to pmichaud. [[0m�»
23:12 [Coke] r: $_ = 1; my $tracker = ''; for 12 -> $a { if $_ == 1 { $tracker ~= "1 : $_|"; $_ = 2; } }
23:12 camelia rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy')␤  in block  at /tmp/HWQMO6B4wa:1␤  in method reify at src/gen/CORE.setting:5737␤  in method reify at src/gen/CORE.setting:5632␤  in method gimme at src/gen/CORE.setting:6053␤  in method eager at src/gen/CORE.setting:6032␤  â€¦
23:13 FROGGS r: for 12 -> $a { "$_" }
23:13 camelia rakudo de2080: OUTPUT«use of uninitialized value of type Any in string context  in block  at /tmp/YZOVXI9pzj:1␤␤»
23:14 FROGGS r: $_ = 1; for 12 -> $a { "$_" }
23:14 camelia rakudo de2080:  ( no output )
23:14 FROGGS r: $_ = 1; for 12 -> $a { my $x ~= "$_" }
23:14 camelia rakudo de2080:  ( no output )
23:14 FROGGS r: $_ = 1; for 12 -> $a { my $x ~= "$_|" }
23:14 camelia rakudo de2080:  ( no output )
23:14 FROGGS hmmm
23:16 FROGGS r: $_ = 1; for 12 -> $a { if 1 { my $x ~= "$_|" } }
23:16 camelia rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy')␤  in block  at /tmp/5WQEd1mmQC:1␤  in method reify at src/gen/CORE.setting:5737␤  in method reify at src/gen/CORE.setting:5632␤  in method gimme at src/gen/CORE.setting:6053␤  in method eager at src/gen/CORE.setting:6032␤  â€¦
23:16 FROGGS r: $_ = 1; for 12 -> $a { if 1 { my $x ~= "$_" } }
23:16 camelia rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy')␤  in block  at /tmp/bHA_n88VaK:1␤  in method reify at src/gen/CORE.setting:5737␤  in method reify at src/gen/CORE.setting:5632␤  in method gimme at src/gen/CORE.setting:6053␤  in method eager at src/gen/CORE.setting:6032␤  â€¦
23:16 FROGGS r: $_ = 1; if 1 { my $x ~= "$_" }
23:16 camelia rakudo de2080:  ( no output )
23:16 FROGGS r: $_ = 1; for 12 -> $a { if 1 { "$_" } }
23:16 camelia rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy')␤  in block  at /tmp/Bify_dvuSE:1␤  in method reify at src/gen/CORE.setting:5737␤  in method reify at src/gen/CORE.setting:5632␤  in method gimme at src/gen/CORE.setting:6053␤  in method eager at src/gen/CORE.setting:6032␤  â€¦
23:16 [Coke] FROGGS: RT# 117677 if you golf it more.
23:17 FROGGS it only comes if there is an if within a loop
23:17 FROGGS r: $_ = 1; for 12 -> $a { unless 0 { "$_" } }
23:17 camelia rakudo de2080: OUTPUT«Null PMC access in find_method('Stringy')␤  in block  at /tmp/2A9OMuXLSv:1␤  in method reify at src/gen/CORE.setting:5737␤  in method reify at src/gen/CORE.setting:5632␤  in method gimme at src/gen/CORE.setting:6053␤  in method eager at src/gen/CORE.setting:6032␤  â€¦
23:17 FROGGS r: $_ = 1;  while $_++ < 2 { unless 0 { "$_" } }
23:17 camelia rakudo de2080:  ( no output )
23:18 FROGGS r: $_ = 1;  until $_++ > 3 { unless 0 { "$_" } }
23:18 camelia rakudo de2080:  ( no output )
23:37 pmichaud Coke:  rip out Seq.
23:37 yoleaux 23:02Z <[Coke]> pmichaud: if we can get a spec ruling on if we should rip out Seq based on your understanding of the current list situation.
23:37 awwaiid joined #perl6
23:37 pmichaud If we end up needing Seq, it won't look like what's in the spec.
23:37 pmichaud or I can certainly put it back.
23:40 pmichaud I'm afk again.
23:53 awwaiid joined #perl6
23:54 gdey joined #perl6

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

Perl 6 | Reference Documentation | Rakudo