»ö« 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 moritz on 25 December 2014.
00:00 yoleaux joined, ChanServ sets mode: +v yoleaux 00:02 adu left 00:03 adu joined 00:06 kjs_ joined 00:10 spider-mario left 00:14 adu left 00:17 BenGoldberg joined 00:18 labster joined 00:19 skids joined 00:20 labster_ left 00:33 abraxxa joined, abraxxa left
masak just got bitten by rt.perl.org/Ticket/Display.html?id=71544 00:35
00:38 jercos left 00:39 jercos joined 00:48 Pleiades` left 01:00 Kristien left, FROGGS left 01:01 espadrine left, kjs_ left 01:04 adu joined 01:09 FROGGS joined 01:13 tinyblak_ left
retupmoca m: await do for 1..5 { start { buf8.new } } 01:18
camelia ( no output )
retupmoca m: await do for 1..5 { start { buf8.new } }
camelia rakudo-moar 7fd2f6: OUTPUT«Unhandled exception: None of the parametric role variants for 'Buf' matched the arguments supplied.␤Ambiguous call to ''; these signatures all match:␤:(::$?CLASS ::::?CLASS $, ::T $ = { ... })␤:(::$?CLASS ::::?CLASS $, ::T $ = { ... })␤ at <unkno…»
retupmoca ok, it's not just me
01:20 Pleiades` joined
colomon retupmoca: was that the same code line both times there? 01:21
retupmoca colomon: yup 01:22
colomon ugh
01:23 alinbsp left
masak `::$?CLASS ::::?CLASS $` ? 01:23
that's a lot of colons...
'night, #perl6 01:24
colomon o
o/
dalek ast: 913d4fe | util++ | S0 (2 files):
Fix typos.
01:27
ast: 9ac0cab | util++ | S03-operators/buf.t:
Fix cut-and-paste: s/substr/subbuf/.
ast: 4e43db6 | util++ | / (4 files):
Standardized "whitespaces" to "whitespace" or "whitespace characters".

  english.stackexchange.com/questions...whitespace
