»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by masak on 12 May 2015.
dalek kudo/nom: e373fbf | TimToady++ | src/core/Any-iterable-methods.pm:
common listops should propage laziness
00:05
kudo/nom: fee365b | TimToady++ | src/core/Any.pm:
lazy-if is a no-op on non-Iterables
ast: 4292ebe | TimToady++ | integration/advent2009-day23.t:
map listop now propagates laziness
ast: bd8f5fa | TimToady++ | S02-literals/radix.t:
missing colon on :2
ast: be0c818 | TimToady++ | S02-names/pseudo.t:
distinguish OUTERS from OUTER these days
ast: b318b44 | TimToady++ | S02-names-vars/list_array_perl.t:
GLRify some fudges
ast: fa1ebb1 | TimToady++ | S02-names-vars/perl.t:
update tests on recursive structures
ShimmerFairy mantovani: I'd recommend trying to compile MoarVM for your system, and seeing where it breaks, if anywhere. Even if you're not able to fix it, I'm sure we'd like to know where MoarVM needs improvement on other systems :) 00:06
mantovani: moarvm.org/ website for MoarVM 00:07
dalek ast: 3e0760f | TimToady++ | S02-types/baghash.t:
bags no longer iterable
00:18
ast: 7e338ab | TimToady++ | S02-types/ (4 files):
mixy things aren't Iterable
mantovani ShimmerFairy: thank you 00:23
dalek ast: 8088700 | TimToady++ | S03-metaops/cross.t:
X is naturally chunky now
Zoffix TimToady++ is on the roll! :)
ShimmerFairy mantovani: you're welcome, and I hope you'll find P6 useful for you :) 00:24
mantovani Perl6 the language is so good that there is not adjective to describe it. 00:25
dalek kudo/nom: fe4d6ca | TimToady++ | src/Perl6/ (2 files):
implement hyper prefix
00:38
ast: 783eba7 | TimToady++ | S03-metaops/eager-hyper.t:
hyper prefix parses now
TimToady well, but now I'm gonna be on a dinner roll :)
afk &
ShimmerFairy .ask TimToady oh, speaking of hyper, I've been wondering if »».foo would be a nice short version of .race.foo (like ».foo for .hyper.foo), or if that's too cute a syntax in this case. 00:53
yoleaux ShimmerFairy: I'll pass your message to TimToady.
flussence jit was x86-64-only last I heard... has anything changed on that front recently? 01:10
JimmyZ .tell lizmat re gist.github.com/li???zmat/b74af9a1d79a9f48bf8b, s/if $!todo/if $!todo >= 0/ 02:58
yoleaux JimmyZ: I'll pass your message to lizmat.
dalek kudo/nom: e786ddd | TimToady++ | src/Perl6/ (2 files):
add race prefix while we're at it
04:00
masak morning, #perl6 05:18
[Tux] test 50000 35.454 35.368 06:34
test-t 50000 36.665 36.579
nine flussence: no, it's still x86_64 06:35
moritz \o masak, nine, [Tux], * 07:02
[Tux] o/
Ven not sure who to ping for www.slideshare.net/garux/introduo-ao-perl-6, but there's a typo in the `if` slide 97 07:21
mst I would bet garu_ 07:22
garu_: ^^
lizmat messages? 07:32
yoleaux 02:58Z <JimmyZ> lizmat: re gist.github.com/li???zmat/b74af9a1d79a9f48bf8b, s/if $!todo/if $!todo >= 0/
RabidGravy is back 07:51
Brrrr!
lizmat RabidGravy o/ 07:56
RabidGravy are we all well? 08:02
lizmat we're all a bit tired... I guess :-)
pmurias hi 08:14
_itz "the ibiza comedown, man?" :) 08:16
RabidGravy :) 08:21
brane wasn't entirely online yesterday
dalek kudo/nom: 3ae4f4f | lizmat++ | src/core/List.pm:
Cosmetic change on foo xx N
08:27
dalek kudo/nom: b5a5bfe | lizmat++ | src/core/List.pm:
Make rand xx N about 2.5x faster

  JimmyZ++ for the pointer on why it didn't work before
