»ö« 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! | feather will shut down permanently on 2015-03-31
Set by jnthn on 28 February 2015.
00:02 mohij left 00:06 tinyblak left, yqt left 00:08 virtualsue left, davido__ left 00:09 davido__ joined 00:11 skids joined 00:12 vendethiel left 00:13 spider-mario left 00:15 vendethiel joined 00:18 davido__ left 00:21 tinyblak joined 00:32 spider-mario joined 00:33 spider-mario_ joined 00:37 spider-mario left 00:38 vendethiel left 00:40 Ben_Goldberg joined 00:42 atweiden joined 00:55 spider-mario_ left 00:56 Guest89153 is now known as felher, dayangkun joined 00:58 spider-mario joined 01:04 vendethiel joined 01:09 spider-mario left 01:10 cognominal left 01:12 laouji joined 01:13 bolangi joined, coffee` left 01:14 mr-foobar left 01:20 raiph left 01:22 zacts joined 01:28 vendethiel left 01:31 zacts left 01:34 spider-mario joined
Mouq RT #120506 and RT #121804 are both closable if anyone wants to pick them up (jnthn++ for fixing these) 01:35
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120506
Mouq #121804
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=121804
Mouq *with/if tests exist, that is
01:36 atweiden left 01:47 spider-mario left 01:50 spider-mario joined
japhb [Tux]: What is producing the "Bug summary" in tux.nl/Files/20150309084206.png ? 02:13
02:22 chenryn joined 02:44 ilbot3 left 02:46 ilbot3 joined 02:51 vendethiel joined 03:08 kaleem joined 03:15 vendethiel left 03:17 yeahnoob joined 03:25 noganex joined 03:27 colomon left 03:28 noganex_ left, raiph joined 03:31 colomon joined 03:41 yeahnoob_ joined, yeahnoob left 03:47 itz left 03:52 yeahnoob__ joined 03:54 laouji left 03:55 yeahnoob_ left
dalek ast: 5f5f5fb | Mouq++ | S09-typed-arrays/arrays.t:
Add tests for #120506
04:04
ast: df6e66b | Mouq++ | S09-typed-arrays/arrays.t:
Add test for RT #121804
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120506
Link: rt.perl.org/rt3//Public/Bug/Displa...?id=121804
04:05 colomon left 04:11 grondilu left 04:24 chenryn left 04:44 Ben_Goldberg left 04:48 laouji joined 04:51 aborazmeh joined, aborazmeh left, aborazmeh joined 04:56 itz joined 05:03 yeahnoob__ left 05:09 chenryn joined 05:16 raiph left, aborazmeh left 05:32 yeahnoob joined 05:41 aborazmeh joined, aborazmeh left, aborazmeh joined 05:58 mr-foobar joined 05:59 yeahnoob left 06:00 yeahnoob joined 06:03 diana_olhovik_ joined 06:11 tinyblak left 06:12 tinyblak joined 06:14 ggoebel left 06:15 diana_olhovik_ left 06:16 tinyblak left 06:24 tinyblak joined 06:33 spider-mario left 06:52 rhr left 07:02 mr-foobar left 07:03 prime left 07:04 rhr joined 07:06 diana_olhovik_ joined 07:09 xinming left, xinming joined, prime joined, prime left, prime joined
[Tux] japhb, www.xs4all.nl/~hmbrand/bugs.pl 07:10
good morning btw
nine_, I'll have a look at I::P5's IO 07:11
07:11 fhelmberger joined 07:12 MadcapJake left 07:14 fhelmberger left 07:16 xinming left 07:17 xinming joined 07:19 rindolf joined, ggoebel joined
[Tux] No such method 'getline' for invocant of type 'IO::Handle' 07:22
nine_ [Tux]: I just replied to your comment 07:25
07:26 salva left, salva joined
[Tux] the getline is from Text::CSV_XS BTW, not the one from perl itself 07:26
but there will be fun inside, as Text::CSV_XS' getline will invoke perl's IO getline from XS 07:27
and I now also realize that I have to set no-chomp in perl6 07:28
07:30 fhelmberger joined 07:33 darutoko joined 07:34 breinbaas joined
nine_ |Tux|: I guess, if we can make it work for Text::CSV_XS, we already cover most use cases :) 07:34
[Tux] likely :)
07:34 fhelmberger left 07:36 rurban joined, fhelmberger joined 07:42 laouji left 07:43 laouji joined 07:44 Rounin joined 07:46 Ven joined
sergot morning #perl6 07:49
07:50 Ven left 07:52 fhelmberger left, Ven joined 07:54 fhelmberger joined, FROGGS joined 07:56 rhr left, fhelmberger left 07:57 Ven left 07:58 fhelmberger joined, rhr joined
moritz \o sergot, * 07:59
07:59 espadrine_ joined, fhelmberger left 08:00 Ven joined 08:01 fhelmberger joined 08:03 fhelmberger left 08:06 fhelmberger joined, fhelmberger left
raydiak o/ 08:07
08:07 fhelmberger joined 08:08 fhelmberger left 08:10 Ven left 08:11 Ven joined, zakharyas joined, fhelmberger joined 08:12 fhelmberger left 08:14 wicope joined 08:15 fhelmberger joined 08:16 fhelmberger left
FROGGS o/ 08:18
08:18 fhelmberger joined
raydiak moritz: would it be possible to install lua 5.1 or jit on whichever server instance runs the smoker and cpandatesters? 08:18
g'morning FROGGS 08:19
FROGGS raydiak: cpandatesters happens at user boxes
08:19 fhelmberger left
FROGGS I mean, the reports are generated by users 08:20
raydiak ah, I see
moritz raydiak: I've installed lua 5.1 on hack, where colomon++ runs the smoke tests (iirc) 08:21
FROGGS correct
raydiak thank you kindly
moritz raydiak: or should I install luajit?
FROGGS raydiak: what modules will these packages aid?
moritz lua5.1 - Simple, extensible, embeddable programming language
luajit - Just in time compiler for Lua programming language version 5.1
08:22 fhelmberger joined
raydiak FROGGS: Inline::Lua 08:22
moritz: probably 5.1 will be more common for users if I had to guess
it'll autodetect
08:23 fhelmberger left
raydiak jit is checked for first, since it's insane fast and completely compatible, more or less 08:25
FROGGS $ tail -n1 dev/nqp/install/languages/perl6/site/panda/reports.2015.2.250.gd.2.a.17.d.1
Inline::Luaraydiak*TrueTruemoar
moritz :-)
FROGGS (after: sudo apt-get install lua5.1)
the "True True" means that build passed and tests passed 08:26
moritz \o/
FROGGS on my box :o9
:o)
raydiak yeah I saw a report of yours in there...the green stood out against all the red :) 08:27
08:29 kaleem left
raydiak almost forgot the FROGGS++ 08:30
masak good morning, #perl6
raydiak \o masak
FROGGS *g* 08:32
morning masak
08:32 chenryn left 08:33 yakudza joined, chenryn joined 08:35 telex left, [Sno] left, [Sno] joined 08:36 telex joined 08:39 smls joined
ab5tract good morning all :) 08:40
FROGGS hi ab5tract
Ven hi!
yoleaux 9 Mar 2015 19:00Z <eli-se> Ven: I don't like it. :(
Ven well, too bad 08:41
08:41 donaldh joined
ab5tract okay, so i am _only_ just beginning to feel like i grok Whatever 08:41
nwc10 good UGT, *
ab5tract hi nwc10 :) 08:42
so for some reason i had an expectation that
08:42 laouji left
ab5tract m: my $x = 4; $y = "5ive"; my @can_round = ($x,$y).map: *.round; 08:43
camelia rakudo-moar e39570: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kf6HRhYoPr␤Variable '$y' is not declared␤at /tmp/kf6HRhYoPr:1␤------> 3my $x = 4; $y7⏏5 = "5ive"; my @can_round = ($x,$y).map: ␤ expecting any of:␤ postfix␤»
ab5tract i was expecting that to behave as a grep for some reason
moritz well, use grep if you want grep :-)
FROGGS o/ Ven, nwc10
ab5tract ie, returning all the rounded values that _can_ round 08:44
moritz: unfortunately grep isn't doing what i would expect either in this case :)
m: my $x = 4; $y = "5ive"; my @can_round = ($x,$y).grep: *.round;
camelia rakudo-moar e39570: OUTPUT«5===SORRY!5=== Error while compiling /tmp/TdmjTHHaGq␤Variable '$y' is not declared␤at /tmp/TdmjTHHaGq:1␤------> 3my $x = 4; $y7⏏5 = "5ive"; my @can_round = ($x,$y).grep:␤ expecting any of:␤ postfix␤»
FROGGS m: my $x = 4; $y = "5ive"; my @can_round = ($x,$y).map: *.?round;
camelia rakudo-moar e39570: OUTPUT«5===SORRY!5=== Error while compiling /tmp/bDdu63lLLa␤Variable '$y' is not declared␤at /tmp/bDdu63lLLa:1␤------> 3my $x = 4; $y7⏏5 = "5ive"; my @can_round = ($x,$y).map: ␤ expecting any of:␤ postfix␤»
lizmat good *, #perl6!
moritz ab5tract: what do you *want* to do?
FROGGS m: my $x = 4; my $y = "5ive"; my @can_round = ($x,$y).map: *.?round;
camelia rakudo-moar e39570: OUTPUT«Cannot convert string to number: trailing characters after number in '5i⏏ve' (indicated by ⏏)␤ in method <anon> at src/gen/m-CORE.setting:15245␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2904␤ in any find_method at src/gen/m-Metam…»
ab5tract moritz: no this is not so much about my wants. it is about my expectations
FROGGS ohh, that one
08:44 laouji joined
FROGGS morning lizmat 08:44
ab5tract m: my $x = 4; $y = "5ive"; my @can_round = ($x,$y).grep: * ~~ Numeric && *.round;
camelia rakudo-moar e39570: OUTPUT«5===SORRY!5=== Error while compiling /tmp/8vYr6mszoc␤Variable '$y' is not declared␤at /tmp/8vYr6mszoc:1␤------> 3my $x = 4; $y7⏏5 = "5ive"; my @can_round = ($x,$y).grep:␤ expecting any of:␤ postfix␤» 08:45
FROGGS ab5tract: declare $y
m: my $x = 4; my $y = "5ive"; my @can_round = ($x,$y).map: try *.round;
camelia rakudo-moar e39570: OUTPUT«Cannot convert string to number: trailing characters after number in '5i⏏ve' (indicated by ⏏)␤ in method <anon> at src/gen/m-CORE.setting:15245␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2904␤ in any find_method at src/gen/m-Metam…»
FROGGS gah
ab5tract m: my $x = 4; my $y = "5ive"; my @can_round = ($x,$y).grep: * ~~ Numeric && *.round;
camelia ( no output )
lizmat m: <a b>.Bag.BIND-KEY("a", my $b) # where does this error come from ???
camelia rakudo-moar e39570: OUTPUT«Unhandled exception: postcircumfix:<{ }> binding not defined for type Bag␤ at <unknown>:1 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:15249 (/home/camelia/rakudo-inst-1/lan…»
ab5tract right, okay. please don't take this as a criticism or even a WAT
just saying out loud that i thought that * had slightly more magical properties than it does 08:46
08:46 laouji left
ab5tract m: my $x = 4; my $y = "5ive"; my @can_round = ($x,$y).grep: *.round; @can_round.say; 08:46
camelia rakudo-moar e39570: OUTPUT«Cannot convert string to number: trailing characters after number in '5i⏏ve' (indicated by ⏏)␤ in method <anon> at src/gen/m-CORE.setting:15245␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2904␤ in any find_method at src/gen/m-Metam…»
ab5tract that's an intentionally tortured string value in $y 08:47
m: my $x = 4; my $y = "give"; my @can_round = ($x,$y).grep: *.round; @can_round.say;
camelia rakudo-moar e39570: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏give' (indicated by ⏏)␤ in method <anon> at src/gen/m-CORE.setting:15245␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2904␤ in any find_method …»
FROGGS lizmat: what is in your src/gen/m-CORE.setting:15249 ?
ab5tract: you can also try in /privmsg with camelia
lizmat FROGGS: method sink() is hidden_from_backtrace {
(in class Failure) 08:48
FROGGS ahh
gimme a sec
lizmat from there it goes deep into nqp land
08:48 laouji joined
ab5tract FROGGS: in these cases i was trying to point something out, but fair point. 08:49
FROGGS ab5tract: at some noise level nobody will listen anymore :o)
lizmat the reason I'm asking is that I added BIND-KEY methods for Set/Bag/Mix(Hash), but they're not getting called
FROGGS hmmm
moritz m: say (4, 'not a number').grep: { try $_ == .round } 08:50
camelia rakudo-moar e39570: OUTPUT«4␤»
lizmat if this is intentional, then I'll remove the BIND-KEY methods
if not, then why aren't they being called?
ab5tract moritz: very nicely demonstrated, thank you
FROGGS lizmat: # alas, we cannot bind 08:51
multi method BIND-KEY(Baggy:D: \k) is hidden_from_backtrace {
fail X::Bind.new(target => self.^name);
ab5tract but partly my struggle here is that i am back to not really grokking the main advantages of * over $_
lizmat FROGGS: but that method is not getting called, I get an X::AdHoc exception 08:52
moritz ab5tract: it's just a short way to write some common things
lizmat m: my $f = <a b>.Bag.BIND-KEY("a", my $b); say $f.exception.WHAT
camelia rakudo-moar e39570: OUTPUT«(X::AdHoc)␤»
raydiak src/core/Any L577 ?
fail "postcircumfix:<\{ \}> binding not defined for type {self.WHAT.perl}"; 08:53
lizmat hmmm....
how did I miss that?
raydiak did you escape it when you grepped? the { } I mean
lizmat gets another cuppa
ab5tract moritz: so the main advantage is `@l.map: *.upgrade` vs `@l.map: { $_.upgrade }`, along with the `1,2, * + *, ... *` stuff 08:54
(and along with other things, obviously)
lizmat FROGGS raydiak : thanks for the sanity check, I'll take it from here again 08:55
raydiak yw lizmat++
08:55 yeahnoob left, yeahnoob_ joined 08:57 Akagi201 joined, virtualsue joined 08:58 espadrine_ left 09:03 virtualsue_ joined, virtualsue left, virtualsue_ is now known as virtualsue
raydiak good night #perl6 09:05
FROGGS gnight raydiak 09:06
lizmat gnigh raydiak
dalek kudo/nom: de37ea2 | lizmat++ | src/core/ (3 files):
Get BIND-KEY signatures right, FROGGS++ raydiak++
09:08
kudo/nom: e572fca | lizmat++ | t/01-sanity/22-KEY.t:
Unfudge BIND-KEY tests
09:10
smls m: say Str(Int:D) 09:12
camelia rakudo-moar e39570: OUTPUT«(Str(Int))␤»
smls ^^ So typespecs are allowed anywhere in term position?
Not just in signatures?
dalek kudo/nom: 1fa2c20 | lizmat++ | t/01-sanity/22-KEY.t:
Fix comments
masak another potential advantage of 007 that hasn't been highlighted so far: we can make silly mistakes and put crazy features in it, and we'll learn important lessons without impacting Perl 6 macros/slangs in a negative way. 09:13
moritz smls: yes, coercion types are first-class
masak (the custom-ops branch is coming along fine, albeit slowly, btw)
smls moritz: Is the :D ignored, or just not handled by .gist ? 09:14
moritz smls: ignored atm 09:15
09:15 abraxxa joined
smls m: say Str( Int ) 09:16
camelia rakudo-moar e39570: OUTPUT«(Str(Int))␤»
smls Hm should spaces really be allowed there?
ab5tract smls: inside of the parens?
smls if the whole thing acts like a single "typename" token
ab5tract i would hope so
smls yeah
ab5tract ah
smls spaces just make it look like a function call 09:17
ab5tract indeed
09:18 laouji left, laouji_ joined 09:19 cschwenz joined 09:20 cschwenz left
smls Especially since LTM seems to be all that distinguishes it from a function call 09:22
So it really is a "token" conceptually, and should be space free
(Seeing how TimToady just forbid spaces inside operators...) 09:23
09:26 vike left, dakkar joined, yeahnoob_ left 09:27 vike joined
lizmat afk for a few hours& 09:29
09:29 kjs_ joined
dalek p: a918d58 | donaldh++ | t/nqp/59-nqpop.t:
Fix typo in rindex test case.
09:37
09:46 virtualsue left 09:48 laouji_ left, laouji joined 09:52 espadrine_ joined 09:59 fhelmberger joined, aborazmeh left 10:00 bolangi left 10:06 asdf12z_ left
FROGGS jnthn: the 'is rw' on native types does not involve strings, right? 10:13
10:13 breinbaas left
dalek kudo/nom: f83c813 | FROGGS++ | t/04-nativecall/14-rw-attrs. (2 files):
add tests for 'is rw'-attrs in CStructs
10:14
10:14 [Sno] left 10:20 [Sno] joined
FROGGS jnthn++ # 'is rw' in CStructs is damn awesome and lets me delete a lot of lines :o) 10:25
10:31 Ugator joined 10:32 xinming left 10:33 laouji left, laouji joined, xinming joined 10:35 colomon joined
donaldh FROGGS++ # 'is rw' is indeed awesome for NativeCall 10:40
FROGGS why do I get karma? 10:43
it lets me rewrite a CStruct like this: gist.github.com/FROGGS/2148e2b9f241e106963a
top = old, bottom = new
donaldh originally prototyped using 'is rw' for out params. The current pattern is CArray[OpaquePointer] is clumsy by comparison.
FROGGS ohh, I am talking about attributes here 10:44
10:44 Ven left
donaldh Yep, I realise that. More pervasive use of 'is rw' would be awesome. 10:44
FROGGS 'is rw' on parameters is still in the native-ref branch I think 10:45
though, Pointer[int32] should also be a better solution to CArray[OpaquePointer]... 10:46
but that means you have to wrap your value explicitly
donaldh Well SQLite3 passes back a void* in e.g. sqlite3_open(Str $filename, CArray[OpaquePointer] $handle) 10:48
sqlite3_open(Str $filename, OpaquePointer $handle is rw) # would be nicer
10:48 ribasushi left 10:50 Ven joined
FROGGS true 10:50
but you can use the type Pointer instead
10:51 laouji left, laouji_ joined
donaldh What's the difference between the two? 10:51
FROGGS they are identical... but OpaquePointer will be deprecated soon 10:52
donaldh ah, okay
FROGGS we needed a short name because Pointer can now be typed, like CArray
so you can even write Pointer[void] if you want to be verbose
or Pointer[MyStruct], if you want to be able to call $ptr.deref 10:53
10:54 ribasushi joined
donaldh nice 10:55
arnsholt There's no point to Pointer[void], is there? 10:59
That's just an OpaquePointer
11:01 larion joined
arnsholt Oh, but if you deprecate OpaquePointer entirely, I guess there is =) 11:01
nwc10 where's our drive-by travis bot for the main Rakudo tests? 11:06
t/01-sanity/22-KEY.t fails :-(
11:06 vendethiel joined, kaleem joined 11:11 chenryn left
masak nwc10: on which platform? 11:11
reproduced here, on Moar. 11:16
throws_like { $mh.BIND-KEY("a",$a) }, X::Bind,:target<MixHash>,"\$mh.BIND-KEY"; # the failing test 11:17
m: my $a = 42.5; my $mh = <a b b c c c>.BagHash; $mh.BIND-KEY("a",$a) 11:18
camelia rakudo-moar f83c81: OUTPUT«Unhandled exception: Cannot bind to BagHash␤ at <unknown>:1 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:15249 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.sett…»
masak m: my $a = 42.5; my $mh = <a b b c c c>.MixHash; $mh.BIND-KEY("a",$a)
camelia rakudo-moar f83c81: OUTPUT«Unhandled exception: Cannot bind to MixHash␤ at <unknown>:1 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:15249 (/home/camelia/rakudo-inst-1/languages/perl6/runtime/CORE.sett…»
masak m: my $a = 42.5; my $mh = <a b b c c c>.MixHash; try $mh.BIND-KEY("a",$a); say $/.^name
camelia rakudo-moar f83c81: OUTPUT«Cannot bind to MixHash␤ in block <unit> at /tmp/e9Sw0r42Xb:1␤␤» 11:19
nwc10 failed for me on x86_64 linux and PPC linux
masak m: my $a = 42.5; my $mh = <a b b c c c>.MixHash; try $mh.BIND-KEY("a",$a); say $!.^name
camelia rakudo-moar f83c81: OUTPUT«Cannot bind to MixHash␤ in block <unit> at /tmp/IFjGfulfou:1␤␤»
nwc10 but the former is more interesting.
dalek kudo/nom: dcd7ee0 | (Carl Masak)++ | t/01-sanity/22-KEY.t:
fix copy+paste-o

Unbusts a failing test.
masak I didn't research it all the way down, but looking at the code it's pretty clear to me that was the problem. 11:20
nwc10 masak++ fixed
11:23 laouji_ left 11:25 kaleem left
bartolin donaldh: would you mind if I close those RT tickets you fixed recently? looks like you didn't get the right to close tickets yet? 11:26
masak today's autopun spotting: twitter.com/_youhadonejob/status/5...1574689792 11:27
11:27 laouji joined 11:31 xinming left
donaldh bartolin: please go ahead 11:32
11:32 xinming joined
bartolin donaldh++ for fixing those JVM issues 11:33
dalek c: e721247 | moritz++ | lib/Language/objects.pod:
Example for submethod BUILD
Ugator nwc10: you know your way around in aix-systems? 11:34
yoleaux 7 Mar 2015 19:37Z <nwc10> Ugator: I have built it on IBM hardware, yes, but the machine is running Fedora (ie Linux)
7 Mar 2015 19:39Z <nwc10> Ugator: I have tried building it on AIX. IIRC one or two of the dependecy libraries are a pain (not libuv). I don't think that dyncall supports AIX. IIRC libffi does - unless you know PPC assembler, I'd guess that the route of least resistance is actually to abstract the dynamic call stuff to be able to use dyncall or libffi. I think that would get us most of HP/UX too.
7 Mar 2015 19:40Z <nwc10> Ugator: also, IIRC, the MoarVM build system annoyingly picks the GNU make specific Makefile, instead of the most generic "embedding" makefile
Ugator ah :-) thanks @yoleaux
and nwc ;)
nwc10 Ugator: no better than any other big iron Unix
Ugator so you had no luck on aix yet? 11:37
I dont really understand what you said there :D
lizmat masak++ indeed, sorry for the pasto 11:39
masak no sweat. 11:40
11:40 kaleem joined
nwc10 Ugator: "no luck" might not be an accurate phrase 11:45
I tried. I figured out roughly what needs to be done. It's possible, but not trivial.
dalek ast: b9c0463 | usev6++ | S32-exceptions/misc.t:
Unfudge test for RT #121935
11:46
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=121935
11:46 cschwenz joined 11:47 cschwenz left, tinyblak left
Ugator nwc: okay, thanks :) I hope someday someone can help you 11:48
lizmat FROGGS: t/04-nativecall/14-rw-attrs.t (Wstat: 512 Tests: 16 Failed: 2) 11:50
Failed tests: 14, 16
dalek kudo/nom: dc6756e | lizmat++ | src/core/ (3 files):
More generally fix disallowed binding fail
11:57
12:04 tinyblak joined 12:12 chenryn joined 12:14 vendethiel left
dalek kudo/nom: 0c5a0fa | lizmat++ | src/core/Baggy.pm:
Remove superfluous ASSIGN-KEY candidate
12:16
12:16 chenryn left
TimToady eating lunch in LHR 12:20
12:21 chenryn joined 12:22 vendethiel joined
lizmat sends an EU welcome 12:24
(while it's still possible to do so when at LHR ;-)
TimToady name service seems to suck, but fortunately my irssi server is numeric IP address :) 12:25
FROGGS lizmat: can I get a detailed gist? 12:28
lizmat gist.github.com/lizmat/62d85c9f5a5d9910346d 12:29
FROGGS ahh very interesting 12:30
nwc10 TimToady: you mean they haven't grafittied 8.8.8.8 there yet?
tadzik FROGGS: i.imgur.com/fNEy5Wd.gif
FROGGS *g* 12:31
12:31 cschwenz joined
dalek kudo/nom: 5d1eb39 | lizmat++ | src/core/Nil.pm:
Bring Nil.BIND-KEY(...) in line
12:31
12:33 cschwenz left
FROGGS lizmat: duh, I made a stupid mistake 12:33
dalek kudo/nom: f8002f3 | FROGGS++ | t/04-nativecall/14-rw-attrs.c:
fix copy+pasto, lizmat++
12:35
lizmat tests clean now, FROGGS++ 12:37
dalek ast: 62ca417 | usev6++ | S14-roles/basic.t:
Add test for RT #123002
12:39
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123002
FROGGS awesome 12:44
bartolin++ # for pervasive awesomeness 12:45
12:45 vendethiel left
moritz indeed, bartolin++ 12:46
Ven puu.sh/guo9P/cabb324b9a.png and this is why you want your arrays to be first class :D
FROGGS hehe
psch o.o 12:47
moritz tell me this isn't true
psch but... varargs...?
FROGGS that's sooo stupid
Ven psch: varargs? with arrays?
psch sure
Ven psch: mind showing me? :)
psch prepares to pull his foot out of his mouth
masak I'm pretty sure that code is from before Java had varargs. 12:49
12:49 coffee` joined, chenryn left
Ven masak: it might be, yes, but even then -- java arrays are goddamn awful 12:50
moritz learned a bit java 1.4
masak Ven: no argument there.
psch Ven: gist.github.com/peschwa/18a71ad844937594ec12
i do also agree
masak Ven: a lot of those decisions seem to be based on misguided tradeoffs for performance.
psch especially native arrays vs reference arrays
12:51 laouji left
masak Ven: or tradeoffs that made sense in the 90s, but not so much anymore. 12:51
12:51 chenryn joined 12:53 virtualsue joined
Ven masak: right ;-). so many languages were created in the 90s without that kind of crazy tradeoffs, though! 12:53
you might argue they sacrificed speed at time time...
that* time
masak Smalltalk comes to mind.
psch Ven: so how far did i miss the point, ooc? 12:57
assuming it's not just "the code is older than varargs"
Ven psch: that sounds about right :-) 12:58
psch: the code is *really* old
masak: smalltalk is really interesting, though :P 12:59
masak Ven: it is. it's one of the philosophically pure/considered ones, like Lisp or Forth. 13:00
Ven masak: not really
Self would be, in this case.
masak I stand by my point.
Ven: have you read worrydream.com/EarlyHistoryOfSmalltalk/ ?
(Self is interesting too, though. all on its own) 13:01
Ven masak: I'll read it 13:02
masak warning: big read.
but worth it.
Ven masak: I've read alan kay say that self was more "philophisically pure" than smalltalk from his pov
masak ok.
Ven oh, then I might not have the time right now
Ven goes back to his php and java...
13:03 vendethiel joined
abraxxa poor Ven! 13:04
masak .oO( is Ven working on PHP and vendethiel on Java, or the other way around? )
13:04 coffee` left
Ven masak: considering how much vendethiel is disconnecting, he might not be working a lot.... ;) 13:04
masak :)
Ven
.oO( I wonder how much fun is my computer having, without me, at home ... )
13:05
dalek osystem: 63636bb | (Andrew Egeler)++ | META.list:
Add Auth::SAML2
masak abraxxa: on the serious side, as much as I prefer Perl, working on PHP or Java could still be OK depending on the project, the code, and the organization.
Ven masak: it wouldn't be for me, tbh ;-)
It's just that - heh - school!
13:07 coffee` joined
TimToady -> gate 13:13
masak m: class TimToady {}; my @gate; TimToady ==> @gate; say @gate
camelia rakudo-moar f8002f: OUTPUT«(TimToady)␤»
masak \o/
the (TimToady) is in the @gate! :D 13:14
13:14 chenryn left
Ven
.oO( the bloody TIMTOWDIGate )
13:17
DrForr Bucharest then over here to Cluj, I think?
13:17 Guest71997 left
masak has no cluj 13:18
13:20 bowtie joined, bowtie is now known as Guest72861
lizmat DrForr: I was under the impression that TimToady was going to stay for a few days in Bucharest, either on the way in or on the way out 13:22
jnthn FROGGS moritz: what is the reason for having an ASSIGN-KEY, *and* an AT-KEY is rw ?
is that because not all assignments to {} are going through ASSIGN-KEY ? 13:23
FROGGS I have no idea
lizmat neither 13:24
FROGGS my guess would be that at_key was not rw at some point...
moritz lizmat: I know that at_key rw was before we had assign_key
FROGGS ohh, heh
moritz and was obviously necessary
DrForr Yeah, Gloria was arranging for him to go to Bucharest, then he got to talking with Amalia/Liana and added Cluj to his itinerary.
moritz no idea if it's still necessary 13:25
13:25 brrt joined, vendethiel left
moritz lizmat: maybe for autovivification (*handwave*) 13:26
moritz doesn't actually know how autoviv works
lizmat $!whence
moritz that's just an attribute
lizmat with a closure to be executed if set 13:27
m: my %h; my $b := %h<a>; say %h.perl; $b = 23; say %h.perl 13:29
camelia rakudo-moar f8002f: OUTPUT«().hash␤("a" => 23).hash␤»
13:29 ihabhussein joined
lizmat m: my $h; my $b := $h<a>; say $h.perl; $b = 23; say $h.perl # works with Any values as well 13:29
camelia rakudo-moar f8002f: OUTPUT«Any␤{"a" => 23}␤» 13:30
lizmat that one is handled by:
multi method AT-KEY(Any:U \SELF: $key) is rw {
nqp::bindattr(my $v, Scalar, '$!whence',
-> { SELF.defined || (SELF = Hash.new);
SELF.BIND-KEY($key, $v) });
$v
}
note that it won't create the Hash until it is actually being assigned
13:30 ihabhussein left
lizmat the container to which an assignment is done, has a $!whence that is executed prior to doing the assignment 13:31
</autoviv lecture>
moritz so Scalar ahs the $!whence attribute 13:32
not the hash
lizmat yup, and in this case it will create the hash if it doesn't exist yet
m: my $h; my $b := $h<a>; $h = 42; say $h.perl; $b = 23; say $h.perl # a spanner in the works 13:33
camelia rakudo-moar f8002f: OUTPUT«42␤42␤»
13:34 kaleem left
lizmat I think that should die, and not silently not do the assignment 13:34
moritz nastiness 13:35
lizmat yup 13:37
13:37 raiph joined
lizmat anyways, it feels that either ASSIGN-KEY should go, or AT-KEY should no longer be "is rw" 13:37
which would allow for some AT-KEY opts 13:38
dalek kudo-star-daily: 544da94 | coke++ | log/ (9 files):
today (automated commit)
13:40
rl6-roast-data: b578440 | coke++ | / (9 files):
today (automated commit)
[Coke] donaldh: what's your rt id? 13:42
yoleaux 9 Mar 2015 21:47Z <donaldh> [Coke]: There's a bunch of JVM tickets that could be closed but I don't have permissions
13:44 vendethiel joined 13:49 kaleem joined
[Coke] jvm still dying. (my bisect was questionable, need to rerun it.) 13:51
moar and moar-jit now failing differently, but it's all in S17, so it might just be flappiness: -1 that those tests seem very sensitive to load.
nwc10 worked on "my" machine 13:54
[Coke] jvm? I'm getting 284 failures on hack.
psch nqp master/HEAD looks better, but still has a few spots that aren't working
nwc10 er, sorry, not clear, MoarVM
psch lizmat++ fixes most of that yesterday iirc 13:55
*fixed
nwc10 very not clear
psch to be clear: rakudo-j build against nqp HEAD has only a few spectest failures
[Coke] gist.github.com/coke/6818867903c2c6ae3116 shows the first test failure.
psch one of which is a SIGSEGV in S02-types/native.t, which i'm trying to get behind right now 13:56