Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-08-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:09 BenGoldberg joined #perl6
00:11 Ben_Goldberg joined #perl6
00:13 BenGoldberg joined #perl6
00:15 BenGoldberg joined #perl6
00:21 dalek rakudo/lolly: a433f3f | TimToady++ | src/ (8 files):
00:21 dalek rakudo/lolly: add SEQ(a; b) circumfix to do what (a; b) did
00:21 dalek rakudo/lolly:
00:21 dalek rakudo/lolly: The $() construct also assumes sequence semantics, since it only wants one value.
00:21 dalek rakudo/lolly: These are roughly equivalent except where nqp macros need SEQ() to compile down
00:21 dalek rakudo/lolly: to the bare sequence of statements without any addition coercion.  $() also works
00:21 dalek rakudo/lolly: for code that wants to be backward compatible to pre-lolly days, like spec tests.
00:21 dalek rakudo/lolly: review: https://github.com/rakudo/rakudo/commit/a433f3f8da
00:28 dalek specs: 63a0d61 | TimToady++ | S06-routines.pod:
00:28 dalek specs: Remove notion of stacked feeds
00:28 dalek specs:
00:28 dalek specs: The proposed syntax for stacked feeds is now going to be used by LoL composers.
00:28 dalek specs: review: https://github.com/perl6/specs/commit/63a0d6143a
00:33 dayangkun joined #perl6
00:56 dalek roast: e1e9543 | TimToady++ | / (9 files):
00:56 dalek roast: lolly-proof uses of (;)
00:56 dalek roast: review: https://github.com/perl6/roast/commit/e1e954367c
00:59 iarna joined #perl6
00:59 thou joined #perl6
01:13 Mouq joined #perl6
01:24 FROGGS_ joined #perl6
01:41 klapperl joined #perl6
01:49 Ben_Goldberg joined #perl6
01:55 BenGoldberg_ joined #perl6
02:17 iarna joined #perl6
02:23 dalek rakudo/lolly: 03e22fd | TimToady++ | src/core/LoL.pm:
02:23 dalek rakudo/lolly: Don't loop on 0-art infix:<Z>
02:23 dalek rakudo/lolly: review: https://github.com/rakudo/rakudo/commit/03e22fd830
02:25 Mouq m: say *.WHICH
02:25 yoleaux 17 Aug 2014 11:16Z <lizmat> Mouq: scalars can only be indexed with [0], and nothing else
02:25 camelia rakudo-moar 05f006: OUTPUT«WhateverCode.new()␤»
02:25 yoleaux 17 Aug 2014 11:18Z <lizmat> Mouq: although I'm not sure where that is specced
02:26 Mouq m: say (my $ := *).WHICH
02:26 camelia rakudo-moar 05f006: OUTPUT«Whatever|140418567167992␤»
02:26 Mouq ^^ I'm *pretty* sure Whatevers are immutable :P
02:38 TimToady well, lolly still fails 13 more tests than nom, but at least it gets through without looooooping now
02:39 * TimToady guesses those 13 fails are only two or three bugs though
02:42 lee_ .oO( lollyloop, lollyloop )
02:43 dayangkun joined #perl6
02:44 kurahaupo_ joined #perl6
02:47 thou joined #perl6
02:47 noganex joined #perl6
02:48 Mouq m: DateTime.new("2014-01-01T00:00:61Z").say
02:48 camelia rakudo-moar 05f006: OUTPUT«second out of range. Is: 61, should be in 0..^60; No second 61 has yet been defined␤  in method check-time at src/gen/m-CORE.setting:15579␤  in method new at src/gen/m-CORE.setting:15565␤  in method new at src/gen/m-CORE.setting:15661␤  in block  a…»
02:51 mr-foobar joined #perl6
02:58 dalek Heuristic branch merge: pushed 86 commits to rakudo/S26-WHY by hoelzro
03:03 BenGoldberg_ joined #perl6
03:04 Mouq m: my @a; @a[0..*] = 1..*; say @a[3]
03:04 camelia rakudo-moar 05f006: OUTPUT«(Any)␤»
03:05 Mouq m: my @a = 0..10; @a[0..*] = 1..*; say @a[3]
03:05 camelia rakudo-moar 05f006: OUTPUT«4␤»
03:06 dalek rakudo/S26-WHY: 9b6a63a | (Rob Hoelz)++ | src/Perl6/ (2 files):
03:06 dalek rakudo/S26-WHY: Apply role decl comments to candidates, not groups
03:06 dalek rakudo/S26-WHY: review: https://github.com/rakudo/rakudo/commit/9b6a63a736
03:10 TimToady @a[0..*] isn't abstract enough to do that, it's defined to stop at the actual size
03:15 xragnar_ joined #perl6
03:17 dayangkun joined #perl6
03:31 Mouq joined #perl6
03:32 dalek roast/S26-WHY: 252b93e | (Rob Hoelz)++ | S26-documentation/why- (3 files):
03:32 dalek roast/S26-WHY: Test for role decl comments on candidates, not role groups
03:32 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/252b93ea87
03:48 itz joined #perl6
03:54 kaare_ joined #perl6
03:56 Mouq joined #perl6
03:57 Mouq TimToady: Oh, alright. I'm just trying to figure out how to get @a[1;2] to autovivify
04:12 kaleem joined #perl6
04:13 Mouq m: .WHICH.say for True, False, True, False
04:13 camelia rakudo-moar 05f006: OUTPUT«Bool|52348152␤Bool|523481​12␤Bool|52348152␤Bool|52348112␤»
04:19 TimToady Mouq: did you fix @a[]:kv and such to return everything since I forked lolly?
04:20 Mouq m: my @a = [ [1,2,3], [4,5,6] ], [ [7,8,9], [10,11,12] ]; say @a[*;*;1]:kv; # like this?
04:20 camelia rakudo-moar 05f006: OUTPUT«0 0 1 0 2 1 0 1 5 1 0 1 1 8 1 1 1 11␤»
04:20 Mouq m: my @a = [ [1,2,3], [4,5,6] ], [ [7,8,9], [10,11,12] ]; say (@a[*;*;1]:kv).perl; # like this?
04:20 camelia rakudo-moar 05f006: OUTPUT«((lol(0, 0), 1), (lol(0, 2), 1), (lol(0, 1), 5), (lol(1, 0), 1), (lol(1, 8), 1), (lol(1, 1), 11))␤»
04:21 Mouq Wait what?
04:21 TimToady I mean specifically the Zen slice
04:21 TimToady empty []
04:21 Mouq m: my @a = [ [1,2,3], [4,5,6] ], [ [7,8,9], [10,11,12] ]; say (@a[*;*;1]:p).perl;
04:21 camelia rakudo-moar 05f006: OUTPUT«(lol(0, 0, 1).item => 2, lol(0, 1, 1).item => 5, lol(1, 0, 1).item => 8, lol(1, 1, 1).item => 11)␤»
04:22 Mouq Looks like :kv is broken anyway..
04:22 Mouq but no, I didn't even know that was an issue
04:22 TimToady m: my @a; say @a[].WHAT
04:22 camelia rakudo-moar 05f006: OUTPUT«(Array)␤»
04:22 TimToady I get Parcel here, sight
04:23 Mouq m: my @a = <a b c>; say (@a[]:kv).perl
04:23 camelia rakudo-moar 05f006: OUTPUT«((0, "a"), (1, "b"), (2, "c"))␤»
04:23 TimToady *¬t
04:24 TimToady lolly currently gets () :/
04:24 TimToady I don't know where zen slice is recognized
04:25 TimToady and I've probably messed up the secret handshake in changing semilist
04:25 Mouq Maybe lolly's making LoLs too zealously?
04:25 TimToady doesn't make LoL unless there are more than 2 things
04:26 TimToady currently return an infix:<,> to generate an empty parcel, but obviously that's not exactly what the [] recognizer is looking for
04:28 rindolf joined #perl6
04:32 dalek rakudo/nom: e55e04b | Mouq++ | src/core/array_slice.pm:
04:32 dalek rakudo/nom: Fix @a[*;1]:kv
04:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e55e04bbdc
04:35 thou joined #perl6
04:39 xinming_ joined #perl6
04:39 iarna joined #perl6
04:49 TimToady okay, got zen slices working again, wonder what I broke now :)
04:52 TimToady oh wow, obviously most of the failures were from that
04:53 TimToady though I got one back, obviously the one I "fixed" when I broke zen
04:54 telex joined #perl6
04:57 dalek rakudo/lolly: 675242a | TimToady++ | src/Perl6/Actions.nqp:
04:57 dalek rakudo/lolly: unbreak zen slices
04:57 dalek rakudo/lolly: review: https://github.com/rakudo/rakudo/commit/675242a249
04:57 TimToady down to just three failures peculiar to lolly now
05:05 xenoterracide joined #perl6
05:10 dayangkun joined #perl6
05:17 dalek rakudo/lolly: 2e4ccda | TimToady++ | src/Perl6/ (2 files):
05:17 dalek rakudo/lolly: keep () from disappearing prematurely
05:17 dalek rakudo/lolly:
05:17 dalek rakudo/lolly: also fix tabs
05:17 dalek rakudo/lolly: review: https://github.com/rakudo/rakudo/commit/2e4ccda7fd
05:17 kaare_ joined #perl6
05:26 TimToady okay, none of the spectest fails are lolly's fault; it it wasn't a release week, I'd merge it
05:28 TimToady maybe I'll try a reverse merge
05:28 Mouq TimToady++
05:32 dalek rakudo/lolly: 7752c57 | duff++ | src/core/LoL.pm:
05:32 dalek rakudo/lolly: Prevent infinite recurse on bare "zip"; fixes RT #119337
05:32 dalek rakudo/lolly: review: https://github.com/rakudo/rakudo/commit/7752c57972
05:32 dalek rakudo/lolly: a756a17 | (Elizabeth Mattijsen)++ | lib/Test.pm:
05:32 dalek rakudo/lolly: Small tweaks, more Perl6isms
05:32 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=119337
05:33 dalek joined #perl6
05:33 TimToady huh, how come that didn't list your last patch?
05:33 TimToady oh, I kill dalek dead
05:33 TimToady so deathness
05:33 diakopter mostly dead
05:35 TimToady > say (<a b c>;1,2,3).perl
05:35 TimToady lol($("a", "b", "c"), $(1, 2, 3))
05:35 TimToady > say [<a b c>;1,2,3].perl
05:35 TimToady [$("a", "b", "c"), $(1, 2, 3)]
05:37 TimToady > say SEQ(<a b c>;1,2,3).perl
05:37 TimToady WARNINGS:
05:37 TimToady Useless use of "a b c" in expression "a b c" in sink context (line 1)
05:37 TimToady (1, 2, 3)
05:38 TimToady > say $(<a b c>;1,2,3).perl
05:38 TimToady WARNINGS:
05:38 TimToady Useless use of "a b c" in expression "a b c" in sink context (line 1)
05:38 TimToady $(1, 2, 3)
05:38 TimToady I decided to add a SEQ macro rather than an infix:<S>, at least for now
05:42 Mouq Unless you changed LoL.perl locally, shouldn't say [<a b c>;1,2,3].perl -> lol($("a", "b", "c"), $(1, 2, 3)).item ?
05:43 TimToady [] should make an array
05:44 TimToady (I think...)
05:45 TimToady seems like a 2D array is more likely to be useful than an itemized lol
05:48 TimToady anyway, I think I'm about done for the night, so feel free to checkout lolly and fiddle with it
05:49 TimToady we still need to decide what kind of migration strategy is appropriate
05:49 TimToady if we put off merging lolly till after this version, I think this version should have some warning that lollipops are going to explode
05:50 TimToady but I really dunno how many modules use lollipops for sequencing
05:55 TimToady actually, I didn't spectest after the reverse merge, better go do that...
05:58 Mouq nom should probably get the SEQ macro in that case..
05:59 * Mouq 's face is almost recovered after a caterpillar landed on him yesterday
05:59 Mouq Some caterpillars have toxic hairs. Who knew?
06:01 anaeem1 joined #perl6
06:02 TimToady yes, it needs that at least for gather/take, even if everywhere else can get by with $()
06:07 [Sno] joined #perl6
06:08 Mouq So.. what is LoL? Currently it and Array are 'is List', but Lists are mutable, whereas LoL almost wants to be more like a Parcel, it seems...
06:08 sjn joined #perl6
06:09 TimToady Yeah, it's really more like a PoP
06:11 TimToady though I suppose in theory one could have a generator of lists on the end of a LoL
06:12 TimToady but I think list of list is how people will tend to think of it, whatever we call it
06:14 TimToady and we have specced the || interpolater that could generate a supply of lists, so it's at least extensible, if not quite mutable in its reified elements
06:16 * TimToady should obviously go to bed soon, since he's thinking about lols and their similarity to logarithms: both are kind of metadata used to find the real values :)
06:17 TimToady and both of them flatten out something that would otherwise not appear flat
06:18 denis_boyun_ joined #perl6
06:19 Mouq Haha, 'night TimToady, I plan on doing the same
06:19 Mouq left #perl6
06:23 j4jackj TimToady: Hi. Of non-Perl languages, which is your favourite?
06:23 thou joined #perl6
06:26 TimToady English, then Japanese :)
06:26 j4jackj TimToady: I mean, programming languages
06:27 TimToady I program people in English all the time :)
06:27 j4jackj No, I mean languages for programming computers. :-P
06:27 j4jackj TimToady: are you deliberately being sarcastic?
06:28 TimToady not sarcastic, merely objectionably prone to misinterpret ambiguity intensionally :)
06:29 TimToady intentionally, even
06:29 j4jackj TimToady: what is your favourite non-Perl language in which to program computers?
06:29 TimToady well, I suppose C
06:30 j4jackj Hopefully your head won't explode when I say... "I like Tcl"
06:30 TimToady it has its merits
06:31 j4jackj TimToady: do you ever mess around with ZNC, a program which has a module to load modules written for it in Perl?
06:31 TimToady never heard of it
06:31 j4jackj ZNC is an irc bouncer
06:31 * TimToady hasn't done much irc automation
06:32 j4jackj ZNC itself is in C++, but it can load modules which are written in Perl.
06:32 TimToady if I started playing with irc, I'd probably reinvent the whole darn thing
06:32 j4jackj I almost tried that once.
06:32 Timbus please do
06:32 darutoko joined #perl6
06:32 j4jackj (Just remember, you're talking to a 14 year old.)
06:33 * TimToady is first trying to invent the correct language for reinventing the whole darn thing :)
06:33 TimToady .oO(Perl 6 as a very large yak to shave.)
06:34 TimToady if you like comparitive (computer) linguistics, you should check out rosettacode.org
06:34 TimToady *comparative
06:35 TimToady gah, you'd think I was about to turn into a pumpkin or something
06:35 j4jackj wow
06:36 TimToady so what's a 14-year-old doing with an address in Tonga?
06:37 j4jackj Lols. That's kinda the problem. afraid.org had a domain (uk.to) I could subdomain (caffeinet.uk.to)
06:37 j4jackj The rDNS in question is a semi-serious joke about pulling all nighters
06:38 TimToady what TZ are you in?
06:39 j4jackj PDT
06:39 TimToady nice place :)
06:40 j4jackj Western Canada, to be precise
06:40 TimToady first time I've ever heard half of Canada referred to as "precise" :)
06:41 j4jackj XD
06:41 j4jackj Well, just bout northern BC
06:41 TimToady I've only been up as far as Lilloett (sp?)
06:42 TimToady well, except for watch it go by on an Alaskan cruise :)
06:42 TimToady oh, Lillooet
06:44 TimToady but there's lots of BC north of the last you can see from the coast even
06:46 TimToady well, okay, I've been to Yoho/Banff, which I guess is norther by a bit
06:53 j4jackj Banff is in Alberta...?
06:53 TimToady no, but those parks kinda go together
06:53 TimToady it's silly to do one and not the other
06:54 TimToady I mean, yes, it's in Alberta :)
06:56 TimToady though I wasn't much older than you when I was last there...
06:56 sergot hi o/
06:56 TimToady \o
06:58 zakharyas joined #perl6
06:59 TimToady ooh, and there's an address from Christmas Island :)
07:00 FROGGS morning o/
07:07 PotatoGim joined #perl6
07:14 timotimo hello
07:16 Woodi joined #perl6
07:21 kurahaupo joined #perl6
07:23 raydiak \o
07:27 Akagi201 joined #perl6
07:30 kaleem joined #perl6
07:35 klaas-janstol joined #perl6
07:37 dayangkun joined #perl6
07:46 DarthGandalf joined #perl6
08:12 FROGGS[mobile] joined #perl6
08:12 thou joined #perl6
08:24 FROGGS[mobile] masak / jnthn: guess why they always 'say 3'? look at the topic :p
08:28 FROGGS[mobile] timotimo: the Perl 6 v5 passes now 32.8% of the NQP version
08:32 timotimo great news! i'll be sure to mention it in the weekly
08:36 FROGGS[mobile] thanks :o)
08:53 sergot Do you know something about the panda's segfault?
08:53 sergot I've just got it on another box.
08:55 FROGGS sergot: somebody else reported that yesterday evening too
08:56 sergot ok
09:02 jnthn Darn...I can reproduce it too
09:02 jnthn Panda rebootstraps fine and passes tests. Then explodes on trying to use it. :/
09:03 FROGGS might it be a precomp issue? has to, right?
09:03 jnthn No idea...the modules are precomp'd when it tests them.
09:06 jnthn Under debugger it gives "Internal error: zeroed target thread ID in work pass"
09:06 jnthn So could very easily relate to the v5 issue too
09:06 jnthn (As in, the issue v5 suffers from)
09:07 nwc10 jnthn: and here you were thinking that you'd get to write conference talks today?
09:08 jnthn nwc10: Well, got some $dayjob things to take care of first, also...
09:10 jnthn On the upside, one of the pieces of code I wanted to write for one of my talks is about done... :)
09:23 masak FROGGS[mobile]: yeah, lue++ found that out for us, too.
09:23 masak good antenoon, #perl6
09:23 jnthn o/ masak
09:29 pecastro joined #perl6
09:30 sergot masaku o/
09:34 spider-mario joined #perl6
09:53 klaas-janstol joined #perl6
10:00 thou joined #perl6
10:10 woolfy FROGGS: so if I understand that correctly, almost 1/3 of Perl 5 code now can be run in Perl 6?  That is wow news.
10:13 FROGGS woolfy: only the third of Perl 5 code that the v5-written-in-NQP supported
10:13 lizmat meanwhile, pulling latest and greatest, I see 2 repeatable spectest error
10:14 FROGGS which is about 8000 passing tests of about 90_000 passing tests
10:14 FROGGS and a third from these 8000 passing tests...
10:14 jnthn FROGGS: Any idea of how many of those are about core modules and how many are about the language itself, ooc?
10:14 woolfy FROGGS: good news anyway, thanks for explaining
10:14 FROGGS jnthn: that's hard to tell
10:15 lizmat t/spec/S29-os/system, test 5; t/spec/integration/advent2009-day06.t, test 15
10:15 * jnthn feared so
10:15 FROGGS but my guess is that at least another 40-50% are about the language support itself
10:15 woolfy So if I can ask...  if you would convert this to a percentage of "the whole of Perl 5 commands / functions /etc", how much would that be?  Ballpark-figure of course...
10:16 FROGGS because even when we have about 500 namespaces built-in, these do not make for more than 30k tests
10:17 yakudza joined #perl6
10:19 FROGGS[mobile] about panda: it uses a not-precomp'd version of itself to install itself... so when that works but fails for other modules, it has to be a procomp issue me thinks
10:19 lizmat m: my @a = 1,2,3,4; @a >>/=>> 4; say @a  # sanity check: is this correct ?
10:19 camelia rakudo-moar e55e04: OUTPUT«0.25 0.5 0.75 1␤»
10:20 FROGGS[mobile] seems so
10:20 lizmat ok, then TimToady added a bogus test... :-)
10:21 locsmif joined #perl6
10:21 dalek roast: 33be9cc | (Elizabeth Mattijsen)++ | integration/advent2009-day06.t:
10:21 dalek roast: Fix recently changed metaop inplace test
10:21 dalek roast: review: https://github.com/perl6/roast/commit/33be9ccf85
10:24 FROGGS[mobile] lizmat: but the test expects something else
10:24 FROGGS[mobile] it was correct before, no?
10:24 lizmat no, it failed
10:25 FROGGS[mobile] but 1/2 is not. 25
10:25 FROGGS[mobile] .25*
10:25 lizmat #      got: '0.25 0.5 0.75 1'
10:25 lizmat # expected: '0.5 1 1.5 2'
10:26 FROGGS[mobile] exactly
10:26 lizmat I did the minimal change, by dividing /2 instead of /4
10:26 FROGGS[mobile] ohh, my bad
10:26 FROGGS[mobile] sorry :o)
10:26 ivanshmakov| joined #perl6
10:35 dalek roast: 496d7c9 | (Elizabeth Mattijsen)++ | S29-os/system.t:
10:35 dalek roast: Fix failing test wrt to chdir sensitivity
10:35 dalek roast:
10:35 dalek roast: But it feels to me the wrong things are being tested here.
10:35 dalek roast: review: https://github.com/perl6/roast/commit/496d7c96fb
10:35 vike joined #perl6
10:47 masak I just wanted to flag Su-Shee++'s post as something worth reading: http://www.reddit.com/r/perl/comments/2dpuem/​why_are_you_all_so_worked_up_about_6/cjteviy
10:56 fhelmberger joined #perl6
10:57 lizmat masak: not sure how to interpret your ++ in this manner
11:00 masak lizmat: something like "in a thread where personal attacks, inane statements, and mud-flinging reaches all-time lows, this was a post with worthwhile points, and I commend Su-Shee for writing it".
11:00 yeltzooo joined #perl6
11:04 H2O1 joined #perl6
11:05 H2O1 left #perl6
11:07 ivanshma` joined #perl6
11:09 Timbus joined #perl6
11:16 prevost joined #perl6
11:16 timotimo i'm not quite sure why that person even posted that thread to begin with; hasn't the question they posed been answered lots of times already?
11:18 spider-mario joined #perl6
11:19 FROGGS of course, and somebody will ask again :o)
11:20 darutoko- joined #perl6
11:30 brrt joined #perl6
11:39 rindolf joined #perl6
11:48 pl520 joined #perl6
11:48 comptezero joined #perl6
11:48 thou joined #perl6
11:50 comptezero hi all, anyone as an idea to embeded nqp or rakudo jvm version in java like JSR-223 ?
11:53 lizmat m my int @a; say @a.WHAT; my @b of int; say @b.WHAT  # I thought these two were equivalent ?
11:53 lizmat m: my int @a; say @a.WHAT; my @b of int; say @b.WHAT  # I thought these two were equivalent ?
11:53 camelia rakudo-moar e55e04: OUTPUT«(Int)␤(Array[int])␤»
11:54 jnthn comptezero: It's certainly on the wish list, but I don't know that anybody has worked on it yet
11:54 lizmat m: my Int @a; say @a.WHAT; my @b of Int; say @b.WHAT  # the *are* for Int
11:54 camelia rakudo-moar e55e04: OUTPUT«(Array[Int])␤(Array[Int])␤»
11:54 jnthn lizmat: Native arrays NYI
11:55 lizmat m: my @a of int; @a.push: 42   # not as completely NYI as you think
11:55 camelia rakudo-moar e55e04: OUTPUT«Type check failed in .push; expected 'int' but got 'Int'␤  in method push at src/gen/m-CORE.setting:8279␤  in block  at /tmp/sMT3AwUjQ1:1␤␤»
11:55 lizmat m: my @a of int; @a.push: "foo"  # better example
11:55 camelia rakudo-moar e55e04: OUTPUT«Type check failed in .push; expected 'int' but got 'Str'␤  in method push at src/gen/m-CORE.setting:8279␤  in block  at /tmp/bpkN17IekF:1␤␤»
11:55 jnthn lizmat: Well, to put it another way: anything that does work is working out of luck :)
11:56 jnthn Native arrays (probably called array, not Array) would directly use the VMArray REPR, alot like Blob and Buf already do.
11:56 jnthn And needn't be lazy.
11:58 lizmat ok, I get that... I'll just mark tests for "@a of int" and "int @a" differently
11:58 lizmat (one skip, other todo)
11:59 timotimo jnthn: how could a native array be lazy *and* use the VMArray repr?
12:00 jnthn timotimo: It can't, really. :)
12:00 masak I just discovered a case where printing or not printing some output leads to different results in a script of mine.
12:01 jnthn masak: Is the difference that you get output in one case and not the other?
12:01 masak no, different results of a computation.
12:01 jnthn Oh. Darn.
12:01 masak after some thought, I suspect this is because of the copying GC in Moar, and the script's realiance on infix:<===>.
12:01 masak just wanted to report this.
12:01 jnthn Ah, yeah
12:01 masak not a big thing; I will rewrite the script not to rely on this.
12:01 masak probably the extra output (and there's quite a lot of it) triggers different GC runs somehow.
12:02 jnthn Probably
12:02 masak it's quite deterministic in the sense that I always get the right result with the output, and always the wrong one without.
12:02 masak but given the cause, I doubt I'd be able to golf it.
12:02 jnthn Yeah; the same program run will allocate the same objects.
12:02 masak right.
12:02 jnthn And so fill the nursery at the same points
12:03 masak anyway, I'm glad I discovered it now rather than later.
12:03 masak and I'm not gonna rant about it; just looking forward to this one getting fixed eventually ;)
12:03 lizmat indeed  :-)
12:04 comptezero left #perl6
12:04 jnthn Yeah, somebody should do that...oh, wait... :)
12:08 masak jnthn: what's the fix, by the way? some internal data that holds a unique identity and survives GC copying?
12:08 jnthn masak: I think pre-reserving a gen2 slot for objects we want a .WHICH for that are in the nursery
12:08 jnthn And using that as the address
12:09 jnthn Which means there's only a memory cost if you use .WHICH, and we don't have to make every object bigger
12:13 timotimo lizmat: can i ask you for a quick summary of all the things you worked on in the last 14 days?
12:14 jnthn .oO( git log --author=liz --since="14 days ago" )
12:14 timotimo hmm, that's actually not bad
12:15 lizmat not really much, I'm afraid
12:16 timotimo well, all the eval testing stuff
12:16 lizmat menial tasks mostly, hope to unblock on CompUnit at the YAPC::EU
12:16 lizmat yes, that...
12:16 timotimo what were the functions that got nuked? eval_dies or something like that?
12:17 lizmat I removed eval_dies_ok and eval_lives_ok from the spec
12:17 lizmat I didn't nuke them from Test.pm yet
12:17 timotimo ah
12:17 lizmat going through the spectests to fix those
12:17 timotimo good
12:17 lizmat only 281 more files to go
12:17 timotimo oh my
12:18 lizmat I think I've done 60 or so so far
12:18 lizmat and found about 5 cases where tests were dieing for the wrong reason
12:19 timotimo that's clearly valuable
12:20 lizmat yup
12:20 lizmat I think so
12:20 lizmat and having them all check for exception types, should allow is to more quickly find regressions
12:21 timotimo yup
12:31 dalek roast: 01c9c12 | (Elizabeth Mattijsen)++ | S02- (6 files):
12:31 dalek roast: Another batch of dies_ok -> throws_like
12:31 dalek roast: review: https://github.com/perl6/roast/commit/01c9c1232d
12:31 jnap joined #perl6
12:32 dalek rakudo/nom: ddfb572 | (Elizabeth Mattijsen)++ | t/spectest.data:
12:32 dalek rakudo/nom: Add S02-types/array-shapes.t: properly fudged now
12:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ddfb572cc9
12:38 lizmat errands&
12:39 timotimo http://p6weekly.wordpress.com/?p=​214&amp;shareadraft=53f1f3f52b9a0 - first draft of today's blog post. i've missed at least lichtkinds tablets work, what else?
12:41 guru joined #perl6
12:46 moritz timotimo: sergot's gsoc work (lots of documentation for HTTP::UserAgent and friends)
12:46 timotimo ah!
12:46 timotimo right, i haven't been looking that way much
12:46 timotimo but there was that blog post
12:47 sergot moritz++ timotimo++
12:47 sergot ;)
12:48 dalek roast/S26-WHY: 2b4a645 | (Rob Hoelz)++ | S26-documentation/why- (3 files):
12:48 dalek roast/S26-WHY: Test declarative comments for multi methods
12:48 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/2b4a6458a3
12:48 dalek roast/S26-WHY: c9bc645 | (Rob Hoelz)++ | S26-TODO.md:
12:48 dalek roast/S26-WHY: Mark multi methods as completed
12:48 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/c9bc64579c
12:48 dalek roast/S26-WHY: 5bec18b | (Rob Hoelz)++ | S26-TODO.md:
12:48 dalek roast/S26-WHY: Remove things that are complete
12:48 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/5bec18b52e
12:48 dalek roast/S26-WHY: d2e2567 | (Rob Hoelz)++ | S26-documentation/block-leading.t:
12:48 dalek roast/S26-WHY: Add test for leading block comments
12:48 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/d2e2567e3a
12:48 dalek roast/S26-WHY: 79454d4 | (Rob Hoelz)++ | S26-documentation/block-trailing.t:
12:48 dalek roast/S26-WHY: Add test for trailing declarative comments
12:48 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/79454d4374
12:48 dalek rakudo/S26-WHY: 8d20a3f | (Rob Hoelz)++ | src/Perl6/Grammar.nqp:
12:48 dalek rakudo/S26-WHY: Properly handle block-style leading declarative comments
12:48 dalek rakudo/S26-WHY: review: https://github.com/rakudo/rakudo/commit/8d20a3fccd
12:48 dalek rakudo/S26-WHY: a6161e1 | (Rob Hoelz)++ | src/Perl6/Grammar.nqp:
12:48 dalek rakudo/S26-WHY: Remove useless comments
12:48 dalek rakudo/S26-WHY: review: https://github.com/rakudo/rakudo/commit/a6161e1ac4
12:48 dalek rakudo/S26-WHY: 24f5949 | (Rob Hoelz)++ | src/Perl6/Grammar.nqp:
12:48 dalek rakudo/S26-WHY: Implement trailing declarative block comments
12:48 dalek rakudo/S26-WHY: review: https://github.com/rakudo/rakudo/commit/24f5949fe4
12:49 dalek roast/S26-WHY: 85da650 | (Rob Hoelz)++ | S26-documentation/block-trailing.t:
12:49 dalek roast/S26-WHY: Add test for trailing declarative block comments
12:49 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/85da650feb
12:49 dalek roast/S26-WHY: ed87af0 | (Rob Hoelz)++ | S26-TODO.md:
12:49 dalek roast/S26-WHY: Document block comments as impl'd
12:49 dalek roast/S26-WHY: review: https://github.com/perl6/roast/commit/ed87af0d2b
12:50 jnthn timotimo: The HyperWhatever example uses...Whatever..
12:50 timotimo oops :D
12:50 timotimo ah
12:50 timotimo well, that was for comparison
12:51 timotimo i haven't looked at actual examples for hyperwhatever yet
12:52 timotimo http://p6weekly.wordpress.com/?p=​214&amp;shareadraft=53f1f71c26f09
12:53 jnthn timotimo: Don't forget the JVM compile time improvements :)
12:53 timotimo OH!
12:53 timotimo yes!
12:53 timotimo dwarring did that, right?
12:53 jnthn donaldh
12:53 timotimo OK
12:54 jnthn "They all start with a d anyway..." :P
12:54 timotimo dwarring was the advent calendar tests dude
12:54 jnthn Also PerlJam++ did various fixes
12:54 jnthn Including to sprintf
12:54 timotimo very good
12:54 timotimo the sprintf fix is cross-backend, aye?
12:54 jnthn Think so
12:54 timotimo btw, do we want to turn sprintf into a code-generating thing, rather than an "interpreter"?
12:54 klaas-janstol joined #perl6
12:55 timotimo if we have static format strings, that is
12:55 jnthn There were some regex error message improvements by psch
12:56 dalek specs: ea8a8de | (Rob Hoelz)++ | S05-regex.pod:
12:56 dalek specs: Fix broken link to Extensible metasyntax on S05 page
12:56 dalek specs: review: https://github.com/perl6/specs/commit/ea8a8de9d0
12:56 jnap joined #perl6
12:57 timotimo avuserow: do you have a short statement on how you'll handle the star release? since the next rakudo release will happen this week, i mean
12:57 timotimo will you try to release a 2014.07 Star and then a 2014.08 Star after that?
12:57 timotimo or just skip the .07 one?
12:57 jnthn I suspect we'd go directly for a .08 one
12:58 jnthn timotimo: Also don't forget dynvar lookup improvements by TimToady++
12:58 timotimo oh, right, that was in the last 14 days
13:02 psch hi #perl6 o/
13:03 psch timotimo: there's also m:g// and s:g/// improvements, but those hinge on the lists rework
13:03 psch which i have no idea about progress of
13:04 timotimo i think the post is in an acceptable state now
13:05 sergot hi psch \/
13:05 timotimo http://p6weekly.wordpress.com/?p=​214&amp;shareadraft=53f1f9f8b6f8c
13:05 sergot um, o/
13:05 psch headless excitement..? :)
13:05 psch hi sergot
13:06 ajr joined #perl6
13:08 kaleem joined #perl6
13:10 timotimo i think i'll go ahead and publish this version now.
13:10 jnthn Looks good to me.
13:12 ggoebel11111111 joined #perl6
13:13 timotimo nobody noticed the not really existing title of the post %)
13:13 timotimo a good sign
13:25 dalek rakudo-star-daily: 60ffd2d | coke++ | log/ (14 files):
13:25 dalek rakudo-star-daily: today (automated commit)
13:25 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/60ffd2daf2
13:25 dalek perl6-roast-data: bbe49f8 | coke++ | / (6 files):
13:25 dalek perl6-roast-data: today (automated commit)
13:25 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/bbe49f8214
13:30 brrt joined #perl6
13:37 thou joined #perl6
13:40 lizmat timotimo: maybe mention --moar-options=--enable-jit as well?
13:42 telex joined #perl6
13:46 lizmat timotimo: also, I specced and implemented Test::cmp_ok
13:47 lizmat still wandering whether we would want something like "smatch"
13:47 lizmat *wondering
13:47 lizmat :-)
13:51 iarna joined #perl6
13:51 gtodd joined #perl6
13:51 jnthn grmbl
13:51 jnthn The NativeCall tests appear to fail
13:51 jnthn Because some output comes from C without counts
13:51 jnthn And some from Perl 6
13:53 jnthn Did we start returning an error code when the number of tests didn't match up?
13:54 jnthn ah
13:54 jnthn elsif !$no_plan && $num_of_tests_planned != $num_of_tests_run {
13:54 jnthn exit(255);
13:55 ChoHag joined #perl6
13:55 jnthn Ah, yes. In the recent test work.
13:56 jnthn While I suspect that's good in general, it means test.pm is now just too awkward to be bothered with for NativeCall tests...
13:56 ivanshma` joined #perl6
13:56 lizmat jnthn: sorry to hear that, what apart from the exit value, is bothering you there ?
13:57 jnthn Well, it's the exit value really
13:57 lizmat what are you expecting?  0 ?
13:57 jnthn Yeah
13:57 lizmat but not all tests have run ?
13:57 jnthn Well, the thing is, we *know* the counts don't match up in the NativeCall tests.
13:57 lizmat ah, so you need to override that...
13:57 jnthn it's because the plan has 26
13:57 lizmat how about no plan?
13:57 jnthn Which *is* the number of OKs
13:58 jnthn oh, hmm :)
13:58 jnthn Then the harness whines about no plan...
13:59 [Coke] do we have a "done_testing" that stops that whining?
13:59 jnthn And putting "done" at the end remvoes that but makes prove REALLY confused. :)
13:59 lizmat it's called "done" actually now
14:01 lizmat fwiw, craziness *I* saw in tests the past days, is gone now fortunately
14:01 jnthn Well, NativeCall's tests *are* a weird case
14:02 fhelmberger_ joined #perl6
14:02 lizmat could it be that the "done" comes before the C output?
14:02 masak Python 3.5 may get gradual typing: https://github.com/JukkaL/mypy -- https://news.ycombinator.com/item?id=8191916
14:02 jnthn Just in that the output is like this:
14:03 jnthn ok 13 - out-of-bounds access on managed array
14:03 jnthn ok - struct in position 0, C-side
14:03 jnthn ok - struct in position 1, C-side
14:03 jnthn ok - struct in position 2, C-side
14:03 jnthn ok 14 - byte in element 0
14:03 klaas-janstol joined #perl6
14:03 tadzik masak: wow, that's pretty nice
14:03 masak tadzik: the HN discussion is interesting.
14:03 cooper joined #perl6
14:03 masak tadzik: if Python went the TypeScript route, that *would* be pretty nice.
14:04 lizmat jnthn: any way to get the C-output in a subtest ?
14:06 jnthn lizmat: Um...
14:06 jnthn lizmat: What does that involve?
14:06 Gothmog__ joined #perl6
14:06 rjbs- joined #perl6
14:06 pmichaud_ joined #perl6
14:07 broquain1 joined #perl6
14:07 orevdiabl joined #perl6
14:09 lizmat printing 4 spaces in front of each line for each subtest level
14:10 vike1 joined #perl6
14:11 stux|RC-only joined #perl6
14:12 thou joined #perl6
14:12 nhayashi_ joined #perl6
14:12 jnthn lizmat++ # that does it...
14:13 xinming joined #perl6
14:13 iarna joined #perl6
14:14 DarthGandalf joined #perl6
14:14 dalek zavolaj: d9e11ac | jnthn++ | t/0 (6 files):
14:14 dalek zavolaj: Use subtest syntax for C output.
14:14 dalek zavolaj:
14:14 dalek zavolaj: Avoids confusing Test.pm, which likes to have an exact count.
14:14 dalek zavolaj: lizmat++ for suggesting this solution.
14:14 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/d9e11ac466
14:14 anaeem1 joined #perl6
14:15 jnthn Now I just get one fail in pointers.t
14:15 jnthn not ok 5 - OpaquePointer roundtrips okay using .perl and EVAL
14:15 jnthn #      got: '4194750160'
14:15 jnthn # expected: '8791697837776'
14:15 jnthn FROGGS: Got any hints where I might go looking for ^?
14:17 FROGGS hmmm
14:18 FROGGS how is it initialized? not that this is because something got moved by gc
14:18 clkaoud joined #perl6
14:19 avuserow joined #perl6
14:19 cooper joined #perl6
14:20 brrt wrt to python optional typing, the benefits of that remains to be seen of course :-)
14:20 jnthn m: say 0xf98fced0
14:20 camelia rakudo-moar ddfb57: OUTPUT«4186951376␤»
14:21 eiro joined #perl6
14:21 FROGGS[mobile] joined #perl6
14:21 jnthn Hm, it .perl's OK, so it's when we EVAL it back
14:21 FROGGS jnthn: all I know is that the OpaquePointer keeps that address in its body...
14:28 klaas-janstol joined #perl6
14:34 cooper joined #perl6
14:34 dalek specs: d651fc5 | (Stéphane Payrard)++ | S99-glossary.pod:
14:34 dalek specs: Update S99-glossary.pod
14:34 dalek specs:
14:34 dalek specs: I realize that I am adding to this glossary what pertains to an index. I think it is ok because at this point we are unable to maintain both an index and a glossary.
14:34 dalek specs: review: https://github.com/perl6/specs/commit/d651fc5880
14:35 eiro joined #perl6
14:36 klaas-janstol joined #perl6
14:36 kurahaupo joined #perl6
14:40 dalek specs: 4deb632 | coke++ | S99-glossary.pod:
14:40 dalek specs: fix spello
14:40 dalek specs: review: https://github.com/perl6/specs/commit/4deb63262a
14:41 guru joined #perl6
14:45 cognome coke++
14:46 masak fixing yer spellos in yer spec-o.
14:46 masak but "self-reliant"? hmm.
14:47 araujo joined #perl6
14:47 araujo joined #perl6
14:47 cognome partially
14:48 dalek specs: a1b4e26 | masak++ | S99-glossary.pod:
14:48 dalek specs: slight rephrase
14:48 dalek specs: review: https://github.com/perl6/specs/commit/a1b4e26e44
14:51 cooper joined #perl6
14:51 iarna joined #perl6
14:56 xusia joined #perl6
14:56 lizmat afk for a bit&
14:57 dayangkun joined #perl6
14:58 pmurias joined #perl6
15:06 cooper joined #perl6
15:10 dalek specs: b6f790c | (Stéphane Payrard)++ | S99-glossary.pod:
15:10 dalek specs: S99: more entries
15:10 dalek specs: review: https://github.com/perl6/specs/commit/b6f790cbcc
15:10 eiro joined #perl6
15:11 dalek nqp-js: 88fddf3 | (Pawel Murias)++ | examples/webpacked/ (2 files):
15:11 dalek nqp-js: Use webpack-reload-plugin for the webpacking example, and mention that in the README.
15:11 dalek nqp-js: review: https://github.com/pmurias​/nqp-js/commit/88fddf3173
15:12 kaare_ joined #perl6
15:13 pmurias webpack++ # supports recompiling and reloading the page when the .nqp code changes
15:15 brrt joined #perl6
15:20 dalek specs: 448d117 | (Stéphane Payrard)++ | S99-glossary.pod:
15:20 dalek specs: typos. More entries
15:20 dalek specs: review: https://github.com/perl6/specs/commit/448d1173e7
15:21 fhelmberger joined #perl6
15:29 cooper joined #perl6
15:45 cooper joined #perl6
15:54 cooper joined #perl6
15:54 cooper joined #perl6
15:54 hoelzro morning #perl6
15:55 pmurias hi
15:57 TimToady o/
15:59 hoelzro I was just thinking about introspectability of Rakudo
15:59 TimToady it occurs to me I could merge lolly if I make it switchable by envvar and default to off for this release, then we'd get SEQ for free
15:59 hoelzro ex. wouldn't it be nice if I, in the REPL, could do &infix:<+>.WHY to get the docs on the + operator?
16:00 TimToady WHY not?
16:00 TimToady well, other than performance compiling the setting...
16:00 hoelzro TimToady: yeah, I don't see WHY not, but someone has to attach all of those comments =/
16:00 hoelzro and yeah, setting compilation time
16:00 hoelzro heh, I wrote 'WHY not' without even realizing o_O
16:01 jnap joined #perl6
16:03 iarna joined #perl6
16:04 hoelzro we could always make use of what's on doc.perl6.org
16:05 hoelzro and we could have a --no-docs option to Configure.PL
16:05 hoelzro so for development, we don't need to build it
16:06 pmurias it seems to be that the editor is the proper place to display the docs
16:06 jnthn I'd pondered we might also want a way of saying "if the thing has no docs, fall back to looking in X location for them"
16:06 jnthn Which'd mean we can keep doc.perl6.org as the authoritative source, install the Pod too, and then just load it on demand
16:07 TimToady well, might want to copy them down for local usage during network outagaes
16:08 TimToady or is that what you meant already?
16:09 jnthn Oh, I didn't mean grab them over the web
16:09 jnthn I meant install them somewhere locally that WHY knows where to look as a fallback
16:09 hoelzro perhaps along with the code in a CompUnitRepo?
16:10 hoelzro considering that WHY would mainly be used for inspection during development, one could probably store *all* WHY contents in a separate file post-compilation
16:10 hoelzro but maybe that's overly complicated
16:10 PerlJam hoelzro: that would be awesome, but I'd also want a shortcut way to ask for the docs from the REPL.  Something like  docs('+')  where the docs() sub can be a little smart about figuring out what I mean.
16:10 pecastro joined #perl6
16:10 cooper joined #perl6
16:10 cooper joined #perl6
16:10 hoelzro PerlJam: agreed, but I think at that point, it's just sugar around symbol traversal and calling WHY
16:11 PerlJam aye
16:11 [Coke] got a stuck test on the rakudo-jvm run.
16:12 [Coke] S02-lexical-conventions/comments.rakudo.jvm........
16:13 [Coke] (weird, I thought my ulimited version wouldn't get stuck for this long.)
16:15 beastd joined #perl6
16:20 [Coke] https://github.com/rakudo/rakudo/commit/​9b3102bdefababca6205d19df8247dd5f3370d77 - should we be doing that in a #parrot ifdef block in nqp?
16:21 ajr_ joined #perl6
16:26 krunen joined #perl6
16:26 cooper joined #perl6
16:26 cooper joined #perl6
16:33 pmurias [Coke]: isn't ifdef parrot handled by a specical file program that might not be avalible there?
16:34 FROGGS[mobile] I think we fudge nqo's source
16:34 timotimo that.s right, gen_cat.nqp doesn't do that for lib/
16:34 FROGGS[mobile] at least parts of it
16:38 gfldex joined #perl6
16:40 krunen joined #perl6
16:41 cooper joined #perl6
16:42 [particle] joined #perl6
16:42 * TimToady wonders how long till ulimit supports limiting # of cores...
16:43 xinming joined #perl6
16:44 jnthn dinner &
16:44 guru joined #perl6
16:46 hoelzro TimToady: if you want to limit to just 1 core, I think you could use processor affinity
16:46 hoelzro but beyond that, I don't think there's anything =/
16:46 * TimToady wonders who will come out with the first megacore...
16:47 lizmat couldn't you consider high-end graphic cards already megacore ?
16:48 TimToady well, in a sense, the old Connection Machine already had 65536 cores, albeit of 1-bit processors
16:49 tadzik my gpu apparently has 1.5 megacores :o
16:49 tadzik that's shader cores at least
16:49 Rotwang joined #perl6
16:57 lizmat m: sub a ($a,:$b) { say $a; say $b }; my $c = \(42, b=> 1); a(|$c)   # is this correct behaviour of flattening a capture ?
16:58 camelia rakudo-moar ddfb57: OUTPUT«42␤1␤»
16:59 lizmat m: sub a ($a,$b) { say $a; say $b }; my $c = \(42, b=> 1); a(|$c)   # this should never work, right? (receiving a pair in $b)
16:59 camelia rakudo-moar ddfb57: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in sub a at /tmp/U309nZ7DFK:1␤  in block  at /tmp/U309nZ7DFK:1␤␤»
17:00 * lizmat is looking at a possible bogus test in  "t/spec/S02-types/capture.t
17:01 TimToady yes, the 2nd one is incorrect
17:01 timotimo m: sub a ($a,$b) { say $a; say $b }; my $c = \(42, "b" => 1); a(|$c) # but this "works", right?
17:01 camelia rakudo-moar ddfb57: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in sub a at /tmp/gE10y7yvNR:1␤  in block  at /tmp/gE10y7yvNR:1␤␤»
17:01 lizmat so the error is correct
17:01 timotimo m: sub a ($a,$b) { say $a; say $b }; my $c = \(42, ("b" => 1)); a(|$c) # maybe putting superstitious parens helps?
17:01 camelia rakudo-moar ddfb57: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in sub a at /tmp/cCVEF4hzVw:1␤  in block  at /tmp/cCVEF4hzVw:1␤␤»
17:01 lizmat ok, then the test is bogus, will fix
17:02 TimToady once upon a time that behavior was specced, but got despecced, as too much torment, and problematic performance
17:02 timotimo m: sub a ($a,$b) { say $a; say $b }; my $c = \(42, $("b" => 1)); a(|$c) # maybe throwing dollars at the problem solves it?
17:02 camelia rakudo-moar ddfb57: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in sub a at /tmp/divq9EvGJg:1␤  in block  at /tmp/divq9EvGJg:1␤␤»
17:02 lizmat ok, that makes sense then, as the test was marked as a nom regression
17:02 TimToady oh wait, there's quotes
17:02 TimToady hmm
17:02 TimToady that seems buggy
17:03 lizmat => is a Pair creator, not?  regardless of quoting or nor ?
17:03 cooper joined #perl6
17:03 cooper joined #perl6
17:04 TimToady but quotes or parens should suppress named arg interpretation
17:04 lizmat so that would indicate a problem in the capture creation
17:04 TimToady m: my $c = \(42, "b" => 1); say $c.elems
17:04 camelia rakudo-moar ddfb57: OUTPUT«1␤»
17:04 TimToady m: my $c = \(42, "b" => 1); say $c.keys
17:04 camelia rakudo-moar ddfb57: OUTPUT«0 b␤»
17:04 TimToady that's wrong
17:05 TimToady should have 2 elems, and the 2nd should just be a pair
17:05 * masak submits rakudobug
17:05 * TimToady is kinda surprised it's working in Real Life when it's not working there
17:06 TimToady implies there are two code paths where there probably oughta be one
17:08 lizmat it's probably the explicit Capture creation path that is slightly different
17:08 pmichaud_ good morning, #perl6
17:08 lizmat morning pmichaud
17:08 masak pmichaud! \o/
17:09 bjz joined #perl6
17:09 klaas-janstol joined #perl6
17:11 [Coke] hio, pmichaud
17:13 FROGGS hi pmichaud
17:17 cooper joined #perl6
17:17 lizmat m: sub a ($a,$b) { say $a; say $b }; my $p = (a=>1); my $c = \(42, $p); say $c.perl  # should probably be Capture.new(list => (42,(a => 1))
17:17 camelia rakudo-moar ddfb57: OUTPUT«Capture.new(list => (42,), hash => {"a" => 1})␤»
17:19 lizmat Marked test with ticket #122555
17:19 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=122555
17:30 lizmat m: say now + now   # feels like an LTA error message with a LHF fix
17:30 camelia rakudo-moar ddfb57: OUTPUT«Ambiguous call to 'infix:<+>'; these signatures all match:␤:(Instant:D $a, Real:D $b)␤:(Real:D $a, Instant:D $b)␤  in block  at /tmp/R1FmBudhPk:1␤␤»
17:32 cooper joined #perl6
17:35 TimToady "You can't add those!"
17:36 japhb Just needs an Instant:D,Instant:D multi
17:36 yoleaux 17 Aug 2014 06:17Z <timotimo> japhb: maybe the command i was thinking of could be called "testrun" and it could take either a component name if given, the system-wide "perl6/nqp/..."  or a compiler by filename
17:36 [Coke] do we need a instant, instant that dies?
17:36 japhb timotimo: say what?
17:37 TimToady well, it should really say "You can't add an Instant to an Instant", where the two types are derived from the arguments
17:38 lizmat yup, something like that I had in mind
17:38 TimToady so you could also get "You can't add an Instant to a YourLife"
17:39 lizmat I'm going to create a generic "can't "op" "type1" "type2' to each other
17:39 lizmat and then add the necessary multi's with the necessary params
17:42 ren1us joined #perl6
17:55 avuserow timotimo: re star: basically I ran into problems with parrot that were release blockers AFAICT (random segfaults or test fails in some module code). I started golfing but didn't get very far, because it seems to just change the likelihood of the crash.
17:55 avuserow for what it's worth, I think that the 2014.05 and 2014.06 stars were held up for similar reasons?
17:56 cooper joined #perl6
17:58 micahjam97 joined #perl6
17:58 micahjam97 I've just started to learn perl
17:58 micahjam97 what exactly is perl 6
17:59 japhb micahjam97: A much improved (but still WIP) sister language to Perl 5.
18:00 micahjam97 what's so improved about it?
18:01 japhb micahjam97: Everyone has their favorite answer.  I personally am a fan of the better concurrency system, metamodel-based OO, native (written in Perl 6) language grammar and setting (standard functions and classes), better type system, and more.
18:02 japhb And I can think at a higher level about my problems in Perl 6 than I can in Perl 5.
18:06 dalek rakudo/nom: a22a00a | (Elizabeth Mattijsen)++ | src/core/Exception.pm:
18:06 dalek rakudo/nom: Add X::Op::TheseTwo exception
18:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a22a00a252
18:06 dalek rakudo/nom: 9f4db34 | (Elizabeth Mattijsen)++ | src/core/Instant.pm:
18:06 dalek rakudo/nom: Add candidates for illegal +/- with Instants
18:06 dalek rakudo/nom:
18:06 dalek rakudo/nom: using the new X::Op::TheseTwo exception
18:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9f4db347c1
18:08 klaas-janstol joined #perl6
18:09 ventica joined #perl6
18:15 cooper joined #perl6
18:15 moritz
18:18 TimToady lizmat: why not just add a single Any,Any candidate that is the last candidate for any failed infix:<+>
18:18 guru joined #perl6
18:19 TimToady this solution is rather too specific
18:19 lizmat ok, will do...
18:19 pmichaud that solution feels weird to me, though.
18:19 ivanshmakov joined #perl6
18:20 TimToady well, it should probably be generalized from the message that already indicates the candidates
18:20 pmichaud it seems weird to me to add multi candidates as fallbacks for things one cannot do
18:20 TimToady for given operators, you should be able not only to list the candidates, but give a message like "You're trying to add an Apple to an Orange"
18:20 pmichaud because if I then start to ask   "is there a way to infix:<+>(Any, Any)"   I'll get a "yes" answer.
18:21 pmichaud as in, there's a multi that claims to handle it
18:21 TimToady I agree about the multi, it should be the existing error handler made smarter
18:21 TimToady and maybe asking the operator in question if it has anything to say
18:21 dalek rakudo/nom: c561ac3 | (Elizabeth Mattijsen)++ | src/core/Instant.pm:
18:21 dalek rakudo/nom: Revert "Add candidates for illegal +/- with Instants"
18:21 dalek rakudo/nom:
18:21 dalek rakudo/nom: This reverts commit 9f4db347c191848101a2baf2b1d02fed37409091.
18:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c561ac34b1
18:21 TimToady in any case, we've always wanted the error to list the argument types and/or arguments as well as the candidates
18:22 pmichaud I agree that the error should list the argument types, and that this sort of analysis needs to be part of the error handler and not part of the multi candidate set
18:22 dalek rakudo/nom: 755ec1b | (Elizabeth Mattijsen)++ | src/core/Exception.pm:
18:22 dalek rakudo/nom: Revert "Add X::Op::TheseTwo exception"
18:22 dalek rakudo/nom:
18:22 dalek rakudo/nom: This reverts commit a22a00a252d8912a92ebfdbd823ac1b634cf5af8.
18:22 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/755ec1b205
18:22 TimToady nodnod
18:22 TimToady exceptional logic should only be invoked for exceptions :)
18:24 pmichaud also, I'm not sure the infix:<+>(Any, Any) case would've resolved the  now + now   case
18:24 brrt left #perl6
18:24 pmichaud since it complained of having an ambiguous result, not a nonexistent one
18:24 pmichaud m:  say now + now
18:24 camelia rakudo-moar ddfb57: OUTPUT«Ambiguous call to 'infix:<+>'; these signatures all match:␤:(Instant:D $a, Real:D $b)␤:(Real:D $a, Instant:D $b)␤  in block  at /tmp/5U0D82h7Pa:1␤␤»
18:26 pmichaud perhaps the error message should say   "Ambiguous call of 'infix:<+>(Instant, Instant)"
18:26 pmichaud to show the types of arguments that were being passed
18:26 TimToady m: multi infix:<+>($a,$b) { warn "AOOOGA!" }; say now + now
18:26 camelia rakudo-moar ddfb57: OUTPUT«Ambiguous call to 'infix:<+>'; these signatures all match:␤:(Instant:D $a, Real:D $b)␤:(Real:D $a, Instant:D $b)␤  in block  at /tmp/dOGtlSNmkX:1␤␤»
18:26 TimToady yeah..
18:27 Ven joined #perl6
18:27 pmichaud m:  say now + now.Real;
18:27 camelia rakudo-moar ddfb57: OUTPUT«Ambiguous call to 'infix:<+>'; these signatures all match:␤:(Instant:D $a, Real:D $b)␤:(Real:D $a, Instant:D $b)␤  in block  at /tmp/to8ZFsteES:1␤␤»
18:27 pmichaud m:  say now.Real;
18:28 camelia rakudo-moar ddfb57: OUTPUT«Instant:1408386515.915169␤»
18:28 pmichaud oh, Instant ~~ Real   I guess
18:28 pmichaud m:  say Instant ~~ Real
18:28 camelia rakudo-moar ddfb57: OUTPUT«True␤»
18:28 TimToady yes, it's just it has no origin, officially
18:28 pmichaud m: say now.Num
18:28 camelia rakudo-moar ddfb57: OUTPUT«1408386563.15693␤»
18:28 pmichaud m:  say now + now.Num;
18:28 camelia rakudo-moar ddfb57: OUTPUT«Instant:2816773142.536281␤»
18:29 TimToady yes, well, they generally only put one safety on a gun :)
18:29 raydiak actually...
18:30 TimToady yes, there are exceptions
18:30 ren1us2 joined #perl6
18:31 raydiak eh, sorry...brain/finger filter must not exist this morning, that was totally unproductive
18:32 dalek rakudo/lolly: 3550867 | TimToady++ | src/Perl6/ (2 files):
18:32 dalek rakudo/lolly: trap old (;) usages unless LOLLY set
18:32 dalek rakudo/lolly: review: https://github.com/rakudo/rakudo/commit/3550867f44
18:32 pmichaud so, at the moment I wonder if lizmat++ 's first solution is the correct one.  We already have an  infix:<+>(Duration, Duration) candidate, for example, and we end up doing that for many of the other types
18:33 Ven .u ⍝
18:33 yoleaux U+235D APL FUNCTIONAL SYMBOL UP SHOE JOT [So] (⍝)
18:33 pmichaud multi sub infix:<+>(Duration:D $a, Duration:D $b) {
18:33 Ven o/, #perl6.
18:33 pmichaud multi infix:<+>(Num:D \a, Num:D \b) {
18:33 pmichaud multi infix:<+>(Rational \a, Rational \b) {
18:33 pmichaud etc.
18:33 dalek rakudo/lolly: ddfb572 | (Elizabeth Mattijsen)++ | t/spectest.data:
18:33 dalek rakudo/lolly: Add S02-types/array-shapes.t: properly fudged now
18:33 dalek rakudo/lolly: review: https://github.com/rakudo/rakudo/commit/ddfb572cc9
18:33 dalek rakudo/lolly: a22a00a | (Elizabeth Mattijsen)++ | src/core/Exception.pm:
18:33 dalek rakudo/lolly: Add X::Op::TheseTwo exception
18:34 dalek joined #perl6
18:34 cooper joined #perl6
18:35 dalek joined #perl6
18:35 pmichaud m:  say Date.new(2014,08,18) - Date.new(2014,07,18)
18:35 camelia rakudo-moar ddfb57: OUTPUT«Potential difficulties:â�¤    Leading 0 does not indicate octal in Perl 6; please use 0o8 if you mean thatâ�¤    at /tmp/C2dMsb7bKp:1â�¤    ------> [32msay Date.new(2014,08[33mâ��[31m,18) - Date.new(2014,07,18)[0mâ�¤    Leading 0 does not indicate octa…»
18:35 pmichaud m:  say Date.new(2014,8,18) - Date.new(2014,7,18)
18:35 camelia rakudo-moar ddfb57: OUTPUT«31␤»
18:35 pmichaud m:  say Date.new(2014,8,18) + Date.new(2014,7,18)
18:35 camelia rakudo-moar ddfb57: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤  in sub infix:<+> at src/gen/m-CORE.setting:4313␤  in block  at /tmp/UB9vs001Ym:1␤␤»
18:35 pmichaud that's another weirdish one :)
18:35 TimToady unfortunately I think we'll the octal warning for a goodly long time yet
18:36 TimToady though it should need to warn for 07 :)
18:36 pmichaud yes, I agree on octal
18:36 TimToady *shoudn't
18:36 TimToady my n't is flaking again
18:37 * TimToady merged in lolly such that it complains on (;) and [;] unless you set LOLLY
18:37 TimToady so we can now fix all the old usages
18:37 Ven https://twitter.com/puffnfre​sh/status/500273284794290176
18:37 pmichaud you all are working on LoL stuff, I gather?
18:38 PerlJam .oO( What do (;) and [;] have to do with adverbs?!?   ;-)
18:38 TimToady among otehr things
18:38 Ven ^ it's funny because gather used a behaviour deprecated by lolly :P
18:38 TimToady adverbs parse that way
18:38 TimToady :foo(bar) is the same as foo => (bar)
18:43 TimToady pmichaud: Mouq++ is working on multi-dim subscripts like @a[*;1], while I've just changed circumfixes to be list of list or array of list composers, instead of braceless blocks
18:43 TimToady but we need a small deprecation cycle on the latter to find old sequential (;) and change it to SEQ(;) or $(;)
18:43 TimToady well, or any sigil contextualizer
18:44 TimToady so unless one sets LOLLY, you get the old semantics with an error, rather than the composers
18:44 pmichaud okay... is LOLLY a temporary thing?
18:44 TimToady yes, just one month or so
18:44 pmichaud works for me
18:44 TimToady or maybe just one release
18:45 TimToady (one Star release, that is)
18:45 TimToady we just need to be sure that (;) misbehaves overtly rather than covertly for a bit
18:46 pmichaud I'll follow along for a little while longer and then deep dive to see where Lists are at
18:46 TimToady by the way, there's a spectest that assumes LOLLY already, so spectest without fails one more test than with
18:46 TimToady I've been studying up on them, so that we can talk intelligently
18:47 pmichaud that will be insanely helpful :)
18:47 TimToady my current notion is that we start with gather/take, figure out how to parameterize to support eager and batch and pure code, then figure out how to handshake that down from the context
18:48 pmichaud my last notion was figuring out eager and batch first, then the rest... but I agree gather/take is a good starting point as well
18:48 TimToady but just batching gather/take would make a lot of things run way faster
18:48 TimToady supposing we know that we may, of course
18:48 pmichaud I think it depends on whether we consider gather/take to be the fundamental way that many common operations are performed
18:49 TimToady it seems like the endpoint for almost all laziness these days
18:49 pmichaud I wonder if that's because it's naturally that way, or if it's because it's the only thing we had for doing good laziness
18:49 TimToady and the moarfolk are stressing at all the cache resources consumed by the co-routines
18:50 TimToady well, I also think the exception on every take is perhaps a mistake
18:50 pmichaud oh, I'm sure of that.
18:50 pmichaud gather/take definitely needs a fundamental rethink
18:50 TimToady so we need to divorce the yield from the push
18:50 lizmat might I mention that take should work from multiple threads...
18:50 TimToady (in impl, not in interface)
18:50 lizmat now that we have them
18:51 pmichaud well, I think gather/take should be able to work efficiently threadless, too.
18:51 pmichaud I've often had the feeling that too many things were being implemented using gather/take just because it was easy to do so, and not because it is the best/most efficient way to do it
18:51 dalek roast: 23da793 | (Elizabeth Mattijsen)++ | S02-types/ (7 files):
18:51 dalek roast: YABO dies_ok -> throws_like migration
18:51 dalek roast: review: https://github.com/perl6/roast/commit/23da793b52
18:52 pmichaud I'm not sure that's the case... but every time we came up with a gather/take solution for things (like sequences) I cringed a little inside
18:52 lizmat fwiw, I agree with pmichaud on that
18:52 TimToady well, sure, but it would be nice if gather/take didn't penalize us quite so much for the abstraction
18:52 pmichaud if gather/take can be made insanely efficient, then I'd have no qualms with it... I'm just not sure it can be made insanely efficient.
18:52 pmichaud s:g/insanely//
18:53 TimToady but when I fixed the for loop lazy bug, I started figuring out that there was a two-way negotiation that was needed
18:53 pmichaud yes, that's where I left off -- I was working on ways of getting the two-way negotiation in place
18:53 TimToady and currently mapiter lets the lower interator decide whether to batch
18:53 pmichaud or at least so that in the common case the negotiations work out correctly
18:53 TimToady so Range automatically batches, for instance, since it's pure
18:54 TimToady it will also help to be able to figure out if the code inside a gather is pure, or can be marked as pure wrt the outer world
18:54 pmichaud the challenge with gather/take was always that it had to be mostly lazy
18:54 TimToady then you can just batch or eager it automatically
18:55 pmichaud in order to support things like  lines()
18:55 TimToady yes, well, lines ain't pure
18:55 TimToady it has external side effects
18:55 dalek rakudo/nom: 827ede7 | (Elizabeth Mattijsen)++ | t/spectest.data:
18:55 dalek rakudo/nom: Add t/spec/S02-types/int-uint.t
18:55 dalek rakudo/nom:
18:55 dalek rakudo/nom: This test file is basically a noop at the moment, but will autmatically
18:55 dalek rakudo/nom: become active as soon as 'my int8 $a; say $a.WHAT' says "int8" correctly.
18:55 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/827ede72fe
18:55 pmichaud right
18:55 pmichaud and I've often wanted adverbs or options to gather/take to indicate things like infiniteness
18:55 Ven why explicit?
18:55 pmichaud purity or batching could be another dimension
18:56 TimToady but 'for eager lines()' should help for that
18:56 pmichaud I'll have to catch up later on it... I have some correspondence I have to get done today :0/
18:56 pmichaud :-/
18:56 TimToady Ven: you want an explicit fallback for when you can't solve the halting problem as well as the HEBKAC
18:57 TimToady pmichaud: I know the feeling...
18:57 TimToady HTAAOF
18:57 Ven solving the halting problem in a perl? uh
18:57 cooper joined #perl6
18:58 TimToady the pure marker on gather might just be 'eager gather {...}'
19:00 TimToady hyper and race probably require an immediate loop: 'hyper gather for @foo {...}' or 'race gather for @foo {...}', in which case it knows it can parallelize the loop
19:00 TimToady either that, or the hyper/race distributes the first loop found in the block
19:00 ajr_ PEBKAC I understand, but what's the HE in HEBKAC?
19:01 TimToady Human Existing
19:01 TimToady or some such :)
19:01 ajr_ Ah!
19:01 vanila joined #perl6
19:01 TimToady who is, every now and then, less of a problem than the computer
19:02 vanila Hi all :)
19:02 vanila good luck with perl6
19:02 TimToady we aren't all here
19:02 TimToady thanks!
19:02 ajr_ That transforms the parsing of "as well as" from "in addition to" into "with the same competence as"
19:02 lizmat that;s a new one: Stage parse      : moar(19521,0x7fff7d47b310) malloc: *** error for object 0x7f81736145c0: pointer being freed was not allocated
19:02 lizmat *** set a breakpoint in malloc_error_break to debug
19:02 lizmat make: *** [CORE.setting.moarvm] Abort trap: 6
19:03 timotimo it kind of seems like luck has been in good supply recently
19:03 lizmat rebuilding from scratch
19:04 [Sno] joined #perl6
19:04 muraiki joined #perl6
19:07 * TimToady also rebuilds everything from scratch Just to Make Sure
19:07 TimToady "I'm compiling."
19:11 perlpilot joined #perl6
19:15 [Coke] lizmat++, getting everything into spectest.data!
19:15 [Coke] (well, more things)
19:16 cooper joined #perl6
19:16 mr-foobar TimToady: what do you think of expressivity in languages like forth ? # brainstorming myself to write a forth-ish language.
19:17 nwc10 lizmat: I don't see that with ASAN on x86_64 linux
19:18 breinbaas joined #perl6
19:18 [Coke] there are -multiple- hangs in the rakudo.jvm spectest today.
19:24 lizmat fwiw, I cannot build nom right now:
19:24 TimToady mr-foobar: the problem with forth-like languages is that, while they're very expressive, they don't provide enough common culture, so everyone invents their own, which doesn't interop very well
19:24 lizmat seems to segfault in stage parse:
19:24 lizmat Stage parse      : moar(21453,0x7fff7d47b310) malloc: *** error for object 0x7fb7fadcbbe0: pointer being freed was not allocated
19:24 lizmat *** set a breakpoint in malloc_error_break to debug
19:24 lizmat make: *** [CORE.setting.moarvm] Abort trap: 6
19:25 * colomon is glad to see pmichaud++ back
19:25 TimToady everything builds here (well, perl-p is still compiling)
19:25 lizmat bulds ok if I go back to 755ec1b20534ce27a0c1f7e8ffe0ca4ca06e8235
19:26 lizmat TimToady: are you bullding with --mor-option=--enable=jit ?
19:26 TimToady yes
19:26 lizmat *moar
19:27 lizmat then I have no explanation
19:28 TimToady actually, no, I'm using --enable-jit
19:28 TimToady you have an =
19:29 TimToady if you actually have --enable=jit, I suspect it's not enabling the jit, but you'd think it would carp
19:30 dalek perl6-roast-data: 4b23b5b | coke++ | / (6 files):
19:30 dalek perl6-roast-data: today (automated commit)
19:30 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/4b23b5b55f
19:30 timotimo i wonder if moar --version should point out if an environment variable has disabled jit
19:32 TimToady well, at least it says "with JIT support" if it's compiled in
19:32 TimToady it seems like adding (disabled) would be reasonable
19:32 cooper joined #perl6
19:33 TimToady btw, perl6-p also compiled successfully
19:33 TimToady lemme try on a different machine that never had lolly to see if I've cheated
19:34 TimToady m: say (<a b c>; <d e f>).perl
19:34 camelia rakudo-moar 9f4db3: OUTPUT«WARNINGS:␤Useless use of "a b c" in expression "a b c" in sink context (line 1)␤("d", "e", "f")␤»
19:35 TimToady still the old one
19:36 TimToady lunch &  "I'm compiling."
19:40 telex joined #perl6
19:42 lizmat TimToady: without jit, it compiles and builds ok
19:42 lizmat so we have some LOLLY / jit interaction :-(
19:42 TimToady with jit, compiles and builds okay on my other machine
19:43 TimToady are you compiling with LOLLY set?
19:43 * TimToady isn't...
19:45 * TimToady tries with, for funs
19:45 FROGGS ... and profit
19:46 TimToady compiles fine with LOLLY set too
19:46 TimToady this is on two different Linux machines running Mint, both 64-bit
19:47 TimToady do you have any uncommitted changes sitting about?
19:50 nwc10 spectests for me on x86_64 linux with ASAN, with and without JIT
19:50 nwc10 so, also confusd
19:51 TimToady or any other MVM envvars set?
19:53 Ven joined #perl6
19:54 Ven TimToady: eager gather means you can't have pure infinite gathers, right?
19:55 TimToady sure, just leave out the 'eager'
19:55 cooper joined #perl6
19:55 TimToady gather still defaults to lazy
19:55 lizmat no uncommitted changes, just OSX
19:56 TimToady .oO("just")
19:56 Ven TimToady: then that means there's no pure marker on it anymore
19:56 lizmat $ set | grep MVM
19:56 lizmat $
19:56 colomon_ joined #perl6
19:56 TimToady Ven: there never was, that I now of
19:56 TimToady *know
19:56 lizmat I'm not sure how to set LOLLY
19:57 retupmoc1 joined #perl6
19:57 lizmat LOLLY=1 ?
19:57 Ven lizmat: LOLLY=1 cmd ?
19:57 ingy1 joined #perl6
19:57 yeltzooo9 joined #perl6
19:57 daxim_ joined #perl6
19:57 lizmat rebuilding with jit enabled, and then making with LOLLY
19:57 Ven TimToady: I mean, `eager` meaning `pure` instead of `finite`
19:57 Psyche^ joined #perl6
19:57 avuserow_ joined #perl6
19:58 TimToady eager just means I don't care if this gather has side effects, just do 'em all now
19:58 TimToady so "treat as if pure"
19:58 MilkmanDan joined #perl6
19:58 robinsmidsrod joined #perl6
19:58 Possum joined #perl6
19:59 TimToady it's not a pure marker in the sense that you can compile-time eval it though, or constant fold it
19:59 TimToady (unless the gather is already running at compile time)
20:00 TimToady *can't
20:00 TimToady grr
20:00 * TimToady glares at his n't key, which sometimes produces '', and sometimes produces 'n'
20:01 dwarring joined #perl6
20:01 TimToady well, I suppose "can" also makes sense if you read it right
20:02 lizmat indeed, builds ok now with LOLLY=1 and jit enabled
20:02 lizmat running spectest now
20:04 Ven TimToady: so the list is allowed not to be reifed on `eager` ?
20:04 TimToady only if it's explicitly marked as infinite; otherwise eager is supposed to try real hard
20:05 TimToady eager is short for "mostly eager", which means unless known infinite
20:06 TimToady gather/take can't know, therefore don't put eager on a loop known to be infinite
20:06 TimToady or on a gather containing such a loop
20:06 TimToady or you will find out how much memory you have :)
20:06 TimToady and that you don't have even more of it
20:07 Ven then we're back to what I said first. if you use `eager` to indicate pureness, you're making it impossible to have an infinite gather marked pure, right?
20:07 TimToady well, arguably an infinite loop is a side effect :P
20:08 guru joined #perl6
20:09 TimToady and the only thing that prevents that side effect is treating the loop as lazy, which is the default anyway
20:09 guru joined #perl6
20:13 Ven I strongly disagree with something lazy being a side effect :)
20:15 TimToady I didn't say that.
20:15 TimToady I said it has the side effect of using up your memory if it *isn't* lazy.
20:17 cooper joined #perl6
20:20 TimToady lizmat: so it might be worth turning LOLLY back off and seeing if it still compiles, since it might have been a transient misconfig
20:23 lizmat alas: Stage parse      : moar(34345,0x7fff7d47b310) malloc: *** error for object 0x7fdd215999b0: pointer being freed was not allocated
20:23 lizmat *** set a breakpoint in malloc_error_break to debug
20:23 lizmat make: *** [CORE.setting.moarvm] Abort trap: 6
20:24 perlpilot joined #perl6
20:24 lizmat builds ok with LOLLY  :-(
20:24 TimToady bizarre
20:25 [Coke] aw, I can't build niecza with latest toolchain on os x
20:25 TimToady nor on Linux
20:25 TimToady niecza doesn't work under mono 3
20:25 TimToady 'course, it's more fun to blame OS X
20:26 TimToady lizmat: can only suggest trying gdb or some such to see where it thinks it is
20:27 TimToady or get someone else on OS X to guinea pig it for you
20:28 nwc10 valgrind /home/nicholas/Sandpit/moar-g-jit/bin/moar --libpath="/home/nicholas/Sandpi​t/moar-g-jit/languages/nqp/lib" perl6.mo
20:28 nwc10 arvm --setting=NULL --ll-exception --optimize=3 --target=mbc --stagestats --outp
20:28 nwc10 ut=CORE.setting.moarvm src/gen/m-CORE.setting
20:28 nwc10 no problem. so confused :-(
20:28 TimToady but that's really strange; I'm guessing something is going wrong in fetching a non-existent envvar on OS X
20:29 TimToady since that's about the only difference between LOLLY and non-LOLLY
20:29 TimToady unless it blows up trying to call .obs
20:29 TimToady but it shouldn't be doing that in compiling perl6-m anyway, since the source is lolly-clean
20:30 TimToady or lollipop, as we were calling it yesterday
20:30 TimToady nwc10: are you on osx?
20:33 lizmat aha: it builds with LOLLY=0
20:33 lizmat so indeed, the *absence* of the envvar is the problem
20:34 TimToady très étrange
20:35 TimToady the code in question is simply: if !nqp::getenvhash<LOLLY>
20:35 lizmat yup, looking at it
20:35 lizmat now, I seem to recall problems with %ENV in the past
20:36 FROGGS I also use nqp::getenvhash()<V5TRACE>, and this version did not cause problems in the past
20:37 FROGGS nqp-m: say 42 if !nqp::getenvhash<LOLLY>
20:37 camelia nqp-moarvm: OUTPUT«Confused at line 2, near "say 42 if "␤   at gen/moar/stage2/NQPHLL.nqp:369  (/home/p6eval/rakudo-inst-2/language​s/nqp/lib/NQPHLL.moarvm:panic:105)␤ from gen/moar/stage2/NQP.nqp:913  (/home/p6eval/rakudo-inst-2/language​s/nqp/lib/nqp.moarvm:comp_unit:872)␤ fro…»
20:37 dalek rakudo/nom: 9a2f3e5 | (Elizabeth Mattijsen)++ | src/Perl6/Actions.nqp:
20:37 dalek rakudo/nom: DeTAB
20:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9a2f3e5019
20:37 FROGGS nqp-m: say(42) if !nqp::getenvhash<LOLLY>
20:37 camelia nqp-moarvm: OUTPUT«42␤»
20:37 TimToady surely the parens wouldn't make a difference?
20:37 FROGGS nqp-m: say(42) if !nqp::getenvhash()<LOLLY>
20:37 camelia nqp-moarvm: OUTPUT«42␤»
20:38 TimToady well, but that's not running on olx
20:38 TimToady *osx
20:38 FROGGS true...
20:38 FROGGS is that LOLLY check in nqp code?
20:38 TimToady funny typo, typing l instead of s, wrong ring fingy
20:38 lizmat FROGGS: yes
20:38 TimToady yes, it's in src/Perl6/Actions.npq
20:39 cooper joined #perl6
20:39 TimToady m: say (<a b c>; <d e f>).perl
20:39 camelia rakudo-moar 827ede: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/1dedAOF5XX�Unsupported use of ; in brackets as a statement sequence; in this and future versions please use SEQ(;) or $(;) for C comma semantics (or set LOLLY for the new list-of-list semantics fo…»
20:39 TimToady there it is
20:39 FROGGS that's what I did in v5's Actions.nqp: my $V5DEBUG := +nqp::getenvhash()<V5DEBUG>;
20:40 FROGGS so, perhaps numifying it helps here too
20:40 TimToady well, if boolifying is bogus on osx, we wanna know it
20:42 TimToady m: BEGIN $*ENV<LOLLO> = 1; say (<a b c>; <d e f>).perl; # curious
20:42 camelia rakudo-moar 827ede: OUTPUT«===SORRY!===␤postcircumfix:<{ }> not defined for type Failure␤»
20:42 TimToady heh
20:42 TimToady oh
20:42 Ven joined #perl6
20:42 TimToady m: BEGIN %*ENV<LOLLO> = 1; say (<a b c>; <d e f>).perl; # curious
20:42 camelia rakudo-moar 827ede: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/pOd5dX0B8c�Unsupported use of ; in brackets as a statement sequence; in this and future versions please use SEQ(;) or $(;) for C comma semantics (or set LOLLY for the new list-of-list semantics fo…»
20:42 TimToady aww
20:42 TimToady oops
20:42 TimToady m: BEGIN %*ENV<LOLLY> = 1; say (<a b c>; <d e f>).perl; # curious
20:42 camelia rakudo-moar 827ede: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/WdyBnisJpf�Unsupported use of ; in brackets as a statement sequence; in this and future versions please use SEQ(;) or $(;) for C comma semantics (or set LOLLY for the new list-of-list semantics fo…»
20:43 TimToady naw, nqp don't see it
20:43 TimToady m: BEGIN %PROCESS::ENV<LOLLY> = 1; say (<a b c>; <d e f>).perl; # curious
20:43 camelia rakudo-moar 827ede: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/AmfAjWEmM5�Unsupported use of ; in brackets as a statement sequence; in this and future versions please use SEQ(;) or $(;) for C comma semantics (or set LOLLY for the new list-of-list semantics fo…»
20:43 TimToady nope
20:44 TimToady probably have to do a much fancier lookup to find that
20:44 FROGGS m: BEGIN nqp::bindkey(nqp::getenvhash(), 'LOLLY', 1); say (<a b c>; <d e f>).perl; # curious
20:44 camelia rakudo-moar 827ede: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/fxA4NhB1aw�Unsupported use of ; in brackets as a statement sequence; in this and future versions please use SEQ(;) or $(;) for C comma semantics (or set LOLLY for the new list-of-list semantics fo…»
20:45 timotimo my desktop is quite busy running benchmarks of the most current rakudo/nqp with most curren moarvm with and without jit ...
20:47 yukko joined #perl6
20:48 timotimo it may have been a bad idea to set --enough-time=10 ...
20:49 timotimo and --runs=4, too
20:50 Ven hehehe.
20:51 TimToady well, %*ENV<LOLLY> doesn't find it at all, so I don't think npq sets %*ENV
20:51 timotimo the other benchmark runs i did recently had the same settings, so i thought it'd look misleading if i put the latest version into the same graph and they end further to the left
20:57 cooper joined #perl6
20:59 lizmat sleep&
21:02 ajr_ A claim that the problem of parallel processing has been solved: http://www.eetimes.com/author.asp?se​ction_id=36&amp;doc_id=1323553&amp;
21:03 ajr_ (I'll believe it when I see it in operation.)
21:05 colomon joined #perl6
21:06 PerlJam ajr_: It's super simple!  They just used cold fusion  ;)
21:07 [Coke] PerlJam: I use ColdFusion 5 days a week,a nd doubt your claim.
21:11 Ven :((
21:13 timotimo it's a "slap yourself on the forehead and exclaim d'oh" simple approach, yeah?
21:13 dalek specs: d3c3141 | TimToady++ | S02-bits.pod:
21:13 dalek specs: document lollipop composers
21:13 dalek specs: review: https://github.com/perl6/specs/commit/d3c3141b43
21:13 dalek specs: e21c13e | TimToady++ | S04-control.pod:
21:13 dalek specs: undocument old lollipop semantics
21:13 dalek specs: review: https://github.com/perl6/specs/commit/e21c13e42d
21:13 timotimo it'd be nice if that were truly something that works
21:15 Ven so, SEQ is a thing now ?
21:16 * Ven is really scared of ** and ; because they feel fragile
21:17 cooper joined #perl6
21:17 dalek specs: 430ee6e | TimToady++ | S03-operators.pod:
21:17 dalek specs: one more lollification
21:17 dalek specs: review: https://github.com/perl6/specs/commit/430ee6ee20
21:17 TimToady m: SEQ(my $x = 42; $x).say
21:17 camelia rakudo-moar 827ede: OUTPUT«42␤»
21:18 TimToady m: SEQ(42; 43)
21:18 camelia rakudo-moar 827ede: OUTPUT«WARNINGS:␤Useless use of constant integer 42 in sink context (line 1)␤»
21:18 TimToady sure looks like it :)
21:18 Ven like perl5's my $ = (.., ..) ?
21:18 TimToady it's the C comma in disguise, yes
21:19 TimToady or you can think of it as a block without the {}
21:19 TimToady so declarations aren't limited to its scope
21:19 Ven that's the only difference with do{}, right?
21:19 TimToady but I decided that the (<a b c>; <d e f>) form was more useful for multi-dimensional lists
21:20 TimToady yes
21:20 Ven yes, I;ve been backlogging a bit.
21:20 TimToady well, and it works when you pass it as a handler to nqp for gather/take, turns out
21:25 cooper joined #perl6
21:25 cooper joined #perl6
21:27 cooper- joined #perl6
21:32 cooper joined #perl6
21:35 pmurias joined #perl6
21:35 Ven joined #perl6
21:36 timotimo the benchmarks are now close-ish to completion ...
21:37 dalek nqp-js: 4722696 | (Pawel Murias)++ | / (4 files):
21:37 dalek nqp-js: nqp-loader uses the --source-map option, the source maps still don't get to the browser.
21:37 dalek nqp-js: review: https://github.com/pmurias​/nqp-js/commit/4722696ef2
21:37 dalek nqp-js: 5746cd3 | (Pawel Murias)++ | / (4 files):
21:37 dalek nqp-js: nqp-loader creates source maps.
21:37 dalek nqp-js: review: https://github.com/pmurias​/nqp-js/commit/5746cd3616
21:42 Ven now to learn more about ** and ;; :P
21:43 timotimo me, too.
21:47 cooper joined #perl6
21:49 Ven joined #perl6
21:53 avuserow_ joined #perl6
21:54 Ven I'm kinda excited to see LoL and stuff in action, though. They're a bit of the last bits of 6.0 to me
21:54 pmurias I should learn more about it, as I'm only writing nqp, I'm missing out on the cool Perl 6 features ;)
21:55 Ven "what is LoL" *baby don't zip me, don't zip me, no moar* # mouq++
21:56 Ven pmurias: I really think you're going to have a hard time implementing some perl6 features in rakudo-js :P
21:57 PerlJam Ven: It's all just a Simple Matter of Programming :)
22:00 timotimo http://t.h8.lv/p6bench/2014-​08-18-longterm_history.html - interesting.
22:00 timotimo http://t.h8.lv/p6bench/2014-08​-18-longterm_rakudo-moar.html - didn't look at this thoroughly yet
22:00 timotimo http://t.h8.lv/p6bench/2014-​08-18-longterm_nqp-moar.html - same thing here
22:01 cooper joined #perl6
22:03 baest_ joined #perl6
22:03 timotimo now i'm wondering if we'll get to see the param_* ops jitted before this month's release
22:05 timotimo i'm glad to see nqp-moar-jit gets noticably faster at rc-forest-fire
22:06 BooK_ joined #perl6
22:06 broquaint joined #perl6
22:06 Psyche^_ joined #perl6
22:06 xragnar_ joined #perl6
22:07 gtodd1 joined #perl6
22:10 eternaleye_ joined #perl6
22:12 lue joined #perl6
22:19 rurban implemented the opendir/nextfiledir iterator for nqp-p (parrot only has readdir => list)
22:25 timotimo http://t.h8.lv/p6bench/2014-08-​18-longterm_rakudo_history.html - here's a history of only rakudo-moar without nqp-moar making the differences in rakudo's performance invisible to the naked eye
22:29 dalek nqp/p-opendir-gh177: 85f5ff4 | rurban++ | src/vm/parrot/ (2 files):
22:29 dalek nqp/p-opendir-gh177: implement missing opendir/nextfiledir/closedir ops in terms of readdir
22:29 dalek nqp/p-opendir-gh177:
22:29 dalek nqp/p-opendir-gh177: The other backends jvm and moar provide the opendir/nextfiledir iterator.
22:29 dalek nqp/p-opendir-gh177: Mimic it with a parrot ArrayIterator over the string list provided by Parrot_file_readdir().
22:29 dalek nqp/p-opendir-gh177: review: https://github.com/perl6/nqp/commit/85f5ff49a6
22:29 ivanshmakov joined #perl6
22:30 dalek nqp/p-opendir-gh177: 2dd934b | rurban++ | src/vm/parrot/ (2 files):
22:30 dalek nqp/p-opendir-gh177: Implement missing opendir/nextfiledir/closedir ops in terms of readdir
22:30 dalek nqp/p-opendir-gh177:
22:30 dalek nqp/p-opendir-gh177: The other backends jvm and moar provide the opendir/nextfiledir iterator.
22:30 dalek nqp/p-opendir-gh177: Mimic it with a parrot ArrayIterator over the string list provided by
22:30 dalek nqp/p-opendir-gh177: Parrot_file_readdir().
22:30 dalek nqp/p-opendir-gh177:
22:30 dalek nqp/p-opendir-gh177: Fixes GH #177 (not yet, WIP)
22:30 dalek nqp/p-opendir-gh177: review: https://github.com/perl6/nqp/commit/2dd934bd44
22:35 cooper joined #perl6
22:40 colomon joined #perl6
22:50 cooper joined #perl6
22:52 xenoterracide joined #perl6
22:55 rindolf joined #perl6
23:09 cooper joined #perl6
23:26 TimToady something dramatic happens at 2^31...  sign problem?  gives up and takes a sad path?
23:30 cooper joined #perl6
23:35 TimToady but yeah, that last one definitely shows the jit is helping Perl 6, not just NQP
23:49 cooper joined #perl6

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

Perl 6 | Reference Documentation | Rakudo