10:30
Loren Evening , #perl6 and everyone. 11:03
moritz jnthn++ # news.perlfoundation.org/2015/09/per...ial-g.html 11:09
CQ Native and Shaped Arrays (NSA) .... maybe we can rename that? :) 11:13
JimmyZ No Such Agency 11:14
nine CQ: where would be the fun then?
_itz wasn't classic perl written by the NSA anyway :) 11:18
moritz no, JPL 11:19
a different TLA :-)
jnthn moritz: heh, you just beat me to posting that here :)
jnthn was backlogging to see if anyone had posted it already ;)
moritz jnthn: well, that was my advantage, I didn't backlog :-) 11:20
jnthn TimToady: I was wondering if hyper and race as prefux are really going to work out well, in so far as .hyper and .race opt you into that processing model, and putting them "on the end" doesn't work quite so well 11:21
jnthn TimToady: Of note, I was thinking race for @a -> $x { } should be @a.race.map(-> $x { }) 11:29
brrt good *
have we any idea on the panda breakage yet? 11:30
nine jnthn: can't the compiler generate the @a.race.map code for race for @a?
brrt: not that I'm aware of
jnthn nine: Prolly, though TimToady++'s patch didn't do that, which is why I'm moting it :)
*noting
brrt i've ruled out: reprop devirt, different compilation strategies, and i think i've ruled out extop misjit, but not 100%
i mean different compilation output 11:31
jnthn Is it inline sensitive?
OSR sensitive?
nine brrt: are we sure that my code is actually correct? Maybe it works more or less by accident and the JIT just breaks what ought to be broken anyway?
brrt it seems pretty correct to me
jnthn nine: The JIT should not change semantics
brrt jnthn: i'll test
jnthn brrt: Figure you know already, but there's env vars for those also 11:32
brrt i do :-)
brrt hmm, wait 11:33
_itz GSK::Simple uses nqp to manipulate a queue and uses the obsolete "p6parcel", is that fairly simple to fix with a replacement nqp op or not? 11:35
brrt insenstive to OSR (iirc, MVM_SPESH_OSR_DISABLE=1 should kill osr?)
it is, in fact, inline-sensitive
can't really claim that makes the searchspace much smaller 11:36
jnthn Well, it means it's JIT + inline 11:38
Goblin_ How to deploy perl6 application? 11:38
jnthn _itz: Try nqp::hllize
_itz ty
_itz that seems to work .. at least the test passes 11:44
brrt hmmmmmmmmmm
do you know just how many frames are compiled in panda? :-(
659 frames before this stuff is even run 11:46
brrt talking about needles and haystacks :-) 11:49
anyway, bbiab
dalek k-simple: 8102aba | (Steve Mynott)++ | lib/GTK/Simple.pm6:
rename nqp::p6parcel to nqp::hllize as suggested by jnthn++ test now passes post GLR
11:52
k-simple: 9bfe7e9 | niner++ | lib/GTK/Simple.pm6:
Merge pull request #14 from stmuk/master

rename nqp::p6parcel to nqp::hllize as suggested by jnthn++ test now passes post GLR
_itz hmm I'm still seeing problems with nativecall not finding debian .so with .0 on the end 11:54
ShimmerFairy _itz: make sure it's not really a linker script 12:01
_itz I'm wondering if it's because I'm using multiarch 12:02
colomon Could not download module metadata: No such method 'host' for invocant of type 'HTTP::Request' 12:11
:/
timotimo _itz: usually a -dev script will create the .so symlink 12:15
DrForr Ooo, Gtk fixes, maybe once I get back in the swing of things it'll be time to resurrect a project... 12:22
lizmat m: say [] xx 2 # under the one arg rule, shouldn't that be () ?
camelia rakudo-moar b5a5bf: OUTPUT«([] [])␤»
_itz timotimo: ah I've never noticed that .. oddly aptitude installed 54 packages rather than just the -dev one in order to set that one sym link 12:23
lizmat m: say $[] xx 2 # proper way to do this post GLR ?
camelia rakudo-moar b5a5bf: OUTPUT«([] [])␤»
nine lizmat: would one-arg make any sense at all with xx? 12:24
_itz there is probably some clever debian dpkg configuration to automatically install -dev for everything 12:24
lizmat m: say ((1,2) xx 2)
camelia rakudo-moar b5a5bf: OUTPUT«((1 2) (1 2))␤»
lizmat shouldn't that be (1 2 1 2) ? 12:25
m: say (Slip(1,2) xx 2)
camelia rakudo-moar b5a5bf: OUTPUT«((1 2) (1 2))␤»
moritz lizmat: I would have expected a flat List/Seq too
nine m: say flat (1,2) xx2 12:26
camelia rakudo-moar b5a5bf: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wgPAyihMst␤Two terms in a row␤at /tmp/wgPAyihMst:1␤------> 3say flat (1,2)7⏏5 xx2␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ …»
nine m: say flat (1,2) xx 2
camelia rakudo-moar b5a5bf: OUTPUT«(1 2 1 2)␤»
lizmat please note that my last commit may have broken this
I'm going to revert
dalek kudo/nom: 4601fcd | lizmat++ | src/core/List.pm:
Revert "Make rand xx N about 2.5x faster"