vendethiel masak, count the colons to sleep ;-) 01:30
retupmoca is there an easy/good way to do a lock in nqp code? 01:31
01:32 tinyblak joined
dalek ast: 3a2c7f8 | skids++ | S04-statements/gather.t:
Add (fudged) test for RT#66820
01:51
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=66820
01:55 sunnavy joined
vendethiel we don't have anything akin to "newtype" in perl6, right? 01:55
m: sub Newtype(Mu:U \T){class Newtype { has T $.val is rw handles **; }; }; my \kg = Newtype[Int]; my $kg1 = kg.new(:5val); my $kg2 = kg.new(:10val); say $kg1 + $kg2 01:57
camelia rakudo-moar 7fd2f6: OUTPUT«===SORRY!===␤No compile-time value for T␤»
vendethiel mmmh...
02:00 telex left 02:02 telex joined
vendethiel haskell's take with newtype is interesting, but known to have issues (mostly due to interactions between laziness and type erasure, though). F#'s take is also interesting, but a bit more narrow (mostly made for differentiating integer stuff) 02:02
I just saw that nim has "distinct" also
02:19 [Sno] left, [Sno] joined 02:20 lizmat left 02:21 lizmat joined 02:22 sjn joined 02:34 colomon left 02:35 colomon joined 02:43 gfldex left 02:49 Mouq joined 02:58 labster left 03:07 colomon left 03:08 colomon joined 03:11 tinyblak left
dalek ast: 92b416c | skids++ | S06-advanced/callframe.t:
Add test for RT#77752. Should be closeable.
03:25
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77752
japhb .tell retupmoca I added an nqp test file for locks, you should be able to find it in t/concurrency. 03:32
yoleaux japhb: I'll pass your message to retupmoca.
03:33 noganex_ joined 03:35 vendethiel left, noganex left 03:45 vendethiel joined 03:55 tinyblak joined 04:06 vendethiel left
dalek ast: 5c539db | skids++ | S05-interpolation/regex-in-variable.t:
Add test for RT#100232 which might be fixed at this point
04:07
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=100232
Mouq m: my $x = q[1}#]; q[a] ~~ /<$x>/ # I don't think it is :( 04:10
camelia ( no output )
Mouq (That should die; "1}#" is not a valid regex) 04:11
Mouq wonders how hard fixing it would be…
04:15 vendethiel joined 04:31 woolfy left 04:32 woolfy joined
skids r: my $x = '#'; q[a] ~~ /<$x>/ 04:34
04:34 woolfy left
camelia rakudo-{parrot,moar} 7fd2f6: OUTPUT«===SORRY!===␤Regex not terminated.␤at EVAL_0:1␤------> anon regex { ^#}⏏<EOL>␤Malformed regex␤at EVAL_0:1␤------> anon regex { ^#}⏏<EOL>␤ expecting any of:␤ infi…» 04:34
04:35 woolfy joined 04:38 vendethiel left
skids r: my $x = '#'; '#' ~~ /1<$x>/ 04:38
camelia ( no output )
skids r: my $x = '#'; '1#' ~~ /1<$x>/
camelia rakudo-{parrot,moar} 7fd2f6: OUTPUT«===SORRY!===␤Regex not terminated.␤at EVAL_0:1␤------> anon regex { ^#}⏏<EOL>␤Malformed regex␤at EVAL_0:1␤------> anon regex { ^#}⏏<EOL>␤ expecting any of:␤ infi…»
04:43 vendethiel joined
raydiak star: $*VM.name 04:46
star: $*VM.name.say
camelia ( no output )
star-p 2014.12: OUTPUT«parrot␤»
..star-m 2014.12: OUTPUT«moar␤»
raydiak star-m: sub malloc (int) returns OpaquePointer is native {*}; sub memset (OpaquePointer, int8, int) returns OpaquePointer is native {*}; my $ptr = malloc(8); memset $ptr, 1, 8; say $ptr; say nativecast OpaquePointer, $ptr; 04:47
camelia star-m 2014.12: OUTPUT«===SORRY!=== Error while compiling /tmp/ctzCubpkdD␤Missing block␤at /tmp/ctzCubpkdD:1␤------> sub malloc (int) returns ⏏OpaquePointer is native {*}; sub memset ␤ expecting any of:␤ statement list␤ …»
raydiak star-m: use NativeCall; sub malloc (int) returns OpaquePointer is native {*}; sub memset (OpaquePointer, int8, int) returns OpaquePointer is native {*}; my $ptr = malloc(8); memset $ptr, 1, 8; say $ptr; say nativecast OpaquePointer, $ptr;
camelia star-m 2014.12: OUTPUT«OpaquePointer<0x56548c0>␤OpaquePointer<0x101010101010101>␤»
skids r: my $x = q[1}#]; $x.say; (q[1}#] ~~ /<$x>/).perl.say; 04:52
camelia rakudo-{parrot,moar} 7fd2f6: OUTPUT«1}#␤Match.new(orig => "1}#", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new())␤»
04:52 mr-foobar left
raydiak .tell FROGGS github.com/raydiak/MoarVM/commit/1...1845a85fe7 thoughts? 04:55
yoleaux raydiak: I'll pass your message to FROGGS.
raydiak .tell FROGGS after that, this seems to work: github.com/raydiak/MoarVM/commit/e...db2b77e13c 04:58
yoleaux raydiak: I'll pass your message to FROGGS.
raydiak .karma hugme 04:59
huh 05:00
05:00 Mouq left, nige joined
dalek kudo-star-daily: 4db2af3 | coke++ | log/ (9 files):
today (automated commit)
05:04
05:06 vendethiel left
[Coke] masak: you don't say what the expected behavior there is on RT #71544 05:07
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=71544
05:27 mr-foobar joined 05:39 vendethiel joined 05:45 skids left 05:48 woolfy left, woolfy joined 05:53 woolfy left, woolfy joined 06:15 gfldex joined 06:27 vukcrni left 06:28 vukcrni joined 06:35 mr-foobar left 06:36 vendethiel left 06:39 vendethiel joined 06:43 anhduy joined 06:44 FROGGS left
anhduy hello 06:44
adu hello 06:45
anhduy oh where are you from? @adu 06:46
adu here 06:47
woolfy good morning from Brussels where we are off to start the Perl-presence at FOSDEM 06:48
06:48 woolfy left 06:49 lizmat left, anhduy left
adu I heard of that 06:49
06:51 FROGGS[mobile] joined 06:57 FROGGS[mobile] left 07:00 vendethiel left 07:02 vendethiel joined
moritz good morning 07:06
07:22 denis_boyun joined 07:27 konsolebox joined 07:28 konsolebox left, konsolebox joined 07:29 BenGoldberg left 07:30 [Sno] left
raydiak m: say chr(0) x 1e6 # this just reminded me I still haven't set a ulimit :P 07:39
camelia rakudo-moar 7fd2f6: OUTPUT«␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀…»
raydiak wow it works? 07:40
m: my $a = chr(0) x 1e6; say qx[[free -h]] 07:41
camelia rakudo-moar 7fd2f6: OUTPUT«qx, qqx is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:1␤ in sub QX at src/RESTRICTED.setting:11␤ in block <unit> at /tmp/Dn3vftJBri:1␤␤»
raydiak oh right
07:47 alinbsp joined
moritz raydiak: it runs with various resource limits 07:47
raydiak guess I only had like 2 gigs or so available before it woulda started swapping...at least it ran up impressively quickly :) 07:49
wonder if I disabled swap if it the process wuold die instead of hard freezing my laptop 07:51
s/it //; s/wuold/would/ 07:52
07:54 rurban joined
raydiak should learn the sysrq keys 07:55
adu good morning 07:56
raydiak or scratch them into the plastic for frequent reference :P
good morning adu
08:00 tinyblak left, rindolf joined, tinyblak joined
TimToady in J now 08:07
sergot morning o/ 08:10
dalek albot: 72360a4 | moritz++ | run.sh:
Source perlbrew bashrc
raydiak wonders where J is 08:12
g'morning sergot
moritz live.fosdem.org/ "Room Janson" I'd guess
raydiak ah ha
08:14 xfix joined
TimToady looks for the camera 08:15
raydiak hey 9:30 is in 15 minutes...and 12:30 AM here :P
jdv79 t-15 and no streams yet
moritz .tell nine I've mucked a bit with camelia's service file, avoiding bash -i (it complained about inappropriate ioctl) and added some security features
yoleaux moritz: I'll pass your message to nine.
08:16 darutoko joined 08:20 jluis left 08:23 sqirrel joined 08:26 bjz left
raydiak we can haz streemz? *crosses fingers* 08:33
pmichaud good morning, #perl6 08:35
sjn \o 08:36
raydiak good morning pmichaud, sjn 08:37
sjn is looking forward to FOSDEM today :)
moritz still no stream :( 08:40
raydiak notices that live.fosdem.org doesn't believe in DOCTYPEs 08:41
moritz would like a talk on how time travel interacts with copyright 08:43
08:43 bjz joined
raydiak hah 08:43
moritz does the stream work for anybody? 08:46
I still get "Error: no streams found" 08:47
jdv79 not in nyc
raydiak same error here 08:48
TimToady they're just now setting up the camera in the Perl Dev REoom 08:57
jdv79 that doesnt start til 10:30, right? 08:59
08:59 atta left, epochbell left, atta joined
TimToady correct 08:59
but I vamoosed J so as not to walk out in the middle of a talk
09:00 epochbell joined
adu raydiak: they're not required 09:00
09:01 konsolebox left
raydiak adu: ? 09:02
adu doctypes
in fact, <html> and <body> aren't really required either 09:03
raydiak oh right, just pretty much universally accepted good practice in the web world
moritz and pretty relevant when you want to avoid quirks mode in IE 09:04
timotimo can someone please dump the stream to disk so i can get the parts i'm inadvertantly going to miss?
moritz timotimo: that requires working streams in the first place...
timotimo because right now i have to get home and take a shower before that - i just tried unsnowing and unicing my car and that was pretty exhausting 09:05
moritz timotimo: but if you tell me some magic command that records them, I'll run them for you
raydiak wants to take a look at that command too...
timotimo btw, moritz++ for really nice work on perl6/doc 09:06
moritz: something involving rtmpdump
i don't really know that well either
raydiak maybe he means once they start working
timotimo yes, correct
i probably won't be able to ask you for dumps when they start appearing, as i'll be on the road
and ircing while driving is frowned upon 09:07
especially by me when i stand outside my car inspecting the tree that decided to take a *very* close look at my motor
09:11 pierrot left 09:13 tgt joined
JimmyZ \o 09:13
raydiak o/
09:16 vendethiel left 09:17 konsolebox joined 09:18 pierrot joined
raydiak hopes the stuff that isn't streaming is at least making it to disk somewhere over there, besides via audience cameraphones 09:18
09:23 vendethiel joined 09:25 alinbsp left, nige left
jdv79 i'm beginning to think there's more than a minor stream issue:( 09:29
09:30 FROGGS joined, sqirrel left
timotimo are the cameras set up at all yet? 09:31
raydiak TimToady said they were setting them up half an hour ago in the perl room
FROGGS timotimo: should be set up now 09:32
yoleaux 04:55Z <raydiak> FROGGS: github.com/raydiak/MoarVM/commit/1...1845a85fe7 thoughts?
04:58Z <raydiak> FROGGS: after that, this seems to work: github.com/raydiak/MoarVM/commit/e...db2b77e13c
timotimo cameras and streaming are hard 09:33
FROGGS are the links for the streaming somewhere? 09:35
JimmyZ Error: no streams found
moritz FROGGS: live.fosdem.org/ but they don't work yet
vendethiel good morning, #perl6 09:38
09:38 rurban_ joined
raydiak g'morning vendethiel 09:38
rurban_ no live stream from fosdem? 09:39
FROGGS moritz: hopefully we just need to be patient
it *should* be here: live.fosdem.org/watch.php?room=K.3.401
rurban_ live.fosdem.org
nope, empty. all the others also
FROGGS ahh :/
09:40 kjs_ joined
rurban_ Even the Janson stream is down 09:40
At least they have an archive for later 09:41
jdv79 Room UD2.120 (Chavanne) is semi up; kinda
rurban_ yes 09:42
09:42 tgt left 09:44 adu left
dalek c: 4105b6f | moritz++ | lib/Language/functions.pod:
Explain closures a bit
09:49
JimmyZ fos1.ddvtech.com/K3401_a.flv 09:55
09:56 spider-mario joined, rba_ joined, rba_ left, rba_ joined, rba_ left 09:57 rba_ joined, rba_ left, rba_ joined, rba_ left, rba_ joined, rba_ left, rba_ joined, rba_ left
rurban_ JimmyZ: With which player? vlc and chrome neither does work 09:57
09:57 rba_ joined, rba_ left, rba_ joined, rba_ left, rurban left
moritz neither does mplayer 09:59
JimmyZ fos1.ddvtech.com/hls/K3401_a/index.m3u8 #it's the right url, but the stream is not there 10:00
:(
10:00 sqirrel joined 10:01 alinbsp joined
rurban_ I'm watching the same talk from a conference earlier instead: medias.ircam.fr/x520cff (defmacro for C) 10:01
but not applicable to us I fear 10:02
10:03 Rounin joined
FROGGS something happens! live.fosdem.org/watch.php?room=K.3.401 10:06
(it is at least different)
timotimo disappears
jdv79 its just failing to load now 10:07
10:08 kjs_ left
[ptc] finds it ironic, that it's being streamed by MistServer ;-) 10:10
jdv79 oh sweet - about to miss pmichaud's talk
10:10 rba_ joined 10:12 kurahaupo1 joined
rurban_ I cannot test silverlight 10:15
raydiak tried ie win 7 earlier, still had the no streams error at that time
vendethiel 's on windows and still no luck 10:16
10:16 alinbsp left
vendethiel m: role Foo[::T] { subset ourT of T where True; } 10:16
camelia ( no output )
10:17 kurahaupo1 left
raydiak well, way past my bedtime...hope the stream comes up, happy fosdemming #perl6 10:17
vendethiel m: role Foo[::T] { subset ourT of T where True; }; my \trueintk = Foo[Int]; my \trueint = trueint::ourT
camelia rakudo-moar 7fd2f6: OUTPUT«Could not find symbol '&ourT'␤ in method <anon> at src/gen/m-CORE.setting:14574␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2741␤ in any find_method at src/gen/m-Metamodel.nqp:988␤ in block <unit> at /tmp/3lczwwPs6N:1␤␤»
vendethiel m: role Foo[::T] { our subset ourT of T where True; }; my \trueintk = Foo[Int]; my \trueint = trueint::ourT
camelia rakudo-moar 7fd2f6: OUTPUT«Could not find symbol '&ourT'␤ in method <anon> at src/gen/m-CORE.setting:14574␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2741␤ in any find_method at src/gen/m-Metamodel.nqp:988␤ in block <unit> at /tmp/HW2HlMpXBr:1␤␤»
vendethiel m: role Foo[::T] { our subset ourT of T where True; }; my \trueintk = Foo[Int]; my \trueint = trueint.ourT
camelia rakudo-moar 7fd2f6: OUTPUT«===SORRY!=== Error while compiling /tmp/JXZE6fOglW␤Variable '&trueint' is not declared␤at /tmp/JXZE6fOglW:1␤------> my \trueintk = Foo[Int]; my \trueint = ⏏trueint.ourT␤»
vendethiel m: role Foo[::T] { our subset ourT of T where True; }; my \trueintk = Foo[Int]; my \trueint = trueintk.ourT
camelia rakudo-moar 7fd2f6: OUTPUT«No such method 'ourT' for invocant of type 'Foo[Int]'␤ in block <unit> at /tmp/4fU3erjrSv:1␤␤» 10:18
vendethiel well.
El_Che do you guys see something on the streaming? 10:20
yoleaux 30 Jan 2015 21:33Z <ab5tract> El_Che: streams!! much excite, many popcorn. thanks for all the hard work!
vendethiel El_Che: nope
El_Che damn
yoleaux: do you see something?
vendethiel El_Che: yoleaux's a bot, so probably not :P
rurban_ I see the slides video now
_b 10:21
El_Che rurban_: no speaker?
vendethiel rurban_: do you see the slides on live.fosdem.org/watch.php?room=K.3.401 ?
jdv79 nothing 10:22
rurban_ I got rtmp://fos1.ddvtech.com:1935/play/k3401_b working
_a is not connected yet 10:23
vendethiel doesn't have a rmtp reader
rurban_ vlc
jdv79 i see an Inline::Python slide 10:24
El_Che has someone audio?
jdv79 vlc on that ...b url
rurban_ rtmmp should be the most efficient protocol
rtmp
vendethiel rurban_++ 10:25
El_Che no audio?
jdv79 woohoo at least we have something
rurban_ But stefan's talk is already known
jdv79 should there be audio on the presentation url?
rurban_ no
El_Che there should be video and audio
that means the camera does not work
rurban_ we need the left one, thg _a
JimmyZ fpdownload.adobe.com/strobe/FlashMe...rlay=false 10:26
jdv79 yeah, i thought ...a would have podium video and audio
rurban_ hoho! JimmyZ++
10:26 jluis joined
El_Che we're looking for the fosdem video people, hopefully they will fix it soon :( 10:27
JimmyZ niner.name/talks/Leapfrogging%20the%20bootstrap/ # PPT 10:28
jluis nice talk 10:29
jdv79 no signal now on b 10:31
vendethiel jdv79: probably setting up pmichaud++'s talk ;-)
FROGGS pmichaud++ will start in about three minutes, he's prepping his laptop 10:32
masak good FOSDEM, #perl6
FROGGS hi masak
masak ooh, just in time for pmichaud! :D
sergot hi masak o/
[ptc] ah, is that why I get "no signal"?
FROGGS [ptc]: yeah
looks like there is a delay of a few minutes 10:33
so, I see his screen already
JimmyZ: was the audio okay when nine++ had his talk?
jdv79 nice
[ptc] hrm, seems like there's no sound... 10:37
10:37 kjs_ joined
jdv79 just slides here 10:37
moritz nothing here, just a title :(
10:38 kjs_ left
El_Che news from the video. Normally everything is recorded and we'll be online soon. The fosdem people are prioritizing the recording and after that they'll try to fix the streaming 10:38
it's a general problem :(
but the talks *should* be recorded
FROGGS k
[ptc] El_Che: thanks for the info :-)
10:38 kjs_ joined
FROGGS the camera shows that sound is going in btw 10:38
rurban_ good, thanks. they have a good archive. better than ccc 10:39
Woodi_ hallo #perl6 :) 10:40
rurban_ slides are good 10:41
Woodi_ so many talks there... brainstorming organized :)
10:42 _dolmen_ joined 10:43 sqirrel left
masak so pmichaud is on already? 10:46
sergot yes
JimmyZ yeah
10:47 raiph left 10:48 _dolmen_ left
nine I just uploaded a PDF version of my slides including a transcript of my talk. 10:49
yoleaux 08:15Z <moritz> nine: I've mucked a bit with camelia's service file, avoiding bash -i (it complained about inappropriate ioctl) and added some security features
masak nine: url?
JimmyZ masak: it all in the irclog :P 10:50
rurban_ Same talk as this one? perltv.org/v/stefan-seifert---inlin...2014-10-10
nine masak: niner.name/talks/Leapfrogging%20the%20bootstrap/
masak nine++
JimmyZ: a lot of things are in the irclog...
nine rurban_: an updated and extended version, yes
rurban_ I see, almost
JimmyZ fpdownload.adobe.com/strobe/FlashMe...rlay=false # masak 10:51
10:51 nige joined
rurban_ Classes are never final??? what about use oo :final 10:58
that's embarrassing 10:59
jdv79 i was about to ask the same thing
TimToady he means the class can't declare itself final like in Java
10:59 Kristien joined
rurban_ larry said classes could only be finalized by the script, never by a library 11:00
Kristien hi
rurban_ that's how I'm implementing it
thanks for clarification :)
nwc10 good UGT heresy, #perl6 11:03
masak nine++ # niner.name/talks/Leapfrogging%20the...tstrap.pdf 11:06
nine: awesome.
nine: I've never felt more ready to try out Perl 6! :D
11:06 rurban_ is now known as rurban
masak JimmyZ: ooh -- I get a picture but no sound. 11:07
vendethiel masak: right, no sound
[ptc] it's a good talk, even without the sound 11:08
El_Che the devroom video people looking a it
11:10 asdf12z_ left
jdv79 i guess if its impossible to test its impossible to spec now? 11:12
masak jdv79: if it's impossible to test, is it really a feature? :P 11:15
masak .oO( we bring you this new feature, undetectable by any measurement! )
rurban it's a plan
jdv79 i just remember some instances where testing seemed impossible
11:16 espadrine joined
jdv79 the one that comes to mind is ref addr re-use in p5 11:16
rurban exhaustive threads or gc tests are also pretty hard to setup
jdv79 but that's rather trivial to mock. yeah, concurrency is another area.
masak is not at FOSDEM, and so doesn't know exactly what pmichaud is saying, but guesses it's something like "the spectests are the spec" 11:17
FROGGS pmichaud: there is an awesome ruleset about versioning, and I really like it: semver.org/
rurban masak: no, better than perl5 11:18
masak FROGGS: semver seems to be a hit in many communities, including Ruby and node.js
jdv79 this is the first i'm hearing that the tests are now the spec and not the former "specs" (synopses)
masak jdv79: pmichaud has been arguing for that shift for a long time.
FROGGS masak: it describes what I always felt "right", but I often did mistakes because I had no written down rules 11:19
rurban e.g. my perl5 deviates from the perl5 core tests where the tests are too stupid but the specs support that. 11:20
jdv79 if only in here then ok but i don't think i've heard it on a blog or anything like that
rurban common lisp had the same problem for not-fully conformant implementations for decades, where they didn't implement all. perl6 roast catches this nicely 11:21
a common lisp testsuite came ~10 years after the frozen specs 11:22
psch hi #perl6 \o 11:25
FROGGS: i've gotten the portaudio bindings working, but moar is apparently too slow for anything but static dc offsets currently 11:27
i suppose NSA will help there
masak .oO( must... not... pun... ) 11:28
11:28 tinyblak left
vendethiel masak: everything's testable :P. but better, just encode runtime complexity in types :D 11:29
masak, FROGGS: also, I'm sad to see "semver" because that's not "semantics" by any means. 11:30
versioning based on API signature would be so much better
rurban I would go with microsoft. if you change a methods API, change the name 11:31
vendethiel hahaha 11:35
timotimo can i get any stream at all right now? 11:37
vendethiel nine: "trait_mod:<is>(Routine $declarand!" not sure why the ! here? 11:38
El_Che fosdem.org/2015/news/2015-01-31-vi...um=twitter 11:39
[ptc] isn't getting a stream anymore 11:44
anyone else seeing this, or is it just me?
TimToady and to be fair, those of us who have been talking about waterfalls vs whirlpools since before Perl 6 was thought of define "specs" much less rigorously in our heads than the waterfall people do 11:46
jdv79 no streams here
[ptc] k
TimToady so it never bothered me to call the design documents that, but I can see how it misleads the waterfallers
nine vendethiel: did I mention, that I do not actually know much Perl 6? So any thing looking strange to you is probably wrong, even if it works ;) 11:47
moritz nine++ is famous in here for down-playing his knowledge, and yet producing awesome results 11:50
timotimo don't encourage him! :P
masak yes, please encourage him! :D 11:51
El_Che fosdem guy thinks the recording is fine, they are still working about the streaming
11:52 alinbsp joined, espadrine left
dalek c: f1e8a72 | paultcochrane++ | WANTED:
Remove run() and shell() from WANTED

