Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-09-18

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:04 raiph #perl6: i've been using the new irclog summary feature to keep the klog (short backlog) for today fresh
00:04 cart joined #perl6
00:06 raiph to see the klog for today, click the "summary" link at http://irclog.perlgeek.de/perl6/today
00:07 ggoebel joined #perl6
00:07 raiph i have now read thru and klogged days 03, 04, 14, 15, 16, 17 of this month.
00:09 raiph i plan to keep updating today's klog during each day.
00:09 raiph so consider reading it as an alternative to reading the full backlog.
00:11 raiph someone else klogged some of yesterday's log. :) i'd love to know who.
00:11 Circlepuller__ joined #perl6
00:14 raiph beyond helping to keep the latest klog fresh, i have two options for spending klog related time this week.
00:15 raiph 1. create klogs for 05 thru 013.
00:17 raiph 2. create an annotated klog summary, like my pretty 2012-09-02 summary (either daily or weekly)
00:18 raiph If anyone is actually reading these klogs and this line, please note on channel which of these two you prefer
00:19 ggoebel joined #perl6
00:20 raiph (pretty 2012-09-02 summary: http://blogs.perl.org/users/perl_6_reports/2012/09/perl6-summaries-for-2012-09-02.html)
00:20 raiph (today's klog: http://irclog.perlgeek.de/out.pl?channel=perl6;date=2012-09-18;summary=1)
00:22 raiph .
00:23 raiph [Coke]: "mentioning [mystery feature] someplace other than backscroll is a good idea."
00:24 raiph [Coke]: heh. I've been mentioning it in the primary places to which I have access:
00:26 raiph primary source: http://blogs.perl.org/users/perl_6_reports/; links at reddit; hn; perlmonks; here
00:32 timotimo r: say rand(); # i don't get why this is discouraged
00:32 p6eval rakudo 690dad: OUTPUT«===SORRY!===␤Unsupported use of rand();  in Perl 6 please use rand␤at /tmp/ZWYcu7tAwP:1␤»
00:37 rurban Still Changelog entries needed?
00:37 rurban oops...
00:39 ggoebel joined #perl6
00:56 araujo joined #perl6
01:00 anuby joined #perl6
01:01 hypolin joined #perl6
01:02 _daniel-s__ joined #perl6
01:05 integral joined #perl6
01:05 integral joined #perl6
01:06 Targen joined #perl6
01:11 ggoebel joined #perl6
01:14 drbean joined #perl6
01:17 raiph joined #perl6
01:21 ggoebel joined #perl6
01:29 araujo joined #perl6
01:29 araujo joined #perl6
01:30 MikeFair_ masak++ / lue++ : For the Inform 7 reference -- omg -- it's pretty amazing.  I know it can currently only really be seen as a text based adventure game writing environment.  It has got the basic framework of a really powerful generic large system coding environment.
01:32 MikeFair_ In the same way that stacks and cards are metaphors for main GUI windows and the application screens that go on those cards in the xTalk world, rooms, objects, containers and the various verband state transitions in inform 7 do a great at allowing you to easily describe a giant state machine with many actors inside it
01:33 dayangkun joined #perl6
01:33 MikeFair_ Each room is like a state for your end user experience, it can interact with certain objects in the current frame of reference, it can transition from this state to certain other states,  the objects themselves have attributes and states, etc ;)
01:34 MikeFair_ It clearly needs some attention to expanding it, but it's very inspiring work indeed. :)  Thanks for the reference
01:36 MikeFair_ What's clearly most interesting to me is that it is focused on developing"Interactive Fiction" in which the "player" experiences a "story".  Well, in the context that everything inside a computer is pure fiction (we made up the meaning out of all those 1's and 0's and pictures and sounds emenating from the screen) -- all applications can be viewed as a form of Interactive Fiction. :)
01:41 * geekosaur is trapped somewhere beteen a comment on game theory and one about leisure suit larry
01:49 timotimo i think i'm getting an infinite recursion or something on say, because my Point refers to $other-point. what method do i have to change? i simply {say @list-of-points;}
01:50 timotimo i have implemented both gist and Str.
01:50 timotimo ah, it terminated with a stack explosion. seems i need to implement perl
01:51 raiph timotimo: ooc are you using rakudo or niecza?
01:52 sorear raiph: rakudo, niecza doesn't say objects :D
01:52 raiph sorear: thanks
01:52 raiph timotimo: are you using jnthn's debugger?
01:54 timotimo there's a debugger? sweet!
01:55 sorear jnthn was giving an unremarkable talk on exceptions at yapc::eu, then derailed it to introduce a DEBUGGER
01:55 sorear you had to be there, the shock was palpable
01:56 colomon :)
01:57 timotimo :D
01:57 timotimo is there a video recording up already?
01:58 sorear not sure if I'll live to see the recordings
01:58 raiph http://6guts.wordpress.com/2012/08/28/a-rakudo-debugger/
01:59 timotimo :D
01:59 raiph timotimo: what version of rakudo are you using?
02:00 timotimo This is perl6 version 2012.08-82-g0ead9e4 built on parrot 4.7.0 revision RELEASE_4_7_0-165-g29796c6
02:02 timotimo there's probably an idiom for this: i want to go through a list and do some computation on the values which will give me one result and i want to assign that result to a local variable.
02:03 sorear what kind of computation are you doing?
02:03 orafu joined #perl6
02:03 timotimo hm, in this case it'll be a simple comparison
02:04 sorear .max ?
02:04 colomon timotimo: maybe I'm misunderstanding something, but isn't that just .map?
02:04 timotimo something like select the $foo where $foo.other eqv $my-other-thing
02:04 sorear @list.first(*.other eqv $my-other-thing)
02:04 timotimo ah, cool and obvious. thanks!
02:04 dammark joined #perl6
02:05 _jaldhar joined #perl6
02:06 geekosaur huh.  first description sounded like a fold to me
02:06 sorear me too
02:06 sorear but that's probably because of our shared past
02:08 raiph timotimo: i'm guessing you installed rakudo, not rakudo star, right?
02:08 dammark me too
02:08 timotimo yes, i built it from git.
02:08 geekosaur (actually I thought reduce, but that's because my first exposure to it was not in fact haskell, it was apl :)
02:09 timotimo r: say (any(*.a, *.b).nearest).WHAT
02:09 p6eval rakudo 690dad: OUTPUT«No such method 'nearest' for invocant of type 'WhateverCode'␤  in sub AUTOTHREAD_METHOD at src/gen/CORE.setting:1892␤  in  at src/gen/Metamodel.pm:2310␤  in block  at /tmp/gj4gkICC41:1␤␤»
02:09 timotimo oh, silly me.
02:09 raiph then i think here's how you get the debugger: https://github.com/jnthn/rakudo-debugger
02:09 timotimo r: my $nearest = 10; say (any(*.a, *.b) eqv $nearest).WHAT
02:09 p6eval rakudo 690dad: OUTPUT«Junction()␤»
02:09 timotimo does that do what i think it does?
02:10 sorear probably not
02:13 timotimo got it to work better with { any{$^a.a, $^a.b) eqv $nearest }
02:17 sorear "wow, it must really have been broken if mismatching the braces made it better"
02:18 geekosaur *snrk*
02:21 timotimo :3
02:22 timotimo just tells me i need to go home, get some rest.
02:22 timotimo decommute &
02:38 timophone_ joined #perl6
02:44 mucker joined #perl6
03:11 gootle joined #perl6
03:12 timotimo i overuse infix operators immensely in my program. i wonder why this is.
03:13 timotimo "to" for the distance between two points, "mid" for the mid-point, - for a vector from one to the other, % for the perpendicular bisector (quite proud of this one!), "on" for point-on-line test, "intersect" for intersecting two lines
04:15 satyavvd joined #perl6
04:17 moritz \o
04:49 wamba joined #perl6
05:13 mdupont joined #perl6
05:52 dalek ecosystem: 77c1056 | duff++ | META.list:
05:52 dalek ecosystem: Add Locale::US
05:52 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/77c10562e5
05:54 kaleem joined #perl6
05:58 daxim joined #perl6
06:00 awwaiid joined #perl6
06:00 snarkyboojum joined #perl6
06:02 quietfanatic joined #perl6
06:12 Yappocall joined #perl6
06:24 cognominal joined #perl6
06:32 MayDaniel joined #perl6
06:34 cognominal joined #perl6
06:49 cognominal joined #perl6
06:50 araujo joined #perl6
06:50 araujo joined #perl6
07:03 flightrecorder joined #perl6
07:04 dalek panda: d519ac8 | (Tobias Leich)++ | bin/panda:
07:04 dalek panda: absolute paths on windows never start with a slash
07:04 dalek panda:
07:04 dalek panda: `$home` already is `C:\Documents and ...`, you can't put cwd before that.
07:04 dalek panda: review: https://github.com/tadzik/panda/commit/d519ac8669
07:04 dalek panda: a918d53 | tadzik++ | bin/panda:
07:04 dalek panda: Merge pull request #20 from FROGGS/master
07:04 dalek panda:
07:04 dalek panda: fixing destdir, windows absolute paths dont start with slash
07:04 dalek panda: review: https://github.com/tadzik/panda/commit/a918d5369c
07:12 gootle joined #perl6
07:12 brrt joined #perl6
07:23 wamba joined #perl6
07:27 FROGGS joined #perl6
07:27 FROGGS hi there
07:29 moritz \o
07:29 * moritz is happy to see the panda running
07:30 kresike joined #perl6
07:30 kresike good morning all you happy perl6 people
07:31 FROGGS we need a good smoke system... this way somebody would have known that panda wasnt working on windows
07:32 kresike FROGGS, just blame windows for that :)
07:33 moritz FROGGS: yes, and we need to people to run that smoke testing system
07:35 FROGGS moritz: I can do that (at least the second part)
07:35 FROGGS but I need help doing the first one
07:37 FROGGS but maybe tadzik wants to do that too ;o)
07:38 moritz I'd start with a cron job and a shell script, but I realize it doesn't work that way on windows :-)
07:38 jnthn morning o/
07:38 FROGGS morning
07:38 FROGGS moritz: I like the "new" way cpan can do that
07:39 FROGGS you just run: cpan smoke
07:39 moritz \o jnthn
07:39 FROGGS doing "panda smoke" would be awesome, fetching a list of modules, and test them
07:39 jnthn The "test all the things" bit is already done
07:40 jnthn I guess it's the submission that ain't yet
07:40 FROGGS but it might be also important to rebuild rakudo on at least a daily basis
07:40 * jnthn chuckles at the backlog
07:40 jnthn "nobody expects the debugger inquisition!"
07:40 tadzik FROGGS: we have a smoke system. We don't have tests for windows, and we don't have smokers on windows
07:41 moritz and the smoker tester only works once panda is installed, no?
07:41 FROGGS moritz: I guess thats fine
07:41 tadzik FROGGS: 'panda smoke' will be just 'smoker <projects.json>' if you install emmentaler
07:41 FROGGS I have windows, I have panda installed ;o)
07:41 tadzik it's already there
07:41 jnthn oh, nice
07:41 FROGGS ahh, emmentaler, right
07:42 tadzik see http://tjs.azalayah.net/new.html and the dots at http://feather.perl6.nl/~sergot/modules/
07:42 moritz tadzik: fwiw I've stolen that name :-)
07:42 tadzik moritz: what name?
07:42 moritz tadzik: for $work I've written a small website full of security holes, in order to teach looking for them
07:42 FROGGS and I have Mac OSX, FreeBSD, NetBSD, OpenBSD, GNU k/FreeBSD, GNU Hurd, Solaris
07:43 FROGGS I'm sure I forgot something
07:43 moritz tadzik: I've named it emmentaler, because of the holes :-)
07:43 tadzik haha :
07:43 tadzik )
07:43 tadzik nice one
07:43 fhelmberger joined #perl6
07:44 tadzik FROGGS: sometimes I think that we should have a service that collects those reports from different users. Then I think we should maybe just use what cpantesters already built
07:46 FROGGS so we should port the cpantesters framework to perl6? Or do you mean we should clone it, and just generate these reports and using perl5 to do the dirty stuff?
07:47 kurahaupo joined #perl6
07:48 FROGGS are these feather servers powerfull enough to run the cpantesters code?
07:48 FROGGS +database
07:49 moritz if the size of smoker community doesn't explode, it shouldn't be a problem
07:49 moritz I mean, I expect at most about 100 reports a day from 20 reporters each by the end of the year
07:49 tadzik FROGGS: maybe we could just use the existing infrastructure and just send reports we generate which are compatibile
07:50 moritz they should be able to handle that easily
07:50 moritz and if not, I could ask my employer if they are willing to donate some server power
07:55 drbean_ joined #perl6
08:18 felher How do i specify a hash that can only store closures with one parameter of type Int as values? "my &:(Int) %hash;" was my first attempt but this doesn't seem to be valid perl6.
08:19 moritz probably   my Callable[:(Int)] %hash;  or something along these lines
08:19 moritz but type constraints on containers don't work well enough in rakudo for it be useful
08:20 felher moritz: okay, then i'll leave it for know. Thanks :)
08:20 Psyche^ joined #perl6
08:20 jnthn You can do it most reliably today with a subset type.
08:21 felher jnthn: subset + where + signature-introspection?
08:21 jnthn subset IntArgy of Block where { .params == 1 && .[0].type ~~ Int given $^b.signature }; # or so
08:22 felher jnthn: yeah, nice, thnx :)
08:24 moritz .params[0].type ~~ Int
08:24 moritz though I wonder if we should make at_pos work in Signature :-)
08:25 jnthn oh, yes...
08:25 jnthn though
08:26 jnthn subset IntArgy of Block where { .elems == 1 && .[0].type ~~ Int given $^b.signature.params }; # :-)
08:26 moritz :-)
08:26 jnthn Today's $dayjob involves writing a Perl 6 script called zombify... :)
08:26 felher at_pos is rakudo-specific, isn't it?
08:27 moritz felher: it is, but we should really spec it at AT_POS
08:27 felher moritz: i see :)
08:27 felher jnthn: zombify? :D
08:29 * moritz thought jnthn's dayjob of consisted of unzombifying code (either killing it outright, or resurrecting it)
08:30 jnthn Sometimes the killed code needs to live on long enough to know it really is OK being dead :)
08:30 jia_ joined #perl6
08:31 moritz .o( burial with staging and checkpoints :-)
08:31 tadzik hey, I did that already
08:31 tadzik felher: Typed::Subroutines
08:32 tadzik https://github.com/tadzik/Typed-Subroutines
08:33 felher tadzik: sweet :)
08:33 felher thnx :)
08:33 tadzik you're welcome :)
08:33 tadzik http://cdn.memegenerator.net/instances/400x/24111566.jpg
08:33 moritz 10:33 <@cbstream> [davido] I was playing with C++11 yesterday. With a list-based 'for', anonymous subs that can capture their environment, r-value move semantics, and native regexes, it almost feels like 1995 has finally arrived.
08:34 felher :D
08:34 tadzik hehe
08:35 jnthn heh
08:36 * jnthn had some fun pointing out that the lambdas we started enjoying in C# in 2005 were in Perl over a decade before while speaking on our company's .Net event last week :)
08:37 mathw :)
08:37 moritz Perl 5 got them in 5.0, right?
08:37 jia_ left #perl6
08:37 mathw That said, it's still a big deal that they're in a language so mainstream as C#
08:38 jnthn mathw: Yes, very much so.
08:38 moritz aye
08:38 mathw it's like the rest of the worl dis finally catching up
08:38 mathw ...with Lisp
08:38 jnthn mathw: Had chance to play with the new async/await stuff yet?
08:38 mathw No we don't have VS2012
08:39 jnthn I don't at any $client, but have been having a look at it.
08:39 moritz I think that Lisp will eventually win by its features trickling into mainstream languages, not by lisp becoming mainstream :-)
08:39 jnthn Mostly because I had to give a talk about 'em :)
08:40 mathw It looks interesting, although I have become accustomed to using Reactive Extensions for my asynchronous programming in C#. However, I think the async/await syntax looks nicer, particular for combining asynchronous operations
08:40 Su-Shee moritz: I think so too. Unless they finally manage to create a great "environment"
08:46 dakkar joined #perl6
08:47 cognominal joined #perl6
09:07 wamba joined #perl6
09:11 mathw my main beef with Lisp is the dynamic typing. Much of the rest of it is very cool (especially in Lisps with lexical scope)
09:11 cognominal joined #perl6
09:13 * moritz still wonders if it's possible to make a type system that's static but not annoying
09:14 arnsholt The Common Lisp type system is pretty neat
09:14 arnsholt It's not really static, as such though, I think
09:15 arnsholt (My main beef with Lisp is the syntax. Cool language, terrible syntax)
09:16 Su-Shee to quote rick hickey's talk about simple versus easy: what have all your bugs in common? they passed your test suite. they passed the type check. ;)
09:17 mathw meh, that's just because most languages have a deeply inadequate type system
09:17 jnthn My word are grammars awesome... :)
09:18 arnsholt I dunno. After some dabbling in Haskell I find the static typing to be unfamiliar, but in the end the solution is to program in a way that's compatible with Haskell
09:18 mathw That's the only way to get by in Haskell
09:19 arnsholt When doing exploratory programming, most of the time where the compiler says something about "got TypeA, expected TypeB" is where I've done some ridiculous braino that would result in a run-time error in Perl for example
09:19 arnsholt Yeah, once you start basing your work on the types rather than working around them, it flows quite smoothly
09:19 sorear nwc10++
09:20 mathw This is one reason I like Perl 6 so much - if you add type annotations you get many of the really dumb brainfails caught at compile time
09:21 kurahaupo joined #perl6
09:21 jnthn mathw: Yeah, though Rakudo does a fairly restricted subset of what can be done in that area.
09:22 sftp joined #perl6
09:29 mathw yes but it can always improve in the future :)
09:30 mathw my supposed doctoral research was about dependent types, which take this whole thing into crazy-land
09:30 jnthn Aye, and I'm sure it will :)
09:30 mathw kind of fun though
09:32 jnthn yes, it's fun stuff to work on :)
09:32 mathw woohoo! My friends' baby has arrived! Cue cute pictures!
09:33 moritz \o/
09:33 moritz I was holding a 10 day old baby the other day
09:34 mathw I was at this one's brother's first birthday party two weeks ago
09:35 mathw he's quite a handful now he's mobile
09:37 moritz oh yes, that, erm, increases the administrative overhead :-)
09:39 mathw not quite sure how they're going to cope with a newborn and a one-year-old, but they seem confident
09:39 mathw maybe they've just given up on sleep and stockpiled coffee
09:40 marmay joined #perl6
09:40 moritz the impression I got is that once you have > 1 child, you simply cannot supply the same level of (over)parenting to each that you previously did on each single one
09:42 moritz so, both of them now need to wait a few minutes longer (on average) until nurishment or solace is supplied
09:42 dalek niecza: 254ba49 | sorear++ | lib/Kernel.cs:
09:42 dalek niecza: Subs know their setting, avoid Top in binder
09:42 dalek niecza: review: https://github.com/sorear/niecza/commit/254ba49588
09:42 dalek niecza: 7d7ce2e | sorear++ | lib/Kernel.cs:
09:42 dalek niecza: CreateBasicTypes should know its target setting
09:42 dalek niecza: review: https://github.com/sorear/niecza/commit/7d7ce2e0c3
09:42 dalek niecza: 3d9f4b4 | sorear++ | lib/ (3 files):
09:42 dalek niecza: ContextHandlers know their setting and do not need to use Top
09:42 dalek niecza: review: https://github.com/sorear/niecza/commit/3d9f4b463b
09:47 Ulti can someone point me in the right direction for parsing STDIN with a grammar without first slurping up all characters
09:48 sorear Ulti: in current implementations of perl 6 the grammar engine only runs on strings
09:48 Ulti can you just give .parse a file handle and it deals with buffered IO but not split on lines?
09:48 sorear you could run it a line at a time
09:48 Ulti sorear: ok
09:48 Ulti apart from my parser looks at new lines
09:48 Ulti and I dont know how many lines there are per record, hence the grammar
09:48 moritz then you must .slurp for now
09:48 Ulti okedoke
09:49 Ulti thanks
09:49 sisar joined #perl6
09:56 Ulti are strings immutable in perl6?
09:57 Ulti so doing something hacky like join on a lazy list that draws characters from STDIN, would that be utterly terrible memory wise?
09:57 moritz strings are immutable, yes
09:57 Ulti ok
09:58 moritz but if you do a join on a lazy list, the list stops being empty
09:58 moritz erm
09:58 moritz stops being lazy
09:58 moritz so it's all evaluated, and then joined
09:58 Ulti yeah so I'll end up pulling in everything anyway but worse all the substrings will be hanging around
09:58 felher moritz: isn't there substr-rw or something like that?
10:00 felher (regarding immutable strings)
10:00 jnthn felher: That doesn't change the string itself, though. It expects you to pass it a scalar and it assigns a new string into it.
10:00 jnthn er, wait
10:00 jnthn it returns a scalar
10:00 jnthn Or wait, a Proxy I guess...
10:01 felher jnthn: ah, okay :)
10:01 Ulti yeah I didnt mean can you play with strings, I meant more is the underlying implementation immutable strings so you can do smart things like string pools
10:02 jnthn Ulti: Yes, and if you write the same string literal multiple times in a Perl 6 script then at least Rakudo will only actually make one Str
10:02 Ulti yeah that's fine, it just means my hacky idea is a bad one ;)
10:03 Timbus how many lines could you be allocating? and why wont they be garbage collected?
10:03 Ulti if I write this parser in a more traditional way without grammars I can do it efficiently, the point was just to play with perl6 features
10:04 cognominal joined #perl6
10:04 Timbus a parser. that probably explains it all
10:04 Ulti Timbus: they might be garbage collected but the peak memory used might be a lot since you will have the string for each line, then the string for each append of the first line to another
10:05 Ambrose joined #perl6
10:05 Ulti I'm assuming perl6 is like perl5 in that it keeps hold of its memory allocation even if something isn't using it
10:05 wk_ joined #perl6
10:05 jnthn lunch &
10:06 Timbus ehh thats really up to parrot
10:06 Ulti well yeah
10:06 Ulti but the problem is its up-to-something its out of my own control, better to write an algorithm that will always be right
10:06 not_gerd joined #perl6
10:06 not_gerd hello, #perl6
10:06 Ulti hey hey
10:07 Timbus well you can only try it and find out in the end
10:07 Ulti well I know for a fact if I try and slurp a 300GB file its a no go without trying ;)
10:08 not_gerd is this analysis of Perl6 container semantics correct: https://gist.github.com/3742384
10:08 Timbus thats a lot of monkeys writing a lot of shakespeare
10:09 Ulti thats how evolution of protein sequence is :)
10:10 kurahaupo joined #perl6
10:10 Ulti anyway I can write this library out in nice perl6 for the sake of learning and I'm sure eventually this kind of IO thing wont be an issue, most people dont have 300GB files they have like 300KB files
10:12 * Ulti wanders off
10:20 gootle1 joined #perl6
10:37 sisar r: say Int().WHICH
10:37 p6eval rakudo 690dad: OUTPUT«Int|0␤»
10:37 sisar r: say Bool().WHICH
10:37 p6eval rakudo 690dad: OUTPUT«Bool|-1696510452␤»
10:37 sisar r: say Bool().WHICH
10:37 p6eval rakudo 690dad: OUTPUT«Bool|1056050998␤»
10:37 sisar hmm
10:38 sisar can anyone explain the weird numbers ?
10:38 moritz memory addresses
10:38 moritz .WHICH isn't meant to be explained, just used :-)
10:41 sisar moritz: ok.
10:41 sisar where is .WHICH useful ? I'm looking for a simple usecase
10:41 FROGGS moritz: so you give me access to a feather so I can setup our pandatesters environment? :o)
10:42 moritz FROGGS: yes. Please email me your desired username, real name and purpose (I know it, just administrative procedure)
10:42 moritz to moritz@cpan.org
10:43 Timbus sisar, i assume they're unique addresses, so, for variable identification, or hashing?
10:46 Timbus .. okay so they arent memory addresses
10:47 pmurias joined #perl6
10:47 moritz yes, hashing
10:47 moritz and object identity comparison
10:47 pmurias jnthn: I added a failing test to my nqp fork on github (and made a pull request)
10:47 pmurias jnthn: .attributes seems to be broken
10:48 sisar can I somehow search for the word 'WHICH' for Perl6 example on rosettacode.org ? Rosettacode's search did not help.
10:49 moritz sisar: I don't think you'll ever need it; it's just needed internally for non-string hash keys, and for the === operator
10:49 moritz and I doubt that any rosettacode example uses it
10:49 sisar moritz: ah, ok. Its just that I don't understand what it exactly does.
10:52 pmurias jnthn: are pull request the right way of submitting changes to nqp?
10:52 moritz sisar: it returns something that identifies the object you call it on
10:53 moritz pmurias: usually we give you commit access, and you push your changes right away. But then we usually don't add failing tests either
10:53 cognominal joined #perl6
10:55 Ulti moritz so a lot like Object.hashCode() in Java
10:55 flightre1 joined #perl6
10:55 FROGGS joined #perl6
10:57 moritz Ulti: aye
11:04 dayangkun joined #perl6
11:06 Su-Shee_ joined #perl6
11:11 jnthn pmurias: Broken how?
11:11 jnthn Also yes, file an issue rather than adding a broken test.
11:11 jnthn Or fix it ;)
11:11 jnthn I'm pretty sure it must at least somewhat work :)
11:12 jnthn given various things rely on being able to call it
11:13 jnthn win! my $dayjob grammar parsed all 600 things :)
11:13 jnthn That was easier than expected. perl6++
11:15 colomon \o/
11:18 colomon I think grammars are a huge win for p6.  I found https://github.com/colomon/perl6-ISO_10303-21 incredibly easy to write, for instance.
11:18 * colomon regrets being so busy he hasn't had time to blog on the subject.
11:19 tadzik colomon, Y U NO add it to the ecosystem? :P
11:19 colomon see "busy" above
11:20 daxim do you run kstep on your desktop?
11:20 jnthn heh, you'd not want to one I just wrote in ecosystem
11:20 colomon also a real possibility I might change the name before adding, as I'm now thinking I also need ISO_10303-11 in p6, too...
11:21 jnthn TFS, Y U take 5 minutes to delete a branch? :'(
11:23 JimmyZ joined #perl6
11:24 telex joined #perl6
11:26 pmurias moritz: failing tests are frowned upon? ;)
11:27 moritz pmurias: yes ;-)
11:28 pmurias moritz: so the prefered way would be to put the test in a bugtracker issue?
11:29 moritz pmurias: yes
11:33 pmurias jnthn: fails with http://pastie.org/4746716
11:33 pmurias I'll try to fix that
11:34 jnthn ah
11:35 jnthn yeah, the meta-objects need some nqp::isnull checks adding. I thought I caught most of those.
11:35 jnthn Trouble is we can't use NQPMu as it doesn't exist yet :)
11:35 pmurias it's a required named parameter
11:35 jnthn Oh
11:35 jnthn so...how on earth does it even get into the call
11:36 jnthn nqp: sub foo(:$x!) { }; foo()
11:36 p6eval nqp: OUTPUT«too few named arguments: no argument for required parameter 'x'␤current instr.: 'foo' pc 105 ((file unknown):63) (/tmp/xCpDE4r6rd:1)␤»
11:37 moritz nqp: class A { method x(:$y!) { } }; A.x
11:37 p6eval nqp: OUTPUT«too few named arguments: no argument for required parameter 'y'␤current instr.: 'x' pc 126 ((file unknown):155472605) (/tmp/Tq93xmtpsh:1)␤»
11:38 pmurias jnthn: it's *implicitly* required ;)
11:38 pmurias if $local {...} fails with a null
11:39 jnthn oh
11:39 jnthn then it's not required at all :)
11:40 jnthn and yes, defaults get null in the NQP MOP classes
11:40 jnthn well, knowhows :)
11:40 jnthn Classes not invented yet at that point ;)
11:41 mucker joined #perl6
11:43 jnthn tssk...VS hangs again
11:43 not_gerd jnthn: any comments on https://gist.github.com/3742384 ?
11:43 jnthn Based on today's evidence, Rakudo is more stable than Visual Studio :P
11:44 pmurias jnthn: should I make it a required attr? or make it assume null is false?
11:44 pmurias jnthn: as a default which causes a strange exception doesn't make much sense
11:45 jnthn pmurias: Well, the Real Answer is to implement the non-local case ;)
11:45 jnthn not_gerd: typically for scalars, lexical environment points to Scalar points to value.
11:45 jnthn not_gerd: Exception: native types, where they are inlined straight into the lexical environment.
11:46 jnthn pmurias: I think methods already does that, fwiw
11:46 not_gerd jnthn: binding makes lexical environment point to existing Scalar?
11:47 jnthn not_gerd: Depends what you bind
11:47 jnthn my $x = 42; my $y := $x; # lexical environment's $x and $y slots now both point to the same Scalar
11:47 moritz nr: my $x := 3; $x = 5
11:47 p6eval niecza v21-14-g3d9f4b4: OUTPUT«Unhandled exception: Writing to readonly scalar␤  at /tmp/o69qMGvNqD line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4138 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4139 (module-CORE @ 571) ␤  at /home/p6eval/niecza/li…
11:47 p6eval ..rakudo 690dad: OUTPUT«Cannot assign to a non-container␤  in block  at /tmp/HCNJ7rv4Ei:1␤␤»
11:47 jnthn my $x := 42; # lexical environment points directly at the value
11:47 jnthn But as moritz showed, bind a value and you can't assign any more :)
11:53 not_gerd r: my $x := 42; $x := Scalar; $x = 42
11:53 p6eval rakudo 690dad: OUTPUT«Cannot assign to a readonly variable or a value␤  in block  at /tmp/MFdYsNum4w:1␤␤»
11:53 jnthn you bound the type object
11:54 jnthn r: my $x := 42; $x := Scalar.new; $x = 42
11:54 p6eval rakudo 690dad: OUTPUT«(signal SEGV)»
11:54 jnthn wow!
11:54 not_gerd segfaults with type object as well on Rakudo 2012.08-61-gd776f08
11:54 jnthn .oO( guess what we don't have a test for... :) )
11:56 jnthn Time for this week's commute up to Stockholm &
12:00 revoltz joined #perl6
12:01 pmurias jnthn: the bignum test fails
12:10 not_gerd joined #perl6
12:15 gongyiliao joined #perl6
12:17 M_o_C joined #perl6
12:21 docdoctor joined #perl6
12:23 docdoctor anyone here experienced with proofing pod files on github?
12:27 moritz welcome docdoctor
12:27 docdoctor thanks
12:27 moritz I usually check out the repository and read/edit the files in my preferred editor
12:28 docdoctor if I proof a document that requires no changes, is there any way to mark it as read?
12:29 moritz not really
12:29 moritz you could add a note to them that pod renderers ignore
12:29 moritz =comment reviewed by dodoctor on 2012-09-18
12:29 docdoctor is there a comment tag for that?
12:30 docdoctor OK got it.
12:31 docdoctor Is the =comment entry at the bottom of the file OK, or is there a more appropriate location?
12:32 moritz top or bottom is both OK, as long as you always stick to the same
12:33 docdoctor thank you very much, that will make life a lot easier!
12:34 moritz you're welcome
12:36 revoltz left #perl6
12:41 atrodo joined #perl6
12:42 [Coke] phenny: ask raiph if I should add http://blogs.perl.org/users/perl_6_reports/ to planetsi
12:42 phenny [Coke]: I'll pass that on when raiph is around.
12:49 PacoAir joined #perl6
12:50 * [Coke] wishes he had time to try out jnthn's suggestions yet.
12:55 cognominal joined #perl6
13:03 moritz I just found out why my work computer is so slow running the rakudo test suite
13:03 moritz it's not the memory (has 4GB)
13:03 moritz but it has just one core
13:04 bluescreen10 joined #perl6
13:09 wamba joined #perl6
13:14 [Coke] that's outrageous! ;)
13:15 moritz aye. I was pretty surprised to get a recycled workstation
13:21 colomon just one core?!?
13:22 moritz yes. In a desktop.
13:23 PerlJam moritz: we recycle desktops here all the time, but usually the computer-geekier you are, the more likely you are to get a newer (if not brand new) computer.
13:23 moritz and it takes nearly 5 minutes to parse rakudo's setting
13:26 moritz r: grammar A { token TOP { <tree> }; token tree { 'a' } }; say so A.parse('a');
13:26 p6eval rakudo 690dad: OUTPUT«Cannot call 'tree'; none of these signatures match:␤:(Any:U : Mu *%_)␤:(Any:D : Mu *%_)␤:(Any:D : &c, Mu *%_)␤:(Any:D : Cool $count, Mu *%_)␤␤  in method tree at src/gen/CORE.setting:1224␤  in any !reduce at src/stage2/QRegex.nqp:582␤  in any !cursor_pass at src/st…
13:26 jerome joined #perl6
13:27 dalek rakudo/nom: 0973612 | moritz++ | src/core/Grammar.pm:
13:27 dalek rakudo/nom: Default to Mu for action methods
13:27 dalek rakudo/nom:
13:27 dalek rakudo/nom: that way fewer method names are prone to name conflicts, because Mu simply
13:27 dalek rakudo/nom: does not have as many methods as Any. But it is not a real fix
13:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0973612366
13:33 pmichaud good morning, #perl6
13:33 moritz good am, pm
13:34 pmichaud I wonder if we could resolve the Mu/Any actions issue by requiring a defined object to be passed.
13:34 moritz one thing I tried was adding two multis
13:34 GlitchMr joined #perl6
13:35 moritz one with :actions!, the other excluding it
13:35 moritz but somehow it hug during compilation
13:35 moritz (the idea was to not declare $*ACTIONS)
13:35 pmichaud well, you have to have $*ACTIONS somewhere, or else you get a dynvar lookup problem.
13:35 GlitchMr jnthn: I just have noticed http://irclog.perlgeek.de/perl6/2012-09-17#i_5995854 - I will fix it now, ok
13:37 dalek glitchmr.github.com: e5b87e2 | GlitchMr++ | _posts/2012-09-16-perl-6-changes-2012W37.md:
13:37 dalek glitchmr.github.com: TCLish -a => "b" was for STD_P5, not STD. jnthn++
13:37 dalek glitchmr.github.com: review: https://github.com/GlitchMr/glitchmr.github.com/commit/e5b87e242b
13:37 moritz pmichaud: there aren't too many of those lookups, and if they aren't in hot paths, we might guard them against that
13:38 pmichaud looking up $*ACTIONS is very hot path
13:38 pmichaud it happens on every successful match.
13:38 moritz it's not cached anywhere?
13:39 flightrecorder joined #perl6
13:39 pmichaud I haven't come up with anywhere that caching would be faster than the lookup.
13:39 moritz .oO( we could create a special class that doesn't support any methods (by not inheriting from Mu) and make that the default $*ACTIONS )
13:40 pmichaud oh, we can solve this entirely in NQP land
13:40 pmichaud trying to fix it in Perl 6 space is problematic.
13:42 moritz how would you solve it in NQP land?
13:42 pmichaud the simplest fix would be to remove :actions from the (Perl 6) signature altogether.
13:42 pmichaud oh, wait.
13:42 pmichaud hrm.
13:42 pmichaud Rakudo's Grammar.parse isn't using NQP's .parse
13:43 pmichaud ideally, have $*ACTIONS set to NQPMu
13:45 moritz and then?
13:45 pmichaud I wonder what happens if we eliminate Grammar.parse altogether, and just use the one that gets inherited from NQPCursor.
13:45 moritz that doesn't set the caller's $/
13:45 pmichaud well, if $*ACTIONS is set to NQPMu, we're not likely to have any method name conflicts.
13:46 pmichaud oh, well then call NQPCursor's .parse
13:46 pmichaud although I guess that's painful also.
13:47 moritz NQPMu also has 13 method names
13:47 pmichaud also, if $*ACTIONS is set to NQPMu, we can explicitly check for that.
13:47 pmichaud i.e., if $*ACTIONS.type =:= NQPMu then don't fire.
13:48 PerlJam couldn't you make an empty actions class and make that the default?
13:48 PerlJam (sorry, just reading scroll back and probably don't quite have a handle on the problem)
13:49 pmichaud PerlJam: example?
13:49 moritz PerlJam: all classes in Perl 6 inherit from Mu
13:49 moritz (and yes, I've suggested that already :-)
13:49 PerlJam moritz: got it.  :)
13:49 pmichaud perhaps the answer is for me to eliminate $*ACTIONS as a dynvar and put it into the cursor target object I've been considering.
13:50 pmichaud (cursor target would be a custom type that would contain shared information about an ongoing match)
13:50 stopbit joined #perl6
13:50 moritz and aren't regenerated for every subrule call?
13:50 pmichaud right
13:50 pmichaud basically it combines $!orig and $!target into a single object, saving a pointer in the cursor
13:51 pmichaud but it also provides a place to cache things, such as line numbers
13:51 moritz sounds nice
13:51 pmichaud it could potentially cache $*ACTIONS as well
13:52 pmichaud I think I'll give that a try today.
13:52 moritz ++pmichaud
13:53 pmichaud I doubt I'll want to try to squeeze it into the sep release, though.
13:53 pmichaud we'll see how it goes.
13:53 pmichaud I'm still trying to figure out how to deal with the utf8 encoding issue.
13:56 felher Any know problems with importing parametric roles? I have one know, namely >>>Method 'parameterize' not found for invocant of class 'Perl6::Metamodel::ParametricRoleHOW'<<<. I'm just pulling newest Rakudo and check if the problem ist still there. Of course, chances are that i'm just doing something wrong and there is no problem with Rakudo whatsoever :)
13:56 felher *one now
13:56 pmichaud I'm afk for a bit.
13:56 PerlJam felher: It's easier to tell if you show the code that causes it  :)
13:57 moritz felher: I've seen that error before, but not from importing
13:57 felher PerlJam: yep. i'm currently on making a gist :)
13:58 moritz r: module A { role B[$x] { } }; import A; say B
13:58 p6eval rakudo 690dad: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&B' called (line 1)␤»
13:58 moritz r: module A { role B[$x] is export { } }; import A; say B
13:58 p6eval rakudo 690dad: OUTPUT«Could not instantiate role 'B':␤Not enough positional parameters passed; got 1 but expected 2␤  in any specialize at src/gen/Metamodel.pm:1778␤  in  at src/gen/Metamodel.pm:2182␤  in  at src/gen/Metamodel.pm:2176␤  in any compose at src/gen/Metamodel.pm:2175␤  in a…
13:58 moritz r: module A { role B[$x] is export { } }; import A; say B[1]
13:58 p6eval rakudo 690dad: OUTPUT«===SORRY!===␤Method 'parameterize' not found for invocant of class 'Perl6::Metamodel::ParametricRoleHOW'␤»
13:58 moritz felher: this one? :-)
13:58 moritz r: role B[$x] { }; say B[1]
13:58 p6eval rakudo 690dad: OUTPUT«B()␤»
13:58 felher moritz: yeah, i think so :)
13:59 * felher closes gist :)
13:59 moritz felher: fehl free to submit :-)
14:00 * felher fehls free to do so and submits a bug.
14:00 felher moritz: any idea how to work around it for now? :)
14:00 felher *felhs free to do so... :)
14:01 moritz felher: no idea, except avoiding parametric roles :(
14:01 moritz hm, maybe
14:02 moritz r: module A { our role B[$x] { } }; import A; say A::B
14:02 p6eval rakudo 690dad: OUTPUT«None of the parametric role variants for 'B' matched the arguments supplied.␤Cannot call ''; none of these signatures match:␤:(Mu , Mu $x)␤␤  in any specialize at src/gen/Metamodel.pm:1905␤  in  at src/gen/Metamodel.pm:2182␤  in  at src/gen/Metamodel.pm:2176␤  in a…
14:02 flightrecorder joined #perl6
14:02 moritz r: module A { our role B[$x] { } }; import A; say A::B[1]
14:02 p6eval rakudo 690dad: OUTPUT«B()␤»
14:02 moritz felher: using 'our' instead of importing seems to be a workaround
14:02 docdoctor joined #perl6
14:03 Tanktalus joined #perl6
14:03 felher moritz: cool, thnx :)
14:05 benabik joined #perl6
14:10 Pleiades` sd
14:10 kaare_ joined #perl6
14:11 dalek roast: 765896d | moritz++ | S (2 files):
14:11 dalek roast: rakudo unfudges
14:11 dalek roast: review: https://github.com/perl6/roast/commit/765896d845
14:11 kaare__ joined #perl6
14:14 felher r: role R[::T] { }; class A { }; class B is A { }; say R[B] ~~ R[A];
14:14 p6eval rakudo 097361: OUTPUT«True␤»
14:14 FROGGS joined #perl6
14:14 felher \o/ exactly what i need :)
14:20 pmichaud r: say 'bit' ~& 'wise'
14:20 p6eval rakudo 097361: OUTPUT«bip␤»
14:21 pmichaud r: say 'bitŹ' ~& 'wise'
14:21 p6eval rakudo 097361: OUTPUT«string bitwise_and (utf8/utf8) unsupported␤  in sub infix:<~&> at src/gen/CORE.setting:4550␤  in block  at /tmp/BmTVCruyJa:1␤␤»
14:23 pmichaud anyone know what the Perl 6 spec would want there?
14:23 pmichaud (I'm afk for a while.)
14:24 pmichaud fwiw, that's the current blocker as to why utf8 chars in source cause parsing to slow down.
14:25 moritz what do you expect it to do? integer AND on the codepoint?
14:26 pmichaud I don't know what I expect.  I just know that parrot currently allows "bitwise string and" only on ascii and iso-8859-1 string encodings, and thus I can't switch things to another fixed-width encoding.
14:27 pmichaud so, if we can decide what _should_ happen, then I can add it to parrot and be unblocked on that point.  :-)
14:27 pmichaud my best guess at this point would be integer AND the codepoints, yes.
14:28 pmichaud afk
14:31 FROGGS tadzik: there?
14:32 FROGGS or moritz: you should know that too
14:32 FROGGS what do we actually have right now about test reports?
14:33 tadzik yes, here
14:33 FROGGS am I able to produce a report by running a script?
14:34 tadzik a script gives you something like http://tjs.azalayah.net/results.json
14:34 FROGGS so thats the result of the whole rakudo star suite, right?
14:35 FROGGS "Algorithm::Diff" : { "prereq" : true, "build" : false, "description" : "Failed building lib/Algorithm/Diff.pm" }
14:35 FROGGS so we have to put more information into these structures
14:35 FROGGS and make each report available somehow
14:36 [Coke] FROGGS: have you seen smolder?
14:36 FROGGS btw, I dont want to use the cpantesters framework anymore, its huge and I dont even know if all parts of it are available
14:36 tadzik FROGGS: it's a result of the entire module ecosystem
14:36 FROGGS [Coke]: seen no, but heard of it
14:36 [Coke] basically a temporary repository for TAP runs by project; right now parrot and rakudo have projects setup in it.
14:37 tadzik FROGGS: https://github.com/tadzik/emmentaler/blob/master/smoker is to blame
14:38 [Coke] I had started working an on a replacement called muddle which would hopefully have a nicer front end, but still allow the smolder-style uploads of tap.
14:39 [Coke] (https://github.com/coke/muddle) I stalled some time ago, happy to dig back into it if this woudl be useful to someone.
14:39 FROGGS [Coke]: I will have a look at it
14:40 PerlJam pmichaud: the "obvious" answer is at S03:5262
14:41 PerlJam oops, sorry, that's S03:853  ('me can't read)
14:42 pmichaud PerlJam: wfm
14:43 GlitchMr That JSON file is interesting
14:43 GlitchMr It has spaces between tokens
14:43 FROGGS that emmentaler/smoker looks good, I mean, it's working and it's easy to use
14:43 GlitchMr I wonder why - they aren't needed
14:44 GlitchMr "Acme::Addslashes" : { "prereq" : false, "description" : "Failed cloning the repo" }
14:44 GlitchMr wait what?
14:45 GlitchMr Let me guess, it cannot clone URLs that begin with git://
14:45 tadzik guess again
14:45 GlitchMr I will change it to http://
14:46 tadzik no, everyone uses git://
14:46 GlitchMr https://raw.github.com/GlitchMr/perl6-Acme-Addslashes/master/META.info
14:46 GlitchMr huh?
14:46 tadzik maybe I lost connection during smoketesting
14:46 tadzik :)
14:46 tadzik I see at least few modules on the list with this error
14:47 GlitchMr Text::Abbrev also has this error
14:47 GlitchMr Interesting
14:48 GlitchMr But it's probably loss of connection
14:48 FROGGS tadzik: so a next step would be to make it possible to submit these results.json file?
14:48 GlitchMr Both of my modules which I know that work fail because of connection error
14:52 tadzik FROGGS: probably, yes
14:52 tadzik and include some platform info\
14:52 tadzik GlitchMr: I probably hibernated the laptop during smoke run, and wifi didn't like that :P
14:56 sqirrel joined #perl6
14:59 FROGGS_ joined #perl6
15:00 jnthn o/ from the train :)
15:00 flightrecorder joined #perl6
15:00 FROGGS I'm starting to hate eclipse
15:01 jnthn FROGGS: If I want to try out the SDL game you made, what do I need?
15:02 FROGGS hmmm, panda Games::BubbleBreaker ?
15:02 FROGGS I beleive that should be it
15:02 jnthn FROGGS: Do I need to install anything for SDL itself?
15:03 FROGGS ohh ya, libSDL-dev and its friends, libSDL_image-dev for example
15:03 FROGGS wait, not even the -dev, the regular lib should be fine
15:04 FROGGS but maybe I'm still doing "is symbol" instead of "is named"
15:04 jnthn OK. May give it a go. :)
15:04 FROGGS cool
15:04 jnthn I'm doing a "interesting Perl 6 modules" talk in YAPC::Asia, and an SDL binding is pretty cool ;)
15:04 PerlJam someone did bindings for SDL on rakudo?  The last time I looked it was only like 3 functions.
15:05 jnthn PerlJam: If there's a playable game then those 3 functions must be pretty powerful :)
15:06 PerlJam jnthn: Load; Init; Run;  #  :-)
15:06 FROGGS *g*
15:06 flussence you can get a long way with just a create_drawable() and a draw_pixel() :)
15:07 FROGGS and event handling
15:08 flussence well if you don't mind vi keys, you can get away with getc() there too
15:08 dalek nqp: 4b84f41 | jonathan++ | docs/QASTMAP:
15:08 dalek nqp: Delete QAST migration roadmap.
15:08 dalek nqp: review: https://github.com/perl6/nqp/commit/4b84f418dd
15:09 FROGGS flussence: I meant mouse clicks for example
15:09 flussence yeah, that's a bit more involved...
15:09 PerlJam FROGGS++  (fleshing out SDL)
15:10 FROGGS it is actually pretty cool doing it in a OO way, the code is so much nicer and cleaner, especially with perl6
15:11 kresike bye folks
15:11 FROGGS jnthn: Games::BubbleBreaker still has perl5 tests -.-
15:11 PerlJam FROGGS: I see you used my "is symbol" nee "is named" thingy.  Libs like SDL are exactly what I was thinking of when I added it.  :)
15:12 dalek glitchmr.github.com: 66493f6 | GlitchMr++ | / (2 files):
15:12 dalek glitchmr.github.com: Add notice about pasting code in Disqus
15:12 dalek glitchmr.github.com: review: https://github.com/GlitchMr/glitchmr.github.com/commit/66493f6efa
15:15 FROGGS jnthn: I'm afraid its not that easy to install right now, to be safe I should rebuild rakudo, and use my File::Spec and Inline::C that I made for my SDL hack0ry
15:16 FROGGS I'll drop you a note when it is possible to just panda it
15:16 FROGGS one porblem right now is that panda doesnt install a C file to you HOME/.perl6/lib/SDL
15:17 jnthn FROGGS: OK, there's no hurry :)
15:17 jnthn A week and a half until my talk. Just pondering what to show. :)
15:20 TimToady you should switch unexpectedly to the debugger in the middle :)
15:20 FROGGS jnthn: so it is still "is symbol"? I thought it will be or already has been renamed
15:21 FROGGS ya, like: Ohh, that example isnt working but I can debug it right away...
15:21 PerlJam r: my $h where { $_ == 3 } = 7;
15:21 p6eval rakudo 097361:  ( no output )
15:21 PerlJam r: sub foo ($h where { $_ == 3 }) { } ;  foo(7);
15:21 p6eval rakudo 097361: OUTPUT«Constraint type check failed for parameter '$h'␤  in sub foo at /tmp/6FW5SK8oF6:1␤  in block  at /tmp/6FW5SK8oF6:1␤␤»
15:21 GlitchMr ==> Games::BubbleBreaker depends on SDL
15:21 GlitchMr ==> SDL depends on NativeCall
15:21 GlitchMr I like how panda is recursive :-)
15:22 cognominal joined #perl6
15:22 GlitchMr t/core.t ............ Cannot locate native library 'libSDL.so'
15:22 GlitchMr ... uhmmm
15:22 PerlJam r: sub foo ($h where { $_ == 3 } = 7) { }
15:22 p6eval rakudo 097361:  ( no output )
15:22 PerlJam Hrm.  This seems so familiar.
15:22 FROGGS GlitchMr: do you have libSDL.so somewhere in /usr/lib/ ?
15:22 GlitchMr I guess I have to install libsdl1.2-dev
15:23 FROGGS no, you dont need the -dev, since I can't use headers
15:23 jnthn TimToady: I think it only has shock value once. :-) But yes, I think I will show it. :)
15:23 FROGGS but maybe the -dev ships a symlink... I'm not quite sure
15:24 GlitchMr I'm sure I've SDL because I've games like Frozen Bubble installed
15:24 FROGGS hmm, NOT MY FAULT
15:24 FROGGS NativeCall's job is to find libs ;o)
15:25 wooden joined #perl6
15:25 wooden joined #perl6
15:30 timotimo wow, when i let the perl6-debugger from latest rakudo-star loose on my (probably pretty horrible) code, it explodes
15:31 timotimo use of uninitialized value of type Any in string context  in sub unhandled at /home/timo/build/rakudo/install/lib/parrot/4.6.0/languages/perl6/lib/Debugger/UI/CommandLine.pm:486   - this line twice and then: Unhandled exception: Variable $ref is not declared @ :
15:36 thou joined #perl6
15:38 jnthn timotimo: Seems that it's rather noisy if you feed it code with syntax errors
15:38 jnthn It really shouldn't warn.
15:39 jnthn The message about $ref is the one for you, I expect. :)
15:39 jnthn Will have to look at that.
15:39 wamba joined #perl6
15:39 jnthn It's just a couple of warnings and then the real error so far as I can tell.
15:42 timotimo may be. thanks
15:43 timotimo yeah, that was indeed the error. i was *certain* the current version would work ;)
15:43 GlitchMr t/mixer-channels.t .. Cannot locate native library 'libSDL_mixer.so'
15:43 GlitchMr ok
15:43 GlitchMr It's progress!
15:44 Targen joined #perl6
15:45 GlitchMr By the way, I still think that "Rakudo" has hard to understand syntax errors. This should be fixed someday.
15:45 GlitchMr https://gist.github.com/3743840
15:45 GlitchMr That doesn't sound correct
15:46 GlitchMr "Variable $MIX_INIT_MOD is not declared"
15:46 GlitchMr What?
15:46 GlitchMr Also, shouldn't it be "Game::BubbleBreaker"?
15:46 FROGGS GlitchMr: the tests are stupid right now, skip them
15:47 GlitchMr "added constants test, not working yet"
15:47 GlitchMr ok...
15:47 GlitchMr How can I skip tests in panda?
15:47 FROGGS GlitchMr: there is a Games:: namespace in perl5, I just used it
15:47 FROGGS but I can switch to Game:: af course
15:47 GlitchMr --notests?
15:47 FROGGS pande --notests install ...
15:47 GlitchMr s/pande/panda/
15:47 FROGGS ya
15:48 GlitchMr Why put test which doesn't work. That causes tests to be failed.
15:49 FROGGS you are right, I simply forgot these tests
15:49 GlitchMr https://gist.github.com/3743858 - uhmmm... 'use strict' is so strict that it forbids me from installing the module
15:50 GlitchMr That... makes sense
15:50 GlitchMr oh... it's test written in Perl 5...
15:50 GlitchMr Why?
15:51 GlitchMr I mean, why?
15:51 FROGGS its a test file from the perl5 SDL module, committed by accident I suppose
15:52 GlitchMr --notests again, I guess?
15:53 GlitchMr #!perl6
15:53 GlitchMr Wait... WHAT?
15:53 GlitchMr Executable without proper shebangs...
15:53 GlitchMr #!/usr/bin/env perl6
15:54 GlitchMr ^ should be better
15:54 GlitchMr https://gist.github.com/3743883
15:54 GlitchMr Uhmmm... ok
15:55 benabik joined #perl6
15:56 docdoctor joined #perl6
15:56 GlitchMr What is memcopy.so?
15:56 FROGGS GlitchMr: the one about memcopy.c is there because that file doesnt get installed
15:57 GlitchMr Uhmmm... where can I get memcopy.c?
15:57 GlitchMr Uhmmm... where can I get memcopy.so*?
15:57 GlitchMr I have heard of memcpy, but not memcopy
15:57 FROGGS wget this to ~/.perl6/lib/SDL: https://raw.github.com/PerlGameDev/SDL6/master/lib/SDL/memcopy.c
15:58 GlitchMr Doesn't work
15:58 GlitchMr It still complains about lack of memcopy.c
15:59 FROGGS I made Inline::C to work around that issue, I'll drop you a msg when it is online, k?
16:00 GlitchMr glitchmr@strawberry ~> cat ~/.perl6/lib/SDL/memcopy.c
16:00 GlitchMr #include <string.h>
16:00 GlitchMr ...
16:00 wamba joined #perl6
16:00 FROGGS the problem that it cant find memcopy.c is actually that the dirname get messed up when you compile a module to pir
16:01 FROGGS what about string.h?
16:01 GlitchMr It's first line of code, I just was making sure that file exists
16:01 FROGGS k
16:03 dalek nqp: bba277c | jonathan++ | docs/qast.markdown:
16:03 dalek nqp: Start documenting the QAST nodes.
16:03 dalek nqp: review: https://github.com/perl6/nqp/commit/bba277cd9f
16:03 [Coke] jnthn++
16:05 [Coke] jnthn: thank you, kind sir.
16:13 marmay_ joined #perl6
16:16 MayDaniel joined #perl6
16:28 PerlJam anybody with zavolaj-fu still around?   Say I've got some C code like https://gist.github.com/3744087 ... How do I perform the allocation of FooType using NativeCall?
16:28 benabik_ joined #perl6
16:29 moritz FooType.new
16:30 PerlJam yeah, but does that array of 12 chars work right?
16:31 dalek nqp: c0bb465 | jonathan++ | docs/qast.markdown:
16:31 dalek nqp: Document some more node types.
16:31 dalek nqp: review: https://github.com/perl6/nqp/commit/c0bb465bf1
16:31 moritz PerlJam: probably not, because int8 isn't supported yet
16:31 jnthn detrain &
16:32 moritz PerlJam: you can use CArray[Int] with just one Int, and on a 64bit platform that would be 8 bytes
16:32 moritz then you have to unpack those with bit ops or unpack
16:32 moritz bit ops, I think
16:33 moritz (or two Ints if you are on 32bit)
16:33 moritz arnsholt is working on sized ints, iirc
16:34 PerlJam https://github.com/jnthn/zavolaj/blob/master/README.markdown says it can do int8
16:34 PerlJam (and I'm fairly sure I've used them before, just not with an array inside of a struct)
16:35 * TimToady is looking forward to buf1 support :)
16:36 benabik_ joined #perl6
16:36 moritz star: use NativeCall; say Carray[int8].new
16:36 p6eval star 2012.07: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&Carray' called (line 1)␤»
16:36 moritz star: use NativeCall; say CArray[int8].new
16:36 p6eval star 2012.07: OUTPUT«CArray+{IntTypedCArray}.new()␤»
16:36 moritz star: use NativeCall; my @a := CArray[int8].new; for ^8 { @a[$_] = $_ }; say @a[3]
16:37 p6eval star 2012.07: OUTPUT«3␤»
16:37 moritz seems to work
16:37 cognominal joined #perl6
16:40 PerlJam it's the interaction between the struct and the array that I don't quite get.
16:41 PerlJam (If shaped arrays already existed, I wouldn't have to worry about it)
16:41 arnsholt moritz: That work has stalled a bit. jnthn has kindly informed me that how that's going to work internally is going to change, so I'm holding off until that's sorted
16:54 Chillance joined #perl6
16:59 FROGGS joined #perl6
16:59 flightrecorder joined #perl6
17:03 masak greetings, #perl6
17:04 cognominal joined #perl6
17:04 cognominal joined #perl6
17:04 diakopter masak: howdy
17:07 masak been teaching for two days. now on train back home.
17:09 masak <sorear> not sure if I'll live to see the recordings
17:10 masak wow, someone sure transitioned from hope to cynicism quickly! :P
17:11 dalek ecosystem: e0635cd | (Tobias Leich)++ | META.list:
17:11 dalek ecosystem: added Inline::C
17:11 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/e0635cd76e
17:16 fgomez joined #perl6
17:16 cognominal joined #perl6
17:19 xinming joined #perl6
17:22 tadzik so, we can now rewrite loops in C?
17:23 tadzik :)
17:26 Celelibi joined #perl6
17:26 tadzik nice module FROGGS++
17:26 colomon wait, what!?
17:27 [Coke] wow. FROGGS++ #evil
17:28 colomon FROGGS++ indeed!
17:35 FROGGS thanks ^^
17:35 masak FROGGS++
17:35 FROGGS but it is basically copy&paste from Zavolaj
17:37 fgomez joined #perl6
17:38 colomon which does not change the fact it is a clever copy&paste.
17:44 perigrin joined #perl6
17:50 mdupont_ joined #perl6
17:55 timotimo aaw, rot90° isn't a valid method name :(
17:55 timotimo or can i quote it somehow?
17:59 moritz rot-π-half
18:02 spider-mario joined #perl6
18:04 timotimo is there a method for hypothenuse calculation in prel6 or is it unnecessary, because numbers won't overflow to Inf when squared?
18:05 colomon you're thinking of something that does sqrt($a ** 2 + $b ** 2)?
18:06 timotimo yes
18:06 timotimo because recently i read an article about why math libraries supply such a function and why it makes sense to have that
18:06 colomon the numbers certainly can overflow if they get that big.
18:06 moritz so, library it is then :-)
18:06 wamba joined #perl6
18:06 timotimo http://www.johndcook.com/blog/2010/06/02/whats-so-hard-about-finding-a-hypotenuse/ - this one
18:06 colomon I want to say I meant to add that function to p6 and forgot to actually do it.
18:08 colomon rn: say hypot(10, 20)
18:08 p6eval rakudo 097361: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&hypot' called (line 1)␤»
18:08 p6eval ..niecza v21-14-g3d9f4b4: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤     'hypot' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1435 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) â�¤  at /ho…
18:08 fgomez joined #perl6
18:08 colomon there were several "extra" math functions Cook talked about at one point or another that I meant to add.  but I don't recall ever actually adding them.
18:09 moritz star: use NativeCall; sub hypot(num, num) returns(num) is native(); say hypot(1e2, 1e2)
18:09 p6eval star 2012.07: OUTPUT«===SORRY!===␤Missing block␤at /tmp/QcpPgi6Um4:1␤»
18:09 colomon timotimo: any reason you'd like a name other than hypot?
18:09 moritz star: use NativeCall; sub hypot(num, num) returns(num) is native() {*}; say hypot(1e2, 1e2)
18:09 p6eval star 2012.07: OUTPUT«===SORRY!===␤Missing block␤at /tmp/BBn6iMGkni:1␤»
18:09 timotimo nope, hypot is good.
18:09 moritz star: use NativeCall; sub hypot(num, num) returns(num) is native {*}; say hypot(1e2, 1e2)
18:09 p6eval star 2012.07: OUTPUT«===SORRY!===␤Missing block␤at /tmp/tQ6j_NKF6Y:1␤»
18:09 moritz star: use NativeCall; sub hypot(num, num) returns(num) is native { }; say hypot(1e2, 1e2)
18:09 p6eval star 2012.07: OUTPUT«===SORRY!===␤Missing block␤at /tmp/ECYgBVn4LF:1␤»
18:10 benabik joined #perl6
18:10 moritz what am I doing wrong?
18:10 timotimo isn't 2012.08 out already?
18:10 kaare_ joined #perl6
18:10 colomon timotimo: give me a minute or two to finish what I was doing with $work.  or, you know, add it yourself.  ;)
18:16 kurahaupo joined #perl6
18:20 PerlJam moritz:
18:20 PerlJam star: use NativeCall; sub hypot(num,num) returns Num  is native {*}; say hypot(1e2,1e2);
18:20 p6eval star 2012.07: OUTPUT«141.42135623731␤»
18:20 PerlJam returns(num) was what was wrong.
18:22 PerlJam star: use NativeCall; sub hypot(num,num) returns num  is native {*}; say hypot(1e2,1e2);
18:22 p6eval star 2012.07: OUTPUT«141.42135623731␤»
18:23 PerlJam (I had typed Num out of habit the first time :)
18:24 GlitchMr back
18:24 GlitchMr 2012.07? Seriously?
18:25 GlitchMr It was 19 days from 2012.08 release
18:26 GlitchMr Also, for fun I've compiled 2010.07. It could be used to test scripts in perl6/bench-scripts and stuff like that
18:27 leont joined #perl6
18:30 GlitchMr For example, anagram.pl takes 100 seconds on 2010.07, but only 18.5 seconds on 2012.08
18:36 moritz I just showed my wife "The Day #perl6 Did Sarcasm", and her main complaint was about http://irclog.perlgeek.de/perl6/2012-05-10#i_5570350 Q:sarcasm not being imaginative enough :-)
18:37 moritz and we need something for ironyy
18:37 moritz .oO( and masak++ isn't supposed to answer "yeah, right" )
18:41 colomon timotimo: actually, tests for hypot would be really useful...  ;)
18:42 * PerlJam keeps reading "hypot" as "hypnot" and goes into a trance
18:43 timotimo i can do that later. now i have to attend the window and watch out for that little window of dryness in which i can drive my bike to the grocery store and get some foods
18:44 timotimo how does the summary mode work? does it encode something in the url so that i can copypaste it?
18:44 timotimo or is summary mode something that's "global", rather than per-user+sharable?
18:45 colomon timotimo: no rush, I'm still working on $work in another window.  just now got around to updating niecza, and there actually were changes this time around (\o/) so I'm going to do a spectest as well.  probably won't get to hypot for a bit yet.
18:45 moritz timotimo: it's global
18:45 moritz timotimo: there's a boolean flag in_summary in each row of the irclog table
18:45 timotimo well, oops then :)
18:48 PerlJam someone should to do some NLP on the IRC logs and pick out conversations.
18:48 PerlJam (someone who is bent in the shape of a linguist)
18:50 wk_ joined #perl6
18:50 GlitchMr perl6: printf '%g', Duration.new(1);
18:50 p6eval niecza v21-14-g3d9f4b4: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared name:â�¤        'Duration' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1435 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) â�¤  at /ho…
18:50 p6eval ..rakudo 097361: OUTPUT«This type cannot unbox to a native number␤  in any  at src/gen/BOOTSTRAP.pm:95␤  in sub sprintf at src/gen/CORE.setting:2131␤  in sub printf at src/gen/CORE.setting:2136␤  in block  at /tmp/hK6D0hbQfy:1␤␤»
18:51 GlitchMr "This type cannot unbox to native number"?
18:51 GlitchMr Why?
18:52 moritz because it's not set up as a box target for num
18:52 moritz and printf doesn't know how to do Perl 6 level coercions
18:53 moritz in the long run we need a printf that's aware of all of Perl 6's specialities
18:53 moritz like, big Int
18:53 PerlJam GlitchMr: you can always coerce the value yourself.
18:55 colomon ye gads, lots of test failures in the niecza spectest run!
18:58 GlitchMr https://gist.github.com/3745076
18:58 GlitchMr Benchmarking!
18:58 [Coke] colomon: https://raw.github.com/coke/perl6-roast-data/master/niecza_summary.out shows 75 failures.
18:59 colomon [Coke]: I don't have a count, but that sounds about right.
18:59 colomon investigating while $work compiles...
18:59 [Coke] probably just one or two new tests mid-file.
19:00 [Coke] ugh. I just fudged those on Friday evening.
19:00 [Coke] hopefully I didn't do it wrong.
19:01 colomon huh.  they seem to be working when I run them standalone (at least for the first couple I've tried)
19:01 colomon and the they're not fudged, either, so that's not it.
19:02 colomon yeah, looks like it may actually be a test system bug rather than a niecza-proper bug.
19:09 [Coke] not fudged? hurm.
19:10 [Coke] git show 5c64ac0 ?
19:10 colomon [Coke]: not fudged but they work.  maybe not the same failures you were seeing.
19:11 GlitchMr glitchmr@feather ~/bench-scripts> nice perl6 RUN.p6
19:11 GlitchMr perl6-2012.08 perl6-2010.07 niecza
19:11 GlitchMr anagram     16.844806     98.083399 5.827595
19:11 GlitchMr :-)
19:11 GlitchMr Just testing
19:12 [Coke] ugh. I am working in a language where I /should/ declare variables (else my scope is evilly global and invasive), but I cannot declare them unless I also initialize them. and there is no way in the language I can see to start them with an undefined value.
19:12 GlitchMr [Coke]: then use some meaningless value, such as 0 or ""
19:12 leont Can't you assign an undefined variable to them?
19:12 GlitchMr Or "[if you see this, something went wrong]"
19:13 sisar joined #perl6
19:13 GlitchMr What language it is, anyways?
19:14 leont tcl?
19:14 [Coke] leont: I'm trying to create an undefined variable. if I could do that, I'd have one to pass around to the next var declaration. ;)
19:14 [Coke] cfscript
19:15 leont The profanity in this channel *shakes his head* :-p
19:15 jnthn evening o/
19:15 colomon \o
19:15 GlitchMr set variable {If you see this then you did something that I haven't expected!}
19:15 jnthn We're doing profanity? Hm, well I just ate at "Hung Fook" :P
19:17 jnthn FROGGS++ # Inline::C
19:19 [Coke] GlitchMr: right. I'm reduced to things like "var foo = '';" when I really want just "var foo;"
19:20 jnthn I'm a little surprised how much of NativeCall has ended up in it...I wonder what needs to happen for better re-use.
19:20 colomon refactor!
19:20 colomon ;)
19:21 GlitchMr I think I've even done things like 'my $string = ""' in Perl 5 too :-)
19:21 GlitchMr I'm not sure why I'm doing that, but probably to avoid undefined value warnings with .= or something
19:22 benabik joined #perl6
19:30 GlitchMr https://gist.github.com/3745274
19:30 GlitchMr wow, niecza is fast!
19:30 GlitchMr '######.######' are tests which failed to run on niecza
19:31 GlitchMr (but, you shouldn't trust benchmarks - I mean - doing nothing two times slower than "Hello, world!"?)
19:32 masak no-ops have gone up in cost recently.
19:32 FROGGS jnthn: I ended up just copying all from NativeCall just to get it to work; I dont know exactly how it should be like in the end
19:32 tadzik buahahaa. I now have a device that controls my music player on my laptop through my HiFi's remote control
19:32 tadzik arduino++
19:32 tadzik Now I need to sneak Perl 6 here somewhere
19:33 FROGGS jnthn: maybe I should better use NativeCall and call its subs, instead of carrying its code around
19:36 arnsholt FROGGS: The less duplication the better is a good rule, in general
19:36 FROGGS ya, I know
19:37 GlitchMr I like that part:
19:37 GlitchMr non-str-comb      0.628682     89.944591      1.376188
19:37 GlitchMr But... why it took 90 seconds for simple test?
19:37 jnthn moritz: On that gist, are these times in seconds?
19:37 jnthn er, sorry
19:37 GlitchMr jnthn: yes
19:37 jnthn GlitchMr: ^
19:38 GlitchMr Converting between integers and numbers was slow in old Rakudo versions or what?
19:38 jnthn GlitchMr: OK, so looking at the left column (current Rakudo) vs the right column (Niecza), excluding those that don't run on both implementations, Rakudo is faster on 6 and Niecza is faster on 7 of them.
19:39 GlitchMr say [+] (100..200).comb>>.Int;
19:39 jnthn GlitchMr: And yes, 2010.07 was really slow.
19:39 GlitchMr I wonder why it took 90 seconds on 2010.07
19:39 GlitchMr It's just 100 numbers, converted into digits and summed together
19:39 jnthn You know all that pain we went through when we rebuilt loads of bits of Rakudo in nom?
19:39 jnthn This is why. :)
19:40 GlitchMr No, I wasn't there then
19:41 GlitchMr I wanted to check http://www.youtube.com/watch?v=tCel6lpDTZI myself
19:41 jnthn GlitchMr: Ah. You missed that fun then :)
19:43 * jnthn is curious why evne current Rakudo does terrible at pick-words
19:43 tadzik non-str-comb      0.628682     89.944591      1.376188
19:43 tadzik wooot :)
19:44 jnthn GlitchMr: Where do I find the pick-words source?
19:44 GlitchMr jnthn: https://github.com/perl6/bench-scripts
19:44 GlitchMr It's from that repository
19:44 jnthn tack
19:44 GlitchMr It's all from that repository
19:45 jnthn ah, but do I have kcachegrind on this laptop since I rebuilt all the things...
19:45 tadzik ...linux laptop?
19:45 jnthn Windows :)
19:45 tadzik or just kcachegrind on windows? :)
19:45 jnthn Well, the big problem is, I can never remember where I found the darn thing... :)
19:45 GlitchMr tadzik: KDE is on Windows
19:46 tadzik blasphemy! :P
19:46 GlitchMr I actually have used Kate as my text editor on Windows
19:47 GlitchMr It sort of worked
19:47 rurban KDE via cygwin-ports or native?
19:47 GlitchMr Native
19:47 GlitchMr windows.kde.org
19:48 GlitchMr Kate is awesome - it's almost like vim
19:48 GlitchMr CTRL+WINDOWS+V - and Kate magically turns into vi
19:49 cognominal_ joined #perl6
19:50 GlitchMr But you have mouse, as useless addition
19:50 * jnthn downloads the Windows port of kcachegrind, and hopes it works
19:50 GlitchMr jnthn: it worked for me
19:51 GlitchMr When I was using Windows
19:51 diakopter jnthn: does kcachegrind have to have had the same compiler as the target?
19:51 jnthn shit, sourceforge is an add-filled crap heap these days
19:51 jnthn diakopter: no
19:51 jnthn *ad
19:51 jnthn (the had an ad with a download button that looks just like the real one... :/)
19:51 benabik jnthn: dice.com just bought it, which made me wonder "why?"
19:51 jnthn .oO( hopefully so they can make it go away? )
19:52 GlitchMr KCacheGrind was crashing when making graphs, but other than that it worked.
19:52 jnthn It used to suck a lot less. :/
19:52 jnthn GlitchMr: I had a version that did that, but I think the most recent one I've been using works.
19:53 GlitchMr Actually, I find it surprising that I don't see any sort of ads on GitHub
19:53 jnthn GlitchMr: Maybe 'cus github has a better business model? ;-)
19:54 GlitchMr Well, I haven't paid them anything
19:54 benabik GlitchMr: github sells training, private repositories, and enterprise code hosting hardware
19:54 GlitchMr But because they still somehow survive, I guess they get enough money from GitHub Enterprise and private projects
19:54 GlitchMr s/projects/repositories/
19:54 * jnthn pays for a few privates, and his $dayjob uses it too
19:55 jnthn I run into quite a few people who pay a little for some private repos
19:55 jnthn So I assume they do fairly well
19:55 * [Coke] knows at least one big name customer of github enterprise. (hopefully they'll actually seal the deal soon so it can get installed so I can start using it!)
19:55 leont Github's prices are reasonable enough that I imagine plenty of people do
19:55 jnthn leont: Yes, it's priced at "huh, that's a beer!" levels.
19:55 jnthn Well, if you live in Sweden anyway :P
19:55 masak Github is one of the few companies that I like to give money to monthly partly because I *like* them.
19:56 GlitchMr Actually, I like GitHub business model
19:56 GlitchMr Perhaps they expect that even if somebody won't pay for private repositories, it will recommend GitHub somebody else and he will pay for those.
19:57 benabik I imagine that private repositories are not their primary source of income.
19:58 GlitchMr I actually wonder why somebody would use Github Enterprise when private repositories just work
19:58 benabik Because Enterprise keeps it inside your network.
19:58 [Coke] GlitchMr: control.
19:59 [Coke] I wouldn't want my work software hosted outside of $DAYJOB's very large network.
19:59 rurban I'd like a nice backtrace and cachegrind of a typically slow pir function call.
20:00 rurban Maybe it's optimizable easily. (as not going through various va_args sprintf, call and sig parsing steps)
20:01 GlitchMr Hmmm... but if you have 125 or more private repositories, github enterprise really seems cheaper
20:01 GlitchMr I meant, 51 or more
20:02 GlitchMr And team size of max 20
20:02 GlitchMr But when team size is larger, GitHub seems better... unless you want more than 600 private repositories (GitHub doesn't have plans for that many)
20:03 rurban gitororius is also easy to easy for companies. we use it.
20:03 rurban gitorious
20:03 tadzik DJ Moment?
20:03 tadzik ww, sorry
20:05 cognominal joined #perl6
20:07 pmurias joined #perl6
20:08 pmurias jnthn: t/nqp/60-bigint.t fails on my machine
20:09 pmurias tests 28,29 and 34
20:12 [Coke] looks like rakudo is backsliding a bit:
20:12 [Coke] https://github.com/coke/perl6-roast-data/blob/master/rakudo_summary.out#L2086
20:12 pmurias jnthn: it seems the calculations are a bit less accurate
20:14 [Coke] OH.
20:15 FROGGS jnthn: I cant use Inline and NativeCall in one script, I get: Cannot import symbol '&trait_mod:<is>' from package 'Inline', since it already exists in the lexpad
20:15 * [Coke] wonders if he should automatically PUSH those updates, since he's looking at 4 day old roast data.
20:15 FROGGS I thought that this would be fine if I use multi
20:18 [Coke] https://gist.github.com/4c035e78f97668290146 - latest rakudo failures
20:18 [Coke] colomon: niecza only has one failure on latest data.
20:18 colomon [Coke]: I've gotten intermittent niecza spectest fails for a while now...
20:20 [Coke] colomon: looks like they cleaned up on 9/17
20:20 [Coke] (daily run)
20:20 colomon I mean literally intermittent, like one run works and the next run doesn't.
20:21 * colomon is running spectest again to see what happens.
20:28 stopbit joined #perl6
20:31 colomon [Coke]: all tests successful this time around, no changes to niecza or roast.
20:33 [Coke] r: my @a = <thing thinger bar barfer>; @a.sort($^b.chars <=> $^a.chars).say
20:33 p6eval rakudo 097361: OUTPUT«===SORRY!===␤Cannot use placeholder parameter $^b in the mainline␤at /tmp/G1ABTxPq_N:1␤»
20:33 [Coke] r: my @a = <thing thinger bar barfer>; @a.sort({$^b.chars <=> $^a.chars}).say
20:33 p6eval rakudo 097361: OUTPUT«thinger barfer thing bar␤»
20:34 [Coke] *sigh*.
20:34 [Coke] I won't tell you how many lines of cfscript that is.
20:34 diakopter it is in the quadrillions?
20:35 masak he won't tell.
20:35 [Coke] biggest issue is that you can't pass in a function to the sorter.
20:36 [Coke] so, again, really looking forward to coding my apps in mojoSix.
20:38 atrodo joined #perl6
20:39 TimToady I am currently running a Perl 6 program that is supposed to produce a value of five hundred seventy one sexdecillion or so...
20:39 sirrobert I did that the other day (I think I took a uuid as a hex number to the 1000th power
20:39 sirrobert it worked!  pretty quickly, too =)  (~4 seconds)
20:39 TimToady that's the largest left truncatable prime in base 18
20:40 diakopter 0_0
20:40 TimToady which takes considerably longer than 4 seconds to calculate
20:40 TimToady I hope it will finish later today...
20:40 sirrobert whatever it was, it worked fast =)
20:40 diakopter TimToady: do you have a progress indicator?
20:41 TimToady yes
20:41 TimToady every pass through it calculates the next set of primes with one more digit, and prints the number of candidates
20:42 TimToady well, the next set of probably primes
20:44 TimToady ooh, just finished a pass, almost up to a million candidates now
20:44 TimToady 7 49 314 1416 5187 15453 39296 86710 169131 297010 474064 688371 922770
20:44 TimToady so it's got 13 digits (base 18) now
20:44 TimToady it should peak at about 1.5 million candidates and then go back down
20:45 * diakopter tries to fathom the significance of base 18
20:46 atrodo_ joined #perl6
20:46 TimToady the odd numbered bases tend to converge much faster
20:48 cognominal joined #perl6
20:51 colomon niecza> hypot(3,4)
20:51 cognominal_ joined #perl6
20:51 colomon 5
20:51 colomon timotimo: ^^
20:52 * colomon is pondering whether 3.hypot(4) should also work
20:52 TimToady not to mention "3 hypot 4"  :)
20:53 diakopter TimToady: is it possible to create a P6 slang that does RPN
20:54 colomon TimToady: oooo.  what do you think?  3 hypot 4 might outweigh both other versions....
20:54 TimToady depends on what you mean by "possible"
20:54 TimToady colomon: then [hypot] would calculate a spiral
20:55 jnthn [Coke]: Are you sure you're really building latest Rakudo? All the fails relate to things fixed in Rakudo in recent days that then had tests added or unfudged.
20:57 [Coke] jnthn: huh. no, I'm running a rakudo from Aug 24th.
20:57 [Coke] it's supposed to be updated daily.
20:57 TimToady niecza: say 3 Z[&hypot] 4
20:57 p6eval niecza v21-14-g3d9f4b4: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤     'hypot' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1435 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) â�¤  at /ho…
20:57 * [Coke] guesses he will have to start added a git hash to the spec runs for diagnostic purposes.
20:57 TimToady oh, that's your niecza
20:58 colomon TimToady: indeed
20:58 colomon but I can check it in quickly.  just wanted to figure out what the correct form was first.
20:59 TimToady well, once can cross generator forms with [&hypot], so it's probably not important to make it an infix
20:59 [Coke] jnthn++ #sanity check
20:59 TimToady how often are you going to want to do hyper hypot anyway?
20:59 colomon TimToady: okay.  sub for sure.  method or not?
20:59 TimToady .&hypot is there too
20:59 colomon TimToady: me?  never so far.  but it's a handy function, and timotimo++ requested it.
20:59 colomon okay, sub only for now, then.
20:59 TimToady he want's a hyper hypot?
21:00 TimToady *wants
21:00 jnthn [Coke]: Yeah, I just looked at the list of tests and was like..."hang on..." :)
21:00 dalek niecza: f226bf6 | (Solomon Foster)++ | lib/CORE.setting:
21:00 dalek niecza: Add sub hypot.
21:00 dalek niecza: review: https://github.com/sorear/niecza/commit/f226bf64d4
21:01 colomon TimToady: so you're thinking the spiral of theodorus would be something like [\&hypot] (1 xx 17)  ?
21:01 sorear good * #perl6
21:02 colomon niecza> [\[&hypot]] 1 xx 17
21:02 colomon 1 1.4142135623730951 1.7320508075688772 2 2.23606797749979 2.4494897427831779 2.6457513110645907 2.8284271247461903 3 3.1622776601683795 3.3166247903554003 3.4641016151377548 3.6055512754639896 3.7416573867739418 3.8729833462074175 4 4.1231056256176606
21:02 colomon nr: say sqrt(17)
21:02 p6eval rakudo 097361: OUTPUT«4.12310562561766␤»
21:02 p6eval ..niecza v21-14-g3d9f4b4: OUTPUT«4.1231056256176606␤»
21:05 colomon o/, sorear
21:05 cognominal_ joined #perl6
21:08 timotimo i didn't ask for a hyper hypot, but hypotenuse in more dimensions seems sensible.
21:08 colomon niecza: say hypot(3,4)
21:08 p6eval niecza v21-14-g3d9f4b4: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤     'hypot' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1435 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) â�¤  at /ho…
21:10 sorear o/ colomon
21:12 masak sorear! \o/
21:14 sorear masak!
21:18 masak 'night
21:19 jnthn 'night, masak
21:19 cognominal_ joined #perl6
21:21 tadzik good knight
21:31 docdoctor joined #perl6
21:33 jnthn Conclusion on pick words: implementing it in terms of comb which is in turn implemented in terms of match is an elegant way to do it, but not an especially optimal one. :)
21:33 jnthn (where "it" is "Str.words")
21:34 cognominal_ joined #perl6
21:36 kurahaupo joined #perl6
21:37 jnthn alas, I should sleep now rather than hacking up a faster version :)
21:42 FROGGS joined #perl6
21:46 flightrecorder joined #perl6
21:47 kurahaupo joined #perl6
21:56 cognominal_ joined #perl6
21:58 FROGGS joined #perl6
22:09 docdoctor joined #perl6
22:14 cognominal joined #perl6
22:17 gfldex a jolly good talk like a pirate day me mateys!
22:25 stopbit joined #perl6
22:31 whiteknight joined #perl6
22:32 cognominal joined #perl6
23:11 flightrecorder joined #perl6
23:12 FROGGS joined #perl6
23:32 FROGGS joined #perl6
23:36 flightrecorder joined #perl6

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

Perl 6 | Reference Documentation | Rakudo