Alas, some subtleties of xx are not covered by this patch. And the easy fix does not seem to re-introduce the original behaviour. So reverting for now until we get more info.
12:28
lizmat fwiw, giving up on speeding up xx for now... it is a tangled web 12:29
nine lizmat: it's strange that a 2 line implementation can contain such subtleties 12:31
lizmat have you looked at the inside of GATHER lately? :-) 12:32
in any case, I'm not sure what the required semantics are anymore
[] xx 2 should that be ([],[]) or () ?
nine lizmat: good point :) 12:33
lizmat with one arg rule, I would think () and that you need $[] xx 2 to get ([],[])
but that's not the current (tested) behaviour, afaics
ShimmerFairy I see xx as "take this thing, and copy it a bunch", so one-arg rule doesn't make much sense to me at first glance. 12:36
lizmat m: dd (1,2) xx 2
camelia rakudo-moar b5a5bf: OUTPUT«((1, 2), (1, 2)).Seq␤»
lizmat m: say (1,2) xx 2
camelia rakudo-moar b5a5bf: OUTPUT«((1 2) (1 2))␤»
lizmat that's the wrong behaviour I introduced today 12:37
(1,2) should get flattened
however, if I add code to do that, [] gets flattened to () as well 12:38
I guess I need smarter code than @!cached = $!x.() 12:39
nine Evaluates the left argument the number of times specified by the right argument. Each evaluation is in list context, and returns a Seq. The result of all these evaluations is returned as a list of arrays (which will behave differently depending on whether it's bound into a flat context or a lol context). 12:39
brrt on the other hand, there are only a few areas in which the JIT cares about inlining at all 12:43
_itz fatal: could not create leading directories of '/etc/.panda-work/1442925884_1': Permission denied 12:46
!
timotimo huh? why would you be running panda inside /etc ?!?
or is that a bug inside "find writeble directory" somehow?
_itz why does it create the directory relative and not under the ~?
timotimo jnthn: "stabalizing" the concurrency support sounds pretty violent 12:49
brrt it doesn't sound violent to me. different linguistic assumptions? :-) 12:51
DrForr Well, in biology stable often equates to 'dead' :) 12:54
DrForr Maybe 'metastabilizing' :) But that sounds too close to 'metastasizing' which is even worse. 12:55
brrt hmmm 12:56
still not seeing it, sorry :-)
geekosaur typo? "stab-alising" 12:57
DrForr Oh, didn't see the 'a'. 12:58
geekosaur there is something about that typo that makes me focus on the stab- instead of seeing stable/stabile...
_itz its like the ink blots :P 12:59
timotimo brrt: i read it as "stab-alizing"
brrt didn't see the typo either
funny
hmm... as far as i can see everything looks pretty innocent 13:00
oh look at that, we compile 24 different news 13:01
timotimo Ulti: do you remember the parallel primes benchmark? 13:02
Ulti: it doesn't crash any more
_itz what happened to star? 13:07
JVM?
moritz _itz: I've ignored the JVM so far; I just didn't get around to writing a release announcement yet 13:08
help wanted :-)
_itz OK I'll submit a PR for the release announcement shortly 13:09
timotimo what is it that the perl6 community is this time?
thrilled, perhaps?
_itz drinks moar coke zero 13:10
moritz agonized
timotimo hrhr
moritz exuberant
timotimo stabalized
moritz cautiously optimistic
timotimo acoustic 13:12
brrt mad
but that may be just me
moritz intrigued! 13:13
jnthn timotimo: Parallel programming is hard, but I'll tkae a stab at it :P
JimmyZ timotimo: looks like nfa_stat branch is hard :P 13:19
jnthn prolly away for the rest of the day & 13:22
dalek kudo-star-daily: 13e2e30 | coke++ | log/ (9 files):
today (automated commit)
13:30
timotimo JimmyZ: i'm not aware of that branch?
JimmyZ: you mean "nfa to statelist"? 13:32
Ulti: unfortunately i cannot really figure out if it's making progress or just twiddling its thumbs; its memory usage has been constant for a while and its CPU time has just reached 2 hours %)
JimmyZ timotimo: yeah 13:38
[Coke] _itz++ proper drink choices. 13:39
timotimo JimmyZ: you're trying to help out? :) 13:41
JimmyZ timotimo: I did take some time to try to understand nfa.nqp a bit. but I don't unstand it well enough yet to do some changes. 13:48
*understand
timotimo OK 13:50
_itz github.com/rakudo/star/pull/51
timotimo yeah, i put some print statements all over the place to figure out what happens when 13:50
but i was missing the very important point that it's all about before and after serialization
timotimo Ulti: i don't have a comparison value, but that benchmark runs its loop between 7 seconds and 7.5 seconds on my machine 13:52
lizmat I'm wondering whether it would make sense to give Seq and List their own .grep candidates 13:53
in the List/Array case, we wouldn't need to make an iterator to feed the values, right? 13:54
lizmat anyways, running a spectest now on a patch that should make .grep about 2x as fast 13:54
[Coke] RT: 1,027; testneeded: 9; GLR: 3; xmas: 108 13:57
timotimo huh, it kind of seems like the primes-parallel benchmark has a chance to get stuck somehow 14:10
timotimo gist.github.com/MattOates/125009c88f6ee9f5f101 - this is the benchmark in question 14:13
i wonder why replacing the ".elems == 0" with some boolification makes it b0rk
lizmat because .elems vivifies ? 14:17
*reifies ?
timotimo fair enough, but isn't boolifying supposed to get the "does it give at least one item" as truth value?
lizmat well, yeah, but for now, it just checks elems afaik 14:24
I actually added a "bool-only" method to Iterator yesterday
lizmat that would allow to only fetch one value to determine truthness 14:25
lizmat self.pull-one() !=:= IterationEnd; 14:25
timotimo ah, neato 14:26
that probably fits here
we'd .Bool on the result of a .grep to get that, for example?
lizmat timotimo: thing is, that method is not getting called just yet 14:27
lizmat making Seq.Bool call that method, breaks quite a few spectests :-( 14:27
timotimo OK, that's for the future in that case
oh? strange
lizmat a lot of cases of Seq has been consumed 14:27
timotimo ugh, damn 14:28
nine That's gonna be hard to avoid while retaining the performance gain :/ 14:29
timotimo perhaps things where you'd "if @foo { say @foo }" ?
Ulti timotimo cool I can add it to the other ones and see how it does :) 14:29
timotimo please do 14:30
hm, though in that case we've assigned to a @var already
timotimo isn't that what triggers memoization? 14:30
lizmat yes, assigning does that :-) 14:31
timotimo so my example is wrong already 14:32
as in: rakudo would do the right thing
timotimo in the code i pasted, we could use .first, though, right? 14:33
lizmat hmm.... ok, forget the grep opt 14:33
we appear to have to handle "last" in grep as well... 14:34
timotimo hum, that explodes 14:34
lizmat I don't see how I can pull that off in a pull-one (pun intended :-)
Ulti is just building a fresh rakudo and running all the primes benchmarks
timotimo you can just have a CONTROL block, though?
lizmat hmmm.... 14:35
I'm not sure how to set that up, actually...
timotimo not quite as performant as having an "only handle LAST" thingie, though
Ulti oh neat someone fixed the bug with panda?
timotimo yeah, i put in the cheap workaround 14:36
lizmat Ulti: worked around, afaik
timotimo we're still puzzled as to why that problem happens
Ulti I forgot to turn off the JIT so thats good
timotimo++
dalek ar: 0c7abc9 | (Steve Mynott)++ | docs/announce/2015.09.md:
import of Sept 2015 release announce
14:37
ar: 447c714 | (Steve Mynott)++ | docs/announce/2015.09.md:
mention new tutorial
ar: 0b227e3 | lizmat++ | docs/announce/2015.09.md:
Merge pull request #51 from stmuk/master