They've already been documented
11:53
rurban nine++ is the only reason why I am still working on parrot 11:56
vendethiel nine: I think you did mention it :P 11:58
nine++ #in this case: all positional parameters are required by default, so the "!" is implicit. You can use "?" to make them optional (or add a default) 11:59
named parameters are the exact opposite, they default to Any, and are not mandatory except when they have said "!" 12:00
nine vendethiel: indeed, everything still works with the ! removed. Thanks for enlightening me :0 12:02
:)
12:03 pmurias joined
[Coke] yawns. 12:03
pmurias The truffle ruby talk seems from interesting, as it'a path we might want Perl 6 to take too on the JVM 12:04
rurban yes, the most interesting for me. and the oracle jvm, one
in the oracle js on jvm they are doing simple dynamic ast rewriting, for type optimizations and pessimizations and method inlining 12:05
12:07 nige left
nine Is there a way to embed MoarVM yet? 12:13
jnthn nine: Technically, yes, as in we build a shared library and the moar executable is just something that uses it. 12:14
nine: In terms of "documented API", no.
nine: Maybe try it, see what you use, what you miss, etc? 12:15
nine jnthn: sounds like a nice litte project for the flight home tomorrow :)
jnthn Cool :)
nine++
Kristien m: class A { method !private { 42 }; method f(A $x) { $x.private.say } }; A.new.f(A.new)
camelia rakudo-moar 7fd2f6: OUTPUT«No such method 'private' for invocant of type 'A'␤ in method f at /tmp/52_cj4iFh7:1␤ in block <unit> at /tmp/52_cj4iFh7:1␤␤»
Kristien hmmm
nine I guess I will have to write some Inline::Perl6 eventually ;) So I may as well start there... 12:16
jnthn Kristien: $x!private
nine Did I just say that??
Kristien m: class A { method !private { 42 }; method f(A $x) { $x!private.say } }; A.new.f(A.new)
camelia rakudo-moar 7fd2f6: OUTPUT«42␤»
Kristien woooooooooooooot
dalek c: 9091b20 | paultcochrane++ | / (7 files):
Add standard vim coda to perl6 source code files
12:17
12:17 Kristien left 12:18 araujo left
pmurias rurban: I think in the Graal project (the thing Truffle is using) they are also exposing lower level support for building your own JIT for your JVM language 12:20
rurban I'm more interested in the dynamic optimizations here: fosdem.org/2015/schedule/event/bui...entations/ 12:21
for javascript, which is dynamic only (= tracing optims and jits only)
pmurias should have gone to FOSDEM 12:22
rurban they simply skipped the bytecode compiler
vendethiel would have loved to come have fosdem if time had allowed it..
rurban and do simple ast interpretation, with trace-based ast rewriting
pmurias I didn't expect that both a large number of Perl 6 folk are comming and bunch of awesome talks 12:23
vendethiel pmurias: right? so many amazing perl6 talks :-)
pmurias at some previous YAPC::EU's the perl6 were often less interesting to me as I was familiar with projects they were showing 12:24
jdv79 can we at least get the slide stream back? 12:25
gfldex .o(safety in numvers)
vendethiel jdv79: I think it's on hold til 2pm
masak <rurban> nine++ is the only reason why I am still working on parrot 12:28
rurban: that sounded interesting -- could you elaborate?
rurban threads
masak thinks the error message about `$x.private` should suggest `$x!private` if the latter exists 12:29
12:31 araujo joined, araujo left, araujo joined 12:34 pecastro left, FROGGS left
Woodi_ no streams working here so: pastebin.com/ADt8AACH 12:35
12:36 ab5tract joined 12:38 rmgk_ joined, rmgk left, rmgk_ is now known as rmgk
rurban Timely destruction in parrot: github.com/parrot/parrot/commit/0f...fac7142073 (deprecated) 12:39
Needs 2 sweeps 12:40
masak rurban: the obvious follow-up question: why is it deprecated?
rurban I was not involved then. Maybe it was too slow 12:41
moar's copying GC needs one pass, m&s 2 passes, timely destruction 3 passes
so 3x slower than a good GC 12:42
But personally I would make it available as configure option who cannot destruct their objects manually
[ptc] yay, streams working again! 12:43
moritz rurban: patches to speed it up are welcome 12:45
rurban :)
moritz rurban: also, from the profiles I've seen so far, GC typically is 8% or lower, very rarely over 15% 12:46
dalek c: f22629c | paultcochrane++ | / (2 files):
Remove trailing whitespace in perl6 source code
c: 5a09b38 | paultcochrane++ | lib/Language/ (3 files):
Remove trailing whitespace (Language)
c: 3e26190 | paultcochrane++ | lib/Type/ (16 files):
Remove trailing whitespace (Type)
moritz rurban: in comparison to other numbers I've seen, that's pretty good
rurban this depends on the heap size. the bigger the slower, i.e. 3x 10ms is no problem, but 3x 250ms per GC is big
jdv79 streams not working - only the slides 12:47
rurban but maybe finalizing only the 1st generation would work, not the whole heap
[ptc] jdv79: better than nothing...
rurban First I need to fixup our gms GC, which is 30% slower than the simple m&s 12:48
Timely destruction for moar would be impossible I fear, with a copying GC. Maybe a 2nd pass with an additional marker bit 12:49
moritz can't connect to sqlite.org :( 12:52
JimmyZ moritz: works here
[ptc] moritz: works for me
moritz oh, somehow ddg gave me https links 12:53
[ptc] is there an automated way to work out which methods/subs etc. still need to be documented? 12:55
moritz [ptc]: no; we only have that for types 12:56
util/missing-types.p6 iirc
[ptc] ok. Just thought I'd ask in case I'd missed it 12:57
jdv79 i'm falling asleep - i need the podium av feed
vendethiel it's interesting that "private" works more like C++'s than java's. can you get a java-like one? (per-instance only)
moritz [ptc]: well, I guess I should write such a thing
[ptc] I wish I knew where to start, and how to do it in p6 12:58
ah well...
tadzik for a 60fps game running for 40 seconds gc takes less than 4% of the time
(112 runs)
12:58 nige joined
rurban what's the gc pause time, with which heap size? 12:59
moritz [ptc]: my approach would be to walk all types (like util/missing-types does), and call doc.perl6.org/routine/methods to find the methods
tadzik the longest pause is 20ms, which sucks indeed 13:00
(I found a way to workaround)
rurban 60fps is for 3d, right?
tadzik (come to my talk :D)
nope :)
rurban 20ms is ok
tadzik you have 16.6 for a frame
surprise 20 sucks
rurban better than most java gc's
[ptc] moritz: but that requires net access
tadzik heh
moritz [ptc]: no
[ptc]: I meant I'll call the method documented there 13:01
$type.^methods(:local)
[ptc] moritz: ach so!
vendethiel is the stream on again?
13:01 konsolebox left
[ptc] vendethiel: yes, but just the slides 13:01
13:01 _dolmen_ joined
vendethiel ha, the fpdownload link doedsn't seem the work then 13:01
13:01 denis_boyun left
rurban tadzik: then you need a state-preserving m&s gc, "iterative", such as boehm/weiser or ruby 13:02
[ptc] vendethiel: rtmp://fos1.ddvtech.com:1935/play/k3401_b works well with vlc
tadzik yeah, that'd help immensely
vendethiel [ptc]: yeah, that's what I did in the end
rurban we don't have that yet :)
but a thread-safe GC like Shenandoah would be more important, <10ms 13:05
dalek Iish: fecfb92 | moritz++ | / (2 files):
SQLite: .exec throws on error. Closes #6

