Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-05-20

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:03 timotimo the ? is only there to give a syntax error, yeah?
00:03 timotimo .o( we also have that slang that allows ? and ! at the end of method names )
00:04 dalek rakudo/nom: ec91da3 | TimToady++ | src/Perl6/World.nqp:
00:04 dalek rakudo/nom: explain absence of "else" clauses
00:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ec91da3b48
00:05 TimToady timotimo: yes, but it seems like it should give a good message if you're not in that culture but put ? accidentally
00:07 TimToady these error messages are triggered only when the current language decides it's going to give up
00:10 LLamaRider joined #perl6
00:12 timotimo ah, yes
00:15 TimToady m: if 1.so? {...}
00:15 camelia rakudo-moar 4ed69d: OUTPUT«5===SORRY!5=== Error while compiling /tmp/8lW1_Tzj4w␤Missing block␤at /tmp/8lW1_Tzj4w:1␤------> 3if 1.so7⏏5? {...}␤    expecting any of:␤        block or pointy block␤        infix␤        infix stopper␤»
00:15 TimToady also sorts it to the front, which is arguably better
00:29 raiph joined #perl6
00:30 aborazmeh joined #perl6
00:30 aborazmeh joined #perl6
00:32 bjz joined #perl6
00:39 timotimo aye
00:44 Zoffix joined #perl6
00:46 laouji joined #perl6
01:01 kurahaupo1 joined #perl6
01:02 tinyblak joined #perl6
01:04 telex joined #perl6
01:11 bjz joined #perl6
01:20 timotimo m: use NativeCall; class SDL_Window is repr('CPointer') { }
01:20 camelia rakudo-moar ec91da: ( no output )
01:20 timotimo nqp-m: my @test; say(nqp::definite(@test))
01:21 camelia nqp-moarvm: OUTPUT«No registered operation handler for 'definite'␤   at gen/moar/stage2/QAST.nqp:1544  (/home/camelia/rakudo-inst-1/share/​nqp/lib/QAST.moarvm:compile_op:64)␤ from gen/moar/stage2/QAST.nqp:5338  (/home/camelia/rakudo-inst-1/share/n​qp/lib/QAST.moarvm:compile_node:2…»
01:21 timotimo nqp-m: my @test; say(nqp::istrue(@test))
01:21 camelia nqp-moarvm: OUTPUT«0␤»
01:21 timotimo nqp-m: my @test; say(@test =:= NQPMu)
01:21 camelia nqp-moarvm: OUTPUT«0␤»
01:21 timotimo nqp's limited introspection capabilities ...
01:21 timotimo nqp-m: my @test; say(@test.^name)
01:21 camelia nqp-moarvm: OUTPUT«Confused at line 2, near "say(@test."␤   at gen/moar/stage2/NQPHLL.nqp:516  (/home/camelia/rakudo-inst-1/share​/nqp/lib/NQPHLL.moarvm:panic:105)␤ from gen/moar/stage2/NQP.nqp:921  (/home/camelia/rakudo-inst-1/share/​nqp/lib/nqp.moarvm:comp_unit:872)␤ from gen/…»
01:21 timotimo nqp-m: my @test; say(@test.HOW.name)
01:21 camelia nqp-moarvm: OUTPUT«Too few positionals passed; expected 2 arguments but got 1␤   at gen/moar/stage2/nqpmo.nqp:1201  (/home/camelia/rakudo-inst-1/sha​re/nqp/lib/nqpmo.moarvm:name:0)␤ from /tmp/Ixl_wRCvTZ:1  (<ephemeral file>:<mainline>:30)␤ from gen/moar/stage2/NQPHLL.nqp:1289  …»
01:21 timotimo nqp-m: my @test; say(@test.HOW.name(@test))
01:21 camelia nqp-moarvm: OUTPUT«NQPArray␤»
01:22 timotimo something inside SDL2::Raw is causing "Cannot unbox a type object" inside nqp/lib/Perl6/Metamodel.moarvm:compose_repr
01:22 timotimo that's the line with                 nqp::composetype($obj, nqp::hash('attribute', @repr_info));
01:23 timotimo i'm expecting that error has to refer to @repr_info?
01:31 timotimo ah, that comes from trying to figure out if something's supposed to be inlined
01:32 timotimo um ... can you use at_key_o and at_key_int on the same object?
01:32 timotimo hm, perhaps
01:33 timotimo good, i have a fix inside moarvm
01:35 tony-o_ timotimo: how far are you into whatever you're using HTTP::Server::Async for?
01:36 jepeway joined #perl6
01:36 timotimo not terribly far; still at the same stage i've shown you before
01:36 timotimo at least ... i think i showed you
01:36 tony-o_ okay, yea i remember you showing me
01:37 tony-o_ i have an HTTP::Server::Threaded  in the works that seems like it might be better at the moment.  better meaning that it either responds or moar segfaults which means you can slap overwatch on it and lose only 1 or 2 requests instead of all subsequent requests
01:38 tony-o_ H:S:A sometimes just hangs, which leaves the socket open but unresponsive which means it loses subsequent requests somewhere
01:38 timotimo d'oh
01:38 timotimo but stability has improved a whole lot?
01:40 tony-o_ it is more stable only because it can be reliably restarted when it stops responding
01:41 timotimo hm
01:41 timotimo i mean stability for HSA
01:41 tony-o_ i'll upload it in an hour or two when i finish writing the response class
01:42 tony-o_ oh, it seems more stable but still has the side effects
01:45 timotimo neato. thanks for your work as always
01:45 tony-o_ it takes longer to crash with concurrency of 2 requests, it seems to not crash at all with only 1 request at once
01:45 timotimo can you quantify "takes longer"?
01:53 tony-o_ serves up 1200 or so requests instead of 800-900 on my machine
01:55 timotimo hm
01:55 timotimo that's not that much better :(
01:55 tony-o_ it's 50% butter ;)
01:55 tony-o_ s/u/e/
01:55 timotimo hmm
01:55 timotimo i had hoped for more like a 10x improvement
01:56 |Tux| joined #perl6
01:57 tony-o_ better than a sharp stick in the eye
01:57 tony-o_ have you used siege?
01:58 timotimo no
01:58 timotimo is that a load testing tool for web servers?
01:58 tony-o_ if you run the 'ab.pl6' that is in the repo and then do 'siege -c 2 127.0.0.1:8080' you can watch it fail, it's somewhat consistent at the point where it bonks
01:58 tony-o_ yes ^ similar to apache bench
02:01 timotimo we still have missing "unit" keywords in HSA
02:01 timotimo have you put those in locally yet?
02:01 tony-o_ i'm not sure what that means
02:02 timotimo m: class Foo; has $.test;
02:02 camelia rakudo-moar ec91da: OUTPUT«Saw 1 occurrence of deprecated code.␤Semicolon form of 'class' without 'unit' seen at:␤  /tmp/oxF3koTC1f, line 1␤Deprecated since v2015.4, will be removed with release v2015.9!␤Please use 'unit class' instead.␤»
02:02 timotimo m: unit class Foo; has $.test;
02:02 camelia rakudo-moar ec91da: ( no output )
02:02 timotimo siege reports we only take 0.01s or 0.00s for each request
02:02 timotimo sometimes it goes up to 0.04, that must be delay from GC
02:02 tony-o_ m: class Foo { has $.test; }
02:02 camelia rakudo-moar ec91da: ( no output )
02:02 timotimo but somehow it still takes quite long to count up
02:02 tony-o_ i think i have curlied classes in HSA
02:02 timotimo why is that?
02:02 tony-o_ siege delays between requests
02:03 timotimo OK
02:03 tony-o_ -b will make it not pause
02:04 timotimo i'm at 600 now
02:04 timotimo so 50% done, likely
02:05 timotimo i'd like to see a --profile of that :)
02:05 timotimo but if it does crash, it won't generate a profile, iirc
02:05 timotimo how does it vary if you increase the number of concurrent requests? fails much earlier?
02:06 timotimo at what point does the HST crash, btw?
02:12 timotimo i'm now at 2500 and it's still going
02:12 timotimo i may really need to use -b
02:13 timotimo interesting, with -b i get "connection reset by peer" in siege after 941 requests
02:14 tony-o_ did you do an '-c 2' ?
02:14 timotimo ... pretty much exactly then
02:14 timotimo yes, that's -c 2
02:14 timotimo huh, with -c 4 it explodes at 941 as well
02:14 timotimo what is this
02:15 timotimo same with -c 10 ?!?
02:15 timotimo this is most strange
02:15 tony-o_ it's always a specific number for me too but it happens at different places on different machines for me
02:15 tony-o_ surface pro 3 happens earlier than my imac
02:15 tony-o_ happens differently than my macbookpro etc
02:15 timotimo strange
02:16 tony-o_ it also behaves differently on the jvm than it does in moar
02:16 timotimo with --profile it segfaults :S
02:16 timotimo ah!
02:16 timotimo the profiler can't handle multi-threaded apps anyway
02:18 timotimo needless to say there's still something to be gained in the stability area
02:19 timotimo as jnthn has been very eager to point out over and over again to people like me who were convinced things were supposed to be peachy already :)
02:19 tony-o_ :-)
02:20 tony-o_ well, i think HST might be more stable short term at least, i haven't played around too much with it yet so i can't answer as to how it behaves over time.  i did notice that it either craps the bed or serves requests which makes it usable with something like inode, supervisor, or overwatch if you're into the perl6 utilities
02:24 raydiak o/
02:24 TimToady but HST takes such pretty pictures... :)
02:28 raydiak is there a way to get something like $*W.dissect_longname(), from perl 6 code at runtime?  working on panda stuff, need to parse :auth<...> and :ver<...>
02:30 rmgk_ joined #perl6
02:32 raydiak eh, nvm, was looking at the wrong pieces of things, think I found what I need
02:34 tony-o_ what was the reasoning for the unit class change?
02:34 tony-o_ i like it, i'm curious though
02:38 timotimo we thought people could get confused
02:38 timotimo and error messages that result from the user expecting "class Foo;" to be a stub declaration were not helpful at all
02:41 tony-o_ cool, i've never liked the empty 'class R;', it looks strange
02:41 timotimo i'm glad :)
02:41 timotimo BBIAB
02:47 raiph joined #perl6
02:56 noganex_ joined #perl6
03:13 ssqq joined #perl6
03:17 timotimo i was wondering if testers.perl6.org should link from the "compiler version" to github for the given commit
03:35 dalek rakudo/cpp: 718e6fe | hoelzro++ | t/04-nativecall/13-cpp-mangling.cpp:
03:35 dalek rakudo/cpp: Fix declaration of C++ tests on non-Windows
03:35 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/718e6fe03f
03:35 dalek rakudo/cpp: 61e9c01 | hoelzro++ | t/04-nativecall/13-cpp-mangling.t:
03:35 dalek rakudo/cpp: Fix pointer mangling test
03:35 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/61e9c010a2
03:35 dalek rakudo/cpp: 0297e65 | hoelzro++ | t/04-nativecall/13-cpp-mangling. (2 files):
03:35 dalek rakudo/cpp: Add tests for calling functions using const char *
03:35 dalek rakudo/cpp:
03:35 dalek rakudo/cpp: A lot of const char * functions should simply take a string, so
03:35 dalek rakudo/cpp: Str is cpp-const should do the trick
03:35 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/0297e65aed
03:35 dalek rakudo/cpp: 8081acb | hoelzro++ | lib/NativeCall/Compiler/GNU.pm:
03:35 dalek rakudo/cpp: Make cpp-const work with Str parameters on GNU ABI
03:35 dalek rakudo/cpp:
03:35 dalek rakudo/cpp: It makes them encode to const char *
03:35 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/8081acb979
03:35 dalek rakudo/cpp: 2211ebb | hoelzro++ | t/04-nativecall/11-cpp.cpp:
03:35 dalek rakudo/cpp: Fix DLLEXPORT on non-Windows for 11-cpp.cpp
03:35 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/2211ebbc36
03:41 adu joined #perl6
03:47 adu lots of changes
03:49 timotimo the newest commit is from may 16, so maybe this was just a rebase
04:06 adu what is this "Semicolon form of 'module' without 'unit'" error?
04:06 timotimo m: class Foo; has $.a
04:06 camelia rakudo-moar ec91da: OUTPUT«Saw 1 occurrence of deprecated code.␤Semicolon form of 'class' without 'unit' seen at:␤  /tmp/DeIFThj0E0, line 1␤Deprecated since v2015.4, will be removed with release v2015.9!␤Please use 'unit class' instead.␤»
04:06 timotimo m: class Foo { has $.a }
04:06 camelia rakudo-moar ec91da: ( no output )
04:06 timotimo m: unit class Foo; has $.a
04:06 camelia rakudo-moar ec91da: ( no output )
04:15 anaeem1 joined #perl6
04:19 anaeem1_ joined #perl6
04:23 vendethiel joined #perl6
04:25 Calibellus joined #perl6
04:25 adu timotimo: that's the big change I was talking about
04:26 laouji joined #perl6
04:26 adu I know it's like just one thing, but it means I have to do stuff to make my library work well again
04:30 cognominal joined #perl6
04:47 yeahnoob joined #perl6
05:07 vendethiel joined #perl6
05:27 kaare_ joined #perl6
05:30 xfix joined #perl6
05:30 araujo joined #perl6
05:30 araujo joined #perl6
05:39 zengargoyle joined #perl6
05:42 |Tux| joined #perl6
05:45 Patterner joined #perl6
05:49 diana_olhovik joined #perl6
05:55 |Tux| joined #perl6
05:56 zengargoyle joined #perl6
05:56 TimToady indeed, and the sooner we break things that still need breaking, the more stable it will be in the last quarter
06:00 adu joined #perl6
06:04 yeahnoob joined #perl6
06:16 zengargoyle joined #perl6
06:30 fhelmberger joined #perl6
06:39 _mg_ joined #perl6
06:42 RabidGravy joined #perl6
06:45 dalek Inline-Python: 084ae12 | (Justin DeVuyst)++ | lib/Inline/Python.pm6:
06:45 dalek Inline-Python: Copy and munge the newer, and working, native sub from I::P5.
06:45 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/084ae12bf8
06:45 dalek Inline-Python: db3aab6 | (Justin DeVuyst)++ | lib/Inline/Python.pm6:
06:45 dalek Inline-Python: Fix for new unit declarator.
06:45 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/db3aab611d
06:45 dalek Inline-Python: be0a292 | niner++ | lib/Inline/Python.pm6:
06:45 dalek Inline-Python: Merge pull request #4 from jdv/master
06:45 dalek Inline-Python:
06:45 dalek Inline-Python: unit and cur fixes
06:45 dalek Inline-Python: review: https://github.com/niner/Inl​ine-Python/commit/be0a292033
06:55 gfldex joined #perl6
07:02 Ven joined #perl6
07:03 Sqirrel joined #perl6
07:03 domidumont joined #perl6
07:05 [Sno] joined #perl6
07:05 masak GOOOD MOOOOorning, #perl6
07:05 * masak greets using diminuendo today
07:06 masak m: sub x { 1, 2, 3 }; sub y { 4, 5, 6 }; sub z { x, y }; for z() { .say }
07:06 camelia rakudo-moar ec91da: OUTPUT«1 2 3␤4 5 6␤»
07:06 masak this... was surprising new (GLR?) behavior to me.
07:06 masak what's the rationale? is it for realz and not a bug? (assuming it is earnest, since surely we have ample tests for this.)
07:07 masak also, what's the recommended way to write the `z` sub nowadays?
07:07 masak this broke a real production script for me.
07:09 domidumont joined #perl6
07:11 zakharyas joined #perl6
07:15 moritz m: sub x { 1, 2, 3 }; sub y { 4, 5, 6 }; sub z { flat x, y }; for z() { .say }
07:15 camelia rakudo-moar ec91da: OUTPUT«1␤2␤3␤4␤5␤6␤»
07:16 * masak just discovered that
07:17 masak ok, so assuming that this is "to spec" (or whatever you young people call it nowadays)
07:19 masak is this change/new behavior documented somewhere?
07:20 masak I believe it's worth documenting. it's surprising for people used to Perl 5, for example.
07:23 * masak fixes that in the script, and gets more failures downstream
07:24 DrForr masak: Re: category theory - http://en.wikipedia.org/wiki/Univalent_foundations
07:26 masak DrForr: I am aware ;)
07:26 masak but thanks.
07:26 DrForr I was pretty sure, given your comments on category theory, but it never hurts to check.
07:27 masak it feels pretty clear that we are seeing the beginnings of an important field, which will only gain in influence in CS over the coming decades.
07:27 masak that's good. for too long we've been doing computing in ad-hoc ways, without much in the way of foundations.
07:28 DrForr I came across https://www.quantamagazine.org/20150519-w​ill-computers-redefine-the-roots-of-math/ last night.
07:37 masak m: sub foo { return }; my @a; push @a, foo(); say @a.perl
07:37 camelia rakudo-moar ec91da: OUTPUT«[Any]<>␤»
07:37 masak ok, this is my next changes-related trouble.
07:37 masak is this a case of returning Empty these days?
07:37 rindolf joined #perl6
07:37 masak m: sub foo { return Empty }; my @a; push @a, foo(); say @a.perl
07:37 camelia rakudo-moar ec91da: OUTPUT«[]<>␤»
07:37 masak seems so.
07:37 masak m: sub foo { return Nil }; my @a; push @a, foo(); say @a.perl
07:37 camelia rakudo-moar ec91da: OUTPUT«[Any]<>␤»
07:38 masak *sigh*
07:38 * masak wishes he had more time to backlog, so he could maybe understand these changes better
07:40 DrForr OpenStack has a new Docker-ish community thing, maybe we could get perl6 added.
07:40 masak absolutely.
07:40 masak ok, that fixes my production script. those were the only two things, thankfully.
07:40 masak (`flat x, y` and `return Empty`)
07:41 DrForr That's probably affected some of my code too. (At least I had to change things when the match behavior changed last week...)
07:42 masak there is nothing in the spec about Empty.
07:43 masak there is a new section (lizmat++) about "Empty Parcel", which I guess is related.
07:43 masak m: say () === ()
07:43 camelia rakudo-moar ec91da: OUTPUT«True␤»
07:43 masak m: say () === Empty
07:43 camelia rakudo-moar ec91da: OUTPUT«False␤»
07:43 masak m: say $() === Empty
07:43 camelia rakudo-moar ec91da: OUTPUT«Use of Nil in string context  in block <unit> at /tmp/wpvLQBoQhZ:1␤False␤»
07:43 masak m: say $( ) === Empty
07:43 camelia rakudo-moar ec91da: OUTPUT«False␤»
07:43 masak heh.
07:43 masak or... not related. whatever.
07:43 DrForr I noticed it when doing token foo { <match>? } # and $/<match> started returning Empty rather than Nil.
07:43 masak (╯°□°)╯︵ ┻━┻
07:46 DrForr Naah, I just rewrote a few actions, but it did seem to make things gunkier.
07:47 FROGGS joined #perl6
07:49 masak ok, I've backlogged for Empty.
07:49 masak there isn't much, but I believe this is the important bit: http://irclog.perlgeek.de/p​erl6/2015-05-08#i_10569800
07:50 masak I think my only kvetch about Empty is that `return;` means `return Nil;` and not `return Empty;` (as it used to mean before there was a distinction)
07:52 abraxxa joined #perl6
07:54 DrForr That sounds pretty much like how I got singed a bit. Eeh, it's all part of the romp through the ever-changing garden maze that is a new language.
07:55 FROGGS wow, what happened to roast?
07:56 FROGGS 461 files changed, 2527 insertions(+), 2506 deletions(-)
07:56 FROGGS ahh, stuff like s/_/-/
07:57 |Tux| joined #perl6
08:01 Isp-sec joined #perl6
08:09 Ven joined #perl6
08:09 Ven \o, #perl6!
08:09 FROGGS hi Ven
08:11 virtualsue joined #perl6
08:12 vendethiel joined #perl6
08:14 darutoko joined #perl6
08:24 dalek rakudo/nom: 7eb5127 | FROGGS++ | / (4 files):
08:24 dalek rakudo/nom: add support for unions in NativeCall using CUnion repr
08:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7eb51275d7
08:24 dalek rakudo/nom: e09a2fb | FROGGS++ | tools/build/NQP_REVISION:
08:24 dalek rakudo/nom: bump nqp/moar for CUnion repr
08:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e09a2fbe7d
08:30 dakkar joined #perl6
08:34 dalek rakudo/nom: 5b50254 | FROGGS++ | t/04-nativecall/CompileTestLib.pm:
08:34 dalek rakudo/nom: add unit keyword to test helper module
08:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5b50254d30
08:36 Sqirrel joined #perl6
08:44 espadrine joined #perl6
08:46 DrForr masak: I assume you've also run across https://hottheory.files.wordpress.com​/2013/03/hott-online-611-ga1a258c.pdf
08:47 DrForr (which has some pretty neat ASC^WUnicode art :) )
08:48 DrForr Oh, good grief, they cover surreal numbers on page 401..411.
08:49 masak I have indeed run into it.
08:49 masak started reading it, even, but not gotten far yet.
08:49 masak probably will devour it at some point.
08:50 masak to be honest, I'm still catching up on group theory, universal algebra, and topology just so I'll be able to better understand ordinary 50-year-old category theory :P
08:50 masak this new stuff looks exciting but I'm not there yet. I'm about 50 years behind.
08:51 DrForr Nod. I did algebraic topology in college, but that was a *long* time ago.
09:00 * Ven has that book... as a printed copy
09:00 Ven if you want to read it, I'd recommend to (pretty much) skip the introduction. It's really, really, really scary, and much more than what's following
09:00 DrForr Though it does give you the excuse to write (♢⊴♡) :≡ ∀(y:No)...  to f*ck with non-Unicode systems.
09:12 Foxcool joined #perl6
09:20 fhelmberger joined #perl6
09:32 DrForr Oh, nice, they released the TeX source as well, HoTT++
09:33 DrForr Also, . o ( TeX, not Omega? )
09:35 masak what's Omega?
09:35 masak clearly they should've used iTeX :P https://www.youtube.com/watch?v=eKaI78K_rgA
09:35 DrForr The ground-up Unicode rewrite.
09:35 masak ooh
09:36 DrForr Does the fact that I actually *heard* the *ding* without even viewing the YouTube link make me weird? :)
09:36 moritz DrForr: if so, I'm weird too :-)
09:39 masak oh, me as well
09:39 masak I also heard the proper tonal pronunciation
09:39 vendethiel joined #perl6
09:40 * masak feels at home here on #perl6 :)
10:00 andreoss joined #perl6
10:07 vendethiel joined #perl6
10:07 lizmat joined #perl6
10:08 woolfy joined #perl6
10:08 woolfy left #perl6
10:09 pdcawley joined #perl6
10:14 lizmat_ joined #perl6
10:19 pdcawley joined #perl6
10:33 domidumont joined #perl6
10:39 lizmat good *, #perl6!
10:39 dalek roast: e816632 | lizmat++ | / (70 files):
10:39 dalek roast: s/eval_lives_ok/eval-lives-ok/g
10:39 dalek roast: review: https://github.com/perl6/roast/commit/e8166328a0
10:40 lizmat those should probably all be something like is EVAL "...", $value  to be sure it is doing the right thing
10:40 lizmat but that is for another day
10:52 Ven joined #perl6
11:01 dalek roast: 9f47446 | lizmat++ | / (229 files):
11:01 dalek roast: s/lives_ok/lives-ok/g
11:01 dalek roast: review: https://github.com/perl6/roast/commit/9f47446f9c
11:02 lizmat there was something special about the migration of is_approx to is-approx, right?
11:03 [ptc] yay lizmat++!   # kebab-case
11:03 [ptc] lizmat: yes, is-approx hasn't yet been implemented, has it?
11:03 [ptc] iirc, there was still a discussion going on on github about that
11:03 lizmat is-approx atm is the old is_approx
11:04 [ptc] specifically about the implementation
11:04 moritz and didn't folks discuss an alternative interface, or alternative precision calculation or something?
11:04 lizmat in Test.pm
11:04 [ptc] moritz: yup
11:04 lizmat so maybe I should undeprecate is_approx now ?
11:04 lizmat to allow for a more smooth transition to is-approx ?
11:05 moritz lizmat:
11:05 [ptc] the python peeps had a good algorithm for determining approximately equal to something, and I think that was less surprising than the current implemenation
11:05 moritz lizmat: yes
11:05 * [ptc] thinks that would probably be a good idea, too
11:06 lizmat ok, will do
11:06 laouji joined #perl6
11:08 dalek rakudo/nom: fb28112 | lizmat++ | lib/Test.pm:
11:08 dalek rakudo/nom: Undeprecate is_approx in lieu of new API
11:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fb28112d75
11:12 araujo joined #perl6
11:35 araujo joined #perl6
11:35 RabidGravy joined #perl6
11:39 araujo joined #perl6
11:42 dalek roast: c5e8a0f | lizmat++ | / (138 files):
11:42 dalek roast: Remove all superstitious "done"s
11:42 dalek roast: review: https://github.com/perl6/roast/commit/c5e8a0f97e
11:42 telex joined #perl6
11:43 lizmat afk for a bit&
11:50 lolisa joined #perl6
12:00 Ven joined #perl6
12:00 Tux__ joined #perl6
12:01 chahal joined #perl6
12:04 vendethiel joined #perl6
12:09 rarara joined #perl6
12:20 b2gills joined #perl6
12:29 araujo joined #perl6
12:36 Sqirrel joined #perl6
12:40 Ven if I override "rule ws" inside my grammar, will it correctly be used with :sigspace?
12:40 moritz yes
12:40 moritz (your version of ws will be used)
12:42 Ven ...seems like I can't paste a tab inside the linenoise repl
12:53 vendethiel joined #perl6
12:56 pdcawley joined #perl6
12:57 anaeem1__ joined #perl6
13:02 Ven mmh, Grammar::Debugger tells me "KAY" (or rather, MATCH) when running, but then the `ok` fails...
13:06 raiph joined #perl6
13:13 hoelzro tadzik: do you remember why panda runs $cmd with standard error redirected to standard output here? https://github.com/tadzik/panda/blo​b/master/lib/Panda/Builder.pm#L110
13:14 hoelzro ah, this is why: https://github.com/tadzik/panda/pull/127
13:14 hoelzro (and https://github.com/tadzik/panda/pull/126)
13:15 FROGGS hoelzro: that was me
13:16 hoelzro FROGGS: ah ha
13:17 hoelzro I'm trying to figure out a comprimise so that I can get emmentaler to be able to look at standard error output for warnings
13:17 FROGGS hmmm
13:17 FROGGS sadly we cannot read from two filehandles when piping
13:29 hoelzro yeah, it's no easy task
13:31 brrt joined #perl6
13:31 brrt \o
13:31 dolmen joined #perl6
13:32 hoelzro ahoy brrt
13:32 brrt hi hoelzro :-)
13:34 brrt i was looking through the site at http://julialang.org/ and noticed something in the 'performance table'
13:34 brrt luajit is basically 'twice as slow as C' for most operations
13:35 brrt that is pretty **** amazing
13:36 brrt i hope that we can get as speedy as that once
13:43 [Coke] looks like the rakudo-star-daily run ran, but all the module tests failed with a not found.
13:48 skids joined #perl6
13:58 dalek perl6-examples: e15c82b | andreoss++ | / (3 files):
13:58 dalek perl6-examples: [euler] problem 89
13:58 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/e15c82b0a2
13:58 vendethiel joined #perl6
14:00 Woodi hi #perl6 :)
14:02 anaeem1_ joined #perl6
14:03 Woodi just reading  https://www.cs.utexas.edu/users/EWD​/transcriptions/EWD06xx/EWD648.html  and in one paragraph there are words: "object", "structural" and "lemma" (as description for subroutine)... it is amazing that all that common words was used to describe what program is :)
14:06 Woodi but about panda vs versions and authors: I think some system like Debian package pinning configuration file can be used - man 5 apt_preferences   it automatically resolves dependencies when some package was pinned as prefered
14:06 [Sno] joined #perl6
14:06 timotimo but we want to be able to install the same module name from two different authors, or two or more versions of the same module at the same time
14:21 krakan joined #perl6
14:28 PZt joined #perl6
14:33 Woodi timotimo: I.m not familiar with details. just saw command line attempts...
14:33 [ptc] joined #perl6
14:34 Woodi ...which is also valid way...
14:36 dalek rakudo-star-daily: 0577c32 | coke++ | log/ (10 files):
14:36 dalek rakudo-star-daily: today (automated commit)
14:36 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/0577c3257d
14:36 dalek perl6-roast-data: aaa2cbe | coke++ | / (9 files):
14:36 dalek perl6-roast-data: today (automated commit)
14:36 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/aaa2cbe487
14:36 dalek perl6-roast-data: 2d1e623 | coke++ | / (2 files):
14:36 dalek perl6-roast-data: today (automated commit)
14:36 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/2d1e623649
14:36 dalek perl6-roast-data: b68438d | coke++ | perl6_pass_rates.csv:
14:36 dalek perl6-roast-data: today (automated commit)
14:36 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/b68438d643
14:38 [Coke] same old nqp-parrot failures.
14:39 Calibellus joined #perl6
14:39 [Coke] ... that's wierd. why are there 3 commits from perl6-roast data...
14:41 [Coke] ... and no commits for 3 days before that?
14:41 [Coke] that's... weird.
14:41 [Coke] I'm going to kill those commits and re-run today's run by hand, I guess.
14:47 muraiki joined #perl6
14:52 vendethiel joined #perl6
14:56 dalek rakudo/cpp: 35fb090 | hoelzro++ | t/04-nativecall/13-cpp-mangling. (2 files):
14:56 dalek rakudo/cpp: Test C++ methods marked as 'const'
14:56 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/35fb09065b
14:56 dalek rakudo/cpp: 30c9a82 | hoelzro++ | lib/NativeCall.pm:
14:56 dalek rakudo/cpp: Add cpp-const trait for routines
14:56 dalek rakudo/cpp:
14:56 dalek rakudo/cpp: For some reason, when I actually use this, the new trait is not
14:56 dalek rakudo/cpp: recognized and a compilation failure occurs.
14:56 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/30c9a82ee7
14:56 dalek rakudo/cpp: b96ae51 | hoelzro++ | lib/NativeCall/Compiler/GNU.pm:
14:56 dalek rakudo/cpp: Fix GNU mangling for const methods
14:56 dalek rakudo/cpp: review: https://github.com/rakudo/rakudo/commit/b96ae51ba1
15:01 colomon oooo, cpp progress!
15:05 hahainternet oh wow cpp
15:05 hahainternet crazy
15:05 hahainternet i need to have another look at nativecall
15:05 hahainternet see if i can alloc what's required to get tcl working through it
15:05 hahainternet i am under the impression that was all enabled but i haven't got the time to look at it before weekend which sucks
15:06 FROGGS joined #perl6
15:07 freeze joined #perl6
15:12 tony-o_ hoelzro++
15:15 vendethiel joined #perl6
15:16 timotimo aaaah, the hague grant success for brrt has been news'd on the perlfoundation site
15:16 timotimo http://news.perlfoundation.org/2​015/05/hague-grant-accepted.html
15:17 colomon \o/
15:20 FROGGS yays, got CUnions ported to jvm (which was easy) and inlining (which was very not easy)
15:20 hoelzro hahainternet: the C++ support is neat; major props to FROGGS[mobile] for doing it
15:20 timotimo FROGGS: wow, well done!
15:20 hahainternet hoelzro: i don't have any desire to use it, but that's purely due to C++, congrats on all the work done so far
15:20 hahainternet nativecall is very compelling
15:21 hoelzro hahainternet: I'm not a C++ guy myself, but I want to use C++ libraries from Perl 6
15:21 hahainternet indeed
15:21 hoelzro and it may be appealing to people with C++ codebases that want to use Perl 6 to drive higher level logic
15:21 timotimo right, using existing c++ libraries is very valid even if you don't want to write any C++
15:21 * colomon has quite a lot of C++ code…
15:22 hahainternet i wasn't trying to suggest it wasn't valid :)
15:22 timotimo it'd be super amazing if we could have Qt without going through Python
15:23 hahainternet for me, tcl and gst are on the perl6 hack-about list
15:23 timotimo i don't know what gst is
15:23 hahainternet ran into issues with tcl as it expects the caller to do the allocations and i wanted to be as pure perl6 as possible
15:23 hahainternet timotimo: gstreamer
15:23 timotimo ah
15:24 hahainternet i mean i can hack around any of it regardless, but this is purely for my pleasure so i am fine with waiting
15:24 hahainternet i need to read more about GLR anyway and get writing some p6 even if it doesn't use nativecall
15:24 tinyblak joined #perl6
15:24 [Coke] hahainternet: you working on inline::tcl or somesuch?
15:24 timotimo well, you can do allocations in perl6 by just calling into malloc
15:24 hahainternet [Coke]: not exactly
15:25 PerlJam hahainternet: once the GLR is done, you shouldn't need to think about it ever again.
15:25 [Coke] I ran out of tuits to try to get tcl-on-nqp working some time ago. Surprised to see anyone looking at tcl integration at all :)
15:25 hahainternet and timotimo yeah ultimately i need to hook it into event loops and GC so there's a lot of reading before
15:25 hahainternet [Coke]: it's not so much integration as i have an existing tcl bot i'm refactoring to use 8.6, and it would be very handy to safely hook in a whole bunch of libraries that have poor tcl equivalents
15:26 hoelzro timotimo: I didn't know we relied on Python for Qt functionality
15:26 hahainternet so from image manipulation to DOM parsing to websockets
15:26 timotimo i haven't seen anybody use Qt so far, except for examples from nine's talks
15:27 timotimo the talks about inline::*, thtat is
15:27 hahainternet i mean i can always do all of this in golang or C etc, i've done some work in golang already for it
15:27 hahainternet but i need to learn perl6 and it's a good excuse to do some really tricky stuff well
15:27 timotimo that sounds very good :)
15:28 arnsholt FROGGS: How are you handling inlined stuff? Do they return a pointer to the embedded thing, or a copy?
15:28 timotimo i think maybe we want a "reference counted piece of memory" REPR
15:28 timotimo with a central registry
15:29 timotimo so we can allocate n bytes, say "something out there's referencing it at the moment" and not worry about a thing any more
15:29 arnsholt I think that's gonna end up being painful
15:29 FROGGS arnsholt: you can look at the code in a bit
15:30 arnsholt I think a better way is to make it the programmer's job to keep track of which bits of memory are to be freed by C (and thus has to be left alone by Perl 6), and which ones can be freed when the Perl 6 object is GCed
15:31 arnsholt FROGGS: Cool. Problem is both solutions are going to be annoying; either we'll have non-C semantics (if it's a poiinter to the embedded thing) or unintuitive Perl 6 semantics (if it's a copy)
15:31 FROGGS arnsholt: in short: I changed the default Structure and Union interfaces to inline into other structs rather then get referenced
15:32 hahainternet this is something i have to face in Perl6 and Go for this Tcl project too, as it has its own reference counting so i need to take part in that
15:32 arnsholt That's going to break everything in the ecosystem though, isn't it?
15:32 hahainternet but i am not exactly particularly experienced with this, nor particularly knowledgable
15:32 FROGGS arnsholt: and when we construct a struct with an referenced thing, I install a Pointer instead of the Union/Struct
15:33 FROGGS arnsholt: no, nothing changes from a Perl 6 level perspective
15:33 arnsholt Oh, I don't care about the implementation details that much right now
15:33 FROGGS arnsholt: to tell NativeCall that a struct/union in an attribute shall be inlined you put an 'is inlined' trait on it
15:33 arnsholt The question is what you get when you read an inlined attribute
15:35 FROGGS can you rephrase that?
15:36 arnsholt Assuming "struct a { struct b { int value; }; }", what do you get from $a.b?
15:36 FROGGS struct b
15:36 arnsholt Although it has to be a pointer, come to think of it, otherwise $a.b.value = 42 won't work
15:36 hoelzro hmm...instead of using method foo is cpp-const for const c++ methods, does it make more sense to re-use an existing Perl 6 trait like 'is pure'?
15:36 arnsholt But that's different from the C semantics
15:37 hoelzro hmm, actually, pure !~~ const
15:37 arnsholt Now that I actually articulate it, I think the C semantics can't really be duplicated in NativeCall anyways, since that'd mean changing the value in a flattened thing would be impossible through the normal means
15:41 brrt left #perl6
15:42 FROGGS arnsholt: attribute reads and writes for cstructs and cunion are handled by an attribute offset plus the mem location of the cstruct/cunion ptr
15:42 FROGGS arnsholt: does that answer your question?
15:42 TimToady m: my @a = 1,2,3; .say for @a,@a
15:42 camelia rakudo-moar fb2811: OUTPUT«1␤2␤3␤1␤2␤3␤»
15:42 * TimToady is working on ^^ this bug
15:43 arnsholt FROGGS: Right, so you basically return &(a->b) rather than a->b
15:43 FROGGS TimToady: this should print "1 2 3␤1 2 3␤"?
15:43 TimToady yes
15:43 FROGGS TimToady: nice, that even makes sense in my lil' brain :o)
15:43 arnsholt Probably the only way to handle it, now that I've actually thought about it for a bit
15:43 TimToady lists should not let things force flattening for themselves like that
15:44 arnsholt FROGGS: Last I discussed this with jnthn, I think he voted against "is inlined" BTW
15:44 TimToady m: my @a = 1,2,3; .say for ^3,@a
15:44 camelia rakudo-moar fb2811: OUTPUT«0␤1␤2␤1␤2␤3␤»
15:44 TimToady same problem
15:44 arnsholt Not sure if we came up with any better names, though
15:45 FROGGS arnsholt: that is just a trait name in NativeCall.pm... we can easily change that
15:45 FROGGS arnsholt: though, it is the only name I can come up with, and it explains very well what is going on
15:46 FROGGS arnsholt: and the 'is inlined' trait on attributes will also work on shaped arrays, which is why I did that
15:46 arnsholt Oh, we'll have "is inlined" elsewhere too? That changes things a bit
15:46 arnsholt The objection, IIRC, is that inlined means other things too. Like inlined functions
15:47 FROGGS arnsholt: not yet
15:47 FROGGS I was talking of 'is inlined' of shaped arrays in cstructs etc
15:47 FROGGS on*
15:47 skids joined #perl6
15:47 FROGGS ohh
15:47 FROGGS inlined functions...
15:48 FROGGS well, I'm all ears for a better trait name
15:48 TimToady the opposite of indirect is direct, I suppose
15:49 TimToady the opposite of there is here
15:49 TimToady the opposite of transclusion is inclusion
15:50 FROGGS TimToady: do you propose a trait called 'is lined'? :D
15:50 FROGGS or translined...
15:50 arnsholt FROGGS: I think my best candidates are "is flat", "is flattened" or "is embedded"
15:50 TimToady no, direct, here, or included
15:50 arnsholt Although embedded is one of those ambiguous ones too
15:50 FROGGS arnsholt: and flat has other meanings in P6
15:50 arnsholt included might work
15:50 FROGGS yeah...
15:52 TimToady incorporated
15:52 FROGGS nah, to dyffucilt
15:53 * FROGGS .oO( is assimilated - we can even shorten that one... )
15:53 TimToady is borged
15:55 TimToady borg instead of has :)  borg int32 @foo[4];
15:55 TimToady though I think we proposed HAS for that once
15:58 TimToady well, I can fix @a,@a by not setting $!flattens, but then the parser breaks when compiling Test.pm.  Gee, I am so completely surprised... ;)
15:58 FROGGS *g*
16:01 * TimToady rather suspects this is gonna be a fix for next month, not this month, esp since he has to drive to SoCal today
16:02 araujo joined #perl6
16:02 araujo joined #perl6
16:02 FROGGS TimToady: we can do HAZ instead of the trait without much fuzz I think... happily that won't change anything to the VMs
16:03 FROGGS I just need to change my feelings about HAZ
16:04 TimToady shouldn't it be CANHAS?
16:04 TimToady CANHAZ I mean
16:04 rindolf joined #perl6
16:04 raydiak please tell me I stumbled into another joke.../me backlogs :)
16:07 raydiak FROGGS: I've got :auth<> and :ver<> more or less working here (this version is in the "authver" branch), though the parsing is a flimsy hack, didn't have much luck trying to make use of Perl6::Grammar for that...any advice there, or is parsing them with /\: (\w+) \< (<-[>]>*) \>/ adequate for now?
16:08 Ven joined #perl6
16:08 raydiak FROGGS: also I'm matching the auth as a substring atm so e.g. :auth<FROGGS> matches :auth<github:FROGGS>, but don't think we can keep doing that without a separate syntax for a whole literal string, in case one auth is a substr of another
16:10 FROGGS raydiak: it would be most awesome if we could match the entire string against Perl6::Grammar.longname
16:11 raydiak FROGGS: indeed, I took a couple cracks at that before I decided I was wasting time, but I'm all for it if you can tell me how to do so from p6 user code at runtime
16:11 FROGGS raydiak: I don't know how (yet) :/
16:11 FROGGS I mean...
16:12 FROGGS m: say $~MAIN
16:12 camelia rakudo-moar fb2811: OUTPUT«Slang.new(:grammar(Perl6::Grammar), :actions(Perl6::Actions))␤»
16:12 FROGGS m: say $~MAIN.grammar.longname
16:12 camelia rakudo-moar fb2811: OUTPUT«Cannot look up attributes in a type object␤  in any longname at src/Perl6/Grammar.nqp:419␤  in block <unit> at /tmp/R0jd9eAHg7:1␤  in any <unit-outer> at /tmp/R0jd9eAHg7:1␤␤»
16:12 FROGGS m: say $~MAIN.grammar.new.longname
16:12 camelia rakudo-moar fb2811: OUTPUT«Cannot look up attributes in a type object␤  in any longname at src/Perl6/Grammar.nqp:419␤  in block <unit> at /tmp/BHUAHV_1k5:1␤  in any <unit-outer> at /tmp/BHUAHV_1k5:1␤␤»
16:13 FROGGS raydiak: I guess we don't want to EVAL these strings?
16:14 raydiak FROGGS: I for one am not in favor of EVALs in the package manager from user input unless it's somehow safe in ways I don't understand
16:14 gfldex joined #perl6
16:14 FROGGS yes, I feel exactly the same way
16:15 raydiak though iirc, I could sworn I did see someone manage to get a parse to work like that here before...maybe will check the irclog
16:15 eli-se joined #perl6
16:15 FROGGS problem is, you use 'use Foo:auth(/:i froggs/)' in your code and you want to paste that to 'panda install' or put it into the deps section of your META.info
16:16 eli-se hi!!
16:16 FROGGS m: use Perl6::Grammar:from<NQP>
16:16 camelia rakudo-moar fb2811: ( no output )
16:16 FROGGS raydiak: along those lines... setting highwater etc
16:17 FROGGS raydiak: but this will also run BEGIN blocks and is useless without the actions
16:17 FROGGS it is like we want an EVAL, that is a subset of Perl6::Grammar
16:17 raydiak FROGGS: well we'd need to draw a line in the panda options which doesn't exist in Rakudo anyway...or else they can do like panda install Foo:auth(qx/rf -rf \//) or so :)
16:17 FROGGS m: say EVAL ':auth(/:i froggs/)'
16:17 camelia rakudo-moar fb2811: OUTPUT«auth => ␤»
16:18 raydiak FROGGS: yes subset, precisely
16:18 raydiak FROGGS: housesitting until Friday, internet connection is even worse here, forgive me if I seem unattentive :)
16:20 FROGGS raydiak: np :o)
16:20 FROGGS (I have three kids, I know the feeling)
16:20 raydiak heh, three needy dogs here :)
16:25 FROGGS :D
16:28 andreoss is v5 discontinued?
16:28 andreoss i'm trying to build it. a bunch of warnings about deprecated NQP functions
16:30 andreoss and it fails to build of course
16:31 FROGGS andreoss: it is tightly coupled with the rakudo internals, and thus breaks very fast when one does not keep it up to date
16:31 FROGGS andreoss: and I dont touched it for months
16:31 FROGGS one reason is that Inline::Perl5 serves the goals that v5 was meant to solve
16:31 liztormato joined #perl6
16:32 FROGGS though, it was/is good to explore slangs
16:32 liztormato FROGGS: do you mind if I give it some TLC ?
16:33 FROGGS TLC?
16:33 liztormato Tender Loving Care
16:34 FROGGS might make more sense when I invest some time to unbreak it
16:34 FROGGS dinner &
16:34 andreoss but Inline::Perl5 uses perl5 binaries under the hood? doesn't it?
16:35 liztormato Yes
16:35 kaare__ joined #perl6
16:35 andreoss it's not as nice as having alias perl='perl5 -MPerl5'
16:36 andreoss *perl6
16:38 liztormato Some more cycling &
16:38 liztormato left #perl6
16:39 raydiak I guess it depends...if by "nice" you mean things like fast, stable, and complete, I::P5 is (at least arguably) nicer than v5
16:42 molaf joined #perl6
16:45 andreoss people would be more willing to migrate if there was features like v5 provides
16:45 TimToady the problem with fixing @a,@a appears to be all the places that do things like (tostore,).flat.eager assuming an Array will preflatten in the parcel, which looks like a rather smelly construct to begin with
16:46 TimToady I think this is definitely going to have to be done post-release
16:46 andreoss "you just put 'use v5'; and run it with perl6"
16:47 noganex joined #perl6
16:47 aborazmeh joined #perl6
16:47 aborazmeh joined #perl6
16:49 TimToady .tell pmichaud FYI I'm intending to slaughter the $!flattens flag after this release since it makes @a,@a misbehave in non-flat list context, looks like we'll have to fix all the (foo,).flat.eager things scattered here and there too
16:49 yoleaux TimToady: I'll pass your message to pmichaud.
16:50 diana_olhovik joined #perl6
16:50 jercos andreoss: really you should already have e.g., use v5.20 in perl 5 scripts, right? :p
16:51 jercos otherwise you have to jump through hoops to use say >.>
16:51 vendethiel joined #perl6
16:53 andreoss some people would have 'use 5.020'
16:53 andreoss as PBP advices
16:55 mohij joined #perl6
16:55 anaeem1_ joined #perl6
16:55 espadrine joined #perl6
16:57 jercos eh, eval "use $]" and be done with it
16:58 jercos Rakudo seems unaware of perl's more historical version check syntax though.
16:59 Guest24686 whut
16:59 jercos m: use v5.20
16:59 camelia rakudo-moar fb2811: OUTPUT«===SORRY!===␤Could not find Perl5 in any of:␤  file#/home/camelia/.perl6/​2015.04-330-gfb28112/lib␤  inst#/home/camelia/.perl6/2015.04-330-gfb28112␤  file#/home/camelia/rakudo-inst-1/share/perl6/lib␤  file#/home/camelia/rakudo-inst-1/share/perl6/v…»
16:59 jercos m: use 5.020
16:59 camelia rakudo-moar fb2811: OUTPUT«5===SORRY!5=== Error while compiling /tmp/cpmdh45P0f␤Undeclared routine:␤    use used at line 1␤␤»
16:59 jercos Guest24686: nickserv is a fickle beastie.
17:00 Guest24686 eli-se pls
17:00 eli-se XD
17:02 Ven_ seems like someone registered "ven", and it wasn't me :P
17:06 FROGGS andreoss: a 'use v5' can also load it via Inline::Perl5, when invoked with p6
17:18 vendethiel joined #perl6
17:23 xinming joined #perl6
17:43 vendethiel joined #perl6
17:45 dalek nqp: 64e9266 | FROGGS++ | src/vm/jvm/runtime/org/perl6/nqp/ (9 files):
17:45 dalek nqp: implement CUnion repr on jvm, also inlining of CStructs and CUnions
17:45 dalek nqp: review: https://github.com/perl6/nqp/commit/64e92663fe
17:46 timotimo way cool.
17:46 masak FROGGS++
17:46 dalek rakudo/nom: 7cd5616 | FROGGS++ | t (3 files):
17:46 dalek rakudo/nom: bumd nqp and add tests for CUnion
17:46 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7cd5616985
17:47 timotimo Karlsruhe (ots) - Eine aufmerksame Bankmitarbeiterin verhinderte am Dienstag, dass eine ältere Frau um ihr Erspartes gebracht wurde. Als die 83-jährige Kundin gegen 13.20 Uhr die Bank betrat um 2.700 Euro abzuheben, wurde die Angestellte aufmerksam und fragte nach, wofür sie denn das Geld benötige. Die Dame erwiderte, dass sie das Geld einer Frau, die vor der Bank warten würde, aushändigen möchte. Dies
17:47 timotimo kam der 45-jährigen Mitarbeiterin merkwürdig vor und sie wollte daraufhin die Frau vor der Bank dazu befragen. Als die 20-30-jährige Betrügerin die Bankangestellte auf sich zukommen sah, fuhr sie mit einem VW Polo schnell davon. Nach dem Vorfall begleitete die Bankangestellte die 83-Jährige zur Polizei um Anzeige zu erstatten. Dort stellte sich heraus, dass die Dame vor zwei Wochen einen Brief erhielt, in
17:47 timotimo dem das Geld gefordert wurde. Da der Betrag aber nicht ausbezahlt wurde, erschien die Betrügerin direkt an der Haustür der 83-Jährigen und forderte sie auf mit ihr zur Bank zu gehen, um das Geld zu holen. Die Polizei lobt das vorbildliche Verhalten der 45-Jährigen Bankangestellten und bittet alle Bankmitarbeiter in solchen Verdachtsfällen lieber einmal mehr Nachzufragen wozu das Geld benötigt wird.
17:47 [ptc] joined #perl6
17:47 FROGGS ups
17:47 masak timotimo: a bit too much at a time... :)
17:48 FROGGS :o)
17:48 FROGGS Bankangestellte++ though
17:49 timotimo oh
17:49 timotimo i think a cat ran over my keyboard
17:49 timotimo and found the middle click
17:49 masak hah!
17:49 masak "it was the cat"
17:49 Ven_ ...could've been worse :)
17:49 FROGGS hehe >.<
17:49 cognominal Ven_,  you can take Venerable  :)
17:50 Ven_ cognominal no ty
17:50 gfldex joined #perl6
17:50 masak Venetian_Blinds
17:51 * moritz enjoyed reading http://hintjens.com/blog:85
17:51 cognominal or venereal :)
17:52 timotimo well, in order to paste i have to put three fingers on the trackpad and press down
17:52 timotimo during the walk of a cat, one front and one back foot are down simultaneously
17:52 masak timotimo: getting more and more respect for $cat
17:52 timotimo hehe
17:52 timotimo he's a real troublemaker sometimes
17:53 timotimo the other cat is very careful instead
17:54 dalek rakudo/nom: 29e0835 | FROGGS++ | t/04-nativecall/04-pointers.c:
17:54 dalek rakudo/nom: inlude stdlib.h to get prototype of free()
17:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/29e0835b7b
17:54 FROGGS damn c key -.-
17:54 * masak .oO( <other_cat> blame troublemaker cat -- achievement unlocked ) :P
17:56 telex joined #perl6
17:57 FROGGS now... do we really want to have HAS instead of the 'is inlined' trait?
17:57 FROGGS I guess, I should attempt to fix that
18:04 [ptc] joined #perl6
18:05 burnersk joined #perl6
18:05 [ptc]_ joined #perl6
18:12 FROGGS m: say 0x65
18:12 camelia rakudo-moar fb2811: OUTPUT«101␤»
18:13 masak m: say 65.base(8)
18:13 camelia rakudo-moar fb2811: OUTPUT«101␤»
18:13 masak o.O
18:13 masak coincidence? I think not!
18:14 FROGGS heh
18:25 vendethiel joined #perl6
18:29 adu joined #perl6
18:30 dalek nqp: b91fbc8 | FROGGS++ | tools/build/MOAR_REVISION:
18:30 dalek nqp: bump moar for CStruct/CUnion improvements
18:30 dalek nqp: review: https://github.com/perl6/nqp/commit/b91fbc8019
18:31 dalek rakudo/nom: aca2a9e | (Sterling Hanenkamp)++ | t/04-nativecall/06-struct. (2 files):
18:31 dalek rakudo/nom: Adding test demonstrating structs with nested structs are not working
18:31 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/aca2a9e34a
18:31 dalek rakudo/nom: 354229e | FROGGS++ | t (2 files):
18:31 dalek rakudo/nom: add missing 'is inlined' in test and bump nqp
18:31 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/354229e5ae
18:32 timotimo do structs with nested structs inside nested structs work, though?
18:32 FROGGS yes, that should work
18:32 timotimo how about putting structs inside structs that were put into structs that were already inside structs?
18:33 FROGGS the number of layers does not matter
18:34 timotimo ok
18:36 nwc10 complication nested in complication? :-) -- http://www.imdb.com/title/tt0​088846/quotes?item=qt0223927
18:41 diana_olhovik_ joined #perl6
18:41 rjbs Her name was Mrs. Terrain?
18:41 rjbs Oh, right.  I was thinking it was Sam's mother, but it was her poor friend.
18:44 _mg_ joined #perl6
18:47 eli-se joined #perl6
18:49 raydiak FROGGS: wrt parsing longnames... :auth(/:i froggs/) kinda feels like terrible mixing of data and code which leads directly to the problem at hand, and secondarily, is unclear to users who might not be very familiar with perl itself
18:50 FROGGS raydiak: though it is valid as part of a longname in a use statement
18:51 raydiak FROGGS: I'm not sure that strictly modeling longname support after everything that would possibly be valid in a use statement is very wise, but defer to more experienced judgement
18:52 RabidGravy allow but don't encourage
18:52 FROGGS I just think that you want to put the longnames of your use statements into your META.info
18:53 FROGGS I mean, if you actually do 'use Foo:auth(/:i froggs/)' it does not make sense to put 'Foo:auth<FROGGS>' in the META.info
18:53 raydiak well sure, I don't think just making it all substrings is a good answer either
18:53 FROGGS as the latter will restrict the former
18:54 FROGGS we might not need to get everything implemented now, I'm just saying what I think should be our goal
18:55 raydiak I suppose we could EVAL it in a restricted setting somehow?
18:55 timotimo the restricted setting is *crazy* weaksauce
18:55 raydiak yeah and that'll need to get fixed too eventually
18:55 timotimo a good start would be to somehow signal that whenver this setting is in use, nqp:: must not be allowed at all would be a good start
18:55 timotimo er ...
18:55 timotimo that would be a good start, yeah
18:56 timotimo to start with that
18:56 timotimo as i said
18:56 FROGGS we need to replace the nqp ops itself with dummies...
18:56 * raydiak has also thought for some time about a "data-only" subset of Perl 6's various literal syntaxes as a module, for things that need to be safe, and as a sane-ish serialization format in it's own right
18:57 FROGGS the we can expose the normal setting, and it can't do any harm
18:57 timotimo we want "var" anyway
19:07 raydiak digging in to rakudo isn't something I can commit to now, but I will improve what else I can in the authver branch like suggestions and such
19:08 zakharyas joined #perl6
19:09 ilogger2 joined #perl6
19:10 fhelmberger joined #perl6
19:11 dalek rakudo/nom: 6d990fa | FROGGS++ | t/04-nativecall/06-struct.t:
19:11 dalek rakudo/nom: int in NativeCall code is ambiguous, use int32
19:11 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6d990fa552
19:13 dwarring joined #perl6
19:14 FROGGS and with this patch, all nativecall tests pass on jvm too...
19:15 FROGGS I'll probably disable CURLI tomorrow for the release, and do an ecosystem smoke to see what's going on
19:15 FROGGS but now, I'll rest
19:15 FROGGS have a nice evening #perl6
19:16 FROGGS ahh, if someone implemented the HAS keyword (maybe steeling ideas from OO::Monitor) which would then maybe just apply the 'is inlined' trait, that'd be sweet :o)
19:45 ilogger2 joined #perl6
19:48 avuserow hahainternet: hey, I saw you mentioning gstreamer in the backlog. I played with that about 3-4 months ago and ran into some difficulties. I was wondering if you had any success or if it was just ideas at this stage
19:48 avuserow I think I managed to get it to play audio, which is my goal, but had troubles with their signal mechanism to determine what to play next automatically
19:51 hahainternet avuserow: i've not tried with perl6 yet, i have done some with python and with Golang
19:51 hahainternet i'll have a play with it in p6 sooner or later but i know nothing about GC internals or event loops yet
19:53 avuserow yeah, I was just hacking around. xine seemed easier, but gstreamer seems to be the preferred way to output audio on linux these days, especially gaplessly
19:57 brrt joined #perl6
20:01 eli-se joined #perl6
20:03 lizmat hi #perl6!
20:04 lizmat .tell nine Is there a reason why nobody has added a "unit" statement to Inline::Perl5 to quiet the warnings?
20:04 yoleaux lizmat: I'll pass your message to nine.
20:04 dolmen joined #perl6
20:05 vendethiel o/
20:05 masak lizmat: waiting until after release?
20:06 lizmat possibly... :-)
20:06 lizmat I just wanted to make sure it was a deliberate lack of action :-)
20:07 * masak .oO( any sufficiently advanced lack of action is indistinguishable from intent )
20:20 * lizmat has *not* mentioned "will lazy" attribute trait in ChangeLog
20:21 [Coke] why not, too lazy?
20:22 lizmat Well, there was this discussion about the naming and whether or not it should be in core ?
20:22 masak lizmat: didn't it come and go in core?
20:22 lizmat well, yes, I put it there *before* the discussion :-)
20:23 masak I mean, if it's gone before the release, no need to mention it in the ChangeLog, right?
20:23 lizmat true
20:23 lizmat but not mentioning it now, and still keeping it, might not break code out there
20:24 [Sno] joined #perl6
20:27 lizmat .tell rjbs are you using 'will lazy' atm?
20:27 yoleaux lizmat: I'll pass your message to rjbs.
20:27 lizmat fwiw, if we keep it this way, I would probably want to call it "will lazily"
20:28 fernando___ joined #perl6
20:29 japhb .ask FROGGS From the commit message for MoarVM: commit 4102a25b1acea1d453d87f4e614d328ba0af8816
20:29 yoleaux japhb: I'll pass your message to FROGGS.
20:29 japhb .ask FROGGS From the commit message for MoarVM: commit 4102a25b1acea1d453d87f4e614d328ba0af8816 it looks like the comparison is reversed (> instead of <).  Am I misunderstanding?
20:29 yoleaux japhb: I'll pass your message to FROGGS.
20:30 masak I still have the uneasy feeling that the `will lazy` feature is not carrying its own weight. it doesn't have that je-ne-sais quoi of most core Perl 6 features, doing at least two things well at the same time.
20:31 masak instead, it has the sense of a way too overpowered tool (a new keyword-ish thing) to solve a single isolated problem.
20:33 lizmat but the general solution would involve a lot of boilerplate, like
20:34 lizmat method foo { $!foo //= lazy init }
20:34 masak I'm not advocating a general solution. rather the opposite.
20:34 masak I *am* saying though that this problem can be solved outside of core first, and that because it can, it should.
20:36 dalek rakudo/nom: 34788bf | lizmat++ | src/core/traits.pm:
20:36 dalek rakudo/nom: Sorry, "will lazy" not to be for this release
20:36 dalek rakudo/nom:
20:36 dalek rakudo/nom: <masak> I *am* saying though that this problem can be solved outside
20:36 dalek rakudo/nom:         of core first, and that because it can, it should.
20:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/34788bfd4b
20:37 masak phew. :) or rather, deja-phew. :/
20:38 colomon joined #perl6
20:38 masak this is the second iteration of this discussion...
20:39 lizmat well, I thought I'd do it now (again) before it gets too much into the wild
20:39 lizmat especially since we're going to have a Rakudo* release from this one (hopefully)
20:40 dalek roast: 9cf2c1c | lizmat++ | S12-attributes/instance.t:
20:40 dalek roast: Remove tests for "will lazy"
20:40 dalek roast: review: https://github.com/perl6/roast/commit/9cf2c1c5e4
20:41 masak oh, I see. we discussed it on 2015-05-07, it was concluded that it should be removed, but it was never removed then.
20:41 masak lizmat++
20:41 lizmat fwiw, I missed that conclusion
20:41 masak http://irclog.perlgeek.de/p​erl6/2015-05-07#i_10565792
20:41 lizmat so good that we're on the same page then
20:42 lizmat apparently I didn't miss it  :-)
20:42 masak :P
20:42 lizmat so, it was my subconscious making me bring it up again  :-)
20:42 masak well, I just assumed it'd been removed already. so I'm glad we had this talk ;)
20:43 masak I think `will lazy` fails the "strangely consistent" test for me. I could probably express this sentiment better face-to-face...
20:44 lizmat ah, and there was this discussion about "is cached" I forgot abouy
20:44 lizmat *about
20:44 * masak .oO( reminding you about backlog as a service )
20:45 brrt what even is 'will lazy' supposed to do
20:46 lizmat execute code on first access of an attribute, rather than at object create time
20:47 lizmat (which is what a default value does)
20:50 masak it's essentially a new type of phaser.
20:52 skids joined #perl6
20:52 brrt uhm, ok
20:52 brrt can't seem to think why you'd do that
20:52 masak oh, the goal is a good one
20:52 brrt but i suppose people do want it :-)
20:52 lizmat it's one of the USP's of Moose
20:53 colomon USP?
20:53 lizmat Unique Selling Point
20:53 masak the Moose manual even encourages people to mark attributes lazy whenever they can.
20:53 lizmat .oO( sorry, dabbled a bit in marketing at one point in my life)
20:53 masak lizmat: you are forgiven :P
20:54 dalek perl6-roast-data: a340ef8 | coke++ | / (9 files):
20:54 dalek perl6-roast-data: today (automated commit)
20:54 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/a340ef8168
20:54 lizmat masak: one could consider making all attribute defaults lazy by default
20:54 colomon I like the sound of that… but it does seem like something that is pretty easily done by a module, no?
20:55 masak lizmat: something about that feels uneasy, too. like it breaks Least Surprise.
20:55 lizmat colomon: it would interfere with the autogenerated methods
20:55 masak lizmat: there's a reason it's not the default in Moose. it could easily have been.
20:55 lizmat so pretty tightly bound to the core, I would think
20:55 masak lizmat: also, there's a lot of Perl 6 code out there that would break if we did that.
20:56 lizmat masak: well, that may be just because they couldn't change it after having enough traction
20:56 masak no, I don't think that's why.
20:56 masak I think it's because it would be surprising.
20:57 lizmat has $.fh is lazy = open( $!file, :r );
20:57 lizmat feels like a nice and clear syntax to me
20:57 masak aye.
20:58 cognominal joined #perl6
20:59 brrt for my clarity, is lazy can work on method form twigils, but not in instance varialbe twigils, right
21:00 lizmat yes, this would only apply to public attributes, aka with $.foo rather than $!foo
21:00 brrt ok... hmm
21:00 masak I'm surprisingly fine with that.
21:00 lizmat making it work on $!foo would make jnthn very unhappy, I would think
21:01 rjbs For one thing, having attributes in Moose be eager by default helps you crash early.
21:01 yoleaux 20:27Z <lizmat> rjbs: are you using 'will lazy' atm?
21:01 rjbs lizmat: I'm not.
21:01 rjbs More on why not in a bit.
21:01 lizmat ok, cool, since "will lazy" is no more
21:01 brrt would the lazy block be applied each time the backing variable is undefined, or just one time?
21:01 rjbs has x => (isa => 'Bool', default => sub { ... });
21:01 lizmat brrt: just once
21:01 rjbs If that sub returns a non-Bool, and it's not lazy, you can crash at init time.  Good!
21:02 rjbs So we only defer if the programmer agrees to trade off that early type check.
21:02 brrt that means you need a state variable to keep track if it has been called before
21:02 rjbs The state variable is the storage slot.
21:02 brrt no, i don't think it is; the storage slot can be re-undefined
21:02 rjbs brrt: We don't undef it, we delete it.
21:03 rjbs Moose distinguishes set/unset from defined/undefined.
21:03 lizmat my original attempt at implementation was done by auto-generating the accessor method with a -once- block in it
21:03 rjbs Your attribute in Moose can be 'Maybe[Int]' in which case undef is also allowed, and your lazy default will return undef and then not be called the second time.
21:03 brrt right. but i'm not - at this point - sure whether perl6 does
21:03 lizmat that has a hidden state var to make the block run only once
21:03 rjbs brrt: Okay.
21:04 rjbs There was also some talk, around that day, of an "is cached-per-instance" trait.
21:04 lizmat yes, looking at that now
21:04 rjbs I have a lot to say on this topic, probably.  If it wasn't really long, I'd jus t say "watch my Moose tutorial for everything that is easier in Moose than p6 right now." :-)
21:04 rjbs I'll try to distill it down to bullets soon.  Like, after p5.22 is out.
21:04 brrt i was thinking about that one too, and i think it's a horrible idea; but my opinion is just that, an opinion
21:05 lizmat brrt: what is a horrible idea?
21:05 brrt is-cached-per-instance
21:05 rjbs I think that people are going to write "method xxxx is cached" and then be really confused at some point.
21:05 lizmat yeah, but atm the self identity is part of the cache key
21:06 lizmat so effectively, it *is* per instance atm
21:06 masak sounds like a sane default, too
21:06 rjbs Oho, I think that wasn't clear when I looked at it!
21:06 rjbs Very good to know.
21:06 brrt is-cached for methods is not a terribly good idea, i agree
21:06 brrt the thing is, what happens when the underlying object changes
21:06 lizmat m: class A { method a(*@a) is cached { now } }; say A.new.a; say A.new.a
21:06 camelia rakudo-moar 34788b: OUTPUT«Instant:1432156043.6634​77␤Instant:1432156043.663477␤»
21:07 lizmat hmmm... it is not ?
21:07 khisanth_ joined #perl6
21:08 lizmat m: class A { method a(*@a)  { now } }; say A.new.a; say A.new.a  # just checking
21:08 camelia rakudo-moar 34788b: OUTPUT«Instant:1432156154.8346​39␤Instant:1432156154.838208␤»
21:09 brrt hmmm
21:09 rjbs m: class A { my $x = 0; method a { say 1; return $x++ } }; my $a1 = A.new; my $a2 = A.new; say $a1.a; say $a1.a; say $a1.a; say $a2.a; say $a2.a
21:09 camelia rakudo-moar 34788b: OUTPUT«1␤0␤1␤1␤1␤2␤1␤3␤1␤4␤»
21:10 rjbs m: class A { my $x = 0; method a is cached { say 1; return $x++ } }; my $a1 = A.new; my $a2 = A.new; say $a1.a; say $a1.a; say $a1.a; say $a2.a; say $a2.a
21:10 camelia rakudo-moar 34788b: OUTPUT«1␤0␤0␤0␤0␤0␤»
21:10 rjbs No good.
21:11 lizmat maybe we should die on "is cached" on methods
21:11 lizmat at least for now
21:11 rjbs Also, we must never forget that the spec says that "not caching is a valid behavior on is cached code"
21:11 rjbs So it can only be used for optimization, never avoiding side effects.
21:11 rjbs So it's not great for some kinds of lazy, anyway.
21:12 lizmat also: speculation is only about caching subs
21:12 rjbs speculation?
21:12 lizmat so the fact that you can cache methods atm is really an oversight
21:12 rjbs nod
21:12 lizmat spec ?
21:13 rjbs specification?
21:13 lizmat S06.2019
21:13 lizmat well, specification is overrated, I'm told  :-)
21:13 rjbs :)
21:13 lizmat 2109 actually
21:14 rjbs To me, caching on a method would have to include object identity.  But also, I'd be unlikely to use it unless it was a guaranteed cache, so I'm not super invested.
21:14 rjbs but if it does not cache based on invocant identity as well as arguments, I predict confusion
21:14 lizmat yeah, I'm going to disable it on methods for now
21:16 lizmat there are no tests for it in roast
21:19 timotimo i disagree with making "is lazy" the default for default parameters
21:19 timotimo it goes quite a bit against the cool "our objects are small" thing
21:20 timotimo if every attribute with a default value/expression has an integer applied to it that governs its lazyness thingie
21:20 timotimo .o( or how do we do it? )
21:20 lizmat naive implementation would involve a 'once' block in the autgenned accessor
21:21 lizmat so yes, an extra int for each attribute
21:21 lizmat in such a naive implementation
21:21 lizmat but I think the consensus is already against it, so don't worry timotimo   :-)
21:21 timotimo ah
21:21 timotimo i was still backlogging
21:24 vytas joined #perl6
21:25 dalek rakudo/nom: 9fe7e8a | lizmat++ | src/core/Method.pm:
21:25 dalek rakudo/nom: Disallow "is cached" on methods for now
21:25 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9fe7e8ada4
21:26 dalek rakudo/nom: 6f4c457 | lizmat++ | docs/ChangeLog:
21:26 dalek rakudo/nom: Mention "is cached" on methods just in case
21:26 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6f4c457d02
21:32 pat_js joined #perl6
21:32 lizmat rjbs: re http://irclog.perlgeek.de/p​erl6/2015-05-07#i_10566001 , it can actually be simpler:
21:33 lizmat m: sub a { once { say "hello"; 42 } }; say a; say a
21:33 camelia rakudo-moar 34788b: OUTPUT«hello␤42␤42␤»
21:33 lizmat The once block is replaced by its value, so that example becomes:
21:33 lizmat method fh { once $!fh = open $file }
21:35 lizmat or if you really don't need it anywhere else in the class, you don't even need an attribute:
21:35 lizmat method fh { once open $file }
21:41 masak 'night, #perl6
21:43 lizmat gnight masak
21:43 timotimo gnite masak
21:46 dalek rakudo/nom: 484e9f7 | lizmat++ | src/Perl6/ModuleLoader.nqp:
21:46 dalek rakudo/nom: Use World.DEPRECATED because we now can
21:46 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/484e9f7088
21:49 colomon joined #perl6
21:49 rjbs lizmat: nod; my gut feeling is that you're teetering on the fence of "too much code" even then;  how often would people mark defaults lazy?  if very often, then writing that every time is (a) somewhat obscure for the newbie and (b) a pain, even if it's short
21:49 rjbs I can't predict how often it will be in p6, of course, but can only go by my past experience.  And I'm told that my code is idiosyncratic, so who knows. :)
21:50 rjbs Dist-Zilla$ ack 'lazy +=> +1' lib | wc -l
21:50 rjbs 43
21:50 lizmat argh, the "once" example actually doesn't work  :-(
21:51 raiph joined #perl6
21:51 lizmat m: class A { method a { once now } }; say A.new.a; say A.new.a
21:51 camelia rakudo-moar 6f4c45: OUTPUT«Instant:1432158707.3596​31␤Instant:1432158707.359631␤»
21:52 lizmat ok, will have to sleep on that one...
21:52 lizmat good night, #perl6!
22:00 brrt sleep well :-)
22:03 vytas joined #perl6
22:23 haroldwu joined #perl6
22:24 haroldwu joined #perl6
22:28 timotimo well, yeah, wouldn't the "once" get cloned when the class gets instantiated?
22:29 timotimo m: class A { sub a_value { once now }; method a { a_value } }; say A.new.a; say A.new.a;
22:29 camelia rakudo-moar 484e9f: OUTPUT«Instant:1432160978.2074​97␤Instant:1432160978.207497␤»
22:29 timotimo m: class A { sub a_value { once now }; method a { a_value } }; say A.new.a - A.new.a;
22:29 camelia rakudo-moar 484e9f: OUTPUT«0␤»
22:29 jdv79 wouldn't the lazy "phaser" do this if it was implemented?
22:36 timotimo it *is* implemented :)
22:36 timotimo well, it was implemented for a few weeks
22:41 dalek ecosystem: 74dd95b | tony-o++ | META.list:
22:41 dalek ecosystem: HTTP Server Threaded
22:41 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/74dd95b557
22:41 timotimo cool
22:42 jdv79 the entry in Actions.pm makes it looks like its not impl
22:42 timotimo well, it used to be :)
22:54 skids joined #perl6
23:00 raydiak .seen cosimo
23:00 yoleaux I saw cosimo 1 Dec 2014 10:37Z in #perl6: <cosimo> connection refused when running panda. known?
23:16 raydiak anyone know cosimo or his plans for his modules?  I was about to make a quick PR for String::CRC32, then realized that my last PR for it almost 3 weeks ago went unanswered, as well as my .tell here
23:18 raydiak looks like he doesn't really do p6 stuff this year so far, and I worry that important building blocks like CRC32 and MD5 might go unmaintained while we're pre-release breaking everything, since I have modules which use at least CRC32 already
23:24 skids Well, I've been keeping Sum:: up to date, but it is slow still.
23:25 skids And the GLR is likely to require quite some more changes.
23:25 raydiak aye, I was just looking at Sum :)
23:25 raydiak skids++
23:34 timotimo MD5? why would that be important?
23:35 timotimo and i would surely not call it a "building block
23:35 timotimo "
23:35 timotimo because it's not fit to build anything with any more :)
23:36 skids Yeah should be using SHA2 by now, really.
23:37 timotimo aye
23:37 timotimo maybe a bit of keccak
23:41 skids Have not gotten to that quite yet.  Really the core math should be a separate lib under Crypto:: namespace because it is for more than hashes.
23:41 skids And then just something that uses it from Sum for SHA3.
23:42 skids (and there will be C libs providing the full keccack range of functionality)
23:43 skids Kinda waiting for native shaped arrays on that one.
23:47 timotimo well, we have native arrays at least
23:47 timotimo but you really want 3-dimensionally shaped arrays
23:48 sftp joined #perl6

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

Perl 6 | Reference Documentation | Rakudo