import of Sept 2015 release announce
Ulti well the parallel benchmark sure is demolishing my CPU 14:50
but its about 70-100x slower than the others if the 7s is similar for me
timotimo d'oh
well, we're doing all numbes up to $max in any case 14:51
Ulti I kind of expected that though since there is a lot of overhead added to something thats a very vectorisable cacheable numeric algorithm
im sure if I tuned it a bit we could do better
like batching up a lot more numbers per thread
still cool that it now works at all :D 14:52
xinming Just curious, Is the Template::Mustache recommended template system for perl6? Or it's actively maintained ATM and most featureful? 14:54
Ulti primes-parallel: ran in 8.23010632768547 seconds (σ = 0.941242886454207 seconds) 14:55
thats a nasty standard deviation too 14:56
primes-inline-loop-upto-sqrt: ran in 0.100610374864713 seconds (σ = 0.0121947911307684 seconds)
for comparisson
the native type version is marginally slower but with a much tighter standard deviation 14:57
Ulti timotimo I'll add in the sqrt constraint that might help :) 14:59
Ulti rather than checking every number 14:59
timotimo could make it better, aye
Ulti primes-parallel: ran in 0.154561128526646 seconds (σ = 0.150724504577809 seconds) 15:01
quite a bit better x____X
guess I should maybe test this actually finds them 15:02
heh
timotimo haha
yeah, i put that in in the middle,t oo
when i made it a whole lot faster, i also made it wrong
Ulti thats really nice
if working
xinming Ignore me, I understand what mustache means now. 15:04
timotimo xinming: i do not know which templating system is the most recommended one 15:05
but i think mustache is rather good 15:06
xinming timotimo: Yes. Thanks for your reply. :-) 15:07
Ulti timotimo none of these appear to be working :/
they did before though so must need some post GLR attention I'm guessing 15:08
hoelzro o/ #perl6 15:10
timotimo oh, none of what exactly? 15:12
the other primality benchmarks?
Ulti yeah 15:17
in fact I can't work out what is wrong
push looks to not be doing what you'd expect
timotimo oh, huh? 15:18
it only does what the spec tests expect it to :|
which may or may not be enough
lizmat whee got the grep opt to work (I think): running final spectest 15:19
dalek p: 3863274 | (Pawel Murias)++ | tools/build/gen-js-makefile.nqp:
Remove dead code.
15:19
p: dc55987 | (Pawel Murias)++ | src/vm/js/ (4 files):
[js] start working on serialization
pmurias hoelzro: \o
hoelzro o/ pmurias
travis-ci NQP build passed. Pawel Murias '[js] start working on serialization' 15:23
travis-ci.org/perl6/nqp/builds/81607366 github.com/perl6/nqp/compare/17b65...55987e8ab2
TimToady moritz: actually, the first Perl was on a project for the NSA, and I moved to JPL shortly after Perl 1 came out 15:30
yoleaux 00:53Z <ShimmerFairy> TimToady: oh, speaking of hyper, I've been wondering if »».foo would be a nice short version of .race.foo (like ».foo for .hyper.foo), or if that's too cute a syntax in this case.
lizmat >>>>.foo # texas race
TimToady Perl 2 to Perl 4 came out at JPL 15:31
mrf is going to need to learn how to generate unicode chars from his keyboard to program p6 15:35
Ulti so the parallel one is about ten times slower.... but its also doing a lot more work since all the others are only comparing to the primes already found below the square root the parallel one doesnt have any of that cache so actually its doing a lot more work and still got a reasonable time
and it is working :)
timotimo mrf: we have a piece in the doc about that 15:37
mrf :D
timotimo mrf: however, no need to write unicode characters
Ulti gist.github.com/MattOates/c5879a07b1ef2c013097 15:38
timotimo everything we have in the main language can be done with "texas" as well
hoelzro mrf: if you use Vim, you can use digraphs 15:39
mrf timotimo: I thought there was one operator that didn't have an ascii equiv?
hoelzro but, as timotimo said, Perl 6 can be written entirely with ASCII characters
timotimo mrf: yeah, but you're not going to need that ever 15:39
mrf: except very rarely in internals-hacking
and even then you can spell it differently
mrf I think I will avoid it 15:42
Ulti timotimo wonder timotimo the grep without racing is 0.4 seconds rather than 1.4 :( 15:52
Ven
.oO( we should have lazy numbers, so that `.elems == 0` could only check the first elem )
15:55
lizmat Ven: that is what I think Seq.Bool should do
but that will break too much atm
cycling&
Ven lizmat: that'd be very good (well, probably wreck havoc at the type-level though), but lazy ints are a tad more crazy :D 15:56
timotimo Ulti: "the" grep? but there's two greps ... so perhaps the one that does less work just has too much overhead? 15:59
i'm not 100% sure how the things work, but it's likely that a race that gets set up the very same way over and over again (i.e. the inner loop) doesn't re-use things it might be able to if it were hand-tuned? 16:00
Ulti timotimo: yeah
I think if I removed the inner loop it might work out better
I'll give it a go
Ulti timotimo the parallel one with just the outer race ends up being about the same time 16:04
timotimo oh? 16:06
the same time as ... what exactly?
Ulti as the greps without the race
:(
timotimo oh, damn 16:07
but it uses more cpu time?
as in: it maxes out more than one? 16:08
Ulti oh yeah
Ulti its basically 4 times as bad since its using that much CPU for the same task 16:08
timotimo argh, wtf?
could it not be splitting up the tasks at all? 16:09
Ulti well its got 4 threads and ends up being a little slower
for the same load
timotimo could it be giving all the work to all 4 threads?
Ulti might be
*shrug*
that would be it not working as specced though right
timotimo right 16:10
but what do i know :)
Ulti I suspect it might be something like batch says how much to consume before splitting out a thread? so it ends up just making threads and the first finishes before the second starts 16:10
yeah going to 8 from 4 threads slowed it down 16:11
timotimo i haven't looked at what the arguments to race do; i only remember that you can leave the arguments out and it'll try to come up with something sensible 16:12
Ulti gist.github.com/MattOates/c5879a07b1ef2c013097 some updated numbers 16:14
timotimo oh btw 16:17
loop labels *are* implemented in rakudo nowadays
Ulti sure thats just copy pasta from Tim King's code sd.jtimothyking.com/2013/09/17/how-...is-perl-6/ 16:18
though 11 seconds was his best time before :D
Rakudo demolishes that time
0.094 nowadays >:D
sjn p6: sub test-me(:$str!) { say "$str"; }; test-me("gives error");
camelia rakudo-moar 4601fc: OUTPUT«Too many positionals passed; expected 0 arguments but got 1␤ in sub test-me at /tmp/tmpfile:1␤ in block <unit> at /tmp/tmpfile:1␤␤»
Ulti m: say 11 / 0.094 16:19
camelia rakudo-moar 4601fc: OUTPUT«117.021277␤»
sjn can someone please explain that error message for me?
_itz well I built a star 2015.09 and I get some fails with ./rakudo/t/spec/S32-num/power.t
sjn p6: sub test-me(:$str!) { say "$str"; }; test-me(bar => "gives error");
camelia rakudo-moar 4601fc: OUTPUT«Required named parameter 'str' not passed␤ in sub test-me at /tmp/tmpfile:1␤ in block <unit> at /tmp/tmpfile:1␤␤»
timotimo sjn: you've declared $str as a named argument
PerlJam sjn: you gave it a positional rather than the required named
Ulti oh wait for those algos it was 2.2 seconds 16:20
m: say 2.2 / 0.094
camelia rakudo-moar 4601fc: OUTPUT«23.404255␤»
Ulti still respectable
timotimo 23x faster?
Ulti yup
for identical code
sjn wouldn't it be better if the error said "got 1 positional argument, but expected a pair" or something?
Ulti with all those loops and logic :D
PerlJam sjn: aye, the error message was LTA
moritz s/pair/named argument/ 16:21
Ulti that was September 2013!!!
nice
naw just missed the 17th to do a two years to the day blog reply
probably still worth it
_itz m: say 1i**NaN 16:22
camelia rakudo-moar 4601fc: OUTPUT«NaN+NaN\i␤»
dalek rl6-roast-data: c1c5d89 | coke++ | / (9 files):
today (automated commit)
16:23
timotimo nan.... nani??!!?! 16:30
[Coke] I am surprised we need a complex NaN as opposed to just NaN. 16:31
timotimo m: say sqrt(NaN + NaN\i) 16:32
camelia rakudo-moar 4601fc: OUTPUT«NaN+NaN\i␤»
timotimo m: say sqrt(NaN)
camelia rakudo-moar 4601fc: OUTPUT«NaN␤»
timotimo m: say sqrt(-NaN)
camelia rakudo-moar 4601fc: OUTPUT«NaN␤»
timotimo shrugs
not like i understand NaN well at all :)
_itz its an Indian bread I thought
ilmari mm, inf nan 16:36
zostay m: sqrt(i**2) 16:39
camelia rakudo-moar 4601fc: OUTPUT«WARNINGS:␤Useless use of "sqrt(i**2)" in expression "sqrt(i**2)" in sink context (line 1)␤»
zostay m: say sqrt(i**2)
camelia rakudo-moar 4601fc: OUTPUT«6.12323399573677e-17+1i␤»
psch hi #perl6 o/ 16:51
anyone with some decent moar/gdb fu who can give me the REPRData for the IntStr STable?
i've tried to figure out a way to BP in P6opaque.c in the right spot, but my C is insufficient :s 16:52
for reference, this is what we get on the jvm: gist.github.com/peschwa/ea5b01f814d4dc46cee1
and unbox{Int,Str}Slot *probably* should have useful values, but... 16:53
garu_ Ven, mst: thanks, I'll fix it right away 17:09
_itz pl6anet.org/drop/rakudo-star-2015.09-RC0.tar.gz 17:10
uvtc Not sure I commented on it in the right place (github.com/rakudo/star/pull/51), but it seems to me that it may be time to remove the "useful and usable" from the Star release announcements. IMO, it makes it sound like there's a preconceived notion that it's not useful and usable. 17:16
[Coke] +1
_itz tony-o: why did you close the issue and PR on perl6-data-dump. The test fails and the PR was the fix 17:30
timotimo Ulti: will you use loop labels in your code now? 17:41
tadzik hmm, TimToady often says that Perl 6 is the language for the next 25 (?) years, does anyone remember the number in that sentence, or a source where it can be read? :) 17:46
PerlJam 100 years 17:47
tadzik thanks :) 17:48
PerlJam also, I'm pretty sure the number came from Paul Graham ... www.paulgraham.com/hundred.html 17:49
sergot m: say 42.WHICH.say 17:52
camelia rakudo-moar 4601fc: OUTPUT«Int|42␤True␤»
sergot m: say 42.WHAT.say
camelia rakudo-moar 4601fc: OUTPUT«(Int)␤True␤»
sergot i forgot again...
tadzik m: Life, the Universe, and Everything.WHY.say 17:53
camelia rakudo-moar 4601fc: OUTPUT«5===SORRY!5=== Error while compiling /tmp/6ZPmlY0sWH␤Undeclared names:␤ Everything used at line 1␤ Life used at line 1␤ Universe used at line 1. Did you mean 'Universal'?␤Undeclared routines:␤ and used at line 1. Did you mean 'r…»
tadzik m: "Life, the Universe, and Everything".WHY.say
camelia rakudo-moar 4601fc: OUTPUT«42␤»
dalek ast: 63ad4c4 | usev6++ | S03-metaops/eager-hyper.t:
Add reference to existing RT #124517
17:59
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=124517
_itz tony-o: thanks! 18:00
tony-o _itz: are you stmuk? 18:08
_itz yes! 18:09
timotimo the saint M of the UK 18:16
moritz hack.p6c.org/~moritz/rakudo-star-20...rc0.tar.gz # please test! 18:21
_itz++ for the announcement PR
_itz 03?
moritz erm 18:22
hack.p6c.org/~moritz/rakudo-star-20...rc0.tar.gz # better link. Please test!
_itz mv++
moritz nah, I just had the old RC tarball around, and gave the wrong link here 18:23
_itz recovers his unoffical one from the internet 18:24
when I tried it .. power.t failed (which I believe may not be fixed in current nom) 18:25
m: say 1i**NaN
camelia rakudo-moar 4601fc: OUTPUT«NaN+NaN\i␤» 18:26
_itz etc
tony-o _itz: no worries, thank you for mentioning that. i thought i'd merged before i closed
_itz ^ s/recovers/removes 18:28
bartolin I consider going through roast and replacing all (or as many as possible) occurences of eval-dies-ok/dies-ok with throws-like. 18:29
For code which fails with X::AdHoc, I wonder if it would be better to test for X::AdHoc or Exception. There was a short discussion about that yesterday: irclog.perlgeek.de/perl6/2015-09-21#i_11253577
Since jnthn++ suggested to audit the remaining non-typed exceptions before christmas, I guess it would be better
to test for X::AdHoc for now. That way we see failures in roast when upgrading to typed exceptions and can adjust the tests accordingly.
Do you have any thoughts on that? 18:30
Optionally, all X::AdHoc could be changed (back) to Exception shortly before releasing 6.christmas (to become more stable wrt throws-like) 18:31
dalek ast: 9e8db55 | coke++ | S03-metaops/zip.t:
less forceful fudge
18:38
[Coke] RT #122230 is noted as "not worth thinking about until after the GLR" 18:40
synbot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=122230
TimToady m: constant @stuff = <A B C>; enum Stuff (@stuff); say C 18:41
camelia rakudo-moar 4601fc: OUTPUT«5===SORRY!5=== Error while compiling /tmp/q3EaXm5Uor␤Undeclared name:␤ C used at line 1␤␤»
dalek ast: 7bad7f6 | usev6++ | S06- (6 files):
Replace some eval-dies-ok in S06-* with throws-like
19:24
[Coke] who is running www.facebook.com/Perl-6-1224813544.../timeline/ ? 19:45
timotimo oh lord, that unicorn-butterfly-kitten picture is amazing 19:46
sergot wow, amazing 19:48
lizmat [Coke]: why do you want to know ? 19:49
[Coke] I want to make sure it's someone in the community. Having social media that is branded like our web site that isn't run by us is a bad thing. 19:51
woolfy [Coke] re www.facebook.com/Perl-6-1224813544.../timeline/ -> I don't know who is "boss" of that page. It's not the Perl 6 page on Facebook where DrForr and I and itz and others are a member of. That one is www.facebook.com/groups/1595443877388632/ 19:53
[Coke] I just send the admin of that other page a message. I hope (s)he will react. 19:55
dalek kudo/nom: 53fba2c | lizmat++ | src/core/Block.pm:
Add utility function "has-phasers"