Patch courtesy by jantz, test by me
13:07
colomon [ptc]: what’s on currently?
[ptc] colomon: ovid's talking about Perl6
13:07 _dolmen_ left
colomon ah, cool 13:07
no audio?
[ptc] yeah, really wish I had audio. He does great talks 13:08
pmurias masak: it should mention it for sure, in the future the editor support should offer to either make it public or use the private form
moritz fwiw I'm doing a mplayer -streamdump of the rtpm stream 13:12
running on hack.p6c.org
[ptc] hrm, Perl6::TypeGraph.new-from-file chews CPU and RAM in the REPL, but not as a script 13:14
moritz [ptc]: any opion on the closure docs I wrote earlier? is it understable?
[ptc] moritz: sorry, haven't read them yet
I need to be a bit more organised with how I read the docs
moritz I tend to just git log -p to read the last changes 13:15
13:15 sqirrel joined
[ptc] I mean in general; I'd like to go through the lot and generally edit things 13:15
... and hopefully learn something along the way 13:16
13:16 Kristien joined
[ptc] should there be a big difference between REPL behaviour and script behaviour? 13:16
dalek c: b7934ff | moritz++ | WANTED:
Remove documented types from WANTED
moritz [ptc]: one common difference is that the REPL tries to stringify everything 13:17
[ptc]: which is a bad idea for inifinite lists, for example
[ptc] moritz: yup :-)
like in ghc :-)
s/ghc/ghci 13:18
moritz [ptc]: re missing methods, these days when I write about types that weren't previously documented, I try to leave TODO comments for methods I didn't get around to document 13:19
13:19 telex left
[ptc] moritz: i.e. one can just grep the sources for TODO and slowly remove them? 13:20
13:20 telex joined
moritz [ptc]: yes. Though it won't be complete. 13:20
[ptc] moritz: does anything depend directly on the p6 files in doc/util? 13:21
I'd like to rename them to simply pl to be consistent 13:22
13:22 rurban1 joined
[ptc] return $to_sender; # address unknown 13:22
masak Woodi_: with the data that falls out of escape analysis, it could be possible to prove where an object goes out of scope. (because it doesn't escape.) 13:27
Woodi_: being able to combine that guarantee with a user trait (and blowing up if it can not be guaranteed) is an interesting idea. 13:28
though I don't know if the guarantees made by the escape analysis are always strong enough for the user's needs. 13:29
jdv79 ah, he left the lang comps in. good show! 13:33
masak that was one of the best parts.
[ptc] yeah, he makes it all look so _easy_; great talk
13:34 Aaron`J joined, KPTN joined
moritz [ptc]: iirc they have 6-y file endings so that github recognizes them as Perl 6 13:35
[ptc]: though nothing depends on the exact names
[ptc] ah, ok
moritz: just wondered, because some use .pl6 and others use .p6
moritz [ptc]: +1 to unifying them 13:36
[ptc] moritz: which is better? .pl6 or .p6 (or .pl)?
moritz [ptc]: I tend to use .p6 nowadays, but it's really a matter of preference 13:37
there is no better
[ptc] moritz: that's as good a reason as any :-)
dalek c: 8a6571f | paultcochrane++ | util/ (4 files):
Rename perl6 source files to be consistent
13:38
masak clearly the .pl6 ending denotes Prolog 6 source files, and .p6 refers to the protein or the Intel x86 microarchitecture. 13:39
alpha- [ptc] why not .perl6 13:41
moritz alpha-: too much to type
[ptc] agreed
masak also, not much prior art from Perl 5, where it's usually `.pl` or nothing at all. 13:44
I'm still a big fan of nothing at all, complemented with (say) vim directives.
13:44 skids joined
bartolin hmm, I looked around and most of my Perl6 files end in .t *g* 13:44
masak haha 13:45
bartolin++
skids pm6 even if it isn't a module is my policy.
13:45 jluis left
masak bartolin: you were the one who made a deal with #perl6, no? for every 5 RT tickets given a test, #perl6 owes you to un-stuck one RT ticket. do we owe you any at this point? 13:46
13:48 jfried joined
bartolin masak: oh, actually atm I only have a short list of tickets for #perl6. but I'd had to ask RT how many questions I have 13:49
13:50 salv00 left 13:51 salv0 left
bartolin one ticket from my list is RT #78324 13:51
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=78324
moritz btw github.com/perl6/DBIish/issues/6 as an example for an awesome bug report
jdv79 could the audio be added to the slide stream? or will that not be good. 13:53
bartolin jantz++
moritz bartolin: TimToady++ specced the .narrow method in response to the github discussion
bartolin: but didn't clarify whether the sequence operator should call it 13:54
so still undecided. I'd argue that the current behavior is correct, so I'd close it (with tests)
m: say (4/2).^name, (4/2).narrow.^name 13:55
camelia rakudo-moar 7fd2f6: OUTPUT«RatInt␤»
bartolin moritz: sounds good to me, thanks!
13:56 Rounin left
bartolin afk for a while (kids want to eat) 13:57
masak bartolin: #78324 looks to me like it could be closed, yes. 13:58
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=78324
masak moritz++ # response to jantz in github.com/perl6/DBIish/issues/6 14:00
dalek c: e02e0c7 | moritz++ | README.md:
README: Add another option for contributing
c: d819b6c | moritz++ | lib/Type/Numeric.pod:
Improve wording
c: cb9fb94 | moritz++ | lib/Type/Numeric.pod:
Document Numeric.narrow
moritz m: say join ' ', (512, 256, 128 ... { .narrow ~~ Int }) 14:01
camelia rakudo-moar 7fd2f6: OUTPUT«512␤»
moritz m: say join ' ', (512, 256, 128 ... { .narrow ~~ Rat })
camelia rakudo-moar 7fd2f6: OUTPUT«512 256 128 64 32 16 8 4 2 1 0.5␤»
14:02 sqirrel left
moritz m: say join ' ', (512, 256, 128 ...^ { .narrow !~~ Int }) 14:02
camelia rakudo-moar 7fd2f6: OUTPUT«512 256 128 64 32 16 8 4 2 1␤»
moritz m: say join ' ', (512, 256, 128 ...^ *.narrow !~~ Int)
camelia rakudo-moar 7fd2f6: OUTPUT«␤»
moritz m: say join ' ', (512, 256, 128 ...^ *.narrow.^isa(Int))
camelia rakudo-moar 7fd2f6: OUTPUT«␤»
moritz m: say join ' ', (512, 256, 128 ...^ *.narrow.isa(Int))
camelia rakudo-moar 7fd2f6: OUTPUT«␤»
14:05 salv00 joined
moritz m: say(nqp::typeof(Int)) 14:06
camelia rakudo-moar 7fd2f6: OUTPUT«===SORRY!===␤No registered operation handler for 'typeof'␤»
vendethiel "foo:U" probably accidental smiley :P 14:07
14:07 salv0 joined
TimToady foo:D probably intentional smiley 14:07
moritz has been calling :D and :U "type smileys" for quite some time
vendethiel as well because of the advent posts :P
14:08 _dolmen_ joined 14:11 esaym left
vendethiel woud be interested in a real 5.22 changelog to see what's actually going on, without sound 14:12
moritz jnthn: RT #123696 (6;) throwing an error from the optimizer is because there's an NQPMu in a QAST::Stmts. Is that wrong? or should the optimizer be able to handle that?
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123696
moritz ah, seems it shouldn't happen in the first place 14:13
14:13 pecastro joined
masak "type smiley". I like it. 14:13
moritz then my attempts to patch the optimizer are misguided
14:16 kaare_ left
vendethiel kinda wonders what ->@* does, but mostly wonders how to google it 14:17
vendethiel now knows.. :)
moritz @{ ... }
vendethiel it was the next lide... I'm a bad pardon :P
person*. sorry. ugh
masak .oO( I beg your person!? ) 14:18
moritz finds ->@* quite ugly
vendethiel masak: which one of those? there are of lot in my head..
moritz but iirc ->@ was ambiguous in some cases
masak vendethiel: :)
vendethiel seems like the slide is missing some changes in the "say" line 14:21
14:22 pecastro left
moritz www.amazon.com/Set-This-House-Order...06095485X/ speaking of multiple persons in your head... 14:22
14:23 esaym153 joined
moritz the other stuff that I've read from Matt Ruff is quite awesome as well 14:24
I liked "Sewer, Gas & Electric: The Public Works Trilogy". It's very crazy and yet believable fantasy or science fiction, depending on how you look at it 14:25
14:25 _dolmen_ left 14:26 ivan`` left 14:32 rurban left
[ptc] m: say Numeric.^methods(:local); 14:35
camelia rakudo-moar 7fd2f6: OUTPUT«log log10 exp roots succ pred sleep␤»
[ptc] a Numeric can sleep??
moritz m: my $before = now; 2.sleep; say now - $before 14:36
camelia rakudo-moar 7fd2f6: OUTPUT«2.00542901␤»
colomon Hmmm… a Real sleeping makes sense
m: my $before = now; 2i.sleep; say now - $before
camelia rakudo-moar 7fd2f6: OUTPUT«Cannot call 'Real'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in sub infix:<>> at src/gen/m-CORE.setting:5195␤ in sub infix:<>> at src/gen/m-CORE.setting:5195␤ in sub sleep at src/gen/m-CORE.setting:18779␤ in method sleep at src/gen/m-…»
moritz yes, shouldn't be in Numeric
JimmyZ m: my $before = now; 2.53.sleep; say now - $before
moritz (and IMHO there's no point in it being a method at all; it's not like the number sleeps; the process or thread does) 14:37
camelia rakudo-moar 7fd2f6: OUTPUT«2.5363512␤»
14:41 ivan`` joined 14:44 KPTN left
masak +1 14:51
feels too much like 5.times of Ruby (in)fame
El_Che devoom has been pretty packed. Good to see good attendance on perl6 talks
moritz two test files you .sleep
masak which thinking error we tend to avoid
El_Che: whoz op next?
El_Che: heh -- maybe we should do this every year; announce that on this FOSDEM Perl 6 will finally be ready to party :P 14:52
vendethiel moritz: agreed! :-) that's not related to numeric anyhow
El_Che masak: tadzik is now on perl6 speed
jdv79 sched says stevan 14:53
El_Che then stevan, then mst, then jnthn
jdv79 hope stream for tomorrow
masak yeah
El_Che masak: I would love to see fosdem be a place where 5 and 6 can be one community
ovid talk about perl6 was really packed
retupmoca Does something like this even make sense: github.com/retupmoca/rakudo/commit...deb578f43b ? 14:54
yoleaux 03:32Z <japhb> retupmoca: I added an nqp test file for locks, you should be able to find it in t/concurrency.
masak El_Che: to a very large extent, 5 and 6 are one community, always. much more than, say, C and C++.
El_Che masak: true, but there has been some bad blook 14:55
retupmoca it seems to work, but I don't know what consequences it may have
El_Che blood
masak El_Che: during this FOSDEM?
El_Che no
masak oh, good.
dalek kudo/nom: ffbb70c | moritz++ | src/core/ (2 files):
Move method sleep from Numeric to Real; deprecate it in favor of the subroutine form
El_Che in the blogsphere a long time ago :)
masak some bad blood is natural. Perl 6 has a fairly ambitious agenda, part of which is to transcend Perl 5 :) 14:56
El_Che I don't have the feeling we have perl5 and 6 talks. All the talks are interesting on their own
masak and Perl 5 has the (true) claim of being the dominant Perl out there, used in production and stable and whatnot.
El_Che: Su-Shee on twitter expressed dismay at there being too many Perl 6 talks at FOSDEM and too few Perl 5 talks. 14:57
El_Che let me count 14:58
masak :)
El_Che we have 6 perl 5 talks
JimmyZ 6 vs 5
El_Che we have 4 perl 6 talks
JimmyZ really? 14:59
masak El_Che: that's an outrage! how dare those Perl 6 people!
El_Che and one perl 6 talk (not in the count) about using perl5 libs in perl6
so 6-5 is pretty balanced in my view :)
masak I'm relieved it's not more Perl 6 talks than Perl 5 talks.
El_Che it could have been 15:00
15:00 espadrine joined
El_Che we didn't really count 15:00
masak I'm glad we still mix them up in the same namespace, room, and track. aslong as we keep doing that, we should be fine. 15:01
El_Che masak: If I recard correctly someone promised a flying car at fosdem not so long ago ;) 15:02
pmichaud bon aprés midi, #perl6
El_Che pmichaud: great talk 15:03
masak El_Che: actually, that was in Bristol.
pmichaud! \o/
[ptc] pmichaud++
masak pmichaud: I missed your talk because no streaming :/ but the chatter on the channel was interesting. :)
El_Che masak: archive.fosdem.org/2013/schedule/e...lying_car/
pmichaud El_Che: merci!
jdv79 yeah, at least we got to see the slides live
masak El_Che: I stand corrected.
pmichaud reads scrollback
15:05 KPTN joined 15:07 espadrine left 15:12 ivan`` left 15:16 ivan`` joined
dalek c: c72ac66 | paultcochrane++ | bin/p6doc:
Indenting p6doc code consistently
15:16
pmichaud masak: I'm glad to have provided interesting channel chatter
And yes, I really like the mix of P5 and P6 talks here. The dev room attendance has been good all day... with some talks over-filling the room 15:18
I was (pleasantly) surprised at the number of people who came to my talk :)
15:19 oetiker joined
dalek c: 5eef209 | paultcochrane++ | bin/p6doc:
Wrap long p6doc error message output
15:20
15:23 sqirrel joined, KPTN left
pmurias was the "big" announcement made? 15:24
15:25 FROGGS joined
tadzik that's tomorrow 15:25
jdv79 i guess this is p5-mop rebranded 15:32
pmurias jdv79: ? 15:34
tadzik the current talk
jdv79 the current live sideshow
pmichaud standing room only at stevan's talk
jdv79 *slideshow 15:35
tadzik pmichaud: actually, Dancer2 was even more crowded, from about half-time 15:36
masak you'd almost thing this language weren't dead after all
think*
tadzik Peculiar
Kristien When I hear or read that word I always think of pickles 15:39
Pickelar
ugexe is there a way to use an NQP module in a perl6 script? specifically i am trying to generate AST from p6 code and was wondering if i could use Perl6::Compiler.parse instead of `perl6 --target=parse some-file.pl6` 15:40
masak ugexe: if you figure that one out, let me know.
ugexe i was hoping to take it to my grave 15:41
masak dang. 15:42
[ptc] loves how perl6 tells you when you use perl5 and how to fix it 15:45
15:46 ivan`` left
masak yeah. I miss that in Python 3. 15:46
[ptc] yeah, like don't use '"%s" % blah'; use '"{blah}".format(blah=blah)' 15:48
[ptc] isn't yet a fan of the new string format syntax in Python 15:49
arnsholt ugexe: Should be possible using nqp::ops I think
masak [ptc]: though .format is highly endorsed, the % form is not (yet?) deprecated.
[ptc] masak: I know, but they keep saying to convert code to .format *just in case* they remove it in the future 15:50
I'm sure I'm missing something about how good it is...
in my day job I wish I could just do "some string with a $variable" and it interpolates 15:51
I know it's technically possible in Python, but it's not "pythonic"
15:51 raiph joined
arnsholt ugexe: nqp::getcomp('perl6') should get you a Perl6::Compiler instance 15:52
15:52 BenGoldberg joined
arnsholt And from that you should be able to get a QAST tree 15:53
ugexe arnsholt++ 15:54
15:57 sqirrel left
tadzik but is that data structure Perl6-readable? :o 15:57
this changes everything :o
arnsholt ugexe: From some more reading, I suspect what you want is "nqp::getcomp('perl6').compile($code, :target<ast>)" 15:58
tadzik: Well, it's NQP objects, so you proably have to be careful with what you do with 'em, but you have all the ops at hand 15:59
So anything should be possible, given enough elbow grease =)
16:00 anaeem1 joined, brrt joined
vendethiel any more p6 talk for today? (probably not) 16:01
16:04 kjs_ left
skids last one today is "Perl 6: beyond dynamic vs. static" 16:04
vendethiel ooh :) 16:05
arnsholt Sounds like a jnthn-talk?
16:05 sqirrel joined
tadzik yeah 16:06
coming up in 10 minutes :)
TimToady mst first?
tadzik hmm, possibly 16:07
indeed
in 55 minutes then :)
16:14 Kristien left
colomon Are we still getting just slides in the feed? Still probably worth watching, jnthn++’s slides are usually pretty exciting. :) 16:16
leedo Dear Manager, 16:18
We could make pump valve bodies&accessories, impellers for you, on premium quality and competitive price.
o ty
colomon (actually, what is the feed for the room jnthn is in? I’m watching the one I was watching earlier, but I’d be shocked if this is mst’s talk)
tadzik mst is in the same room as jnthn will be speaking in 16:19
leedo whoops, wrong channel. sorry
16:22 esaym153 left 16:23 brrt left 16:24 esaym153 joined 16:26 brrt joined 16:32 FROGGS left
vendethiel gets his attention drawn by the "haskell" 16:34
16:35 torbjorn joined
brrt perl, y u have no video stream 16:36
tadzik don't worry, if it had one it'd be mute :)
they say at least the recording is right
colomon tadzik: I’m sorry I missed watching your slides. :) 16:37
vendethiel oooh, thanks for the note tadzik
tadzik colomon: oh, no worries, smaller audience is less stressful :P
vendethiel 's wearing his perl workshop shirt today, to support the fosdem perl room :P
16:38 coffee` joined
brrt well.. i'm going to wear my camelia button 16:38
16:40 anaeem1 left, anaeem1 joined
colomon Maybe I’ll finally get around to hanging my Camel who wants to be a butterfly poster today. 16:41
16:45 anaeem1 left
colomon thinks mst’s talk is really weird when you just glance at the slide every now and then. “ruby: MooseX” “make” “I HATE TABS” 16:45
the latter clearly shows it is mst’s presentation
16:46 liztormato joined, liztormato left 16:47 adu joined
tadzik the apparent lack of shouting and swearing makes me wonder if it's an impostor 16:51
El_Che hehehe 16:52
colomon tadzik: I just assumed he was shouting and swearing. the advantages of having no audio feed. ;) 16:53
tadzik how is that an advantage? :D 16:54
16:54 btyler left
colomon I imagined he sounded like himself. 16:55
16:55 btyler joined 16:59 Kristien joined 17:00 dustinm`` joined
vendethiel when is jnthn++'s talk? 17:02
jdv79 next
TimToady 3 minutes
Kristien will it be livestreamed?
tadzik sort of, at least recorded 17:03
colomon is trying to decide if he can make noms and watch jnthn’s slides at the same time. 17:04
tadzik argh, I envy you
colomon no signal! that means mst is finished....
tadzik fosdem does not have food breaks of any sort
stevan's slide with spaghetti, nnnngh
dalek c: 453591e | paultcochrane++ | util/missing-methods.p6:
Add a first cut at a program to find undocumented methods
17:05
TimToady looked pretty poisonous to me
colomon if it makes you feel any better, I’m thinking watching and cooking at the same time might be a stretch
would be easier if I could hear him talk
woo-hoo! 17:06
jdv79 woohoo wha t?
colomon tadzik: how about you transcribe the important bits of what jnthn is saying here, and I’ll describe the nom creation process to you. ;)
Kristien I wrote a web app in Eiffel. :v 17:07
I should attempt writing one in Perl 6.
17:07 cdc joined
tadzik that's quite easy:) 17:07
Kristien CGI to the rescue! 17:08
tadzik oh no, we have proper psgi and stuff :)
El_Che jnthn is on! 17:09
colomon jdv79: jnthn’s talk just started
tadzik github.com/tadzik/bailador is one way to go
jdv79 oh
tadzik (shameless self-ad)
Kristien Meh, globals.
17:10 anaeem1 joined
tadzik there's github.com/coke/mojo6 too, but I don't know how it works 17:11
dalek c: 7212348 | paultcochrane++ | lib/Type/List.pod:
Document List.Numeric()
[ptc] hrm, the C# code wouldn't compile 17:12
duh, that's the point ptc...
jdv79 hope the talk improves 17:14
colomon has chopped up green onions, and is starting in on the tofu 17:20
[ptc] slide streaming just disappeared... 17:22
skids here too. 17:24
jdv79 unbelievable
colomon hmmm, I’ve still got something up, but it’s been on the same screen for a while
jdv79 yeah, its just froze on lat frame recvd 17:26
*last
17:27 kjs_ joined
colomon tadzik: what’s happening there? The stream here has frozen. Also, the Sichuan peppercorns are toasted and the chicken is frying. 17:31
[ptc] starts to get hungry 17:32
BenGoldberg Can I haz fried chicken? 17:33
17:33 Kristien left
colomon BenGoldberg: stir-frying, really 17:33
BenGoldberg As long as it sizzles while cooking, it's all good. 17:34
tadzik colomon: well, jnthn is talking, no interruptions
so, I don't know
colomon what’s he talking about now? I wasn’t worried about the why, I’m just missing the talk. 17:35
tadzik ah, :) Roles
and how nice that you get method collision error in compiletime 17:36
17:36 sqirrel left
colomon tadzik: nothing mind blowing yet? 17:38
tadzik no secret project announcements:)
jdv79 it'll be at the end
tadzik usually is
but looking at the talk subject, I'm clueless as to what it might be :) 17:39
[ptc] afk 17:40
17:40 araujo left
timotimo "oops i accidentally implemented a tracing jit for you in secret on the plane ride to fosdem" 17:40
masak that is so jnthn 17:44
always so careless! :P
17:44 araujo joined
colomon timotimo: actual quote or just your imagination? 17:44
vendethiel are jnthn's slides available somewhere? my current internet does not allow me to watch the stream :( 17:45
colomon vendethiel: stream is not working anyway
jdv79 nobody can
tadzik vendethiel: I'm pretty sure he'll publish them later
17:49 Mso150 joined 17:51 colomon left, Kristien joined
tadzik OO::Monitors is shown 17:52
17:52 colomon joined
tadzik but that existed before :) 17:52
colomon WAT?!?!!!! 17:54
Kristien > Error: no streams found
:9
tadzik github.com/jnthn/oo-monitors/
17:54 brrt left
jdv79 what happened? 17:54
TimToady he's just using it as another example of the same thing 17:55
and he was sick last week
tadzik he just announced Half-Life 3
(j/k) 17:56
17:58 raiph left, rurban joined
tadzik well, I'm packing to minimize the time from now to food :) 17:58
colomon in nomming 18:02
*is
18:03 konsolebox joined, raiph joined
dj_goku so if I wanted to interface using nativecall to a c library. How much work is that going to take? I have kind of forgotten C and only know a little Perl6. :D 18:06
jdv79 nine's talk had a bit on it 18:07
18:07 colomon left 18:08 colomon joined
arnsholt dj_goku: Depends primarily on how large and complex the C library is 18:09
Also if it hits any of the rough spots in NativeCall
18:10 konsolebox left
dj_goku arnsholt: cool. I am thinking of making a Perl 6 gearman client. 18:10
I don't know gearman that well so I am thinking a client would help me learn.
18:11 jeckyhl joined
colomon dj_goku: see for example github.com/avuserow/perl6-audio-ta.../Simple.pm 18:17
jeckyhl hi, i don't know if this is the right place to ask, but I have trouble running perl6 in cmd.exe on Windows. I have a french Keyboard and to type the backslash character for example I must type ALTGR+8. But when I do this in a perl6 prompt nothing happends. Strangely others ALTGR combinations works, for example typing ALTGR+2+SPACE gives the exected result (displaying '~'). Did someone already experienced this problem ? Is there any wo 18:20
I'm using the last develop version of rakudo on MoarVM (version 2015.01-50-gffbb70c / MoarVM version 2015.01-5-ga29eaa9). Thanks for helping 18:21
18:21 colomon left
masak jeckyhl: first time I've heard about it. 18:21
vendethiel is the stream working?
masak would be interesting if some other Windows user with (the ability to switch to) a French layout could try to reproduce this. 18:22
vendethiel I've reported the same issue several times
I'm on windows with a french keyboard as well :). I've been told to change the console to UTF-8, and it still errors out the same
18:22 gr33n7007h joined
jeckyhl @vendethiel apart for the ALTGR combination problem everything seems OK 18:22
vendethiel also, whenever I try to input utf-8, it errors with "bad utf8 sequence"
jeckyhl, same here
18:23 konsolebox joined
masak that sounds like a genuine issue to me. 18:23
18:23 mr-foobar joined
masak please submit a rakudobug. 18:23
jeckyhl @masak I will 18:24
18:24 Mso150_z joined 18:25 dwarring joined, Mso150 left
vendethiel no more streams, still? ha! 18:27
jeckyhl @vendethiel just for the record typing > say "é" in a perl6 prompt result in error "Malformed UFT-8". Switching code page to UTF-8 (chcp 65001) doesn't helps
vendethiel jeckyhl: yes, did the same, and I'm in the same situation :)
vendethiel just writes perl6 to a file nowadays, when he must windows 18:28
18:29 colomon joined
colomon jeckyhl: this is totally the right place to ask, but it’s possible everyone who has a clue about it at the moment is elsewhere. (I know I don’t, alas.) 18:30
18:32 nyuszika7h left 18:33 kurahaupo1 joined
jeckyhl @colomon thanks for replying. Seems a complicated issue. Maybe I will ask again later. I think I'm gonna fill a rakudo bug as suggester by @masak. Keep up the good work! Bye 18:33
masak jeckyhl: [email@hidden.address] 18:34
18:34 jeckyhl left, nyuszika7h joined
dalek ast: 228b501 | (David Warring [email@hidden.address] | integration/advent2011-day23.t:
[advent2011-day23.t] .uniq => .unique
18:41
18:43 neybar joined
neybar so what is the best version of perl 6 to play around with? 18:44
colomon neybar: rakudo-moar 18:45
unless you’re specifically interested in wokring with the JVM
neybar Mostly just want to start learning. 18:51
18:55 anaeem1 left 18:56 anaeem1_ joined 18:57 kjs_ left 19:00 anaeem1_ left 19:11 rurban left 19:12 rindolf left 19:19 jsix is now known as jschulz 19:20 anaeem1 joined
pmurias what command line option should I use for nqp-js to beautify outputed code? 19:28
dalek c: e4c6d6a | paultcochrane++ | util/missing-methods.p6:
Extract undocumented method display code into its own routine
19:34
c: 9a293e4 | paultcochrane++ | util/missing-methods.p6:
Extract code finding methods in type into its own routine
c: 9892b92 | paultcochrane++ | util/missing-methods.p6:
Replace temporary variable in sub call
c: facb3fb | paultcochrane++ | util/missing-methods.p6:
Rename subroutine in missing-methods.p6
c: 1e3b216 | paultcochrane++ | util/missing-methods.p6:
Rename variable for clarity
c: 7eaf0aa | paultcochrane++ | util/missing-methods.p6:
Handling optional type name arg in missing-methods
pmurias perl6: my $c = nqp::getcomp('perl6'); $c.compile(:target<ast>, '1') 19:35
camelia rakudo-moar ffbb70: OUTPUT«===SORRY!===␤compunitmainline requires an MVMCompUnit␤»
..rakudo-parrot ffbb70: OUTPUT«Type check failed in binding $expected; expected 'Any' but got 'Mu'␤ in block <unit> at /tmp/tmpfile:1␤␤»
19:38 zakharyas joined
Kristien pmurias: --beautify 19:40
or make it the default
arnsholt pmurias: Hmm. Then compile is probably the wrong entry point 19:42
19:44 kjs_ joined 19:45 kurahaupo1 left 19:46 Cler1c joined 19:47 Cler1c left 19:49 Mso150_z_t joined 19:50 Mso150_z left
neybar ok, so I grabbed rakudo source, and I see that I can pass in Configure.pl --gen-moar --gen-parrot and other fun stuff. Assuming I were to compile more that one backend, how would I got about specifying which backend to use? 19:54
vendethiel neybar: perl6-m, perl6-p and perl6-j are the 3 binaries you (might) get 19:55
psch neybar: ALL compiles all backends, otherwise the first one is installed as 'perl6'
vendethiel the default "perl6" is aliased to the first one
psch: oh, there's a --gen-ALL ?
psch vendethiel: --backends=ALL
vendethiel or do you mean backends=ALL
right
psch vendethiel: afair, --backends gets you --gen-*, at least for moar? 19:56
dalek p-js: 25406a8 | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp:
Emit code that parses when NYI ops are used as expressions.
p-js: d7366e5 | (Pawel Murias)++ | src/vm/js/nqp-runtime/runtime.js:
Make empty hashes false, none-empty ones true.
p-js: d84972e | (Pawel Murias)++ | t/nqp/18-associative.t:
Test boolification of hashes.
psch ah, no, it doesn't
that'd be a bit silly anyway, thinking about it :) 19:57
raydiak hope not, otherwise you couldn't build rakudo on eg a dev fork of moar :)
psch neybar: you might want to check out rakudobrew at github.com/tadzik/rakudobrew
heh, --backends=* wasn't actually implemented it seems :) 19:58
neybar thanks. I was looking at the osx brew formula, but it is out-dated and doesn't expose moar as an option. 19:59
19:59 diana_olhovik joined
raydiak '*' would mess with people who don't know how their shell handles that 20:00
vendethiel :D 20:02
Kristien how about --backends=⁂ 20:03
pmurias nqp-m: role R {method foo() {say("foo")}}; class C does R {}; C.new.foo()
camelia nqp-moarvm: OUTPUT«Cannot invoke this object (REPR: Null, cs = 0)␤ at /tmp/f7eGOYdlej:1 (<ephemeral file>:foo:8)␤ from /tmp/f7eGOYdlej:1 (<ephemeral file>:<mainline>:39)␤ from gen/moar/stage2/NQPHLL.nqp:1244 (/home/camelia/rakudo-inst-1/languages/nqp/lib/NQPHLL.moarvm:eva…»
pmurias isn't that a bug?
vendethiel pmurias: it is :P 20:04
I think so, when it says "null"
pmurias nqp-m: role R {method foo() {nqp::say("foo")}}; class C does R {}; C.new.foo()
camelia nqp-moarvm: OUTPUT«foo␤»
psch bare say has REPR: Null 20:05
pmurias nqp-m: role R {method foo() {nqp::say("foo")}}; class C does R {}; C.new.foo(); 1
camelia nqp-moarvm: OUTPUT«foo␤»
pmurias nqp-m: role R {method foo() {say("foo")}}; class C does R {}; C.new.foo(); 1
camelia nqp-moarvm: OUTPUT«Cannot invoke this object (REPR: Null, cs = 0)␤ at /tmp/b6OyBeKNB7:1 (<ephemeral file>:foo:8)␤ from /tmp/b6OyBeKNB7:1 (<ephemeral file>:<mainline>:39)␤ from gen/moar/stage2/NQPHLL.nqp:1244 (/home/camelia/rakudo-inst-1/languages/nqp/lib/NQPHLL.moarvm:eva…»
psch nqp-m: say("a")
camelia nqp-moarvm: OUTPUT«a␤»
psch oh, nvm
psch goes back to being wrong in silence :s 20:06
pmurias: github.com/perl6/nqp/issues/155 20:09
might be that issue actually
20:11 jschulz is now known as jsx, jsx left 20:17 raiph left 20:21 anaeem1 left 20:24 kgoess joined, Ugator joined 20:25 anaeem1_ joined 20:31 dwarring left, coffee` left
kgoess it looks like p6 shebang lines don't work on OS X, I assume that's a known issue? 20:33
stackoverflow.com/questions/9988125...ly-ignored q.v.
20:34 darutoko left
geekosaur yes, known 20:34
kgoess easy workaround?
raydiak #!/usr/bin/env perl6 might fix it
geekosaur (it's actually more correct to say that having it chain is the unusual one, since Linux supports it and FreeBSD has a hack to handle depth-2 nesting)
20:34 rurban joined
geekosaur (but nothing else really does, and the original didn't do chaining at all IIRC) 20:35
rather, behaved like you're seeing on OS X, which is using a variant of the original 4.2BSD #! implementation
kgoess indeed it does fix it, is there a build option to fix the scripts in install/bin/, e.g. p6doc, or should I just fix them myself? 20:36
raydiak no build option I know of 20:38
psch opening an issue (or PR) on repos that don't use env is probably the way to go 20:39
we can't really fix wrong handling of shebangs 20:40
for our value of wrong :) 20:41
kgoess no, but we could build the install/bin/ scripts as compiled C instead of shell scripts
psch binary target for moar is in the works iirc 20:42
github.com/rakudo/rakudo/pull/330
20:43 raiph joined
kgoess oh, right on, cool 20:43
psch just hasn't made it to nom yet. i haven't really looked at it, jnthn++ or FROGGS++ might know more
gr33n7007h will sudo apt-get install rakudo perl6?
psch gr33n7007h: probably, but it'll be severly out of date. try rakudobrew ( github.com/tadzik/rakudobrew ) instead 20:44
gr33n7007h hey thanks psch
20:47 pmurias left, kjs_ left 20:53 kjs_ joined
timotimo o/ 20:54
20:54 diana_olhovik left 20:58 adu left 21:04 kgoess left 21:06 Mso150_z_t left
raydiak \o timo 21:07
21:10 anaeem1_ left, anaeem1 joined 21:15 anaeem1 left 21:16 xfix left
psch o/ timotimo 21:16
21:17 jschulz joined
moritz timotimo: I have a stream dump for you 21:24
timotimo: on hack.p6c.org in ~moritz/stream.dump 21:25
timotimo: 5.7GB. I haven't looked at it, so no idea if it's any good
21:32 telex left 21:34 telex joined, bartolin left 21:38 Util left 21:41 FROGGS joined
timotimo ooooh! 21:41
thank you so much :)
there was actually something to watch?
21:42 Util joined 21:43 Oe_eden joined 21:46 rurban left
Peter_R Is it going to take a long time for the FOSDEM guys to upload recordings? 21:46
The dates on previous years' stuff don't fill me with encouragement 21:47
sergot Perl devroom was full of p6 talks at Fosdem, I like it! :) 21:50
21:52 bartolin joined 21:55 avuserow left
FROGGS .tell raydiak have you seen github.com/MoarVM/MoarVM/pull/173 and github.com/jnthn/zavolaj/pull/55? 21:56
yoleaux FROGGS: I'll pass your message to raydiak.
FROGGS Peter_R: we all hope for the best :/
vendethiel twitter.com/steveklabnik/status/56...0744960000 is that about our larry? :P probably not 22:02
seems to be, actually
twitter.com/steveklabnik/status/56...0534568960 guy's a pretty well-known rubyist and rust-"ist", nowadays 22:03
Kristien Well, Perl is one of the few popular dynamically-typed languages that aren't horrible at scoping.
vendethiel this is so sad but true. 22:04
22:04 rba_ left 22:05 labster joined 22:08 avuserow joined
Kristien I googled "eiffel reflection" and I get pictures of the Eiffel Tower reflecting in a lake :v 22:10
Googling "man pipe" is also funny
22:13 rba_ joined 22:15 rurban1 left
raydiak FROGGS: *gasp* no! awesome! :) 22:16
yoleaux 21:56Z <FROGGS> raydiak: have you seen github.com/MoarVM/MoarVM/pull/173 and github.com/jnthn/zavolaj/pull/55?
22:17 kjs_ left
raydiak retupmoca++ 22:18
22:19 konsolebox left, andreoss joined 22:25 frew left
raydiak that'll be nice, because I was setting elements one at a time as a test, CArray is 3-4 times slower than Array, which is just a hair slower than Buf 22:27
22:29 [Sno] joined 22:31 zakharyas left
raydiak iow Array and Buf are close to the same, and CArray is much slower (to disambiguate the grammar in my last statement) 22:32
Kristien What guarantees are there when multiple threads read/write the same variable? 22:39
vendethiel m: my @a; await do for ^10 { start { rand.sleep; @a.push($_); } }; say @a 22:42
camelia rakudo-moar ffbb70: OUTPUT«1 0 5 3 9 8 6 7 4 2␤»
vendethiel m: my @a; await do for ^100 { start { @a.push($_); } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«Memory allocation failed; could not allocate 656 bytes␤»
vendethiel m: my @a; await do for ^20 { start { @a.push($_); } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«Memory allocation failed; could not allocate 656 bytes␤»
Kristien is there implicit synchronisation?
vendethiel should be
iirc, at least
raydiak m: my @a; await do for ^100 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a 22:43
camelia rakudo-moar ffbb70: OUTPUT«0 -> 3␤2 -> 3␤1 -> 3␤3 -> 3␤4 -> 4␤5 -> 5␤6 -> 6␤8 -> 8␤7 -> 8␤9 -> 10␤Memory allocation failed; could not allocate 656 bytes␤» 22:44
vendethiel I think jnthn++ wrote something about that on his blog
raydiak m: my @a; await do for ^100 { start { @a[$_] = $_ } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«Memory allocation failed; could not allocate 656 bytes␤»
sergot m: False andthen say 1;
camelia rakudo-moar ffbb70: OUTPUT«1␤»
raydiak m: my @a; await do for ^10 { start { @a[$_] = $_ } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«0 (Any) 2 3 4 5 6 7 8 9␤»
raydiak m: my @a; await do for ^30 { start { @a[$_] = $_ } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«Memory allocation failed; could not allocate 656 bytes␤»
skids I think the answer right now is "don't do that" and to use on { } to sequentialize. 22:45
Yes, jnthn talked a bit about how this devolves into a mess to implement anything past some really basic protections.
raydiak just got a double-free/corruption error locally...
m: my @a; await do for ^100 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a 22:47
camelia rakudo-moar ffbb70: OUTPUT«1 -> 3␤3 -> 3␤2 -> 3␤0 -> 3␤4 -> 4␤5 -> 5␤6 -> 6␤8 -> 8␤Memory allocation failed; could not allocate 656 bytes␤7 -> 8␤»
raydiak m: my @a; await do for ^100 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«2 -> 3␤0 -> 3␤1 -> 3␤3 -> 3␤4 -> 4␤5 -> 5␤6 -> 7␤8 -> 8␤7 -> 8␤9 -> 10␤Memory allocation failed; could not allocate 656 bytes␤Memory allocation failed; could not allocate 4194304 bytes␤»
raydiak m: my @a; await do for ^15 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«3 -> 4␤0 -> 3␤1 -> 3␤2 -> 3␤4 -> 4␤5 -> 5␤6 -> 7␤8 -> 8␤7 -> 8␤Memory allocation failed; could not allocate 656 bytes␤»
raydiak m: my @a; await do for ^10 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«3 -> 3␤0 -> 3␤1 -> 3␤2 -> 3␤4 -> 4␤5 -> 5␤6 -> 6␤8 -> 8␤7 -> 8␤9 -> 9␤0 1 2 3 4 5 6 7 8 9␤»
raydiak m: my @a; await do for ^10 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«1 -> 3␤2 -> 3␤0 -> 3␤3 -> 4␤4 -> 4␤5 -> 5␤6 -> 6␤7 -> 7␤8 -> 8␤9 -> 9␤0 1 2 3 4 5 6 7 8 9␤»
raydiak m: my @a; await do for ^10 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«2 -> 3␤1 -> 3␤3 -> 4␤0 -> 3␤4 -> 4␤5 -> 5␤6 -> 6␤7 -> 8␤8 -> 8␤9 -> 9␤0 1 2 3 4 5 6 7 8 9␤»
raydiak m: my @a; await do for ^10 { start { @a.push: $_; say "$_ -> @a[*-1]" } }; say @a
camelia rakudo-moar ffbb70: OUTPUT«0 -> 3␤2 -> 3␤3 -> 3␤1 -> 3␤4 -> 4␤5 -> 5␤6 -> 6␤7 -> 7␤8 -> 8␤9 -> 9␤0 1 2 3 4 5 6 7 8 9␤»
raydiak hm
skids 6guts.wordpress.com/2014/04/17/raci...ess-leads/ # <-- jnthn's article.
vendethiel skids++ #blog-digging
m: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; say [+] %a, %b 23:01
camelia rakudo-moar ffbb70: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in sub infix:<+> at src/gen/m-CORE.setting:5127␤ in sub at src/gen/m-CORE.setting:20590␤ in block <unit> at /tmp/0Rc_5cUkbd:1␤␤»
vendethiel mmh, I'd like to see something like that, somewhere, maybe a "hashreduce" or something...
masak not sure what you intend that to result in. 23:02
did you mean to reduce on just the values of the two hashes?
vendethiel yes.
masak then write .values
vendethiel I want to keep the keys
masak um. 23:03
then you want something like >>+<< or <<+>>
see S03.
vendethiel m: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; my %total; for @hashes { %total{.key} += .value; }; say %total
camelia rakudo-moar ffbb70: OUTPUT«a => 5, b => 7, c => 10␤»
vendethiel masak: ^
masak yeah, that's >>+<< or <<+>>
it's detailed in S03.
vendethiel m: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; %total; say [>>+<<] %a, %b 23:04
camelia rakudo-moar ffbb70: OUTPUT«===SORRY!=== Error while compiling /tmp/rA1vvW0Yex␤Variable '%total' is not declared␤at /tmp/rA1vvW0Yex:1␤------> 5, c => 10; my @hashes = %a, %b; %total⏏; say [>>+<<] %a, %b␤ expecting any of:␤ p…»
vendethiel m: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; say [>>+<<] %a, %b
camelia rakudo-moar ffbb70: OUTPUT«Cannot call 'infix:<+>'; none of these signatures match:␤:(Any $x = { ... })␤:(Any \a, Any \b)␤:(Real \a, Real \b)␤:(Int:D \a, Int:D \b --> Int)␤:(int $a, int $b --> int)␤:(Num:D \a, Num:D \b)␤:(num $a, num $b)␤:(Rational \a, Rational \b)…»
masak no reduce.
you don't need to reduce.
you just want to hyper-add the stuff.
vendethiel if I have *many* hashes, yes
masak fair enough.
vendethiel say I have an array of hashes -- that's not the case here, but the general case would handle it
m: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; say %a >>+<< %b
camelia rakudo-moar ffbb70: OUTPUT«use of uninitialized value of type Any in numeric context in block <unit> at /tmp/w_D6XS8tN4:1␤␤a => 5, b => 7, c => 10␤»
vendethiel plus, that, if a key is missing 23:05
colomon n: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; say [>>+<<] %a, %b
camelia niecza v24-109-g48a8de3: OUTPUT«(signal ABRT)Stacktrace:␤␤ at <unknown> <0xffffffff>␤ at (wrapper managed-to-native) object.__icall_wrapper_mono_gc_alloc_string (intptr,intptr,int) <0xffffffff>␤ at (wrapper alloc) object.AllocString (intptr,int) <0xffffffff>␤ at string…»
vendethiel :(
masak that's what <<+>> is for, to suppress the warning if keys are missing.
ISTR it doesn't do that yet, unfortunately.
anyway, someone has provided this feature for you already.
vendethiel oh, really? 23:06
m: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; say %a <<+>> %b
camelia rakudo-moar ffbb70: OUTPUT«a => 5, b => 7␤»
masak \o/
vendethiel I've read S03 maybe 5 or 6 times, but I don't remember about it applying to hashes
also seems weird to me `a OP b` is different than `[OP] a, b` (modulo flattening differences) 23:07
masak S03:4469
synopsebot Link: perlcabal.org/syn/S03.html#line_4469
masak vendethiel: it's possible that the reduce version unravels the hashes or something. if not, then that's a bug. 23:08
vendethiel ty :)
masak pzh :)
vendethiel I really thought I *knew* p6 operators. I'm very happy to see that I still have a long way to go
masak I learned about hyper for hashes fairly late, too. 23:09
colomon m: my %a = a => 2, b => 2; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; say [>>+<<] $%a, $%b
camelia rakudo-moar ffbb70: OUTPUT«use of uninitialized value of type Any in numeric context in block <unit> at /tmp/y5C74JE629:1␤␤a => 5, b => 7, c => 10␤»
colomon m: my %a = a => 2, b => 2, c => 10000; my %b = a => 3, b => 5, c => 10; my @hashes = %a, %b; say [>>+<<] $%a, $%b
camelia rakudo-moar ffbb70: OUTPUT«a => 5, b => 7, c => 10010␤»
colomon it’s a flattening thing, no? 23:10
masak yes. 23:11
colomon++
vendethiel mmh, hhmmm 23:21
dj_goku nine: I just read your pdf on leapfrogging. very very interesting! 23:24
vendethiel hopes the videos will be available soon-ish :-) 23:25
23:28 woshty left, vendethiel- joined, woshty joined
flussence IWBNI I could write «sub foo(--> $bar!)» (or something along those lines) to always return a $bar 23:29
or to put it in real-world terms: I want a nice alternative to putting "return self;" as the last line of a bunch of methods... 23:30
23:30 vendethiel left
alpha- (defmacro .. 23:32
wait
wrong channel.
masak :)
masak .oO( we'll see about that. mwhahaha! ) 23:33
flussence
.oO( the majority of my gripes with p6 lately have been trying to do impossible things that'd be trivial with macros... )
23:34
masak flussence: practical real-world examples are still happily accepted. 23:36
flussence I'm working on one, but first I'll get the ugly version to pass tests :) 23:37
23:37 Entonian_ joined 23:39 Entonian_ left, kjs_ joined 23:40 Entonian_ joined, espadrine joined 23:42 breinbaas left, synopsebot left 23:43 nwc10_ joined, breinbaas joined, PerlJam left, nwc10 left, synopsebot joined 23:44 PerlJam joined 23:45 jnthn left, espadrine_ joined, jnthn joined, Oe_eden left 23:46 Entonian_ left, atta left, atta joined, gtodd left 23:47 retupmoca left, retupmoc1 joined, gtodd joined 23:49 espadrine left, osfameron left, osfameron joined