Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-03-21

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:00 Juerd It actually allows the arrow keys to be used. This rocks.
00:00 AlexDaniel Juerd: except that now you have to reach for arrows :)
00:00 Juerd That would be an issue if I typed arrows all the time.
00:01 AlexDaniel ←don↑'t↔←↑y→ou?↑↑←←
00:02 Juerd Not, really, no. ↑
00:02 Juerd s/,//
00:04 johndau joined #perl6
00:06 BenGoldberg joined #perl6
00:11 sortiz joined #perl6
00:28 floopydoop123 joined #perl6
00:37 BenGoldberg m: my @a[-9999999999999999]; say +@a;
00:37 camelia rakudo-moar 1bbef9: OUTPUT«Memory allocation failed; could not allocate 18366744073709551624 bytes␤»
00:37 BenGoldberg m: my @a[-9223372036854775808,-2]; say +@a
00:37 camelia rakudo-moar 1bbef9: OUTPUT«-9223372036854775808␤»
00:40 BenGoldberg m: my ([$a]); $a.WHAT
00:40 camelia rakudo-moar 1bbef9: OUTPUT«(signal SEGV)»
00:41 silug joined #perl6
00:47 timotimo ouch :)
01:16 vendethiel joined #perl6
01:18 tmch joined #perl6
01:37 dalek DBIish: 0055e68 | (Salvador Ortiz)++ | / (2 files):
01:37 dalek DBIish: GLR test target
01:37 dalek DBIish: review: https://github.com/perl6/DBIish/commit/0055e683e5
01:37 dalek DBIish: 3849814 | (Salvador Ortiz)++ | lib/DBDish/StatementHandle.pm6:
01:37 dalek DBIish: The GLR of DBDIsh. $sth.allrows now returns Seq
01:38 dalek joined #perl6
02:08 aborazmeh joined #perl6
02:08 aborazmeh joined #perl6
02:19 bobby_ joined #perl6
02:20 bobby_ I was curious...what is the expected speed for P6 after it finishes the optimization phase?
02:20 bobby_ I guess if Perl5 is a 1 and C++ is a 5
02:21 timotimo so, the more the faster?
02:21 bobby_ is the final speed for P6 on the MoarVM with bytecode going to be faster than P5?
02:21 bobby_ yes
02:21 timotimo it already is in specific cases
02:21 timotimo sometimes really noticably so
02:21 timotimo but in many other cases, we're far behind
02:22 timotimo but also, our rationals and complex numbers are noticably faster than the ones p5 has
02:22 timotimo one thing that's slower than necessary is invocation in general
02:22 bobby_ that is pretty sweet...in layman's terms, how is it faster in some areas? I know P5 is implemented in C and so is P6 right?
02:22 timotimo that, of course, isn't pretty good
02:23 timotimo moarvm is implemented in C, that's right. pretty much all of the perl6 compiler is implemented in nqp and pretty much all of the "standard library" code is in perl6
02:23 teatime psch: hehe, I've gotten really far.  including ↤ as an infix operator.
02:23 timotimo when rakudo/moar gets a single loop fully inlined without invocations, it's really fast
02:24 skids bobby_: JIT would be a distinguishing speedup gain over P5
02:24 bobby_ K, that makes sense. Ahh...forgot a/b the JIT
02:25 vendethiel joined #perl6
02:25 skids Also, optimizeable OO to some extent already, vs. Moose.
02:26 bobby_ so when ya'll say JIT, is that similar to how C# does a JIT? If so, it'd be really nice to have in the neighborhood of that performance from a dynamic language.  I guess that would require the user to make use of the gradual typing features to help the JITTER right?
02:27 skids bobby_: yes and not always... you can JIT based on runtime specialization at callsites.
02:27 bobby_ I'm fairly ignorant to how OO in P6 or Moose works behind the scenes, but my understanding is that although Moose is powerful, it is pretty slow
02:28 timotimo did you read the newest post up on "6guts"? 6guts.wordpress.com
02:28 timotimo there's one (newest or 2nd to newest) about speeding up accessors, that also compares against moose
02:28 bobby_ I thought i did, must have missed the Moose part
02:28 skids That is to say, if you notice that a particular call to a function at a certain point in the program is being called with an int, you can specialize/JIT for int and then undo the specialization if it gets called differently.
02:29 timotimo ah, yes, native ints and nums can drastically speed up things
02:29 timotimo but if you mix int and Int too much, you'll be boxing and unboxing a lot of the time
02:29 timotimo and that gives you a bit of GC pressure :)
02:31 bobby_ thanks everyone for the answers, I do find all the posts on the compiler and NQP internals to be very interesting, although hard to find info on the web without invoking ya'll directly :)
02:31 bobby_ i recognize ur name by the way timotimo from the blog posts i've seen...thanks for all the work you've done
02:31 timotimo recently it's been almost exclusively lizmat who did the posts, though :)
02:32 timotimo jnthn has a few sets of slides and recorded talks up on youtube that explain stuff about the internals
02:32 bobby_ def recognize that name too lol
02:32 timotimo "the secret life of garbage collectors", for example (which i think is up on some website that hosts only talks) is pretty good
02:32 bobby_ I'll have to check it out
02:33 timotimo http://jnthn.net/papers/2014-yapceu-performance.pdf -t his one goes into internals, too, from a performance standpoint
02:33 bobby_ thanks!
02:33 bobby_ I hope someone writes a P6 book at some point as well
02:34 bobby_ I've asked around and haven't really gotten a response, although I see Brian D Foy might be working on a Learning Perl 6, although from his blog it looks like it is in super early stages.
02:34 timotimo that sounds about right
02:34 timotimo of course there's the perl6intro.com page which i suppose would be good as a pdf, too
02:34 timotimo that's only an intro, though
02:36 bobby_ Yea, I actually wrote a reddit post on how much i really like that intro today lol
02:37 timotimo that's certainly nice of you :)
02:37 timotimo the time where perl6 would get a ton of flak by one or two people all the darn time is apparently over
02:39 bobby_ It's awesome, but I like the concrete-lengthy examples usually done in a book, and I can't find much of anything on the MOP that isn't super complicated...I've read about how Smalltalk and CommonLisp have a MOP, but really need to dig into how it works in P6.
02:39 timotimo https://github.com/timo/ADT - this module is MOPy
02:40 molaf_ joined #perl6
02:43 bobby_ sweet...pulling that up now...and glad ya'll aren't getting as much flak these days....it really looks like ya'll have a nifty language the combines the features i like in a clean way with the chances for decent performance
02:46 kaare__ joined #perl6
02:46 timotimo it's definitely not like we don't know where our performance problems (and especially potential savings) lie
02:47 bobby_ and it looks like Jonathan is doing a good job working on those which is pretty sweet
02:48 timotimo that's right
02:48 timotimo and i'm glad TPF is accepting all those grant proposals
02:51 bobby_ me 2...I think ya'll will get a lot of P5 converts once the majority of the P6 language has better performance
02:52 bobby_ than P5 at least...I know CPAN is huge for perl users though
02:53 bobby_ is there some movement to rewrite the most important modules in P6?
02:53 Hotkeys there's a most wanted modules list somewhere
02:53 Hotkeys https://github.com/perl6/perl6-most-wanted/blob/master/most-wanted/modules.md
02:55 bobby_ I honestly don't know, but i figure the vast majority of dowloaded P5 modules would probably fill a list of less than 50 modules (I could be way off though :))
02:56 bobby_ If all those were recoded, it seems that there'd be less pushback....once you have an XML, CSV, JSON, datadumper, Oracle/SQLServer/POSTGRES library...that sort of thing
02:57 sunnavy joined #perl6
02:58 kalkin-_ joined #perl6
02:58 Hotkeys bobby_: http://modules.perl6.org/
02:58 Hotkeys There's quite a few of what you listed already
03:00 bobby_ good to hear, just read through the most wanted modules list u sent, there's a lot more on there than I thought lol
03:01 Ben_Goldberg joined #perl6
03:06 timotimo there's also Inline::Perl5
03:16 bobby_ true...i guess it doesn't matter what your module is written in if you're just calling functions
03:17 bobby_ anyway, thanks everyone! reading through all the material ya'll sent
03:20 timotimo Inline::Perl5 (and Inline::Python, too) allow you to derive your classes from other languages' classes, too
03:20 timotimo not just calling methods and functions
03:21 bobby_ well i was referring to if you have a P5 module, u might not care that it is in P5 and not P6 if you just want to use a few functions
03:21 bobby_ *using inline
03:35 noganex joined #perl6
03:41 mohae_ joined #perl6
03:48 TEttinger joined #perl6
05:10 Fleurety joined #perl6
05:12 jack_rabbit joined #perl6
05:52 Cabanossi joined #perl6
05:58 cpage_ joined #perl6
06:01 musiKk_ joined #perl6
06:08 aaafoo joined #perl6
06:08 aaafoo hello
06:30 bjz joined #perl6
06:30 sjoshi joined #perl6
06:48 Actualeyes joined #perl6
07:02 CIAvash joined #perl6
07:08 sjoshi joined #perl6
07:11 firstdayonthejob joined #perl6
07:25 domidumont joined #perl6
07:28 sjoshi joined #perl6
07:29 domidumont joined #perl6
07:41 Vlavv_ joined #perl6
07:41 moritz \o
07:43 sortiz \o moritz
07:46 nakiro joined #perl6
07:51 fireartist joined #perl6
07:52 FROGGS joined #perl6
08:17 darutoko joined #perl6
08:20 RabidGravy joined #perl6
08:23 zakharyas joined #perl6
08:26 abaugher joined #perl6
08:27 nakiro joined #perl6
08:30 RabidGravy harr!
08:37 Hotkeys Marnin
08:37 Hotkeys RabidGravy:
08:48 sortiz \o RabidGravy
08:48 RabidGravy er
08:48 RabidGravy erp
08:48 Hotkeys You okay?
08:49 RabidGravy fabulous!
08:49 pdcawley joined #perl6
08:50 kaare_ If I class b is a - and a is inother file, I seem to need to use a; first?
08:50 kaare_ in another
08:50 RabidGravy yes
08:51 kaare_ ok, I just can't seem to find any definition or examples for that.
08:51 kaare_ Naively as a perl 5 coder, you'd probably think it would try to find the class in the lib path
08:54 vendethiel joined #perl6
08:54 psch huh?
08:54 psch kaare_: you mean, if you define class B is A you want B.pm to automatically load A.pm?
09:02 rindolf joined #perl6
09:04 psch fwiw, p5 OO introduction examples also explicitly use the parent class... vOv
09:05 kaare_ psch: Not really sth I want. Just feels natural
09:05 psch yeah, i really don't agree with that
09:07 kaare_ And a lack of examples led me to ask
09:07 psch *that* point is probably valid... :)
09:10 dakkar joined #perl6
09:10 DrForr Um, if you folks promise to be gentle, http://173.230.155.209/ is the start of a very much prototype Prancer-based blog. For the moment I'm just using the HTML from my Google blog, so many files are served from off-site.
09:10 RabidGravy the touchstone is that all Symbols must be defined before they are used, so you have to either define them in the compulation unit or "use" a file that does
09:10 wamba joined #perl6
09:23 esh joined #perl6
09:29 stmuk_ joined #perl6
09:30 moritz DrForr: looks nice
09:33 DrForr Thanks, but that's mostly due to Google :) Everything I serve is coming directly from Prancer, including images, to prove that it handles more than HTML. It's got session management and templates, and most content is served from dynamic routes.
09:34 DrForr Incidentally, I haven't checked. Is it possible to create dynamic variables such as $*foo in a separate namespace, or is that missing the point? I rather suspect the latter.
09:34 stmuk joined #perl6
09:36 psch m: module Foo { our $*FOO }; Foo::<$*FOO>++; say Foo::<$*FOO>
09:36 camelia rakudo-moar 1bbef9: OUTPUT«1␤»
09:38 RabidGravy yeah I think I have an "our $*FOO" in some code somewhere
09:39 DrForr I wanted to be able to keep Prancer variables in a separate namespace so they don't collide. I'd probably have a short name, or abbreviate to $*S or something.
09:45 pmurias joined #perl6
09:47 DrForr Actually, on further consideration I'd probably have a singleton object that uses the private Prancer::<$*S> variable, that way I can hide it in a separate namespace.
09:52 araujo joined #perl6
09:52 candy_prolapse joined #perl6
09:56 dalek ecosystem: 054ce6a | titsuki++ | META.list:
09:56 dalek ecosystem: Add Algorithm::SetUnion to ecosystem
09:56 dalek ecosystem:
09:56 dalek ecosystem: See https://github.com/titsuki/p6-Algorithm-SetUnion
09:56 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/054ce6ad9f
09:56 dalek ecosystem: 357d05b | RabidGravy++ | META.list:
09:56 dalek ecosystem: Merge pull request #175 from titsuki/add-setunion
09:56 dalek ecosystem:
09:56 dalek ecosystem: Add Algorithm::SetUnion to ecosystem
09:56 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/357d05bc9c
09:58 frithnanth joined #perl6
10:02 sjoshi joined #perl6
10:06 RabidGravy another week and *still* no-one has made an HTTP Digest auth module
10:06 RabidGravy tsk, slackers
10:07 DrForr I'll probably get around to it at some stage once I'm finished with other random work :)
10:08 RabidGravy I'm sorta kinda blocking on it with Sofa (or using it as an excuse to get distracted,)
10:13 DrForr Though it apparently relies on MD5 which IIRC is broken under a birthday attack. Not sure if that matters in this case.
10:14 RabidGravy I think that the choice of algorithm is pluggable, it's just MD5 is the most common
10:15 DrForr Yah, noted that as well upon reading.
10:16 RabidGravy I ought to pull the (partial) OAuth implementation out of the soundcloud module
10:16 aindilis joined #perl6
10:17 DrForr I've got to get around to doing OAuth (er, OpenID - OAuth doesn't actually do what @mgmt guessed it would do) for blogs.perl.org.
10:17 RabidGravy hasn't OpenID gone away now?
10:19 DrForr That's one of the thngs I need to look at. When the spec got written up someone stuck OpenAuth in, and as it is it took me 3 weeks to get across the point that OpenAuth wasn't what was needed or meant.
10:20 vendethiel joined #perl6
10:21 espadrine joined #perl6
10:21 aindilis joined #perl6
10:22 stmuk_ joined #perl6
10:24 DrForr m: 259-70
10:24 camelia rakudo-moar 1bbef9: OUTPUT«WARNINGS for /tmp/TjzdbipzFL:␤Useless use of "-" in expression "259-70" in sink context (line 1)␤»
10:25 DrForr m: 259 - 70
10:25 camelia rakudo-moar 1bbef9: OUTPUT«WARNINGS for /tmp/Lfwml343Ab:␤Useless use of "-" in expression "259 - 70" in sink context (line 1)␤»
10:25 DrForr m: say 259 - 70
10:25 camelia rakudo-moar 1bbef9: OUTPUT«189␤»
10:25 DrForr Sorry for the noise.
10:26 dbohdan Has anyone were used Perl 6 on the JVM for a (public) web application? How mature is it?
10:28 DrForr Not JVM, no. Moar is currently sitting at http://173.230.155.209/ where I'm checking out speed.
10:29 DrForr Well, allow me to rephrase. I haven't used JVM for that, others may have.
10:29 stmuk joined #perl6
10:29 dbohdan Hmm. I get a Blogspot blog at that IP on port 80.
10:29 RabidGravy correct
10:30 DrForr Yep. I'm using my blog's content to test.
10:30 dbohdan Is the content pre-downloaded or does it act as a proxy?
10:31 FROGGS DrForr: the last char is a typo right? "INSERT INTO tag VALUES( 4, 'Dancer' ); -- 2 -> (2 * 2) == 4<"
10:31 DrForr Pre-downloaded, run through Prancer. It's handling static and dynamic content where I've changed links to point to localhost. Lots of it resides on other servers.
10:31 FROGGS in http://173.230.155.209/2016/02/from-regular-expressions-to-grammars-pt_13.html
10:32 DrForr FROGGS: Probably. The original is on the actual blogspot site, it might not have the bug.
10:33 RabidGravy maybe someone ought to make a "Powered by Perl 6" badge ;-)
10:33 DrForr It's just a heavily hand-edited version of the site so I can have a few different URLs to work with.
10:33 FROGGS the html content is served quite fast I'd say
10:33 DrForr Yeah, it wasn't running all that great on my VM so I thought I'd put it up on my Linode.
10:33 FROGGS RabidGravy: or a ribbon that points to perl6.org/downloads? :o)
10:34 RabidGravy :)
10:34 FROGGS "Made with Love and Perl 6"
10:34 DrForr If someone wants to make up one I'd be happy to put it on the pages.
10:34 dbohdan DrForr: I see. Here are the response times I'm getting: http://chunk.io/f/c4db0f66bf254ad7826d03be2ce9c098
10:35 DrForr It's only temporary anyway... so he says.
10:36 DrForr I do intend to save everything to localhost and point links locally so everything gets served out of Prancer, but that's going to be next week after I finish writing and giving talks.
10:36 RabidGravy I really ought to try and compile on my FreeBSD vm at some point, last time I tried it didn't work due to some compiler thing
10:37 DrForr dbohdan: Nice. The original content is at theperlfisher.blogspot.ro - What timings are you getting there?
10:38 dbohdan DrForr: One moment.
10:38 DrForr No hurry. I'm going to be called away to get lunch here in a few moments as it is. Tex-Mex is hard to find here... nom nom nom.
10:39 DrForr And *CRAP*, I should have brought my hot sauce.
10:39 dbohdan http://chunk.io/f/9f9756af6d1144d195a06296869b983c
10:42 RabidGravy I've got a bottle of some monstrous scotch bonnet sauce in the kitchen
10:42 dbohdan (Note that in my case I was redirected to theperlfisher.blogspot.nl. I am not in the Netherlands; it's a quirk with my ISP.)
10:44 stmuk_ joined #perl6
10:49 stmuk joined #perl6
10:54 stmuk_ joined #perl6
11:06 Actualeyes joined #perl6
11:07 dalek ecosystem: 5872adc | RabidGravy++ | META.list:
11:07 dalek ecosystem: Add Audio::PortMIDI
11:07 dalek ecosystem:
11:07 dalek ecosystem: See https://github.com/jonathanstowe/Audio-PortMIDI
11:07 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/5872adcc84
11:08 RabidGravy there, another one bites the dust
11:08 RabidGravy have fun
11:08 RabidGravy tadzik, ^
11:09 sjoshi joined #perl6
11:09 tmch joined #perl6
11:10 perlawhirl joined #perl6
11:14 tadzik \o/
11:14 tadzik awesome!
11:15 kid51 joined #perl6
11:17 perlawhirl hi perlers
11:18 lizmat perlawhirl o/
11:19 perlawhirl so... grammars. if i have a bunch of 'sections' : START Title \n [ <bunch of stuff> \n ]* END Title \n
11:19 perlawhirl how do i capture the first 'Title' to use it as the capture for the END Title
11:20 perlawhirl something like START <title=.word> [...] END $<title>
11:21 perlawhirl i should have said .. how to i capture the first 'Title' and use it to MATCH the END Title
11:21 perlawhirl i don't really need to capture the END on again :D just match on it
11:25 psch m: grammar G { token TOP { :my @*TITLES; <start-title> <TOP> <end-title> || .+ }; token start-title { START ' ' $<title=\w+> { @*TITLES.push: $<title> } }; token end-title { END ' ' <?{ @*TITLES[@*TITLES] }> { @*TITLES.pop } } }; say G.parse: "START foo\nbla\nEND foo"
11:25 camelia rakudo-moar 1bbef9: OUTPUT«「START foo␤bla␤END foo」␤»
11:25 psch that's probably already overkill
11:25 psch should be able to deal with nested titles though, i think
11:25 psch m: grammar G { token TOP { :my @*TITLES; <start-title> <TOP> <end-title> || .+ }; token start-title { START ' ' $<title=\w+> { @*TITLES.push: $<title> } }; token end-title { END ' ' <?{ @*TITLES[@*TITLES] }> { @*TITLES.pop } } }; say G.parse: "START foo\nSTART barbla\nEND bar\nEND foo"
11:25 camelia rakudo-moar 1bbef9: OUTPUT«「START foo␤START barbla␤END bar␤END foo」␤»
11:25 psch hm, yeah, kinda-sorta
11:26 psch perlawhirl: should definitely get you started, i hope :)
11:26 psch anchoring in start-title and end-title might already take care of the hiccup there
11:26 perlawhirl cool yep... thanks psch!
11:27 psch actually, duh
11:27 psch it would have a $<title> in the Match if it actually went there :/
11:30 DrForr dbohdan: Thanks, any information like that is useful.
11:31 psch perlawhirl: yeah, maybe it works as a first approach, but there's something missing... :)
11:33 perlawhirl actually it works pretty much as i thought... ie: START <title=.word> \n <line>* END \s+ $<title> \n
11:33 perlawhirl i just had an error in my initial capture which meant it wasn't matching the end properly
11:33 psch perlawhirl: oh, yeah.  i was thinking across multiple tokens...
11:34 arnsholt Yeah, I was about to remark that just doing $<title> should work
11:34 ely-se joined #perl6
11:34 perlawhirl you're right in thinking that, though... i should probably be on the lookout for any nested sections in my data that would require a more careful solution
11:34 perlawhirl so thanks is still in order psch, for making me think more about errors that i might encounter in the future :D
11:37 dbohdan DrForr: You're welcome. I can run a brief stress test on your server with siege(1) if you'd like.
11:40 DrForr Hold that thought, let me get some other bits of work starightened out first.
11:42 dbohdan Is Perl 6 generally faster on the JVM (once it's had the time to warm up) or on the MoarVM?
11:43 arnsholt I don't think so, in general
11:43 moritz dbohdan: I know of no recent benchmarks comparing the two
11:43 DrForr I haven't done comparisons myself, wouldn't know.
11:45 RabidGravy I would also guess that they may be individually faster for different things
11:45 dbohdan The most recent comparison I have found is http://t.h8.lv/p6bench/2015-01-30-six_months_rakudo.html
11:50 stmuk joined #perl6
11:52 RabidGravy over a year is a looooOOoooong time in rakudo land
11:59 foo_ joined #perl6
12:00 jnthn There's daily Perl 6 bench runs at http://www.moarvm.org/measurements/perl6-bench/ though they don't include JVM figures
12:03 lizmat jnthn o/
12:04 lizmat that's because JVM currently basically doesn't run  :-(
12:04 psch yeah, it kinda hobbles, doesn't it..? :S
12:05 psch plus not-6.c-compliant probably
12:05 lizmat currently working on making it at least come past "make test" unscathed
12:06 dbohdan Oh.
12:06 lizmat but boy, does it take long to build the settings on the JVM  :-(
12:06 lizmat reminds me of the parrot days
12:06 psch lizmat: fwiw, the interop tests pass with the jvminterop branch
12:07 psch lizmat: i haven't merged it yet 'cause the tests are way too few, though
12:07 lizmat psch: good to know
12:07 lizmat atm, all of the nativecall tests fail because of a problem in BUILD_LEAST_DERIVED
12:10 lizmat alas, the line number in the stack trace points to a die, but the message comes from somewhere else
12:10 lizmat Cannot access a native attribute as a reference attribute
12:12 stmuk_ joined #perl6
12:14 jnthn lizmat: heh, and JVM actually built faster than Parrot too, as I remember it ;)
12:15 lizmat jnthn: any pointers on that error message ^^^  ?
12:17 jnthn lizmat: Probably means some code is carelessly doing getattr/bindattr in a place it should do getattr_[ins]/bindattr_[ins]
12:18 jnthn lizmat: And JVM doesn't yet manage to make those cases work out
12:18 jnthn (It'll need to eventually if we want to do things like compact structs)
12:18 lizmat but those mostly fail on MoarVM also, no ?
12:22 stmuk joined #perl6
12:24 sno joined #perl6
12:27 DrForr dbohdan: Well, the application hasn't fallen over yet. Go ahead and fire up siege, point it at the / and a /search?foo URL if you don't mind.
12:29 jnthn lizmat: "It depends". In either case you don't tend to be very helpful results. :)
12:30 lizmat ?
12:31 jnthn m: class A { has int $.x }; nqp::getattr_i(A.new(x => 42), A, '$!x').WHAT.say
12:31 camelia rakudo-moar a136eb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/uu3V4_jF3z␤Could not find nqp::getattr_i, did you forget 'use nqp;' ?␤at /tmp/uu3V4_jF3z:1␤------> 3nqp::getattr_i(A.new(x => 42), A, '$!x')7⏏5.WHAT.say␤»
12:31 jnthn m: use nqp; class A { has int $.x }; nqp::getattr_i(A.new(x => 42), A, '$!x').WHAT.say
12:31 camelia rakudo-moar a136eb: OUTPUT«(Int)␤»
12:31 jnthn m: use nqp; class A { has int $.x }; nqp::getattr(A.new(x => 42), A, '$!x').WHAT.say
12:31 camelia rakudo-moar a136eb: OUTPUT«(int)␤»
12:31 jnthn You end up with *that*, which is a freak boxed form of a native type. :)
12:32 jnthn Back to $dayjob meeting... &
12:36 bjz joined #perl6
12:37 RabidGravy right let's see what you lot broke in the last week
12:49 travis-ci joined #perl6
12:49 travis-ci Rakudo build failed. Elizabeth Mattijsen 'Correct error message
12:49 travis-ci https://travis-ci.org/rakudo/rakudo/builds/117434353 https://github.com/rakudo/rakudo/compare/02babcb59b36...a136eb73b912
12:49 travis-ci left #perl6
12:50 domidumont joined #perl6
12:51 domidumont joined #perl6
12:52 RabidGravy Grr, my ancient gcc on this here FreeBSD vm doesn't like "-Wno-logical-op-parentheses"
12:53 RabidGravy is there anyway I can turn this off?
12:53 lizmat RabidGravy: no idea, maybe moritz FROGGS have an idea ?
12:54 lizmat FWIW, I the Travis build failure is because it cannot install perl 5.14  ??
12:57 RabidGravy well I can move on by editing the moarvm Makefile by hand, but that's far from ideal
12:58 lizmat RabidGravy: the generator files live in tools/build/Makefile-
12:59 moritz RabidGravy: do you expect anything more actionable than "install a newer gcc"? :-)
12:59 RabidGravy I'd love to but ;-p
13:01 RabidGravy I really ought to upgrade the whole VM but currently it's running an EOLed FreeBSD so upgrading part of it no worky
13:03 FROGGS RabidGravy: we should probe for its support and add it conditionally...
13:05 FROGGS RabidGravy: but wait... this warning is enabled for clang only
13:06 FROGGS RabidGravy: you said you're running gcc?
13:06 RabidGravy yep
13:06 gfldex you could try a shellscript wrapper that dropps that argument
13:07 RabidGravy it totally fails to guess the right compiler so I have to tell it to use gcc ecplicitly
13:08 FROGGS RabidGravy: hmmm, so let's fix that problem instead
13:08 brrt joined #perl6
13:09 FROGGS ahh yes, clang seems to be the default for freebsd (looking at the bottom of build/setup.pm)
13:11 RabidGravy this is an ancient, now EOL Freebsd it's probably not worth fixing too hard TBH
13:14 jnthn iirc, gcc doesn't need that flag at all 'cus it doesn't whine about it
13:17 Azry joined #perl6
13:19 RabidGravy on the other hand, having fixed that manually it otherwise compiles and runs okay
13:20 RabidGravy [jns@jail0133 ~]$ perl6 -e 'say $*KERNEL'
13:20 RabidGravy freebsd (8.4.RELEASE.p.4)
13:22 RabidGravy and in other news you have successfully avoided breaking any of my modules this week :)
13:23 * sortiz Now I understand why DBDish::mysql lacks prepared statements... yet
13:24 moritz sortiz: iirc nativecall wasn't powerful enough back when I took over DBIish from mberends
13:25 sortiz moritz, That C API is ugly ;-)
13:26 moritz sortiz: that's related, yes. It was powerful enough for postgres and sqlite3 prepared statements :-)
13:29 lucasb joined #perl6
13:29 sortiz moritz, After the ODBC experience, now working btw, mysql will not be left behind.
13:31 Azry could someone explain me why this code fails? : class a { has $.c is rw; }; class b is a { submethod BUILD(:$!c = "t"){ } }; b.new;
13:32 DrForr "It will, however, be dragged kicking and screaming."
13:32 AlexDaniel joined #perl6
13:35 [Coke] m: class a { has $.c is rw; }; class b is a { submethod BUILD(:$!c = "t"){ } }; b.new;
13:35 camelia rakudo-moar a136eb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xWbfiopyrz␤Attribute $!c not declared in class b␤at /tmp/xWbfiopyrz:1␤------> 3 is a { submethod BUILD(:$!c = "t"){ } }7⏏5; b.new;␤    expecting any of:␤        horizontal whitespace␤        p…»
13:35 jnthn Azry: Because attributes are private to a class. You should be writing the initialization of $!c inside of class a
13:35 jnthn Azry: Inheritance doesn't leak attributes from base classes in Perl 6, to help prevent tight coupling between subclasses and their base classes.
13:37 gfldex m: class a { has $.c is rw; }; class b is a { method new(){ my $o = self.bless; $o.c = "t" } }; dd b.new;
13:37 camelia rakudo-moar a136eb: OUTPUT«"t"␤»
13:38 gfldex m: class a { has $.c is rw; }; class b is a { method new(){ my $o = self.bless; $o.c = "t"; $o } }; dd b.new;
13:38 camelia rakudo-moar a136eb: OUTPUT«b.new(c => "t")␤»
13:38 lucasb submethod BUILD(:$c = ...) { self.c = $c }  # a workaround maybe. but idk if it's very clean
13:38 gfldex jnthn: i'm pretty sure that's a tight coupling. It's quite explicit tho.
13:39 * RabidGravy does a backup
13:41 jnthn self.bless(c => "t") works just as well for that case
13:43 Azry Is there always a better method than writing a "new" method for a class ? I think i read that i should use BUILD/BUILDALL
13:44 jnthn Azry: What are you trying to do? If you just want to set a default value for an attribute then the best thing is just has $.c = 't';
13:45 jnthn Azry: As a rule, though, a BUILD submethod is for initialization of attributes in the current class (and you write a submethod BUILD for each class that needs it), and a custom new method is if you want to present a different public constructor interface than "a bunch of named parameters"
13:46 Azry I'm trying to add a different .new to a class which inherits from IO::Handle
13:47 Azry so i want to initialize IO::Handle path parameter if the .new is empty for example
13:48 jnthn Sounds like you want to just be writing that differnet new method then
13:49 Azry oh ok, i just thought i read somewhere that i should avoid that, but i will try that with your explanations, thanks =)
13:50 RabidGravy you should avoid it in the absence of any other way of doing what you want to do
13:50 jnthn I see it more as differnet tools for different problems
13:50 RabidGravy er except in the absence
13:51 colomon joined #perl6
13:52 sortiz RabidGravy, I have a solution for the CArray of CStructs problem, needed for MYSQL_BIND
13:53 timotimo yeah, you can turn each CStruct into a CPointer and memcpy
13:55 RabidGravy kewl
13:55 sortiz timotimo, Better yet. ;-)
13:57 stmuk RabidGravy: I thought the gcc (rather than clang) detection of FreeBSD 8.4 was fixed?
13:58 timotimo oh hey stmuk
13:59 sortiz timotimo, Want to see in action? https://github.com/salortiz/NativeHelpers-Blob/blob/master/t/02-cstruct.t
13:59 stmuk RabidGravy: 7a99212 in MoarVM should have worked (although I can't remember if I actually tested it or not)
14:00 RabidGravy dunno, I actually have a little wrapper that explicitly sets the cc so that may have confused it
14:01 timotimo oh, interesting
14:02 timotimo why is there a TypedPointer in there?
14:02 timotimo is that any different from Pointer[Foo]?
14:02 skids joined #perl6
14:03 sortiz Nop, its *the* Pointer[Foo]:D of the first element.
14:04 timotimo ah, i guess
14:04 timotimo ah, at first i thought it was a type
14:04 timotimo because of how it's capitalized
14:05 sortiz yep, the final names should be lowercase.
14:08 timotimo definitely something good-to-have
14:08 timotimo also, we'll have something for that in core at some point :)
14:09 ab6tract joined #perl6
14:10 ab6tract o/ #perl6
14:10 RabidGravy boo
14:10 ab6tract i found this benchmark produced confusing results: https://gist.github.com/ab5tract/2e0928088ea1f4059767
14:10 RabidGravy another external drive bites the dust
14:11 timotimo ugh
14:11 ab6tract was testing "bigint" performance vs perl5
14:11 ab6tract and it seems that parallelization actually hurts the run time
14:11 timotimo ab6tract: i wonder what happens when you use brace-less while in there
14:12 ab6tract timotimo: how do you mean? and wouldn't thunking make things slower?
14:12 timotimo that's not thunking
14:12 stmuk ab6tract: have you tried restricting the size of the thread pool?
14:13 timotimo i mean $ret = $ret +| (1 +< (@ids[$c] - 1)) while $c++ < +@ids
14:13 timotimo and i wonder how much you'll save by getting +@ids up front
14:13 jnthn ab6tract: Do you have 4 cores?
14:14 ab6tract jnthn: i'm running this on a 24 core box :)
14:14 jnthn ok :)
14:14 * jnthn is trying it locally
14:15 jnthn ab6tract: I get nearly factor of 2 speed-up on parallel: https://gist.github.com/jnthn/72f214ec027fae4aa881
14:15 ab6tract jnthn: very curious :/
14:16 RabidGravy at times like this "fsck -f -c" seems to be in order
14:16 ab6tract jnthn: i get the opposite result! https://gist.github.com/jnthn/72f214ec027fae4aa881
14:16 ab6tract (left my numbers as comment)
14:16 nine I get 8 seconds for sequential and 10 seconds for parallel
14:16 jnthn Odd
14:16 ab6tract nine: that's about what i get on my laptop
14:17 * jnthn tries it again
14:17 jnthn Got the same result again
14:17 jnthn Within noise
14:17 khw joined #perl6
14:18 timotimo i get 9.3 and 5.9
14:18 ab6tract jnthn: are you testing on windows?
14:18 jnthn yup
14:18 jnthn timotimo: 9.3 seq, 5.9 parallel?
14:18 nine Odd. Especially since the parallel version uses 400 % CPU.
14:18 timotimo aye
14:18 jnthn So faster parallel for you too
14:18 jnthn I bet you're not on Windows? :)
14:18 timotimo correct
14:18 timotimo and one of my 4 cores was busy displaying video content
14:18 jnthn ab6tract, nine, timotimo: CPU?
14:19 vendethiel joined #perl6
14:19 ab6tract "This is MoarVM version 2016.03 built with JIT support"
14:19 jnthn (Intel Core i7 quad core, HT enabled here)
14:19 perlawhirl :q
14:19 jnthn ab6tract: Same here
14:19 nine Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz
14:19 ab6tract "Intel(R) Xeon(R) CPU E5-2640 0 @ 2.50GHz"
14:20 stmuk I get 11 seq and 7 parallel Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
14:20 ab6tract oldie but goldie ;)
14:20 timotimo model name: Intel(R) Core(TM) i5-3570 CPU @ 3.40GHz
14:20 timotimo wowza
14:21 timotimo 23.44% self/children time spent inside MVM_fixed_size_alloc, says perf report
14:21 jnthn timotimo: Yeah, with caller being allocate_frame, no doubt? :)
14:21 timotimo how do i get perf report to say that ..
14:21 jnthn Dunno, I usually callgrind stuff
14:22 jnthn Or the VS profiler
14:23 jnthn If I had to take a wild guess though: MoarVM creates contention in places it eventually shouldn't, and that upsets some CPU architectures/caches more than others.
14:23 timotimo cachegrind spits out "brk segment overflow" a whole bunch of times o_O
14:23 jnthn o.O
14:23 fireartist fwiw, I get 6.2, 7.6 on a 4core windows desktop - if I change it to 3 threads, I get 6.2, 4.7
14:23 nine Upgraded MoarVM and nqp to master and rakudo to nom and now I'm at 7.769326 serial, vs. 6.855778 parallel!
14:25 jnthn Interesting.
14:25 [Coke] (still waiting on valgrind...)
14:25 perlpilot joined #perl6
14:25 * jnthn should keep this one around as a benchmark to try after various of his planned Moar improvements... :)
14:26 cdg joined #perl6
14:26 ab6tract jnthn: please do :D
14:27 ab6tract fireartist: don't forget to bump the number of times bigpackids gets called :)
14:27 timotimo heh heh heh
14:27 nine Btw. I get 9.8 seconds for the "parallel" version with a single thread. So about 2 seconds penalty just for running this on a different thread.
14:28 timotimo wow. how does that scale if you make the workload itself bigger?
14:28 FROGGS joined #perl6
14:28 nine It seems to be 20 % overhead. Scaling it down 10 fold reduced the difference to 0.2 seconds
14:29 timotimo and scaling it up? :)
14:29 nine running
14:29 timotimo can that be the overhead we get from having to lock to increase/decrease references to frames
14:31 nine (sequential): 41.9691964, (parallel): 53.7649131
14:31 nine with 50_000 iterations
14:32 jnthn timotimo: Maybe, though perhaps also GC orchestration overhead
14:32 lizmat fwiw: (sequential): 9.8104622 (parallel): 6.88002807
14:32 timotimo oh, hmm
14:32 timotimo i haven't spent many brain-cycles on gc orchestration at all
14:32 * sortiz 6.10 seq 5.06 parallel on Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
14:34 nine Sweet spot seems to be running 3 threads. We're already worse than sequential at 5 threads
14:35 fireartist ab6tract: dumb mistake; yes, when I run the correct number of tests, parallel is a couple tenths/sec slower for both 2 or 3 threads
14:35 ab6tract data point: python 2.7 can do 100,000 in around 7 seconds :(
14:35 nine Isn't it lovely that we're actually looking at scalability here and not at making it work at all?
14:35 lizmat fwiw: at 50000: (sequential): 51.6682107 (parallel): 31.5795883
14:35 ab6tract nine: true! :D
14:37 timotimo :)
14:38 timotimo ab6tract: we're not 10x slower :)
14:38 RabidGravy I guess the external disk was a bit chilly
14:38 RabidGravy bit of exercise and it's all good
14:39 timotimo huh.
14:41 travis-ci joined #perl6
14:41 travis-ci Rakudo build passed. Elizabeth Mattijsen 'Add testing of native str arrays'
14:41 travis-ci https://travis-ci.org/rakudo/rakudo/builds/117455433 https://github.com/rakudo/rakudo/compare/a136eb73b912...006d4b5d30e8
14:41 travis-ci left #perl6
14:43 perlpilot Should travis-ci be on #p6dev  (if it's going to be anywhere)
14:45 abraxxa joined #perl6
14:45 timotimo good idea
14:46 ptolemarch joined #perl6
14:47 timotimo moritz jumped right on that :D
14:47 moritz done
14:47 moritz for rakudo and nqp
14:47 moritz easy karma :-)
14:48 timotimo do we want the rest there, too? i'd say docs and examples can also go there
14:48 timotimo even though they are less developer-centric, the travis messages are less interesting to general users
14:49 moritz no idea
14:49 moritz hm
14:49 moritz imho they can stay here
14:49 moritz I see #p6dev really as language and compiler development
14:49 awwaiid I'm ok either way (as a doc contributor)
14:49 moritz docs and examples are fine here
14:49 timotimo shall DBIish's dalek output move to #p6dev, btw?
14:49 moritz (until gets spammy)
14:49 timotimo ah
14:49 awwaiid well. doc is pretty important for the language imo :)
14:49 jnthn I think DEIish can stay here, I think
14:50 jnthn *DBI
14:50 jnthn Agree on docs/examples too
14:50 jnthn (Staying here)
14:50 awwaiid works for me
14:50 jnthn It's not a statement of importance.
14:50 awwaiid Yeah, my comment was silly :)
14:50 jnthn Just one of scope. :)
14:50 awwaiid yep
14:51 dbohdan DrForr: I'm back. I'll fire up siege in a couple minutes.
14:52 timotimo almost 1s to send out index.html ... :\
14:54 sortiz jnthn, Agree, I see DBIish as a lib that stay here, for the users.
14:54 timotimo it's also sensible to keep dalek and travis output close to the people who are most likely to contribute to those parts
14:54 timotimo so yeah, agreed on all points
14:56 sena_kun joined #perl6
14:56 dbohdan Running `siege -c 25 -b -t 2m -f urls`.
14:57 dbohdan Where urls are / and /search?foo on the server.
14:58 dbohdan Looks like the server's down.
14:59 milwen joined #perl6
14:59 timotimo heh heh
15:01 DrForr Weird.
15:02 pmurias joined #perl6
15:02 pmurias [Coke]: did the TPF contact you in regards to being grant manager?
15:03 DrForr dbohdan: Server's restarted, I'm not sure what happened.
15:03 timotimo you didn't get any output?
15:05 pmurias [Coke]: I'll write the grant progress (later today or tommorow) once I'll finish the closure serialization and wrap up the work on nqp-js-on-js
15:06 lizmat pmurias: would be great to have at least on blog post for the Perl 6 weekly this week  :-)
15:06 lizmat *one
15:07 RabidGravy I don't think I'll have time to make any new modules
15:07 sena_kun Hi folks. Is behavoir of rakudo with a C-libs changed lately? I found some module which I want to patch and reference to library like "libfoo" fails with error "I can't find liblibfoo", but with plain old "foo" it compiles perfectly. Is it an error of author of module or reference to shared library with "libfoo" was valid before?
15:08 jnthn lizmat: When will the weekly be? :)
15:08 stmuk sena_kun: yes it changed in exactly that way
15:08 timotimo uh-oh, jnthn has something planned? :D
15:08 RabidGravy that's been changed since at least November
15:08 lizmat in about 7 hours at the latest
15:09 [Coke] pmurias: no, of course they didn't
15:09 cgfbee joined #perl6
15:09 sena_kun stmuk, thanks, I'll patch it then. Some old compiler this guy has...
15:10 cfloare joined #perl6
15:11 jnthn timotimo: No, I just had visiting family this weekend, so didn't get my usual Sunday afternoon write-up-the-last-week slot :)
15:12 timotimo ah, understood
15:13 timotimo oh, i don't think i mentioned, i started writing a qt app that's supposed to let you explore the heap and such. the only thing it does right now is parse my own format into lists of things, but iiuc you've got a different format in mind, and also some extra data your locally patched code spits out?
15:13 jnthn Wednesday is carved out as all day Perl 6/MoarVM hacking this week. And I'll have some bits of other days too. :)
15:13 pmurias [Coke]: I just meant in regard to having suggested you as grant manager ;) the blog posts are supposed to be biweekly so I have a day left for that
15:13 jnthn timotimo: Yeah, I'll get that lot cleaned up/pushed soonish
15:13 timotimo OK
15:13 timotimo how dramatically different is your format?
15:14 jnthn timotimo: I didn't actually have time to look at yours yet, sorry.
15:14 jnthn Was going to do that though to see if there's anything I should steal :)
15:14 kaare_ developers are allowed to have families now? omg, what's next?!
15:16 vendethiel joined #perl6
15:16 moritz otherwise they can't reproduce :-)
15:16 moritz (insert appropriate XKCD here)
15:16 woodruffw joined #perl6
15:17 timotimo oh, hehe
15:17 woodruffw joined #perl6
15:17 timotimo well, it's basically a "a line starts with a signifier of what it is" kind of deal, except for the string heap, which really should also have a signifier set up for it
15:17 timotimo so "[ stringheap", "r 0,0,0;1,1,1;2,2,2;..." and "c 1,2,3,4,5,6;2,3,4,5,6,7;..."
15:18 timotimo also comments with #
15:21 brrt joined #perl6
15:22 [Coke] pmurias: yes, that's how I read it - no, I have heard nothing about your grant or managing it at any point since you submitted.
15:22 RabidGravy right, reboot for upgrade ahoy
15:23 jnthn [Coke]: hehe, I wonder if you're my GM without knowing it too ;)
15:23 [Coke] jnthn: very possible!
15:23 jnthn timotimo: I JSON the string heap and then the rest is a line-based format
15:25 jnthn timotimo: So it's easy to line-parse it and then only further split those up if they're interesting to look at (for example, you may want to look at only certain snapshots)
15:32 lizmat m: my int @a = ^5; @a = (); @a[4] = 22; say @a.join(":")  # hmmm...
15:32 camelia rakudo-moar 54ce66: OUTPUT«0:1:2:3:22␤»
15:33 lizmat m: my int @a = ^5; @a = (); say @a.join(":"); @a[4] = 22; say @a.join(":")
15:33 camelia rakudo-moar 54ce66: OUTPUT«␤0:1:2:3:22␤»
15:33 lizmat jnthn: would you consider this a bug or a feature?   :-)
15:36 stmuk It's a BugFeature type!
15:37 [Tux] joined #perl6
15:37 jnthn lizmat: I think we'll call that one a bug :)
15:38 rindolf joined #perl6
15:41 lizmat bbiab
15:48 dbohdan DrForr: I can't reach it (100% request failure). Maybe something in siege's headers brings it down before it can send even one response?
15:50 vendethiel joined #perl6
15:53 timotimo jnthn: in my use case it's probably more work to include a json parser than to just give each string a tiny prefix
15:54 timotimo but yeah, sounds like we're using similar approaches
15:56 sena_kun Just bumped into "a JSON string ought to be a list or an object" with panda when tried to install package. Reinstalling of panda is the only true answer?
15:57 sena_kun Can give a backtrace of error if needed.
15:57 timotimo maybe something has an invalid META.info/META6.json?
15:59 sena_kun timotimo, I tried it with the old package, got the error, then tried to reproduce it with new(my) package and error is still here. It seems this old package broke guts of panda. I will try to rewrite META6.json of this old package and try with reinstalled panda...
15:59 timotimo oh lord, that's a bad failure state
16:01 [Coke] sena_kun: if you're trying to upgrade past the 2015.12 release, it's quite possible that's going to be rough.
16:02 sena_kun [Coke], I upgraded to latest rakudo(from 2016.02) maybe a few days ago, then upgrade panda today. Will try with fresh install now.
16:04 sena_kun s/upgrade/upgraded/
16:08 nine -win 41
16:09 timotimo that's almost two times as many windows as i have :\
16:09 nine When did KDE start forgetting application keyboard layout settings again? This was fixed already :/
16:22 abaugher joined #perl6
16:23 Sucess joined #perl6
16:23 Sucess Ayyo
16:29 sena_kun I catched this bug again and I know a way to reproduce it. My way is to the panda's issues now, right?
16:29 timotimo sounds about right
16:30 sena_kun Okay...
16:42 kurahaupo joined #perl6
16:47 dalek ecosystem: 0a64683 | (Zoffix Znet)++ | META.list:
16:47 dalek ecosystem: META.info is now META6.json for ncoding::Huffman::PP6
16:47 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/0a64683aff
16:47 kurahaupo joined #perl6
16:48 _nadim joined #perl6
16:50 rindolf joined #perl6
17:03 xinming joined #perl6
17:04 Skarsnik joined #perl6
17:09 YP-QMUL-W joined #perl6
17:15 FROGGS joined #perl6
17:15 pmurias lizmat: when will Perl 6 be writte this week?
17:16 lizmat I expect to post it in about 5 hours
17:17 pmurias I'll get to work on the grant progress raport then ;)
17:18 lizmat pmurias: cool!
17:20 SmokeMachine____ joined #perl6
17:27 captian-adequate joined #perl6
17:31 ssm joined #perl6
17:41 [Coke] pmurias++
17:42 * jnthn is working on his too ;)
17:42 [Coke] jnthn++
17:42 sena_kun "const char*" can be represented as plain Str?
17:43 sena_kun Stop, should look at the docs first...
17:44 jnthn sena_kun: Yeah, or you can pass a Buf if you want "binary" data. Otherwise the Str you pass is encoded to utf8 (and there's a trait to tweak that :))
17:44 _nadim joined #perl6
17:44 cognominal @all-stars-bloggers>>++
17:45 sena_kun jnthn, thanks, already found it at the docs. Still not used to search there. :/
17:45 keix joined #perl6
17:56 vendethiel joined #perl6
18:00 musiKk_ joined #perl6
18:02 * lizmat is going to see whether London has fallen
18:02 lizmat and after that complete the P6W
18:02 lizmat afk until then&
18:07 timotimo london bridge is falling down?
18:08 gfldex timotimo: see: https://en.wikipedia.org/wiki/London_Has_Fallen
18:09 timotimo oh
18:10 tadzik hello from mal-moo! \o/
18:10 jnthn I'm not sure I ever saw any cows there... :)
18:12 tadzik they may be mal-functioning
18:14 yqt joined #perl6
18:16 Skarsnik Hello
18:23 RabidGravy joined #perl6
18:24 sena_kun joined #perl6
18:24 perigrin lizmat: it gets up again, nobody gonna keep it down.
18:25 * geekosaur had been thinking http://fallenlondon.storynexus.com/
18:27 cognominal London has fallen but Damas still holds ? The difference between scare propaganda and reality is that many syrian towns are *really* mostly ruins
18:31 labster joined #perl6
18:40 domidumont joined #perl6
18:44 shicheng joined #perl6
18:45 RabidGravy joined #perl6
18:45 dha joined #perl6
18:45 RabidGravy eugh
18:46 dha That doesn't sound good.
18:46 spider-mario joined #perl6
18:46 RabidGravy I spent half an hour tryiing to work out why my laptop wasn't getting a dhcp address
18:47 RabidGravy the router was refusing to give it the one from an old lease
18:47 RabidGravy bad networks,bad! bad!
18:50 dha And who set up the network?
18:50 RabidGravy magic network fairies
18:51 RabidGravy I just upgraded fedora, I think dhclient tried to re-use the lease from before the upgrade
18:53 * skids has been called the network "guy", "pro", "admin", and "wiz", but never the network "fairy".  What I'm supposed to be looking under people's laptops for baby teeth?
18:53 dha skids - yes.
18:54 skids If it has the same mac and same client-identifier that should not be a problem.  Likely the client-identifier changed.
18:56 RabidGravy yeah I think that's what happened
18:56 RabidGravy it changed the name of the nic over the upgrade for some reason
18:57 skids bleeding edge dhcpd can ignore the client-id if you have no use for it (e.g. dual booting)
18:59 firstdayonthejob joined #perl6
19:02 vendethiel joined #perl6
19:06 molaf joined #perl6
19:16 Skarsnik RabidGravy, did you already tried to create fake directshow device on windows?
19:17 RabidGravy no, I haven't touched a computer running windows for over a year :)
19:17 RabidGravy well I might have touched one inadvertently but not with a view to actually using it
19:22 * masak .oO( I haven't touched [a computer running Windows for over a year] ) :P
19:25 RabidGravy Oooh a new bit if hotness in fedora 23 though
19:25 RabidGravy you can mount the google drive of an authenticated google account in nautilus :)
19:27 * stmuk hasn't touched a RPM based linux system in a year :P
19:28 Skarsnik ah nice
19:33 hankache joined #perl6
19:34 hankache good *
19:36 lichtkind__ joined #perl6
19:36 nic_ joined #perl6
19:37 nic_ p6: say "Hello"
19:37 camelia rakudo-moar 54ce66: OUTPUT«Hello␤»
19:38 nic_ p6: subset tmp of int where * < 5
19:38 camelia rakudo-moar 54ce66: ( no output )
19:47 wamba joined #perl6
19:56 TreyHarr1 joined #perl6
19:57 itaipu joined #perl6
20:03 timotimo skids: you're supposed to look under the user's pillow for broken-off ethernet cable clips :)
20:03 timotimo you know, the little things that make sure the cable stays in
20:03 timotimo the ones that always break off :(
20:04 cdg joined #perl6
20:05 cdg joined #perl6
20:10 yqt joined #perl6
20:11 RabidGravy boo!
20:12 RabidGravy *must not start any more modules until I've finished some more*
20:14 RabidGravy but that ecasound control interface looks mighty temptung
20:14 timotimo i have no idea what that even means :)
20:34 wbill joined #perl6
20:37 musiKk_ joined #perl6
20:40 dha joined #perl6
20:41 rindolf joined #perl6
20:44 geekosaur joined #perl6
20:55 yqt joined #perl6
20:55 geraud joined #perl6
21:09 jnthn Phew, I got my weekly report done in time for the p6weekly: https://6guts.wordpress.com/2016/03/21/a-whole-heap-of-work/
21:09 jnthn lizmat: ^^ :)
21:09 lizmat jnthn++
21:11 shicheng joined #perl6
21:11 TEttinger joined #perl6
21:13 lucs say "ï½¢?-1 ?-2ï½£" ⋯ for qw< a-1 a-2  b-1 b-2 ⋯ n-1 n-2 >;  # How to work with groups of two?
21:13 lucs Um, just <⋯>, right.
21:13 moritz lucs: for <list> -> $a, $b { ... }
21:14 lucs Ah, cool.
21:14 lucs Thanks
21:18 shicheng joined #perl6
21:21 arnsholt jnthn: As a comment on "a topic for another day", yes, I am now curious how a modern reachability GC works now =)
21:21 moritz m: say 'a' .. 'f' -> $a, $b { say "$a:$b" }
21:21 camelia rakudo-moar 54ce66: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Ye0Q7oxiK1␤Unexpected block in infix position (missing statement control word before the expression?)␤at /tmp/Ye0Q7oxiK1:1␤------> 3say 'a' .. 'f'7⏏5 -> $a, $b { say "$a:$b" }␤    expecting any of…»
21:21 moritz m: for 'a' .. 'f' -> $a, $b { say "$a:$b" }
21:21 camelia rakudo-moar 54ce66: OUTPUT«a:b␤c:d␤e:f␤»
21:22 moritz jnthn++ # blog post, optimization work
21:30 Ven joined #perl6
21:37 espadrine joined #perl6
21:40 jnthn :)
21:40 jnthn arnsholt: I expect to cover some of it in follow-up posts :)
21:41 arnsholt \o/
21:41 El_Che jnthn: yeah, always interesting to read. If that architect thing doesn't work out, you could always try writer ;)
21:41 jnthn ;-)
21:41 * jnthn thinks he'll try sleeper next :)
21:41 jnthn 'night, #perl6
21:42 jnthn .oO( no, no, don't make a "sleeper in training" pun, just go to bed! )
21:42 bjz joined #perl6
21:43 moritz Stage parse      :  58.294 # new laptop makes rakudo hacking fun again :-)
21:43 lizmat good night, jnthn
21:43 moritz 16GB RAM, don't have to stop firefox to compile rakudo :-)
21:47 El_Che moritz: that's not decandently a high number any more. Probably by next year, the raspberry pi will have as much ram :) (I love the 16gb on my machine too)
21:50 Xliff joined #perl6
21:51 Xliff Hi! I'm a Perl5 coder making the move to Perl 6. I have a question about one of the examples found on http://perlgeek.de/blog-en/perl-5-to-6/07-rules.html
21:51 sno joined #perl6
21:51 Xliff Particularly... wouldn't the following expression return false?
21:52 Xliff 'abcdefg' ~~ m/(.(.)) (e | bla ) $<foo> = (.) /
21:52 FROGGS m: say 'abcdefg' ~~ m/(.(.)) (e | bla ) $<foo> = (.) /
21:52 camelia rakudo-moar 54ce66: OUTPUT«「cdef」␤ 0 => ï½¢cd」␤  0 => ï½¢d」␤ 1 => ï½¢e」␤ foo => ï½¢f」␤»
21:52 FROGGS no, why should it
21:52 FROGGS ?
21:52 Xliff I guess I'm being thrown by the "= (.)" part
21:53 FROGGS $<foo>=... is a named capture
21:53 arnsholt That's just syntax to name a capture
21:53 FROGGS so it is not part of the matched text
21:53 * Xliff slaps forehead.
21:53 Xliff OK. Thanks.
21:53 arnsholt Same as (?<foo> ...) in Perl 5
21:54 FROGGS m: 'abcdefg' ~~ m/(.(.)) (e | bla ) $<foo> = (.) /; say $<foo>
21:54 camelia rakudo-moar 54ce66: OUTPUT«「f」␤»
21:54 arnsholt But less ugly and more readable =)
21:54 Xliff Yeah. Readable when you pick up on how things should be read... =)
21:55 Xliff My perl5 brain wanted "abcdefg = 1" ....
21:55 FROGGS aye :o)
21:55 psch Xliff: https://design.perl6.org/S05.html#Extensible_metasyntax_(<...>) is a good primer
21:55 psch Xliff: i don't know how good the docs regarding regex on doc.perl6.org are, but those would be preferable
21:56 Xliff pach: I'm going through http://perlgeek.de/blog-en/perl-5-to-6 in order...
21:56 * psch goes to check
21:57 psch the docs only list all the possible usages of < > in regex, but don't group them quite as nice
21:57 psch well, at least that's my opinion :)
21:57 Xliff pach: And yes, that link looks to be chock full of information, but quite... dry
21:57 Xliff I'm trying to ease into it.
21:58 Xliff One of the step by step tutorials I was trying to read slipped into German mid-document!!!
21:58 gfldex Be warned. Trying to ease into Perl 6 may take you 15 years. :->
21:58 psch Xliff: it's not an 'a'... :)
21:58 Xliff http://www.perlfoundation.org/perl6/index.cgi%3Fperl_6_tutorial_part_1?perl_6_tutorial_part_2
21:59 Xliff gfldex: I've been using Perl for over 20.... so that's par for the course. ;)
21:59 * TimToady still wonders what he's gonna do when he grows up...
21:59 diakopter watch the Warriors
21:59 moritz TimToady: you might have missed your chance already
22:01 TimToady no, I'm pretty sure we have the Warriors recorded :)
22:02 Xliff Warriors? You aren't talking Basketball, are you?
22:02 diakopter mayyybe
22:04 Xliff Ouch... Metasyntax <> is starting to give me a headache.
22:06 Xliff <.gather { take foo($¢,1,2,3) }>
22:06 synopsebot6 joined #perl6
22:06 TimToady well, it can't be as bad as (?...) in p5
22:07 Xliff Wait... "Dollars and cents" ... someone is having me on, right?
22:07 Xliff How the hell do you type ¢ anyways?
22:07 synopsebot6 joined #perl6
22:07 moritz Xliff: we actually have documention on that somewhere on doc.perl6.org :-)
22:07 Xliff LOL
22:08 TimToady compose c/ usually
22:08 Xliff I'm on a PC.
22:08 moritz that's fine, you can install Linux on a PC :-)
22:08 Xliff *sob*
22:08 Xliff I have Linux as a VM and also as a dual-boot on this system.
22:08 Xliff But I'm currently running Windows....
22:08 Xliff *double sob*
22:09 TimToady so are some of our devs, so it's not a big deal
22:09 moritz http://doc.perl6.org/language/unicode_entry for the record
22:10 teatime Xliff: WinCompose is pretty decent.
22:10 teatime Xliff: also maybe AltGr+c or AltGr+$ or something
22:10 tmch joined #perl6
22:11 Xliff my $π = 3;
22:11 Xliff Oh lordy.....
22:11 TimToady m: say π
22:11 camelia rakudo-moar 54ce66: OUTPUT«3.14159265358979␤»
22:11 lizmat m: my \π = 3; say π  # biblical accuracy
22:11 camelia rakudo-moar 54ce66: OUTPUT«3␤»
22:12 moritz Xliff: basically all modern programming languages allow non-ASCII characters in identifiers. Welcome to the 21st century :-)
22:13 arnsholt Just like Java =D
22:13 Xliff moritz: Dude, I am a purist. If I can't type a character using only the Shift key, it's dead to me.
22:13 TimToady cue the No True Scotsman fallacy...
22:13 moritz Xliff: even purists can learn :-)
22:13 arnsholt (Even Python, I think...)
22:13 Xliff moritz: I will grant you MathML. But THAT'S IT!!! >_<
22:14 TEttinger m: my \ = 3; say 
22:14 camelia rakudo-moar 54ce66: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ojHXBk57H7␤Malformed my␤at /tmp/ojHXBk57H7:1␤------> 3my7⏏5 \ = 3; say ␤»
22:14 TEttinger AW
22:14 TimToady we're insane, but we're not mad
22:14 TimToady or is it the other way 'round?
22:14 AlexDaniel Xliff: hmm, so dead keys are dead for you too?
22:15 TEttinger anyway, java allows \ufeff in identifiers, though not at the start. clojure allows \ufeff as a fn name, as a variable, whatever. that char is zero-width and normally undisplayable, I'm glad Perl6 seems to treat it differently
22:15 Xliff AlexDaniel: No. Symbols that need the ALT key are, though.
22:15 Xliff I will have to check this WinCompose thingy.
22:16 teatime Xliff: AltGr is a little more sane than windows-style Alt+code
22:16 AlexDaniel Xliff: you have dead keys somewhere on the first layers? Huh?
22:16 psch m: say uniprop "\xfeff"
22:16 camelia rakudo-moar 54ce66: OUTPUT«Cf␤»
22:16 psch TEttinger: <ident> has to start with Ll afair
22:16 teatime but Compose gives you easy access to lots more symbols
22:17 TEttinger u: 
22:17 teatime I use both, but if I had to pick one, it'd def. be Compose.
22:17 TEttinger .u 
22:17 yoleaux U+FEFF ZERO WIDTH NO-BREAK SPACE [Cf] (<control>)
22:17 Xliff teatime: I will look into it. Thanks for the suggestion.
22:17 psch teatime: how's your XCompose tool coming?
22:17 TEttinger psch: lower case is different from upper case? what about title case?
22:18 psch TEttinger: i'm talking about the unicode property
22:18 teatime psch: I got suprisingly far, including defining ↤ as an infix operator
22:18 Xliff Well this IRC client does not look to support AltGR
22:18 Xliff Not even the alternate Ctrl+Alt
22:19 TimToady is it displaying Unicode properly?
22:19 teatime Xliff: it's something you'd configure in windows.  but just skip that an go for WinCompose.
22:19 geekosaur only shift is more "No True American"
22:19 TEttinger m: my \THON = 3; say THON
22:19 camelia rakudo-moar 54ce66: OUTPUT«3␤»
22:19 psch teatime: there's https://doc.perl6.org/language/modules#Distributing_Modules if you think it might be useful for others... :)
22:19 Xliff https://github.com/samhocevar/wincompose
22:19 Xliff Dat right?
22:19 TEttinger Ll doesn't seem necessary, L seems fine
22:20 Xliff Oh yay! No Auto-Hot-Key necessary?
22:20 TimToady yes, L is fine
22:20 Xliff Although I think I have that installed on this system. Heh.
22:20 teatime Xliff: yes, and correct, it includes the lib from the AHK project so you don't need AHK separately.
22:20 psch TEttinger: right, that's my lack of unicode knowledge :)
22:20 TEttinger ah ok
22:20 teatime Xliff: I use both for different things and they work together.
22:20 TEttinger Lu and Ll are nice to be able to use, it's a pity so few places support L&
22:21 TimToady well, I'm rather fond of Lo myself
22:21 TEttinger L& is, and I haven't confirmed this, anything that can have its case changed, or has a case
22:22 teatime TEttinger: that's not part of the standard though, right?
22:22 Xliff ©
22:22 Xliff YES!
22:22 synopsebot6 joined #perl6
22:22 Xliff ¢
22:22 TimToady Xliff++
22:22 * Xliff does a happy dance.
22:22 synopsebot6 joined #perl6
22:22 * teatime adds 1 to the number of compose key users personally converted.
22:22 TEttinger tbh I see a question mark here
22:22 teatime TEttinger: fix your stuff :)
22:22 TEttinger I wonder if it's a different encoding
22:22 Xliff The only hangup now is to figure out the sequences.
22:23 teatime Xliff: the beauty is that you can usually guess the correct sequence.
22:23 lizmat and another Perl 6 Weekly hits the net: https://p6weekly.wordpress.com/2016/03/21/2016-12-less-happening/
22:23 teatime Xliff: for example, how do you think you'd make ♥ ?
22:23 TEttinger yeah, the heart shows correctly for me, pi did earlier
22:23 Xliff π
22:23 TEttinger I wonder what went wrong with that one... that pi works
22:24 TimToady how 'bout 𪚥, which should show 4 dragons, a 64-stroke character?
22:24 TEttinger shows, though not reasonably
22:24 teatime TEttinger: I would say maybe they're not in your font, but ¢ and © are both very common.
22:24 psch the reminds me that i wanted to install all-repository-fonts
22:24 psch which is an actual package on the aur...
22:24 Xliff Ꙭ
22:24 Xliff LOL
22:24 Xliff That one isn't in Windows, yet.
22:24 gfldex TimToady: looks like a small QR code
22:25 Xliff ❣
22:25 TEttinger teatime: both of yours displayed fine
22:25 snarkyboojum joined #perl6
22:25 TimToady m: say ∞
22:25 camelia rakudo-moar 54ce66: OUTPUT«Inf␤»
22:25 Xliff ❥
22:25 snarkyboojum left #perl6
22:25 teatime TEttinger: well he had to've sent them in UTF-8 'cause I got them fine.
22:25 Xliff I need one right side up and pointing right
22:25 Xliff ♥
22:25 Xliff Hoh! Intuitive that one.
22:25 TEttinger here's my "stuff" as a screenshot http://i.imgur.com/8r5PuJY.png
22:26 teatime Xliff: most of them are like that
22:26 Xliff teatime: Thank GOD!
22:26 Xliff Sometimes I think intuitiveness in computer software has gone the way of the dodo.
22:26 Xliff 004D AIL
22:26 teatime TEttinger: weird.  although, maybe he's not doing UTF-8, and the server is translating?  but then, how would he send these random dingbats.  I'm very confused, TEttinger.
22:27 Xliff ✉
22:27 TEttinger as am I
22:27 TimToady ⌨
22:27 TEttinger I mean I see anything since those first two just fine, regardless of sender
22:27 teatime Xliff: also compose key is very very old, so Windows' alt+code is just yet another example of MS re-inventing *nix poorly :)
22:27 Xliff OT: Anybody happen to catch this, yet? -- https://www.youtube.com/watch?v=Mh5LY4Mz15o&amp;feature=youtu.be&amp;ab_channel=billwurtz
22:27 Xliff If that hasn't gone viral, it should…
22:28 synopsebot6 joined #perl6
22:28 Xliff teatime: Speaking to the choir, here.
22:28 Xliff I'm still on Win7 because I am *NOT* a Metro fan.
22:28 TimToady or singing to the preacher
22:29 TimToady Win10 seems betterish
22:29 Xliff That's a LOW bar to set.
22:29 Xliff Hrm. I wonder if there is an X-Chat plugin to properly process extended color control charaters.
22:30 TimToady oh wow, a raft of cinnamon updates when I say that... :)
22:30 teatime Xliff: extended color control characters?
22:30 teatime like, the normal color control chars IRC uses?
22:30 teatime or are there more??
22:31 Xliff teatime: This client isn't properly interpreting some of the control characters the bots use to color stuff.
22:31 teatime weird.
22:31 Xliff The normal ones.
22:31 tony-o are you using cygwin ?
22:31 TimToady m: foo bar
22:31 camelia rakudo-moar 54ce66: OUTPUT«5===SORRY!5=== Error while compiling /tmp/8XVwgnzwNi␤Undeclared routines:␤    bar used at line 1. Did you mean 'VAR', 'bag'?␤    foo used at line 1␤␤»
22:31 TimToady m: 42 43
22:31 camelia rakudo-moar 54ce66: OUTPUT«5===SORRY!5=== Error while compiling /tmp/D4HIvrGYZt␤Two terms in a row␤at /tmp/D4HIvrGYZt:1␤------> 427⏏5 43␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤        s…»
22:31 Xliff tony-o: Cygwin is installed, but this is the win-native client.
22:31 TimToady that should show 42 in green and 43 in red
22:32 TimToady with ⏏ in amber
22:32 diakopter it .. does
22:32 diakopter oh
22:32 diakopter *blink*
22:32 Xliff TimToady: That, it did, but there are codes it can't interpret between the 42 and the 43 on my display.
22:33 Xliff And elsewhere in there.
22:33 diakopter probably missing in your font
22:33 TimToady that's just a yellow EJECT
22:33 TimToady .u ⏏
22:33 yoleaux U+23CF EJECT SYMBOL [So] (⏏)
22:33 diakopter which font is it using?
22:33 Xliff Hmmm.... What's a proper Windows unicode font?
22:33 diakopter Consolas works ok
22:33 Xliff A proper momospaced unicode font.
22:34 diakopter yes, Consolas
22:34 Xliff Nope. Those symbols still show up in Consolas. So it must be something in this version of X-Chat.
22:34 TimToady (もも would be Asian spaced...)
22:34 lizmat .oO( how fast do momos pace ?)
22:35 TimToady I think they roll better than they pace...
22:36 TimToady heh, 桃 is "tree significant"
22:36 TimToady (peach, for those who want subtitles)
22:37 TimToady ((though not pronouned "momo" in Chinese, only in Japanese))
22:38 Xliff LOL
22:38 Xliff Cygwin IRC client is now called "hexchat"
22:39 TimToady last I knew, cygwin was still abysmal at unicode...
22:40 Xliff I might bring up my VM to see if I can get a better client, but I am still having trouble with VirtualBox and Xorg for some reason.
22:41 Relsak joined #perl6
22:41 firstdayonthejob joined #perl6
22:42 * Xliff plays SevenDust - Waffle
22:43 diakopter latest VirtualBox? recent updates fixed numerous things
22:43 Xliff Yeah. I've heard that before.
22:44 Xliff 5.0.10 vs 5.0.16
22:46 Xliff Doesn't look likely things have been fixed.
22:47 Xliff Window still doesn't resize properly when the VM is started.
22:48 Xliff Having to resize the VM window manually EVERY TIME sucks,.
22:50 diakopter did it install the virtualbox drivers
22:50 Xliff Yup
22:50 Xliff I'm reinstalling the Guest Additions, now.
22:51 Xliff Still doing this small window shit.
22:52 Xliff And trying to go into Full-Screen mode still crashes the bloody thing.
22:52 Xliff The system acts like it wants to be some weird small resolution.
22:54 jack_rabbit joined #perl6
22:56 Xliff And.... it crashed again.
22:56 Xliff Dammit, I may have to rebuild the entire Linux guest host.
22:59 Xliff-2 joined #perl6
22:59 Xliff-2 m: 42 43
22:59 camelia rakudo-moar 54ce66: OUTPUT«5===SORRY!5=== Error while compiling /tmp/2BVkniWl8s␤Two terms in a row␤at /tmp/2BVkniWl8s:1␤------> 427⏏5 43␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤        s…»
22:59 Xliff Still same missing chars on the Cygwin hexchat client.
22:59 Xliff Hrm.
23:01 Xliff \002Bold?\017
23:01 Xliff Hrm.
23:03 Xliff Holy crap... really?
23:12 YP-QMUL-W joined #perl6
23:22 Ben_Goldberg joined #perl6
23:31 vendethiel joined #perl6
23:38 teatime What should I install?  rakudo-star-2016.01 ?
23:38 teatime or perlbrew?
23:38 teatime sorry, radukobrew.
23:39 teatime rakudo.  bah.
23:39 gfldex if you like bugfixes, you should build rakudo ourself. Not that you will have to install panda as well
23:40 teatime I plan to, but question still stands.
23:41 gfldex i fetch both rakudo and panda from github by hand and that has worked well for me for the last 3 years or so

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

Perl 6 | Reference Documentation | Rakudo