So we can fallback more easily if there's funny stuff going on
[Coke] I pinged me. 19:56
... them. It's not me. :)
woolfy++ happy to defer to you. :)
brrt any news on the JITbug front 20:00
dalek kudo/nom: a66e930 | lizmat++ | src/core/Any-iterable-methods.pm:
Make grep about 2.5x faster

If you don't have any phasers inside the block if you give a block
20:02
lizmat brrt: none, afaik
brrt hmm :-(
puzzling still 20:03
lizmat jnthn did a presentation this morning and then said he'd be afk for probably the rest of the day
dalek ast: d635f3a | usev6++ | S (4 files):
Replace some eval-dies-ok in S02-types/* and S10* with throws-like
tadzik lizmat++ :)
lizmat tadzik: thank you
brrt on the other hand, i maintain that jit+inline is a pretty small search space
lizmat there is however 1 gotcha in my patch
somehow, if you specify grep: { /a/ 20:04
somehow, if you specify grep: { /a/ }
tadzik I'm happy for all things "Make $thing faster"
patrickz tadzik: \o/
lizmat you get an error (cannot find Any.natch)
tadzik patrickz!
lizmat *match
if you specify grep { m/a/ } it's ok
and you probably *should* just say: grep: /a/ anyway (there is an optimised candidate that takes a Regex 20:05
there are two advent tests that fail now
that can be easily worked around by specifying m/a/ rather than /a/
patrickz tadzik: We have working Windows shims now. 20:06
tadzik patrickz: oh, awesome!
lizmat but I would appreciate any other eyes on that now (before either fixing the tests or fiixing the code)
[Coke] woolfy: they said they are "magical coding robot" 20:07
which makes me want to report them to facebook.
tadzik patrickz: that's all in PR?
[Coke] I suspect my initial reaction is over the top, so will hold off on that. 20:08
tadzik I mean, the windows shims are all working there, or is there something non-requested yet?
or I could just read what you wrote.. 20:10
woolfy [Coke]: I got a response: "Aloha. I created this page long time ago. Just for curiosity reasons."
patrickz tadzik: AFAIK rakudobrew is currently completely broken on Windows. 20:11
Well, the shims don't work.
tadzik right
patrickz This i fixed. :-)
woolfy [Coke] Ehrm, "magical coding robot"? That sounds ominous. 20:12
colomon woolfy++ 20:14
woolfy colomon: welcome on www.facebook.com/groups/1595443877388632/ (I just accepted your request) 20:15
colomon woolfy: I know, that’s why I ++’d you. :)
that was super-fast
woolfy Pure luck on my part. 20:16
brrt ok, i'm going to think about it a bit more and hopefully we'll figure something out tomorrow
patrickz tadzik: I did one more change (only README.md stuff). 20:17
dalek kudo/nom: 4bdad00 | lizmat++ | src/core/Any-iterable-methods.pm:
Oops, WhateverCode's are not blocks
20:18
hahainternet was there any work on 'native arrays'? i know nothing about them, just that allocating a big (say few million entry) array seems to use an awful lot of ram 20:21
moritz hahainternet: yes 20:23
moritz hahainternet: but normal arrays aren't native arrays 20:24
hahainternet moritz: where should i be reading?
tadzik patrickz: merged, thanks! 20:25
patrickz \o/
dalek ast: 0da16cc | usev6++ | S12- (4 files):
Replace some eval-dies-ok in S12-* with throws-like
moritz hahainternet: design.perl6.org/S09.html (specifically about compact and typed arrays) 20:28
hahainternet moritz: willdo
rzxZNkFex every time I hit a p6 synopsis or blog entry I think "nice, qq// everywhere" 20:29
<> was a good design decision
avuserow hi all. just wanted to drop in and say that I successfully used Perl6 to orchestrate some work tasks. It didn't result in much code, but it was a fun experience. much better than doing it by hand :) 20:40
hahainternet moritz: what it was that i was noticing was that 'xx' is slow when it comes to big typed arrays etc 20:45
i'm sure optimisation will touch that eventually, i was only playing anyhow
[Coke] avuserow: Danke. 20:47
lizmat avuserow: I have a patch speed up xx significantly, but alas seems to have some spectest fallout 20:48
dalek kudo/nom: 198f84f | lizmat++ | src/core/Any-iterable-methods.pm:
Make .grep 0 to 2x faster still

When e.g. assigning to an array, with all the values being passed through, expect a 2x increase of speed. If no vaules are being passed through, this change is neutral. YMMV
20:58
avuserow lizmat: I suspect that was meant to ping hahainternet :) 21:00
hahainternet indeed, hola
patrickz tadzik: What do you think about github.com/tadzik/rakudobrew/issues/53 ? Somehow related: What do we want the word "version" to mean in rakudobrew? Only rakudo, rakudo+nqp+backend? Are installed modules compatible across backends? Do we want separate lib handling as perlbrew does? 21:01
lizmat avuserow: oops, indeed... 21:07
Ulti timotimo just for you changed the prime stuff to labelled next :P 21:11
timotimo Ulti: does it make any difference? 21:12
Ulti tiny bit yeah
Ulti nothing thats not really outside of the standard deviation of the previous version 21:13
Ulti timotimo re: parallel is slower its simply to do with overheads if I up the number of primes to find suddenly parallel looks great 21:24
dalek kudo/nom: 503c0fd | TimToady++ | src/Perl6/Actions.nqp:
fix compile-time evaluation of enum lists
21:38
timotimo oh, neat -^ 21:50
Ulti dont suppose anyone can see the bug in this gist.github.com/MattOates/c5879a07b1ef2c013097 bails at line 58 with 'Failed to unbox object to integer' havent done much apart from wrap the thing in a MAIN and pass the max prime to find around 21:55
dalek ast: de3a3c5 | TimToady++ | S12-enums/misc.t:
test enums from compile-time list
21:59
dalek ecs/zengargoyle-patch-1: fc0a29e | zengargoyle++ | S07-lists.pod:
missing \n in say output

proofreading yay!
22:05
dalek ecs: fc0a29e | zengargoyle++ | S07-lists.pod:
missing \n in say output

proofreading yay!
22:18
ecs: 8abcbe6 | (Zoffix Znet)++ | S07-lists.pod:
Merge pull request #99 from perl6/zengargoyle-patch-1

missing \n in say output
dalek kudo/nom: 631ac40 | lizmat++ | src/core/Any.pm:
dd without parameters tells in which sub it is
22:21
lizmat dd
m: dd
camelia ( no output )
lizmat so we can just add a "dd" to code while debugging code to see where it goes 22:22
especially handy when verifying which Iterator candidate is used while processing a Seq 22:23
timotimo Ulti: that might come from our new IntStr (and friends) support?
but i thought they unbox as ints just fine ...
lizmat goes to bed dreaming of Seqs :-)
ShimmerFairy timotimo: it appears to be an issue in Range.iterator, fwiw (at least, that's where the top line of an --ll-exception stacktrace points) 23:13
specifically, a 'new' constructor for an anonymous class with native int attributes.