»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:02
ggoebel left
|
|||
raiph | #perl6: i've been using the new irclog summary feature to keep the klog (short backlog) for today fresh | 00:04 | |
00:04
cart left,
cart joined
|
|||
raiph | to see the klog for today, click the "summary" link at irclog.perlgeek.de/perl6/today | 00:06 | |
00:07
ggoebel joined
|
|||
raiph | i have now read thru and klogged days 03, 04, 14, 15, 16, 17 of this month. | 00:07 | |
i plan to keep updating today's klog during each day. | 00:09 | ||
so consider reading it as an alternative to reading the full backlog. | |||
someone else klogged some of yesterday's log. :) i'd love to know who. | 00:11 | ||
00:11
ggoebel left,
Circlepuller__ joined
|
|||
raiph | beyond helping to keep the latest klog fresh, i have two options for spending klog related time this week. | 00:14 | |
1. create klogs for 05 thru 013. | 00:15 | ||
00:15
Circlepuller_ left
|
|||
raiph | 2. create an annotated klog summary, like my pretty 2012-09-02 summary (either daily or weekly) | 00:17 | |
If anyone is actually reading these klogs and this line, please note on channel which of these two you prefer | 00:18 | ||
00:19
ggoebel joined
|
|||
raiph | (pretty 2012-09-02 summary: blogs.perl.org/users/perl_6_reports...9-02.html) | 00:20 | |
(today's klog: irclog.perlgeek.de/out.pl?channel=p...summary=1) | |||
. | 00:22 | ||
[Coke]: "mentioning [mystery feature] someplace other than backscroll is a good idea." | 00:23 | ||
[Coke]: heh. I've been mentioning it in the primary places to which I have access: | 00:24 | ||
primary source: blogs.perl.org/users/perl_6_reports/; links at reddit; hn; perlmonks; here | 00:26 | ||
00:28
MayDaniel left
|
|||
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 randat /tmp/ZWYcu7tAwP:1» | ||
00:34
ggoebel left
00:36
raiph left
|
|||
rurban | Still Changelog entries needed? | 00:37 | |
oops... | |||
00:39
ggoebel joined
00:40
araujo left
00:46
atrodo left
00:56
araujo joined
01:00
anuby joined
01:01
hypolin joined
01:02
_daniel-s__ joined
01:05
ggoebel left,
daniel-s__ left,
integral joined,
integral left,
integral joined
01:06
Targen joined
01:09
drbean left
01:11
ggoebel joined
01:14
drbean joined
01:15
ggoebel left
01:17
raiph joined
01:21
ggoebel joined
01:27
araujo left
01:29
araujo joined,
araujo left,
araujo joined
|
|||
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:30 | |
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:32 | ||
01:33
dayangkun left,
dayangkun joined
|
|||
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:33 | |
It clearly needs some attention to expanding it, but it's very inspiring work indeed. :) Thanks for the reference | 01:34 | ||
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:36 | ||
geekosaur is trapped somewhere beteen a comment on game theory and one about leisure suit larry | 01:41 | ||
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 | |
i have implemented both gist and Str. | |||
ah, it terminated with a stack explosion. seems i need to implement perl | |||
raiph | timotimo: ooc are you using rakudo or niecza? | 01:51 | |
sorear | raiph: rakudo, niecza doesn't say objects :D | 01:52 | |
raiph | sorear: thanks | ||
timotimo: are you using jnthn's debugger? | |||
timotimo | there's a debugger? sweet! | 01:54 | |
sorear | jnthn was giving an unremarkable talk on exceptions at yapc::eu, then derailed it to introduce a DEBUGGER | 01:55 | |
you had to be there, the shock was palpable | |||
colomon | :) | 01:56 | |
timotimo | :D | 01:57 | |
is there a video recording up already? | |||
sorear | not sure if I'll live to see the recordings | 01:58 | |
raiph | 6guts.wordpress.com/2012/08/28/a-ra...-debugger/ | ||
timotimo | :D | 01:59 | |
raiph | timotimo: what version of rakudo are you using? | ||
timotimo | This is perl6 version 2012.08-82-g0ead9e4 built on parrot 4.7.0 revision RELEASE_4_7_0-165-g29796c6 | 02:00 | |
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:02 | ||
02:03
orafu left
|
|||
sorear | what kind of computation are you doing? | 02:03 | |
02:03
orafu joined
|
|||
timotimo | hm, in this case it'll be a simple comparison | 02:04 | |
sorear | .max ? | ||
colomon | timotimo: maybe I'm misunderstanding something, but isn't that just .map? | ||
timotimo | something like select the $foo where $foo.other eqv $my-other-thing | ||
sorear | @list.first(*.other eqv $my-other-thing) | ||
timotimo | ah, cool and obvious. thanks! | ||
02:04
dammark joined
02:05
_jaldhar joined
|
|||
geekosaur | huh. first description sounded like a fold to me | 02:06 | |
sorear | me too | ||
but that's probably because of our shared past | |||
02:07
thou left
|
|||
raiph | timotimo: i'm guessing you installed rakudo, not rakudo star, right? | 02:08 | |
dammark | me too | ||
timotimo | yes, i built it from git. | ||
geekosaur | (actually I thought reduce, but that's because my first exposure to it was not in fact haskell, it was apl :) | ||
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» | ||
timotimo | oh, silly me. | ||
raiph | then i think here's how you get the debugger: github.com/jnthn/rakudo-debugger | ||
timotimo | r: my $nearest = 10; say (any(*.a, *.b) eqv $nearest).WHAT | ||
p6eval | rakudo 690dad: OUTPUT«Junction()» | ||
timotimo | does that do what i think it does? | ||
02:10
_jaldhar is now known as jaldhar
|
|||
sorear | probably not | 02:10 | |
02:10
dammark left
|
|||
timotimo | got it to work better with { any{$^a.a, $^a.b) eqv $nearest } | 02:13 | |
sorear | "wow, it must really have been broken if mismatching the braces made it better" | 02:17 | |
geekosaur | *snrk* | 02:18 | |
timotimo | :3 | 02:21 | |
just tells me i need to go home, get some rest. | 02:22 | ||
decommute & | |||
02:27
raiph left
02:38
timophone_ joined
02:44
mucker joined
02:53
timophone_ left
03:11
gootle joined
|
|||
timotimo | i overuse infix operators immensely in my program. i wonder why this is. | 03:12 | |
"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 | 03:13 | ||
03:31
mucker left
03:56
araujo left
04:15
satyavvd joined
|
|||
moritz | \o | 04:17 | |
04:22
_daniel-s__ is now known as daniel-s
04:49
wamba joined
05:13
mdupont joined
|
|||
dalek | osystem: 77c1056 | duff++ | META.list: Add Locale::US |
05:52 | |
05:54
kaleem joined
05:58
daxim joined
06:00
awwaiid joined,
snarkyboojum joined
06:01
wamba left
06:02
quietfanatic joined
06:12
Yappocall joined
06:17
cognominal left
06:24
cognominal joined
06:32
MayDaniel joined
06:34
cognominal left,
cognominal joined
06:41
cognominal left
06:43
MayDaniel left
06:49
cognominal joined
06:50
araujo joined,
araujo left,
araujo joined
07:03
flightrecorder joined
|
|||
dalek | nda: d519ac8 | (Tobias Leich)++ | bin/panda: absolute paths on windows never start with a slash `$home` already is `C:\Documents and ...`, you can't put cwd before that. |
07:04 | |
nda: a918d53 | tadzik++ | bin/panda: Merge pull request #20 from FROGGS/master fixing destdir, windows absolute paths dont start with slash |
|||
07:04
gootle left
07:07
fgomez left
07:12
gootle joined,
brrt joined
07:23
wamba joined
07:27
FROGGS joined
|
|||
FROGGS | hi there | 07:27 | |
moritz | \o | 07:29 | |
moritz is happy to see the panda running | |||
07:30
kresike joined
|
|||
kresike | good morning all you happy perl6 people | 07:30 | |
FROGGS | we need a good smoke system... this way somebody would have known that panda wasnt working on windows | 07:31 | |
kresike | FROGGS, just blame windows for that :) | 07:32 | |
moritz | FROGGS: yes, and we need to people to run that smoke testing system | 07:33 | |
07:35
wamba left
|
|||
FROGGS | moritz: I can do that (at least the second part) | 07:35 | |
but I need help doing the first one | |||
but maybe tadzik wants to do that too ;o) | 07:37 | ||
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/ | ||
FROGGS | morning | ||
moritz: I like the "new" way cpan can do that | |||
you just run: cpan smoke | 07:39 | ||
moritz | \o jnthn | ||
FROGGS | doing "panda smoke" would be awesome, fetching a list of modules, and test them | ||
jnthn | The "test all the things" bit is already done | ||
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 | ||
jnthn chuckles at the backlog | |||
"nobody expects the debugger inquisition!" | |||
tadzik | FROGGS: we have a smoke system. We don't have tests for windows, and we don't have smokers on windows | ||
moritz | and the smoker tester only works once panda is installed, no? | 07:41 | |
FROGGS | moritz: I guess thats fine | ||
tadzik | FROGGS: 'panda smoke' will be just 'smoker <projects.json>' if you install emmentaler | ||
FROGGS | I have windows, I have panda installed ;o) | ||
tadzik | it's already there | ||
jnthn | oh, nice | ||
FROGGS | ahh, emmentaler, right | ||
tadzik | see tjs.azalayah.net/new.html and the dots at feather.perl6.nl/~sergot/modules/ | 07:42 | |
moritz | tadzik: fwiw I've stolen that name :-) | ||
tadzik | moritz: what name? | ||
moritz | tadzik: for $work I've written a small website full of security holes, in order to teach looking for them | ||
FROGGS | and I have Mac OSX, FreeBSD, NetBSD, OpenBSD, GNU k/FreeBSD, GNU Hurd, Solaris | ||
I'm sure I forgot something | 07:43 | ||
moritz | tadzik: I've named it emmentaler, because of the holes :-) | ||
tadzik | haha : | ||
) | |||
nice one | |||
07:43
fhelmberger joined
|
|||
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:44 | |
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:46 | |
07:47
kurahaupo joined
|
|||
FROGGS | are these feather servers powerfull enough to run the cpantesters code? | 07:48 | |
+database | |||
moritz | if the size of smoker community doesn't explode, it shouldn't be a problem | 07:49 | |
I mean, I expect at most about 100 reports a day from 20 reporters each by the end of the year | |||
tadzik | FROGGS: maybe we could just use the existing infrastructure and just send reports we generate which are compatibile | ||
moritz | they should be able to handle that easily | 07:50 | |
and if not, I could ask my employer if they are willing to donate some server power | |||
07:55
drbean_ joined
07:57
drbean left,
drbean_ is now known as drbean
08:08
cognominal left
08:11
kurahaupo left
|
|||
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:18 | |
moritz | probably my Callable[:(Int)] %hash; or something along these lines | 08:19 | |
but type constraints on containers don't work well enough in rakudo for it be useful | |||
felher | moritz: okay, then i'll leave it for know. Thanks :) | 08:20 | |
08:20
Psyche^ joined
|
|||
jnthn | You can do it most reliably today with a subset type. | 08:20 | |
felher | jnthn: subset + where + signature-introspection? | 08:21 | |
jnthn | subset IntArgy of Block where { .params == 1 && .[0].type ~~ Int given $^b.signature }; # or so | ||
felher | jnthn: yeah, nice, thnx :) | 08:22 | |
08:23
Patterner left,
Psyche^ is now known as Patterner
|
|||
moritz | .params[0].type ~~ Int | 08:24 | |
though I wonder if we should make at_pos work in Signature :-) | |||
jnthn | oh, yes... | 08:25 | |
though | |||
subset IntArgy of Block where { .elems == 1 && .[0].type ~~ Int given $^b.signature.params }; # :-) | 08:26 | ||
moritz | :-) | ||
jnthn | Today's $dayjob involves writing a Perl 6 script called zombify... :) | ||
felher | at_pos is rakudo-specific, isn't it? | ||
moritz | felher: it is, but we should really spec it at AT_POS | 08:27 | |
felher | moritz: i see :) | ||
jnthn: zombify? :D | |||
moritz thought jnthn's dayjob of consisted of unzombifying code (either killing it outright, or resurrecting it) | 08:29 | ||
jnthn | Sometimes the killed code needs to live on long enough to know it really is OK being dead :) | 08:30 | |
08:30
jia_ joined
|
|||
moritz | .o( burial with staging and checkpoints :-) | 08:31 | |
tadzik | hey, I did that already | ||
felher: Typed::Subroutines | |||
github.com/tadzik/Typed-Subroutines | 08:32 | ||
felher | tadzik: sweet :) | 08:33 | |
thnx :) | |||
tadzik | you're welcome :) | ||
cdn.memegenerator.net/instances/400...111566.jpg | |||
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. | ||
felher | :D | 08:34 | |
tadzik | hehe | ||
jnthn | heh | 08:35 | |
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:36 | ||
mathw | :) | 08:37 | |
moritz | Perl 5 got them in 5.0, right? | ||
08:37
jia_ left
|
|||
mathw | That said, it's still a big deal that they're in a language so mainstream as C# | 08:37 | |
jnthn | mathw: Yes, very much so. | 08:38 | |
moritz | aye | ||
mathw | it's like the rest of the worl dis finally catching up | ||
...with Lisp | |||
jnthn | mathw: Had chance to play with the new async/await stuff yet? | ||
mathw | No we don't have VS2012 | ||
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 :-) | ||
jnthn | Mostly because I had to give a talk about 'em :) | ||
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
08:47
cognominal joined
08:53
cognominal left
09:07
wamba joined
|
|||
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 | |
09:11
cognominal joined
|
|||
moritz still wonders if it's possible to make a type system that's static but not annoying | 09:13 | ||
arnsholt | The Common Lisp type system is pretty neat | 09:14 | |
It's not really static, as such though, I think | |||
(My main beef with Lisp is the syntax. Cool language, terrible syntax) | 09:15 | ||
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:16 | |
mathw | meh, that's just because most languages have a deeply inadequate type system | 09:17 | |
jnthn | My word are grammars awesome... :) | ||
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 | ||
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 | |
Yeah, once you start basing your work on the types rather than working around them, it flows quite smoothly | |||
sorear | nwc10++ | ||
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:20 | |
09:21
kurahaupo joined
|
|||
jnthn | mathw: Yeah, though Rakudo does a fairly restricted subset of what can be done in that area. | 09:21 | |
09:22
sftp joined,
sftp_ left
09:27
wk_ left
|
|||
mathw | yes but it can always improve in the future :) | 09:29 | |
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 :) | ||
mathw | kind of fun though | ||
jnthn | yes, it's fun stuff to work on :) | 09:32 | |
mathw | woohoo! My friends' baby has arrived! Cue cute pictures! | ||
moritz | \o/ | 09:33 | |
I was holding a 10 day old baby the other day | |||
mathw | I was at this one's brother's first birthday party two weeks ago | 09:34 | |
he's quite a handful now he's mobile | 09:35 | ||
moritz | oh yes, that, erm, increases the administrative overhead :-) | 09:37 | |
mathw | not quite sure how they're going to cope with a newborn and a one-year-old, but they seem confident | 09:39 | |
maybe they've just given up on sleep and stockpiled coffee | |||
09:40
marmay joined
|
|||
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:40 | |
so, both of them now need to wait a few minutes longer (on average) until nurishment or solace is supplied | 09:42 | ||
dalek | ecza: 254ba49 | sorear++ | lib/Kernel.cs: Subs know their setting, avoid Top in binder |
||
ecza: 7d7ce2e | sorear++ | lib/Kernel.cs: CreateBasicTypes should know its target setting |
|||
ecza: 3d9f4b4 | sorear++ | lib/ (3 files): ContextHandlers know their setting and do not need to use Top |
|||
09:44
dayangkun left
|
|||
Ulti | can someone point me in the right direction for parsing STDIN with a grammar without first slurping up all characters | 09:47 | |
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? | ||
sorear | you could run it a line at a time | ||
Ulti | sorear: ok | ||
apart from my parser looks at new lines | |||
and I dont know how many lines there are per record, hence the grammar | |||
moritz | then you must .slurp for now | ||
Ulti | okedoke | ||
thanks | 09:49 | ||
09:49
sisar joined
|
|||
Ulti | are strings immutable in perl6? | 09:56 | |
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 | ||
Ulti | ok | ||
moritz | but if you do a join on a lazy list, the list stops being empty | 09:58 | |
erm | |||
stops being lazy | |||
so it's all evaluated, and then joined | |||
Ulti | yeah so I'll end up pulling in everything anyway but worse all the substrings will be hanging around | ||
09:58
cognominal left
|
|||
felher | moritz: isn't there substr-rw or something like that? | 09:58 | |
(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. | ||
er, wait | |||
it returns a scalar | |||
Or wait, a Proxy I guess... | |||
10:01
hypolin left
|
|||
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 | ||
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 ;) | ||
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
|
|||
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 | |
10:05
Ambrose joined,
anuby left,
kurahaupo left
|
|||
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 | |
10:05
wk_ joined
|
|||
jnthn | lunch & | 10:05 | |
Timbus | ehh thats really up to parrot | 10:06 | |
Ulti | well yeah | ||
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
|
|||
not_gerd | hello, #perl6 | 10:06 | |
Ulti | hey hey | ||
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 ;) | ||
not_gerd | is this analysis of Perl6 container semantics correct: gist.github.com/3742384 | 10:08 | |
Timbus | thats a lot of monkeys writing a lot of shakespeare | ||
Ulti | thats how evolution of protein sequence is :) | 10:09 | |
10:10
kurahaupo joined
|
|||
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:10 | |
Ulti wanders off | 10:12 | ||
10:20
gootle left,
gootle1 joined
10:31
wamba left
|
|||
sisar | r: say Int().WHICH | 10:37 | |
p6eval | rakudo 690dad: OUTPUT«Int|0» | ||
sisar | r: say Bool().WHICH | ||
p6eval | rakudo 690dad: OUTPUT«Bool|-1696510452» | ||
sisar | r: say Bool().WHICH | ||
p6eval | rakudo 690dad: OUTPUT«Bool|1056050998» | ||
sisar | hmm | ||
can anyone explain the weird numbers ? | 10:38 | ||
moritz | memory addresses | ||
.WHICH isn't meant to be explained, just used :-) | |||
sisar | moritz: ok. | 10:41 | |
where is .WHICH useful ? I'm looking for a simple usecase | |||
FROGGS | moritz: so you give me access to a feather so I can setup our pandatesters environment? :o) | ||
moritz | FROGGS: yes. Please email me your desired username, real name and purpose (I know it, just administrative procedure) | 10:42 | |
to [email@hidden.address] | |||
Timbus | sisar, i assume they're unique addresses, so, for variable identification, or hashing? | 10:43 | |
10:46
cognominal left
|
|||
Timbus | .. okay so they arent memory addresses | 10:46 | |
10:47
pmurias joined
|
|||
moritz | yes, hashing | 10:47 | |
and object identity comparison | |||
pmurias | jnthn: I added a failing test to my nqp fork on github (and made a pull request) | ||
jnthn: .attributes seems to be broken | |||
sisar | can I somehow search for the word 'WHICH' for Perl6 example on rosettacode.org ? Rosettacode's search did not help. | 10:48 | |
10:48
Ambrose left
|
|||
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 | |
and I doubt that any rosettacode example uses it | |||
sisar | moritz: ah, ok. Its just that I don't understand what it exactly does. | ||
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 | ||
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 | ||
10:53
cognominal joined
|
|||
Ulti | moritz so a lot like Object.hashCode() in Java | 10:55 | |
10:55
flightre1 joined,
FROGGS left,
FROGGS joined,
flightrecorder left
|
|||
moritz | Ulti: aye | 10:57 | |
11:04
dayangkun joined
11:06
Su-Shee_ joined
11:09
Su-Shee left
|
|||
jnthn | pmurias: Broken how? | 11:11 | |
Also yes, file an issue rather than adding a broken test. | |||
11:11
gootle1 left
|
|||
jnthn | Or fix it ;) | 11:11 | |
I'm pretty sure it must at least somewhat work :) | |||
given various things rely on being able to call it | 11:12 | ||
win! my $dayjob grammar parsed all 600 things :) | 11:13 | ||
That was easier than expected. perl6++ | |||
colomon | \o/ | 11:15 | |
I think grammars are a huge win for p6. I found 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. | |||
tadzik | colomon, Y U NO add it to the ecosystem? :P | 11:19 | |
colomon | see "busy" above | ||
daxim | do you run kstep on your desktop? | 11:20 | |
jnthn | heh, you'd not want to one I just wrote in ecosystem | ||
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... | ||
jnthn | TFS, Y U take 5 minutes to delete a branch? :'( | 11:21 | |
11:23
telex left,
Su-Shee_ is now known as Su-Shee,
JimmyZ joined
11:24
telex joined
|
|||
pmurias | moritz: failing tests are frowned upon? ;) | 11:26 | |
moritz | pmurias: yes ;-) | 11:27 | |
pmurias | moritz: so the prefered way would be to put the test in a bugtracker issue? | 11:28 | |
moritz | pmurias: yes | 11:29 | |
pmurias | jnthn: fails with pastie.org/4746716 | 11:33 | |
I'll try to fix that | |||
11:33
daxim left
|
|||
jnthn | ah | 11:34 | |
yeah, the meta-objects need some nqp::isnull checks adding. I thought I caught most of those. | 11:35 | ||
11:35
kurahaupo left
|
|||
jnthn | Trouble is we can't use NQPMu as it doesn't exist yet :) | 11:35 | |
pmurias | it's a required named parameter | ||
jnthn | Oh | ||
so...how on earth does it even get into the call | |||
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)» | ||
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)» | ||
pmurias | jnthn: it's *implicitly* required ;) | 11:38 | |
if $local {...} fails with a null | |||
jnthn | oh | 11:39 | |
then it's not required at all :) | |||
and yes, defaults get null in the NQP MOP classes | 11:40 | ||
well, knowhows :) | |||
Classes not invented yet at that point ;) | |||
11:41
satyavvd left,
mucker joined
|
|||
jnthn | tssk...VS hangs again | 11:43 | |
not_gerd | jnthn: any comments on gist.github.com/3742384 ? | ||
jnthn | Based on today's evidence, Rakudo is more stable than Visual Studio :P | ||
pmurias | jnthn: should I make it a required attr? or make it assume null is false? | 11:44 | |
jnthn: as a default which causes a strange exception doesn't make much sense | |||
jnthn | pmurias: Well, the Real Answer is to implement the non-local case ;) | 11:45 | |
not_gerd: typically for scalars, lexical environment points to Scalar points to value. | |||
not_gerd: Exception: native types, where they are inlined straight into the lexical environment. | |||
pmurias: I think methods already does that, fwiw | 11:46 | ||
not_gerd | jnthn: binding makes lexical environment point to existing Scalar? | ||
jnthn | not_gerd: Depends what you bind | 11:47 | |
my $x = 42; my $y := $x; # lexical environment's $x and $y slots now both point to the same Scalar | |||
moritz | nr: my $x := 3; $x = 5 | ||
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… | ||
..rakudo 690dad: OUTPUT«Cannot assign to a non-container in block at /tmp/HCNJ7rv4Ei:1» | |||
jnthn | my $x := 42; # lexical environment points directly at the value | ||
But as moritz showed, bind a value and you can't assign any more :) | |||
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» | ||
jnthn | you bound the type object | ||
r: my $x := 42; $x := Scalar.new; $x = 42 | 11:54 | ||
p6eval | rakudo 690dad: OUTPUT«(signal SEGV)» | ||
jnthn | wow! | ||
not_gerd | segfaults with type object as well on Rakudo 2012.08-61-gd776f08 | ||
jnthn | .oO( guess what we don't have a test for... :) ) |
||
Time for this week's commute up to Stockholm & | 11:56 | ||
12:00
revoltz joined
|
|||
pmurias | jnthn: the bignum test fails | 12:01 | |
12:09
not_gerd left
12:10
not_gerd joined
12:15
gongyiliao joined
12:17
M_o_C joined
12:21
docdoctor joined
|
|||
docdoctor | anyone here experienced with proofing pod files on github? | 12:23 | |
moritz | welcome docdoctor | 12:27 | |
docdoctor | thanks | ||
moritz | I usually check out the repository and read/edit the files in my preferred editor | ||
docdoctor | if I proof a document that requires no changes, is there any way to mark it as read? | 12:28 | |
moritz | not really | 12:29 | |
you could add a note to them that pod renderers ignore | |||
12:29
wk_ left
|
|||
moritz | =comment reviewed by dodoctor on 2012-09-18 | 12:29 | |
docdoctor | is there a comment tag for that? | ||
OK got it. | 12:30 | ||
Is the =comment entry at the bottom of the file OK, or is there a more appropriate location? | 12:31 | ||
moritz | top or bottom is both OK, as long as you always stick to the same | 12:32 | |
docdoctor | thank you very much, that will make life a lot easier! | 12:33 | |
12:33
Targen left
|
|||
moritz | you're welcome | 12:34 | |
12:36
revoltz left
12:39
not_gerd left
12:41
atrodo joined
|
|||
[Coke] | phenny: ask raiph if I should add blogs.perl.org/users/perl_6_reports/ to planetsi | 12:42 | |
phenny | [Coke]: I'll pass that on when raiph is around. | ||
12:47
cognominal left
12:49
PacoAir joined
|
|||
[Coke] wishes he had time to try out jnthn's suggestions yet. | 12:50 | ||
12:55
cognominal joined,
Celelibi left
|
|||
moritz | I just found out why my work computer is so slow running the rakudo test suite | 13:03 | |
it's not the memory (has 4GB) | |||
but it has just one core | |||
13:04
bluescreen10 joined
13:09
wamba joined
|
|||
[Coke] | that's outrageous! ;) | 13:14 | |
moritz | aye. I was pretty surprised to get a recycled workstation | 13:15 | |
colomon | just one core?!? | 13:21 | |
moritz | yes. In a desktop. | 13:22 | |
13:23
M_o_C left
|
|||
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 | ||
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
|
|||
dalek | kudo/nom: 0973612 | moritz++ | src/core/Grammar.pm: Default to Mu for action methods that way fewer method names are prone to name conflicts, because Mu simply does not have as many methods as Any. But it is not a real fix |
13:27 | |
13:30
dayangkun left
|
|||
pmichaud | good morning, #perl6 | 13:33 | |
moritz | good am, pm | ||
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
|
|||
moritz | one with :actions!, the other excluding it | 13:35 | |
but somehow it hug during compilation | |||
(the idea was to not declare $*ACTIONS) | |||
pmichaud | well, you have to have $*ACTIONS somewhere, or else you get a dynvar lookup problem. | ||
GlitchMr | jnthn: I just have noticed irclog.perlgeek.de/perl6/2012-09-17#i_5995854 - I will fix it now, ok | 13:36 | |
dalek | href="https://glitchmr.github.com:">glitchmr.github.com: e5b87e2 | GlitchMr++ | _posts/2012-09-16-perl-6-changes-2012W37.md: TCLish -a => "b" was for STD_P5, not STD. jnthn++ |
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 | ||
pmichaud | looking up $*ACTIONS is very hot path | 13:38 | |
it happens on every successful match. | |||
moritz | it's not cached anywhere? | ||
13:38
flightre1 left
13:39
flightrecorder joined
|
|||
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 ) |
||
pmichaud | oh, we can solve this entirely in NQP land | 13:40 | |
trying to fix it in Perl 6 space is problematic. | |||
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. | ||
oh, wait. | |||
hrm. | |||
Rakudo's Grammar.parse isn't using NQP's .parse | |||
ideally, have $*ACTIONS set to NQPMu | 13:43 | ||
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. | ||
moritz | that doesn't set the caller's $/ | ||
pmichaud | well, if $*ACTIONS is set to NQPMu, we're not likely to have any method name conflicts. | ||
oh, well then call NQPCursor's .parse | 13:46 | ||
although I guess that's painful also. | |||
moritz | NQPMu also has 13 method names | 13:47 | |
pmichaud | also, if $*ACTIONS is set to NQPMu, we can explicitly check for that. | ||
i.e., if $*ACTIONS.type =:= NQPMu then don't fire. | |||
PerlJam | couldn't you make an empty actions class and make that the default? | 13:48 | |
(sorry, just reading scroll back and probably don't quite have a handle on the problem) | |||
pmichaud | PerlJam: example? | 13:49 | |
moritz | PerlJam: all classes in Perl 6 inherit from Mu | ||
(and yes, I've suggested that already :-) | |||
PerlJam | moritz: got it. :) | ||
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. | ||
(cursor target would be a custom type that would contain shared information about an ongoing match) | 13:50 | ||
13:50
stopbit joined
|
|||
moritz | and aren't regenerated for every subrule call? | 13:50 | |
pmichaud | right | ||
basically it combines $!orig and $!target into a single object, saving a pointer in the cursor | |||
but it also provides a place to cache things, such as line numbers | 13:51 | ||
moritz | sounds nice | ||
pmichaud | it could potentially cache $*ACTIONS as well | ||
I think I'll give that a try today. | 13:52 | ||
moritz | ++pmichaud | ||
pmichaud | I doubt I'll want to try to squeeze it into the sep release, though. | 13:53 | |
we'll see how it goes. | |||
I'm still trying to figure out how to deal with the utf8 encoding issue. | |||
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 | |
*one now | |||
pmichaud | I'm afk for a bit. | ||
PerlJam | felher: It's easier to tell if you show the code that causes it :) | ||
moritz | felher: I've seen that error before, but not from importing | 13:57 | |
felher | PerlJam: yep. i'm currently on making a gist :) | ||
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)» | ||
moritz | r: module A { role B[$x] is export { } }; import A; say B | ||
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… | ||
moritz | r: module A { role B[$x] is export { } }; import A; say B[1] | ||
p6eval | rakudo 690dad: OUTPUT«===SORRY!===Method 'parameterize' not found for invocant of class 'Perl6::Metamodel::ParametricRoleHOW'» | ||
13:58
kaleem left
|
|||
moritz | felher: this one? :-) | 13:58 | |
r: role B[$x] { }; say B[1] | |||
p6eval | rakudo 690dad: OUTPUT«B()» | ||
felher | moritz: yeah, i think so :) | ||
felher closes gist :) | 13:59 | ||
13:59
flightrecorder left
|
|||
moritz | felher: fehl free to submit :-) | 13:59 | |
felher fehls free to do so and submits a bug. | 14:00 | ||
moritz: any idea how to work around it for now? :) | |||
*felhs free to do so... :) | |||
14:01
FROGGS left
|
|||
moritz | felher: no idea, except avoiding parametric roles :( | 14:01 | |
hm, maybe | |||
14:02
docdoctor left
|
|||
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
|
|||
moritz | r: module A { our role B[$x] { } }; import A; say A::B[1] | 14:02 | |
p6eval | rakudo 690dad: OUTPUT«B()» | ||
moritz | felher: using 'our' instead of importing seems to be a workaround | ||
14:02
docdoctor joined
14:03
Tanktalus joined
|
|||
felher | moritz: cool, thnx :) | 14:03 | |
14:04
benabik left
14:05
benabik joined
|
|||
Pleiades` | sd | 14:10 | |
14:10
kaare_ joined
|
|||
dalek | ast: 765896d | moritz++ | S (2 files): rakudo unfudges |
14:11 | |
14:11
kaare__ joined
|
|||
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
|
|||
felher | \o/ exactly what i need :) | 14:14 | |
14:15
kaare_ left
14:20
benabik left
|
|||
pmichaud | r: say 'bit' ~& 'wise' | 14:20 | |
p6eval | rakudo 097361: OUTPUT«bip» | ||
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» | ||
pmichaud | anyone know what the Perl 6 spec would want there? | 14:23 | |
(I'm afk for a while.) | |||
fwiw, that's the current blocker as to why utf8 chars in source cause parsing to slow down. | 14:24 | ||
moritz | what do you expect it to do? integer AND on the codepoint? | 14:25 | |
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:26 | |
so, if we can decide what _should_ happen, then I can add it to parrot and be unblocked on that point. :-) | 14:27 | ||
my best guess at this point would be integer AND the codepoints, yes. | |||
afk | 14:28 | ||
FROGGS | tadzik: there? | 14:31 | |
or moritz: you should know that too | 14:32 | ||
what do we actually have right now about test reports? | |||
tadzik | yes, here | 14:33 | |
FROGGS | am I able to produce a report by running a script? | ||
tadzik | a script gives you something like tjs.azalayah.net/results.json | 14:34 | |
14:34
docdoctor left
|
|||
FROGGS | so thats the result of the whole rakudo star suite, right? | 14:34 | |
"Algorithm::Diff" : { "prereq" : true, "build" : false, "description" : "Failed building lib/Algorithm/Diff.pm" } | 14:35 | ||
so we have to put more information into these structures | |||
and make each report available somehow | |||
[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 | ||
tadzik | FROGGS: it's a result of the entire module ecosystem | ||
FROGGS | [Coke]: seen no, but heard of it | ||
[Coke] | basically a temporary repository for TAP runs by project; right now parrot and rakudo have projects setup in it. | ||
tadzik | FROGGS: github.com/tadzik/emmentaler/blob/master/smoker is to blame | 14:37 | |
[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:38 | |
14:38
JimmyZ left
|
|||
[Coke] | (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 | ||
PerlJam | pmichaud: the "obvious" answer is at S03:5262 | 14:40 | |
oops, sorry, that's S03:853 ('me can't read) | 14:41 | ||
pmichaud | PerlJam: wfm | 14:42 | |
GlitchMr | That JSON file is interesting | 14:43 | |
It has spaces between tokens | |||
FROGGS | that emmentaler/smoker looks good, I mean, it's working and it's easy to use | ||
GlitchMr | I wonder why - they aren't needed | ||
"Acme::Addslashes" : { "prereq" : false, "description" : "Failed cloning the repo" } | 14:44 | ||
wait what? | |||
Let me guess, it cannot clone URLs that begin with git:// | 14:45 | ||
tadzik | guess again | ||
GlitchMr | I will change it to http:// | ||
tadzik | no, everyone uses git:// | 14:46 | |
GlitchMr | raw.github.com/GlitchMr/perl6-Acme.../META.info | ||
huh? | |||
tadzik | maybe I lost connection during smoketesting | ||
:) | |||
I see at least few modules on the list with this error | |||
GlitchMr | Text::Abbrev also has this error | 14:47 | |
Interesting | 14:48 | ||
But it's probably loss of connection | |||
FROGGS | tadzik: so a next step would be to make it possible to submit these results.json file? | ||
GlitchMr | Both of my modules which I know that work fail because of connection error | ||
tadzik | FROGGS: probably, yes | 14:52 | |
and include some platform info\ | |||
GlitchMr: I probably hibernated the laptop during smoke run, and wifi didn't like that :P | |||
14:56
sqirrel joined
14:59
FROGGS left,
FROGGS_ joined,
FROGGS_ is now known as FROGGS
15:00
flightrecorder left
|
|||
jnthn | o/ from the train :) | 15:00 | |
15:00
flightrecorder joined
|
|||
FROGGS | I'm starting to hate eclipse | 15:00 | |
jnthn | FROGGS: If I want to try out the SDL game you made, what do I need? | 15:01 | |
FROGGS | hmmm, panda Games::BubbleBreaker ? | 15:02 | |
I beleive that should be it | |||
jnthn | FROGGS: Do I need to install anything for SDL itself? | ||
FROGGS | ohh ya, libSDL-dev and its friends, libSDL_image-dev for example | 15:03 | |
wait, not even the -dev, the regular lib should be fine | |||
but maybe I'm still doing "is symbol" instead of "is named" | 15:04 | ||
jnthn | OK. May give it a go. :) | ||
FROGGS | cool | ||
jnthn | I'm doing a "interesting Perl 6 modules" talk in YAPC::Asia, and an SDL binding is pretty cool ;) | ||
PerlJam | someone did bindings for SDL on rakudo? The last time I looked it was only like 3 functions. | ||
jnthn | PerlJam: If there's a playable game then those 3 functions must be pretty powerful :) | 15:05 | |
PerlJam | jnthn: Load; Init; Run; # :-) | 15:06 | |
FROGGS | *g* | ||
flussence | you can get a long way with just a create_drawable() and a draw_pixel() :) | ||
FROGGS | and event handling | 15:07 | |
flussence | well if you don't mind vi keys, you can get away with getc() there too | 15:08 | |
dalek | p: 4b84f41 | jonathan++ | docs/QASTMAP: Delete QAST migration roadmap. |
||
FROGGS | flussence: I meant mouse clicks for example | 15:09 | |
flussence | yeah, that's a bit more involved... | ||
PerlJam | FROGGS++ (fleshing out SDL) | ||
FROGGS | it is actually pretty cool doing it in a OO way, the code is so much nicer and cleaner, especially with perl6 | 15:10 | |
kresike | bye folks | 15:11 | |
15:11
kresike left
|
|||
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
cognominal left
|
|||
dalek | href="https://glitchmr.github.com:">glitchmr.github.com: 66493f6 | GlitchMr++ | / (2 files): Add notice about pasting code in Disqus |
15:12 | |
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:15 | |
I'll drop you a note when it is possible to just panda it | 15:16 | ||
one porblem right now is that panda doesnt install a C file to you HOME/.perl6/lib/SDL | |||
jnthn | FROGGS: OK, there's no hurry :) | 15:17 | |
A week and a half until my talk. Just pondering what to show. :) | |||
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 | ||
ya, like: Ohh, that example isnt working but I can debug it right away... | 15:21 | ||
PerlJam | r: my $h where { $_ == 3 } = 7; | ||
p6eval | rakudo 097361: ( no output ) | ||
PerlJam | r: sub foo ($h where { $_ == 3 }) { } ; foo(7); | ||
p6eval | rakudo 097361: OUTPUT«Constraint type check failed for parameter '$h' in sub foo at /tmp/6FW5SK8oF6:1 in block at /tmp/6FW5SK8oF6:1» | ||
GlitchMr | ==> Games::BubbleBreaker depends on SDL | ||
==> SDL depends on NativeCall | |||
I like how panda is recursive :-) | |||
15:22
cognominal joined
|
|||
GlitchMr | t/core.t ............ Cannot locate native library 'libSDL.so' | 15:22 | |
... uhmmm | |||
PerlJam | r: sub foo ($h where { $_ == 3 } = 7) { } | ||
p6eval | rakudo 097361: ( no output ) | ||
PerlJam | Hrm. This seems so familiar. | ||
15:22
fhelmberger left
|
|||
FROGGS | GlitchMr: do you have libSDL.so somewhere in /usr/lib/ ? | 15:22 | |
GlitchMr | I guess I have to install libsdl1.2-dev | ||
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. :) | ||
FROGGS | but maybe the -dev ships a symlink... I'm not quite sure | ||
GlitchMr | I'm sure I've SDL because I've games like Frozen Bubble installed | 15:24 | |
FROGGS | hmm, NOT MY FAULT | ||
NativeCall's job is to find libs ;o) | |||
15:25
wooden joined,
wooden left,
wooden joined
15:29
wamba left
|
|||
timotimo | wow, when i let the perl6-debugger from latest rakudo-star loose on my (probably pretty horrible) code, it explodes | 15:30 | |
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:31 | ||
15:35
cognominal left
15:36
thou joined
|
|||
jnthn | timotimo: Seems that it's rather noisy if you feed it code with syntax errors | 15:38 | |
It really shouldn't warn. | |||
The message about $ref is the one for you, I expect. :) | 15:39 | ||
15:39
sisar left
|
|||
jnthn | Will have to look at that. | 15:39 | |
15:39
wamba joined
|
|||
jnthn | It's just a couple of warnings and then the real error so far as I can tell. | 15:39 | |
timotimo | may be. thanks | 15:42 | |
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' | ||
ok | |||
It's progress! | |||
15:44
wamba left,
Targen joined
|
|||
GlitchMr | By the way, I still think that "Rakudo" has hard to understand syntax errors. This should be fixed someday. | 15:45 | |
gist.github.com/3743840 | |||
That doesn't sound correct | |||
"Variable $MIX_INIT_MOD is not declared" | 15:46 | ||
What? | |||
Also, shouldn't it be "Game::BubbleBreaker"? | |||
FROGGS | GlitchMr: the tests are stupid right now, skip them | ||
GlitchMr | "added constants test, not working yet" | 15:47 | |
ok... | |||
How can I skip tests in panda? | |||
FROGGS | GlitchMr: there is a Games:: namespace in perl5, I just used it | ||
but I can switch to Game:: af course | |||
GlitchMr | --notests? | ||
FROGGS | pande --notests install ... | ||
GlitchMr | s/pande/panda/ | ||
FROGGS | ya | ||
GlitchMr | Why put test which doesn't work. That causes tests to be failed. | 15:48 | |
FROGGS | you are right, I simply forgot these tests | 15:49 | |
GlitchMr | gist.github.com/3743858 - uhmmm... 'use strict' is so strict that it forbids me from installing the module | ||
That... makes sense | 15:50 | ||
oh... it's test written in Perl 5... | |||
Why? | |||
I mean, why? | 15:51 | ||
FROGGS | its a test file from the perl5 SDL module, committed by accident I suppose | ||
GlitchMr | --notests again, I guess? | 15:52 | |
#!perl6 | 15:53 | ||
Wait... WHAT? | |||
Executable without proper shebangs... | |||
#!/usr/bin/env perl6 | 15:54 | ||
^ should be better | |||
gist.github.com/3743883 | |||
Uhmmm... ok | |||
15:55
benabik joined
15:56
docdoctor joined
|
|||
GlitchMr | What is memcopy.so? | 15:56 | |
FROGGS | GlitchMr: the one about memcopy.c is there because that file doesnt get installed | ||
GlitchMr | Uhmmm... where can I get memcopy.c? | 15:57 | |
Uhmmm... where can I get memcopy.so*? | |||
I have heard of memcpy, but not memcopy | |||
FROGGS | wget this to ~/.perl6/lib/SDL: raw.github.com/PerlGameDev/SDL6/ma.../memcopy.c | ||
GlitchMr | Doesn't work | 15:58 | |
It still complains about lack of memcopy.c | |||
FROGGS | I made Inline::C to work around that issue, I'll drop you a msg when it is online, k? | 15:59 | |
GlitchMr | glitchmr@strawberry ~> cat ~/.perl6/lib/SDL/memcopy.c | 16:00 | |
#include <string.h> | |||
... | |||
16:00
wamba joined
|
|||
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:00 | |
what about string.h? | 16:01 | ||
GlitchMr | It's first line of code, I just was making sure that file exists | ||
FROGGS | k | ||
16:03
brrt left
|
|||
dalek | p: bba277c | jonathan++ | docs/qast.markdown: Start documenting the QAST nodes. |
16:03 | |
[Coke] | jnthn++ | ||
jnthn: thank you, kind sir. | 16:05 | ||
16:13
marmay_ joined
16:16
MayDaniel joined
16:20
FROGGS left,
flightrecorder left
16:25
pmurias left
16:28
kaare__ is now known as kaare_
|
|||
PerlJam | anybody with zavolaj-fu still around? Say I've got some C code like gist.github.com/3744087 ... How do I perform the allocation of FooType using NativeCall? | 16:28 | |
16:28
benabik_ joined
|
|||
moritz | FooType.new | 16:29 | |
PerlJam | yeah, but does that array of 12 chars work right? | 16:30 | |
dalek | p: c0bb465 | jonathan++ | docs/qast.markdown: Document some more node types. |
16:31 | |
16:31
benabik left,
benabik_ is now known as benabik
|
|||
moritz | PerlJam: probably not, because int8 isn't supported yet | 16:31 | |
jnthn | detrain & | ||
moritz | PerlJam: you can use CArray[Int] with just one Int, and on a 64bit platform that would be 8 bytes | 16:32 | |
then you have to unpack those with bit ops or unpack | |||
bit ops, I think | |||
(or two Ints if you are on 32bit) | 16:33 | ||
arnsholt is working on sized ints, iirc | |||
PerlJam | github.com/jnthn/zavolaj/blob/mast...E.markdown says it can do int8 | 16:34 | |
(and I'm fairly sure I've used them before, just not with an array inside of a struct) | |||
TimToady is looking forward to buf1 support :) | 16:35 | ||
16:36
benabik_ joined
|
|||
moritz | star: use NativeCall; say Carray[int8].new | 16:36 | |
p6eval | star 2012.07: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&Carray' called (line 1)» | ||
moritz | star: use NativeCall; say CArray[int8].new | ||
p6eval | star 2012.07: OUTPUT«CArray+{IntTypedCArray}.new()» | ||
moritz | star: use NativeCall; my @a := CArray[int8].new; for ^8 { @a[$_] = $_ }; say @a[3] | ||
p6eval | star 2012.07: OUTPUT«3» | 16:37 | |
moritz | seems to work | ||
16:37
cognominal joined
16:39
benabik left,
benabik_ is now known as benabik
|
|||
PerlJam | it's the interaction between the struct and the array that I don't quite get. | 16:40 | |
(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:45
alester left
16:47
cognominal left
16:53
Targen left
16:54
Chillance joined
16:55
dakkar left
16:59
FROGGS joined,
flightrecorder joined
|
|||
masak | greetings, #perl6 | 17:03 | |
17:04
cognominal joined,
cognominal left,
cognominal joined
|
|||
diakopter | masak: howdy | 17:04 | |
masak | been teaching for two days. now on train back home. | 17:07 | |
<sorear> not sure if I'll live to see the recordings | 17:09 | ||
wow, someone sure transitioned from hope to cynicism quickly! :P | 17:10 | ||
17:10
cognominal left
|
|||
dalek | osystem: e0635cd | (Tobias Leich)++ | META.list: added Inline::C |
17:12 | |
17:15
xinming_ left,
mdupont left
17:16
fgomez joined,
cognominal joined
17:19
xinming joined
|
|||
tadzik | so, we can now rewrite loops in C? | 17:22 | |
:) | 17:23 | ||
17:26
Celelibi joined
|
|||
tadzik | nice module FROGGS++ | 17:26 | |
colomon | wait, what!? | ||
[Coke] | wow. FROGGS++ #evil | 17:27 | |
colomon | FROGGS++ indeed! | 17:28 | |
17:33
perigrin left,
huf_ is now known as huf
|
|||
FROGGS | thanks ^^ | 17:35 | |
masak | FROGGS++ | ||
17:35
fgomez left
|
|||
FROGGS | but it is basically copy&paste from Zavolaj | 17:35 | |
17:37
fgomez joined
|
|||
colomon | which does not change the fact it is a clever copy&paste. | 17:38 | |
17:44
perigrin joined
17:45
wamba left
17:50
mdupont_ joined
|
|||
timotimo | aaw, rot90° isn't a valid method name :( | 17:55 | |
or can i quote it somehow? | |||
moritz | rot-π-half | 17:59 | |
17:59
benabik left
18:00
atrodo left
18:01
fgomez left
18:02
spider-mario joined
|
|||
timotimo | is there a method for hypothenuse calculation in prel6 or is it unnecessary, because numbers won't overflow to Inf when squared? | 18:04 | |
colomon | you're thinking of something that does sqrt($a ** 2 + $b ** 2)? | 18:05 | |
timotimo | yes | 18:06 | |
because recently i read an article about why math libraries supply such a function and why it makes sense to have that | |||
colomon | the numbers certainly can overflow if they get that big. | ||
moritz | so, library it is then :-) | ||
18:06
wamba joined
|
|||
timotimo | www.johndcook.com/blog/2010/06/02/w...ypotenuse/ - this one | 18:06 | |
colomon | I want to say I meant to add that function to p6 and forgot to actually do it. | ||
rn: say hypot(10, 20) | 18:08 | ||
p6eval | rakudo 097361: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&hypot' called (line 1)» | ||
..niecza v21-14-g3d9f4b4: OUTPUT«===SORRY!===Undeclared routine: 'hypot' used at line 1Unhandled 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
|
|||
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:08 | |
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 blockat /tmp/QcpPgi6Um4:1» | ||
colomon | timotimo: any reason you'd like a name other than hypot? | ||
moritz | star: use NativeCall; sub hypot(num, num) returns(num) is native() {*}; say hypot(1e2, 1e2) | ||
p6eval | star 2012.07: OUTPUT«===SORRY!===Missing blockat /tmp/BBn6iMGkni:1» | ||
timotimo | nope, hypot is good. | ||
moritz | star: use NativeCall; sub hypot(num, num) returns(num) is native {*}; say hypot(1e2, 1e2) | ||
p6eval | star 2012.07: OUTPUT«===SORRY!===Missing blockat /tmp/tQ6j_NKF6Y:1» | ||
moritz | star: use NativeCall; sub hypot(num, num) returns(num) is native { }; say hypot(1e2, 1e2) | ||
p6eval | star 2012.07: OUTPUT«===SORRY!===Missing blockat /tmp/ECYgBVn4LF:1» | ||
18:10
benabik joined
|
|||
moritz | what am I doing wrong? | 18:10 | |
18:10
kaare_ left
|
|||
timotimo | isn't 2012.08 out already? | 18:10 | |
18:10
kaare_ joined
|
|||
colomon | timotimo: give me a minute or two to finish what I was doing with $work. or, you know, add it yourself. ;) | 18:10 | |
18:16
kurahaupo joined
|
|||
PerlJam | moritz: | 18:20 | |
star: use NativeCall; sub hypot(num,num) returns Num is native {*}; say hypot(1e2,1e2); | |||
p6eval | star 2012.07: OUTPUT«141.42135623731» | ||
PerlJam | returns(num) was what was wrong. | ||
star: use NativeCall; sub hypot(num,num) returns num is native {*}; say hypot(1e2,1e2); | 18:22 | ||
p6eval | star 2012.07: OUTPUT«141.42135623731» | ||
PerlJam | (I had typed Num out of habit the first time :) | 18:23 | |
GlitchMr | back | 18:24 | |
2012.07? Seriously? | |||
It was 19 days from 2012.08 release | 18:25 | ||
Also, for fun I've compiled 2010.07. It could be used to test scripts in perl6/bench-scripts and stuff like that | 18:26 | ||
18:27
leont joined
|
|||
GlitchMr | For example, anagram.pl takes 100 seconds on 2010.07, but only 18.5 seconds on 2012.08 | 18:30 | |
moritz | I just showed my wife "The Day #perl6 Did Sarcasm", and her main complaint was about irclog.perlgeek.de/perl6/2012-05-10#i_5570350 Q:sarcasm not being imaginative enough :-) | 18:36 | |
and we need something for ironyy | 18:37 | ||
.oO( and masak++ isn't supposed to answer "yeah, right" ) |
|||
colomon | timotimo: actually, tests for hypot would be really useful... ;) | 18:41 | |
PerlJam keeps reading "hypot" as "hypnot" and goes into a trance | 18:42 | ||
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:43 | |
how does the summary mode work? does it encode something in the url so that i can copypaste it? | 18:44 | ||
or is summary mode something that's "global", rather than per-user+sharable? | |||
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 | ||
timotimo: there's a boolean flag in_summary in each row of the irclog table | |||
timotimo | well, oops then :) | ||
PerlJam | someone should to do some NLP on the IRC logs and pick out conversations. | 18:48 | |
(someone who is bent in the shape of a linguist) | |||
18:50
wk_ joined
|
|||
GlitchMr | perl6: printf '%g', Duration.new(1); | 18:50 | |
p6eval | niecza v21-14-g3d9f4b4: OUTPUT«===SORRY!===Undeclared name: 'Duration' used at line 1Unhandled 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… | ||
..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» | |||
GlitchMr | "This type cannot unbox to native number"? | 18:51 | |
Why? | |||
moritz | because it's not set up as a box target for num | 18:52 | |
and printf doesn't know how to do Perl 6 level coercions | |||
in the long run we need a printf that's aware of all of Perl 6's specialities | 18:53 | ||
like, big Int | |||
PerlJam | GlitchMr: you can always coerce the value yourself. | ||
18:53
kurahaupo left
|
|||
colomon | ye gads, lots of test failures in the niecza spectest run! | 18:55 | |
GlitchMr | gist.github.com/3745076 | 18:58 | |
Benchmarking! | |||
[Coke] | colomon: raw.github.com/coke/perl6-roast-da...ummary.out shows 75 failures. | ||
colomon | [Coke]: I don't have a count, but that sounds about right. | 18:59 | |
investigating while $work compiles... | |||
[Coke] | probably just one or two new tests mid-file. | ||
ugh. I just fudged those on Friday evening. | 19:00 | ||
hopefully I didn't do it wrong. | |||
colomon | huh. they seem to be working when I run them standalone (at least for the first couple I've tried) | 19:01 | |
and the they're not fudged, either, so that's not it. | |||
yeah, looks like it may actually be a test system bug rather than a niecza-proper bug. | 19:02 | ||
[Coke] | not fudged? hurm. | 19:09 | |
git show 5c64ac0 ? | 19:10 | ||
colomon | [Coke]: not fudged but they work. maybe not the same failures you were seeing. | ||
GlitchMr | glitchmr@feather ~/bench-scripts> nice perl6 RUN.p6 | 19:11 | |
perl6-2012.08 perl6-2010.07 niecza | |||
anagram 16.844806 98.083399 5.827595 | |||
:-) | |||
Just testing | |||
[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 "" | ||
leont | Can't you assign an undefined variable to them? | ||
GlitchMr | Or "[if you see this, something went wrong]" | ||
19:13
sisar joined
|
|||
GlitchMr | What language it is, anyways? | 19:13 | |
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. ;) | ||
cfscript | |||
leont | The profanity in this channel *shakes his head* :-p | 19:15 | |
jnthn | evening o/ | ||
colomon | \o | ||
GlitchMr | set variable {If you see this then you did something that I haven't expected!} | ||
jnthn | We're doing profanity? Hm, well I just ate at "Hung Fook" :P | ||
FROGGS++ # Inline::C | 19:17 | ||
19:18
benabik left
|
|||
[Coke] | GlitchMr: right. I'm reduced to things like "var foo = '';" when I really want just "var foo;" | 19:19 | |
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! | ||
;) | |||
GlitchMr | I think I've even done things like 'my $string = ""' in Perl 5 too :-) | 19:21 | |
I'm not sure why I'm doing that, but probably to avoid undefined value warnings with .= or something | |||
19:22
benabik joined
19:25
docdoctor left
19:28
mdupont_ left
19:29
stopbit left
|
|||
GlitchMr | gist.github.com/3745274 | 19:30 | |
wow, niecza is fast! | |||
'######.######' are tests which failed to run on niecza | |||
(but, you shouldn't trust benchmarks - I mean - doing nothing two times slower than "Hello, world!"?) | 19:31 | ||
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 | ||
tadzik | buahahaa. I now have a device that controls my music player on my laptop through my HiFi's remote control | ||
arduino++ | |||
Now I need to sneak Perl 6 here somewhere | |||
FROGGS | jnthn: maybe I should better use NativeCall and call its subs, instead of carrying its code around | 19:33 | |
19:35
sqirrel left
|
|||
arnsholt | FROGGS: The less duplication the better is a good rule, in general | 19:36 | |
FROGGS | ya, I know | ||
GlitchMr | I like that part: | 19:37 | |
non-str-comb 0.628682 89.944591 1.376188 | |||
But... why it took 90 seconds for simple test? | |||
jnthn | moritz: On that gist, are these times in seconds? | ||
er, sorry | |||
GlitchMr | jnthn: yes | ||
jnthn | GlitchMr: ^ | ||
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. | ||
GlitchMr | say [+] (100..200).comb>>.Int; | 19:39 | |
jnthn | GlitchMr: And yes, 2010.07 was really slow. | ||
GlitchMr | I wonder why it took 90 seconds on 2010.07 | ||
It's just 100 numbers, converted into digits and summed together | |||
jnthn | You know all that pain we went through when we rebuilt loads of bits of Rakudo in nom? | ||
This is why. :) | |||
GlitchMr | No, I wasn't there then | 19:40 | |
I wanted to check www.youtube.com/watch?v=tCel6lpDTZI myself | 19:41 | ||
jnthn | GlitchMr: Ah. You missed that fun then :) | ||
jnthn is curious why evne current Rakudo does terrible at pick-words | 19:43 | ||
tadzik | non-str-comb 0.628682 89.944591 1.376188 | ||
wooot :) | |||
jnthn | GlitchMr: Where do I find the pick-words source? | 19:44 | |
GlitchMr | jnthn: github.com/perl6/bench-scripts | ||
It's from that repository | |||
jnthn | tack | ||
GlitchMr | It's all from that repository | ||
jnthn | ah, but do I have kcachegrind on this laptop since I rebuilt all the things... | 19:45 | |
tadzik | ...linux laptop? | ||
jnthn | Windows :) | ||
tadzik | or just kcachegrind on windows? :) | ||
jnthn | Well, the big problem is, I can never remember where I found the darn thing... :) | ||
GlitchMr | tadzik: KDE is on Windows | ||
tadzik | blasphemy! :P | 19:46 | |
GlitchMr | I actually have used Kate as my text editor on Windows | ||
It sort of worked | 19:47 | ||
rurban | KDE via cygwin-ports or native? | ||
GlitchMr | Native | ||
windows.kde.org | |||
Kate is awesome - it's almost like vim | 19:48 | ||
19:48
kaare_ left
|
|||
GlitchMr | CTRL+WINDOWS+V - and Kate magically turns into vi | 19:48 | |
19:49
cognominal_ joined
|
|||
GlitchMr | But you have mouse, as useless addition | 19:50 | |
jnthn downloads the Windows port of kcachegrind, and hopes it works | |||
19:50
cognominal left
|
|||
GlitchMr | jnthn: it worked for me | 19:50 | |
When I was using Windows | 19:51 | ||
diakopter | jnthn: does kcachegrind have to have had the same compiler as the target? | ||
jnthn | shit, sourceforge is an add-filled crap heap these days | ||
diakopter: no | |||
*ad | |||
(the had an ad with a download button that looks just like the real one... :/) | |||
benabik | jnthn: dice.com just bought it, which made me wonder "why?" | ||
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. | ||
jnthn | It used to suck a lot less. :/ | ||
GlitchMr: I had a version that did that, but I think the most recent one I've been using works. | |||
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? ;-) | ||
GlitchMr | Well, I haven't paid them anything | 19:54 | |
benabik | GlitchMr: github sells training, private repositories, and enterprise code hosting hardware | ||
GlitchMr | But because they still somehow survive, I guess they get enough money from GitHub Enterprise and private projects | ||
s/projects/repositories/ | |||
jnthn pays for a few privates, and his $dayjob uses it too | |||
I run into quite a few people who pay a little for some private repos | 19:55 | ||
So I assume they do fairly well | |||
[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!) | |||
leont | Github's prices are reasonable enough that I imagine plenty of people do | ||
jnthn | leont: Yes, it's priced at "huh, that's a beer!" levels. | ||
Well, if you live in Sweden anyway :P | |||
masak | Github is one of the few companies that I like to give money to monthly partly because I *like* them. | ||
19:56
cognominal_ left
|
|||
GlitchMr | Actually, I like GitHub business model | 19:56 | |
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. | |||
benabik | I imagine that private repositories are not their primary source of income. | 19:57 | |
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. | ||
[Coke] | GlitchMr: control. | ||
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. | ||
Maybe it's optimizable easily. (as not going through various va_args sprintf, call and sig parsing steps) | 20:00 | ||
GlitchMr | Hmmm... but if you have 125 or more private repositories, github enterprise really seems cheaper | 20:01 | |
I meant, 51 or more | |||
And team size of max 20 | 20:02 | ||
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) | |||
rurban | gitororius is also easy to easy for companies. we use it. | 20:03 | |
gitorious | |||
tadzik | DJ Moment? | ||
ww, sorry | |||
20:04
GlitchMr left
20:05
cognominal joined
20:07
pmurias joined,
marmay_ left
|
|||
pmurias | jnthn: t/nqp/60-bigint.t fails on my machine | 20:08 | |
tests 28,29 and 34 | 20:09 | ||
[Coke] | looks like rakudo is backsliding a bit: | 20:12 | |
github.com/coke/perl6-roast-data/b....out#L2086 | |||
pmurias | jnthn: it seems the calculations are a bit less accurate | ||
[Coke] | OH. | 20:14 | |
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. | |||
FROGGS | I thought that this would be fine if I use multi | ||
20:17
MayDaniel left
|
|||
[Coke] | gist.github.com/4c035e78f97668290146 - latest rakudo failures | 20:18 | |
colomon: niecza only has one failure on latest data. | |||
colomon | [Coke]: I've gotten intermittent niecza spectest fails for a while now... | ||
[Coke] | colomon: looks like they cleaned up on 9/17 | 20:20 | |
(daily run) | |||
colomon | I mean literally intermittent, like one run works and the next run doesn't. | ||
colomon is running spectest again to see what happens. | 20:21 | ||
20:23
gongyiliao left
20:24
sisar left
20:28
stopbit joined
|
|||
colomon | [Coke]: all tests successful this time around, no changes to niecza or roast. | 20:31 | |
[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 mainlineat /tmp/G1ABTxPq_N:1» | ||
[Coke] | r: my @a = <thing thinger bar barfer>; @a.sort({$^b.chars <=> $^a.chars}).say | ||
p6eval | rakudo 097361: OUTPUT«thinger barfer thing bar» | ||
[Coke] | *sigh*. | 20:34 | |
I won't tell you how many lines of cfscript that is. | |||
diakopter | it is in the quadrillions? | ||
masak | he won't tell. | 20:35 | |
[Coke] | biggest issue is that you can't pass in a function to the sorter. | ||
so, again, really looking forward to coding my apps in mojoSix. | 20:36 | ||
20:38
atrodo joined,
cognominal left
|
|||
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 | ||
it worked! pretty quickly, too =) (~4 seconds) | |||
TimToady | that's the largest left truncatable prime in base 18 | ||
diakopter | 0_0 | 20:40 | |
TimToady | which takes considerably longer than 4 seconds to calculate | ||
I hope it will finish later today... | |||
sirrobert | whatever it was, it worked fast =) | ||
diakopter | TimToady: do you have a progress indicator? | ||
TimToady | yes | 20:41 | |
every pass through it calculates the next set of primes with one more digit, and prints the number of candidates | |||
well, the next set of probably primes | 20:42 | ||
20:42
wk_ left
|
|||
TimToady | ooh, just finished a pass, almost up to a million candidates now | 20:44 | |
7 49 314 1416 5187 15453 39296 86710 169131 297010 474064 688371 922770 | |||
so it's got 13 digits (base 18) now | |||
it should peak at about 1.5 million candidates and then go back down | |||
diakopter tries to fathom the significance of base 18 | 20:45 | ||
20:46
atrodo_ joined
|
|||
TimToady | the odd numbered bases tend to converge much faster | 20:46 | |
20:47
atrodo_ left,
atrodo left
20:48
cognominal joined
|
|||
colomon | niecza> hypot(3,4) | 20:51 | |
20:51
cognominal_ joined
|
|||
colomon | 5 | 20:51 | |
timotimo: ^^ | |||
colomon is pondering whether 3.hypot(4) should also work | 20:52 | ||
TimToady | not to mention "3 hypot 4" :) | ||
diakopter | TimToady: is it possible to create a P6 slang that does RPN | 20:53 | |
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
cognominal left
|
|||
TimToady | colomon: then [hypot] would calculate a spiral | 20:54 | |
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:55 | |
20:56
cognominal_ left
|
|||
[Coke] | jnthn: huh. no, I'm running a rakudo from Aug 24th. | 20:57 | |
it's supposed to be updated daily. | |||
TimToady | niecza: say 3 Z[&hypot] 4 | ||
p6eval | niecza v21-14-g3d9f4b4: OUTPUT«===SORRY!===Undeclared routine: 'hypot' used at line 1Unhandled 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… | ||
[Coke] guesses he will have to start added a git hash to the spec runs for diagnostic purposes. | |||
TimToady | oh, that's your niecza | ||
colomon | TimToady: indeed | 20:58 | |
but I can check it in quickly. just wanted to figure out what the correct form was first. | |||
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 | ||
TimToady | how often are you going to want to do hyper hypot anyway? | ||
colomon | TimToady: okay. sub for sure. method or not? | ||
TimToady | .&hypot is there too | ||
colomon | TimToady: me? never so far. but it's a handy function, and timotimo++ requested it. | ||
okay, sub only for now, then. | |||
TimToady | he want's a hyper hypot? | ||
*wants | 21:00 | ||
jnthn | [Coke]: Yeah, I just looked at the list of tests and was like..."hang on..." :) | ||
dalek | ecza: f226bf6 | (Solomon Foster)++ | lib/CORE.setting: Add sub hypot. |
||
colomon | TimToady: so you're thinking the spiral of theodorus would be something like [\&hypot] (1 xx 17) ? | 21:01 | |
sorear | good * #perl6 | ||
colomon | niecza> [\[&hypot]] 1 xx 17 | 21:02 | |
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 | |||
nr: say sqrt(17) | |||
p6eval | rakudo 097361: OUTPUT«4.12310562561766» | ||
..niecza v21-14-g3d9f4b4: OUTPUT«4.1231056256176606» | |||
colomon | o/, sorear | 21:05 | |
21:05
cognominal_ joined
|
|||
timotimo | i didn't ask for a hyper hypot, but hypotenuse in more dimensions seems sensible. | 21:08 | |
colomon | niecza: say hypot(3,4) | ||
p6eval | niecza v21-14-g3d9f4b4: OUTPUT«===SORRY!===Undeclared routine: 'hypot' used at line 1Unhandled 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… | ||
sorear | o/ colomon | 21:10 | |
21:10
cognominal_ left
21:11
benabik left
|
|||
masak | sorear! \o/ | 21:12 | |
sorear | masak! | 21:14 | |
masak | 'night | 21:18 | |
jnthn | 'night, masak | 21:19 | |
21:19
cognominal_ joined
|
|||
tadzik | good knight | 21:21 | |
21:27
cognominal_ left
21:31
docdoctor joined
|
|||
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 | |
(where "it" is "Str.words") | |||
21:34
cognominal_ joined
21:36
kurahaupo joined,
flightrecorder left
|
|||
jnthn | alas, I should sleep now rather than hacking up a faster version :) | 21:37 | |
21:38
FROGGS left
21:42
FROGGS joined
21:45
kurahaupo left
21:46
flightrecorder joined
21:47
kurahaupo joined
21:49
cognominal_ left
21:56
cognominal_ joined
21:58
FROGGS left,
FROGGS joined
22:01
docdoctor left
22:04
cognominal_ left
22:09
docdoctor joined
22:10
stopbit left
22:12
PacoAir left
22:14
cognominal joined
|
|||
gfldex | a jolly good talk like a pirate day me mateys! | 22:17 | |
22:24
bluescreen10 left
22:25
stopbit joined,
cognominal left
22:28
stopbit left
22:31
whiteknight joined
22:32
cognominal joined
22:36
spider-mario left
22:41
pmurias left
22:57
wamba left
23:01
flightrecorder left
23:02
FROGGS left
23:11
flightrecorder joined
23:12
FROGGS joined
23:15
flightrecorder left
23:19
FROGGS left
23:32
FROGGS joined
23:36
flightrecorder joined
23:54
leont left
23:58
whiteknight left
|