Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-11-01

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:01 ClarusCogitatio joined #perl6
00:04 masak wollmers: `unshift %bMatches{$_} for @b[$bmin..$bmax]; $index += $bmax - $bmin + 1;`
00:14 wollmers masak: Why the +1?
00:23 masak because a range that includes both its endpoints will contain one element more than the difference between them.
00:23 erkan joined #perl6
00:23 erkan joined #perl6
00:24 masak m: say (10..30).elems
00:24 camelia rakudo-moar 315ec6: OUTPUT«21␤»
00:24 wollmers m: my @b = <a b a b>;my %bM;my $i;unshift %bM{$_},$i++ for @b;%bM.perl;
00:24 camelia rakudo-moar 315ec6: ( no output )
00:25 wollmers m: my @b = <a b a b>;my %bM;my $i;unshift %bM{$_},$i++ for @b;%bM.perl.say;
00:25 camelia rakudo-moar 315ec6: OUTPUT«("a" => [2, 0], "b" => [3, 1]).hash␤»
00:25 masak oh, right, you actually want to unshift the $i++. sorry :)
00:26 wollmers masak: yea. I am sure, there is something more elegant in P6
00:26 masak not so sure.
00:31 wollmers Hmm. It goes through a list, and stores the positions of the keys as values.
00:36 thou joined #perl6
00:41 wollmers masak: can I combine this in a hash: <a b a b>.kv
00:41 wollmers m: <a b a b>.kv.say
00:41 camelia rakudo-moar 315ec6: OUTPUT«0 a 1 b 2 a 3 b␤»
00:42 masak m: say <a b a b>.pairs.perl
00:42 camelia rakudo-moar 315ec6: OUTPUT«(0 => "a", 1 => "b", 2 => "a", 3 => "b").list␤»
00:42 masak m: say <a b a b>.pairs.classify(*.value).perl
00:42 camelia rakudo-moar 315ec6: OUTPUT«("b" => [1 => "b", 3 => "b"], "a" => [0 => "a", 2 => "a"]).hash␤»
00:43 masak m: say <a b a b>.pairs.classify(*.value).map({; .key => [.value.keys]}).perl
00:43 camelia rakudo-moar 315ec6: OUTPUT«("a" => [0, 1], "b" => [0, 1]).list␤»
00:43 wollmers But with ethe letters as key, and the values as arrays.
00:43 masak \o/
01:03 timotimo actually
01:03 timotimo m: say ((my %).push: <a b a b>.pairs).perl
01:03 camelia rakudo-moar 315ec6: OUTPUT«("1" => "b", "0" => "a", "2" => "a", "3" => "b").hash␤»
01:04 timotimo ah
01:04 timotimo m: say ((my %).push: %<a b a b>.invert).perl
01:04 camelia rakudo-moar 315ec6: OUTPUT«().hash␤»
01:04 timotimo how did that work again
01:04 timotimo m: say %<a b a b>.perl
01:04 camelia rakudo-moar 315ec6: OUTPUT«().hash␤»
01:04 timotimo ah, of course
01:04 timotimo m: say %(<a b a b>).perl
01:04 camelia rakudo-moar 315ec6: OUTPUT«("a" => "b").hash␤»
01:04 timotimo m: say %(<a b a b>.pairs).perl
01:04 camelia rakudo-moar 315ec6: OUTPUT«("1" => "b", "3" => "b", "0" => "a", "2" => "a").hash␤»
01:05 timotimo m: say %(<a b a b>.pairs).invert.perl
01:05 camelia rakudo-moar 315ec6: OUTPUT«("a" => "0", "b" => "1", "a" => "2", "b" => "3").list␤»
01:05 timotimo m: my %target; %target.push: %(<a b a b>.pairs).invert; say %target
01:05 camelia rakudo-moar 315ec6: OUTPUT«"a" => ["0", "2"], "b" => ["1", "3"]␤»
01:05 timotimo that's what i meant
01:15 slavik joined #perl6
01:25 grettis joined #perl6
01:57 dj_goku joined #perl6
01:58 dj_goku [Coke]: hi. Yeah I want to add tests to what ingy has downloaded.
02:24 * PerlJam got an email today from Mr. Laurence Wall
02:24 thou joined #perl6
02:34 colomon PerlJam: ooooo
02:36 molaf_ joined #perl6
02:42 grettis joined #perl6
02:55 tinyblak joined #perl6
03:10 noganex joined #perl6
03:13 eternaleye joined #perl6
03:39 tinyblak joined #perl6
03:42 dalek perl6-bench/stress: 8fc4746 | (Geoffrey Broadwell)++ | / (2 files):
03:42 dalek perl6-bench/stress: Add --show-relative analyze option, defaulting to --compare, turned off for diagnosis
03:42 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/8fc4746082
03:42 dalek perl6-bench/stress: 63330ac | (Geoffrey Broadwell)++ | lib/Analyze/Summary.pm:
03:42 dalek perl6-bench/stress: Fix 'showing' subheader to correctly reflect various --show-* options
03:42 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/63330ac21a
03:42 dalek perl6-bench/stress: 5e2a95b | (Geoffrey Broadwell)++ | analyze:
03:42 dalek perl6-bench/stress: Improve diagnosis layout in --compare mode
03:42 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/5e2a95b4e6
03:48 araujo joined #perl6
03:59 rmgk joined #perl6
04:13 thou joined #perl6
04:15 tinyblak_ joined #perl6
04:41 immortal joined #perl6
04:51 baest_ joined #perl6
05:55 tinyblak joined #perl6
05:55 anaeem1 joined #perl6
06:01 thou joined #perl6
06:10 raiph joined #perl6
06:18 dalek perl6-bench/stress: 83fb590 | (Geoffrey Broadwell)++ | analyze:
06:18 dalek perl6-bench/stress: Prepare analyze for detection of timeouts
06:18 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/83fb590a26
06:18 dalek perl6-bench/stress: a9ba519 | (Geoffrey Broadwell)++ | analyze:
06:18 dalek perl6-bench/stress: Reorder code slightly for clarity
06:18 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/a9ba519da4
06:18 dalek perl6-bench/stress: 47c5376 | (Geoffrey Broadwell)++ | analyze:
06:18 dalek perl6-bench/stress: Refactor summarize_results_html_snippet() in preparation for adding failure diagnoses
06:18 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/47c5376e2c
06:24 tinyblak_ joined #perl6
06:34 kaare_ joined #perl6
06:36 dalek perl6-bench/stress: 918d15a | (Geoffrey Broadwell)++ | analyze:
06:36 dalek perl6-bench/stress: Only show summary scores when --show-relative is set, HTML edition
06:36 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/918d15a876
06:36 dalek perl6-bench/stress: 4ba1f4a | (Geoffrey Broadwell)++ | analyze:
06:36 dalek perl6-bench/stress: Show failure diagnosis icons in HTML output
06:36 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/4ba1f4ab4c
06:42 gfldex joined #perl6
06:57 renormalist joined #perl6
07:21 moritz good morning #perl6
07:23 timotimo hello :)
07:34 ugator joined #perl6
07:34 avuserow joined #perl6
07:49 thou joined #perl6
07:49 kurahaupo joined #perl6
08:03 anaeem1 joined #perl6
08:08 sqirrel_ joined #perl6
08:09 FROGGS_ joined #perl6
08:12 darutoko joined #perl6
08:17 MilkmanDan joined #perl6
08:32 lizmat good *, #perl6!  moritz timotimo o/
08:32 timotimo hai liz :)
08:40 FROGGS_ morning
08:41 lizmat FROGGS_ \o
08:59 FROGGS_ .tell wollmers It looks like /:P5\X/ is post NFG... because right now "E\c[COMBINING GRAVE ACCENT]" ~~ /./ only matches 'E'
08:59 yoleaux FROGGS_: I'll pass your message to wollmers.
09:02 sqirrel_ joined #perl6
09:05 zacts joined #perl6
09:08 rindolf joined #perl6
09:17 virtualsue joined #perl6
09:21 PZt joined #perl6
09:26 khisanth_ joined #perl6
09:27 chenryn joined #perl6
09:31 chenryn joined #perl6
09:32 spider-mario joined #perl6
09:37 thou joined #perl6
09:48 moritz now I wonder -- what's the use case for the m/.../ immediate matching forms?
09:52 moritz for @list { if m/.../ }   # would work with rx or / / too, because of boolean context
09:53 moritz m/(.)(.)/; say join '|', $0, $1; # could work with rx or / / if sink context triggers regex matches
09:55 FROGGS_ hmmm, maybe m/../ as the last statement of a routine?
09:55 dalek rakudo/nom: 685ee66 | (Elizabeth Mattijsen)++ | src/core/IO/Dir.pm:
09:55 dalek rakudo/nom: Fix dirname/succ/pred
09:55 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/685ee660aa
09:55 dalek rakudo/nom: 86af5ee | (Elizabeth Mattijsen)++ | src/core/IO.pm:
09:55 dalek rakudo/nom: Add MAKE-EXTENSION, fix MAKE-BASENAME
09:55 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/86af5ee07c
09:55 dalek rakudo/nom: c466b28 | (Elizabeth Mattijsen)++ | tools/build/ (3 files):
09:55 dalek rakudo/nom: Add IO/Dir.pm to settings
09:55 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c466b28e9c
09:57 sqirrel_ joined #perl6
10:19 ilbot3 joined #perl6
10:19 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
11:08 masak hi there, #perl6
11:10 virtualsue joined #perl6
11:12 leont joined #perl6
11:15 kjs_ joined #perl6
11:26 thou joined #perl6
11:27 firefish5000 I am trying to figure out subsets. What are they? <my subset Min of Int where (0..60); my Min $min=1; say $min.WHAT;> prints Int, <$min=62;> fails (so its still effective),  and <my $b=$a; $b=62;> works (so subsets arn't kept by =, which is unfortunate for my use case),
11:28 nebuchadnezzar joined #perl6
11:28 masak it's containers that are typed, not their values.
11:29 masak and subsets are refinement types, not nominal types.
11:30 masak (so you won't see the subset type when you .WHAT)
11:31 lizmat cycling&
11:32 firefish5000 so since its just the container constrained, copies will be unconstrained, which is why I cannot pass them as arguments and have them work the way I want...
11:37 masak yes, you got it.
11:38 kjs_ joined #perl6
11:39 firefish5000 Thanks masak! I would have gone down this route for an eternity without that...
11:40 masak prego. enjoy your Perl 6.
11:43 firefish5000 now as a follow up. Is there a way for me to create a normal type such as <class Min { has Int $.min where (0..60); }; my Min $a; $a = 4;> where some p6 black magic makes $a=4 work like $a.min=4?  I have tried overloading '=' for Min, but thats not possible..
11:44 * timotimo mumbles something about box targets
11:45 anaeem1 joined #perl6
11:47 firefish5000 if anyone says 'no' or 'i don't think so', 90% of my stress from over complicating my p6 to achieve this functionality will be revealed as I just deal with the 4 extra chars...
11:49 timotimo well, Int itself is implemented as having a  "has $!int is box_target" attribute
11:49 timotimo that makes it possible to nqp::box_i(123, Int)
11:49 timotimo (though pretty much all code in rakudo itself should use nqp::p6box_i(123), which gives the Int automatically)
11:50 timotimo and many operations will use one of the two Int box types that "come in" to do calculations
11:50 timotimo so if you use the minute Int type everywhere, it might just work out
11:50 timotimo er
11:50 timotimo i forgot the important part
11:51 timotimo "has int $!int is box_target"
11:51 timotimo and native ints cannot have subsets applied to them
11:52 nebuchadnezzar joined #perl6
11:52 * firefish5000 is googleing box targets and enjoying the streamed information  throughly
11:52 virtualsue_ joined #perl6
11:53 timotimo i had no idea %)
11:57 firefish5000 thanks timotimo, Ill see what I can do with this and hopefully will be able to put it to good use! (my hate those 4 chars is worth 1000 lines of code, and from a 2min google this looks like it may be done in <100)
11:58 timotimo hmm
11:58 masak so, how do you young'uns connect to SQLite from your Perl 6 code these days?
11:58 masak do you use DBIish?
11:58 timotimo i haven't done database stuff with perl 6 yet
11:58 timotimo but i'd probably just use DBIish
11:59 * masak will try this
11:59 masak I am now at a point where a hobby project takes about an hour just to start up, mostly because it's building a data model.
11:59 masak I figure if I put some of this in a db, the boot sequence will be faster :)
12:01 timotimo oh wow
12:02 timotimo well, we should still become faster
12:02 timotimo but yeah ... db is your friend
12:02 masak it's a really data-heavy thing I'm doing.
12:02 timotimo so i was thinking of how to model unions for NativeCall
12:02 anaeem1 joined #perl6
12:03 timotimo one way seems to be to create a new REPR, but that sounds quite iffy
12:03 timotimo another way is to have an "is union" trait on classes that can set a "create a union" flag in the repr_data, which requires changing Metamodel::ClassHOW, which seems iffy, too
12:05 timotimo with an ExportHOW i could perhaps create a "cunion" keyword that'd do a whole lot of magic for creating dummy attributes so that the resulting CStruct is big enough and for each class you put into it it'd create an accessor that'd cast and return self
12:05 timotimo that kind of sounds not too terrible
12:06 timotimo it's still pretty annoying to cast CStructs into other CStructs
12:07 timotimo another thing i thought about for the particular use case of SDL_Event is this:
12:07 timotimo every SDL_Event has an int32 type and an int32 timestamp at the start and then there's more stuff following it
12:08 timotimo so if CStruct would actually implement change_type, it could be "casted" like this:
12:08 timotimo have a role that contains the extra attributes
12:08 timotimo and a cast would just be return self but SDL_MouseButtonEventAttributeRole
12:08 timotimo that's kind of neat, but has its problems, as well
12:09 Alula joined #perl6
12:09 timotimo like if you .= new your own SDL_Event - which is what you do before you SDL_PollEvent - it'd only have space for the beginning and everything after that would be writing/reading garbage memory
12:12 ggoebel111111119 joined #perl6
12:13 timotimo i suspect it'd be the best thing to teach nativecallcast about casting CStruct into something; currently it just complains that it expects a CPointer REPR'd thing
12:14 ugator joined #perl6
12:18 Isp-sec joined #perl6
12:24 virtualsue joined #perl6
12:36 JimmyZ joined #perl6
12:46 xinming joined #perl6
12:46 pecastro joined #perl6
12:57 slavik joined #perl6
12:57 pecastro joined #perl6
13:04 tinyblak joined #perl6
13:07 raiph joined #perl6
13:10 moritz note to self: the day after halloween is a holiday. Not good for shopping.
13:14 thou joined #perl6
13:19 erkan joined #perl6
13:22 timotimo interesting
13:22 timotimo my code is causing MVM to try to free() the string data for a piece of string data that wasn't malloc'd
13:23 timotimo that string is "$OUT" ... i have no clue where my program found that
13:27 moritz the setting uses '$OUT' for initializing '$*OUT', iirc
13:28 moritz PROCESS::<$OUT> = ...;
13:29 timotimo that would mean it comes from the string heap?
13:31 moritz I have no idea; just speculating wildly
13:31 isBEKaml joined #perl6
13:31 timotimo it does smell a lot like memory corruption.
13:31 moritz oh fun, mk.de is down (and all their network lines, which they lend to others)
13:38 pat_js joined #perl6
13:39 tinyblak_ joined #perl6
13:47 isBEKaml moritz: what's mk.de?
13:47 isBEKaml I'm guessing ISP of some sort?
13:52 bjz joined #perl6
13:57 Alina-malina joined #perl6
13:58 isBEKaml left #perl6
13:59 timotimo interesting
13:59 timotimo the problem occurs even when i'm not using nativecallcast at all ... and it also occurs if i revert the latest commit to moarvm
14:03 esaym153 joined #perl6
14:06 chenryn joined #perl6
14:08 esaym153 joined #perl6
14:09 [Sno] joined #perl6
14:11 [Sno] joined #perl6
14:30 sqirrel_ joined #perl6
15:02 thou joined #perl6
15:16 jfredett joined #perl6
15:21 fragiletag joined #perl6
15:34 guru joined #perl6
15:36 masak quiet in here today.
15:39 timotimo mhm
15:39 timotimo i'm having a hard time trying to motivate myself to hunt that memory corruption look-alike
15:44 moritz timotimo: I promise you a cookie for a fix
15:46 timotimo how am i supposed to fix such a stupid thing like that? :(
15:47 moritz timotimo: ok, I promise you two cookies
15:48 timotimo i can feel the problem become easier
15:49 moritz timotimo: what kinds of cookies do you like?
15:49 timotimo i like many kinds of cookies
15:51 moritz timotimo: http://www.amazon.de/Bahlsen-Selection-1er-Pack-Packung/dp/B000FWHWEU/ :-)
15:51 timotimo that *is* a "many kinds of cookies" kind of thing :D
15:53 moritz and it's more than two cookies too
15:53 timotimo :)
15:54 moritz timotimo: sudo feel motivated :-)
15:54 timotimo hah
15:54 timotimo well, i've already reproduced the bug on my desktop, so there's that
15:55 timotimo oh, wait ... if it says "freed by thread T0 here:" followed by "==31298== AddressSanitizer CHECK failed: ../../../../libsanitizer/sanitizer_common/sanitizer_stackdepot.cc:182 "((id & (1u << 31))) == ((0))" (0x80000000, 0x0)" ...
15:56 * moritz just made one commit so far today
15:56 timotimo does that mean it tries to double-free? or did that error get triggered while trying to show the error properly?
15:58 kaare_ joined #perl6
15:59 timotimo oh! someone could have told me that you need the llvm-symbolizer binary to get symbols resolved in asan stack traces
15:59 timotimo -fno-omit-frame-pointer and --debug=3 is not enough
16:00 timotimo er ... except i already have that installed and i still only get memory addresses
16:03 molaf__ joined #perl6
16:07 dalek perl6-bench/stress: 2cb1967 | (Geoffrey Broadwell)++ | analyze:
16:07 dalek perl6-bench/stress: Non-plot HTML pages are UTF-8 too
16:07 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/2cb19674bd
16:07 dalek perl6-bench/stress: 2dbd21e | (Geoffrey Broadwell)++ | analyze:
16:07 dalek perl6-bench/stress: Reduce visual noise by de-emphasizing the icon for successful runs
16:07 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/2dbd21e547
16:17 raydiak good morning #perl6
16:18 timotimo hey ray :)
16:20 timotimo moritz: what if the memory error is just from passing incorrectly sized structs to SDL's functions?
16:21 timotimo valgrind apparently has trouble following our function pointers around for REPRops
16:22 [Sno] joined #perl6
16:24 FROGGS_ timotimo: can we already profile stuff that has an exit in it?
16:25 timotimo i've figured out how to do it, but it looked too wrong to be committed ...
16:25 FROGGS_ ahh, hmmm
16:25 TimToady moritz: re http://irclog.perlgeek.de/perl6/2014-10-31#i_9594588 I'd say s/generic/specific/ is incorrect.
16:25 timotimo basically you nqp::gethllsymbol('perl6', '@END_PHASERS') or what it's called
16:25 timotimo and .push a little closure in there that does the dump_profile_info
16:26 timotimo that would go into rakudo's HLL Backend
16:26 FROGGS_ timotimo: okay, I add that now temporarily to profile cpandatesters :o)
16:26 FROGGS_ timotimo++
16:26 timotimo :)
16:27 timotimo wow.
16:27 timotimo my SDL_Event struct is 56 bit big. it needs to be 56 bytes.
16:27 timotimo that's why SDL is writing outside of malloc'd space
16:27 ugator joined #perl6
16:28 FROGGS_ ohh, heh
16:28 timotimo i quite competently calculated what combination of 64 bit, 32 bit, 16 bit and 8 bit integers i'd have to put in there so that it'd be the "right size"
16:28 timotimo except int64 is 64 bits, not bytes big ...
16:29 moritz just a factor 8 off :-)
16:29 timotimo yup
16:31 kurahaupo joined #perl6
16:32 timotimo *nice*
16:32 timotimo now i got an empty window that i can close by clicking the window decoration's close button
16:33 timotimo and the only valgrind messages i get come from inside libnvidia-glcore
16:33 FROGGS_ that sounds good!
16:33 dalek Perlito: 2aa46bf | (Flavio S. Glock)++ | / (2 files):
16:33 dalek Perlito: Perlito5 - js - fix context propagation in if()
16:33 dalek Perlito: review: https://github.com/fglock/Perlito/commit/2aa46bf59a
16:39 TimToady timotimo: I don't see offhand why unboxed types cannot have constraints enforced at the time they are stored; after all, something like int16 is constrained to 16 bits, even if the actual storage is wider. native constraints "merely" have to be enforced by the compiler rather than the runtime, using knowledge stored somewhere outside the native
16:40 TimToady much like C knows whether you're using a foo** or a bar*, but it's still just a native pointer
16:43 denis_boyun_ joined #perl6
16:44 raiph joined #perl6
16:51 thou joined #perl6
16:51 TimToady or to look at another way, native assignment merely has to inline the appropriate assignment code
16:51 TimToady "merely", I mean :)
16:53 TimToady but that's why C has to be so picky about knowing the difference between an lvalue and an rvalue at compile time
16:54 timotimo mhm mhm
16:54 TimToady I suspect this is part of what jnthn++ is mulling over subconsciously while he's hiking around :)
16:55 vendethiel joined #perl6
16:55 vendethiel well met, #perl6.
16:55 FROGGS_ hi vendethiel
16:56 sqirrel_ joined #perl6
16:57 timotimo hey ven
16:57 timotimo did you know that if you malloc a 56 bit wide area and give it to SDL2's event polling function, which expects a 56 byte wide area to write all over, there'll be trouble?
16:58 FROGGS_ SDL2 is a bit picky, that's for sure
16:59 timotimo FROGGS_: how can you call that sdl2 being picky? %)
17:00 FROGGS_ ohh, is it byte picky instead? :o)
17:00 timotimo yeah
17:00 timotimo that must be it
17:00 timotimo .o( now that i get it ... it's funny )
17:02 dalek nqp: 05cb90e | (Tobias Leich)++ | src/vm/moar/HLL/Backend.nqp:
17:02 dalek nqp: also write profiler output when rakudo exit()s
17:02 dalek nqp:
17:02 dalek nqp: timotimo++ for the proposed patch.
17:02 dalek nqp: review: https://github.com/perl6/nqp/commit/05cb90ebbe
17:03 immortal joined #perl6
17:05 TimToady .oO(obviously C needs better constraint checking on its native types...)
17:06 timotimo turns out the struct i built wasn't even 56bit big, it was 120 bit big
17:07 timotimo i wonder how i reached the conclusion that that would be the right size
17:07 timotimo but it was pretty late at night, so at least i have an excuse - sort of
17:10 vendethiel timotimo, I did know that, yes
17:11 timotimo well then why didn't you tell me? :\
17:11 vendethiel C is like "if I fit, I sit, otherwise LOL mate".
17:11 timotimo well, it did fit
17:11 timotimo there was just something else that it had to partially sit upon ...
17:12 FROGGS_ eww, I got a 17MB profile from my cpandatesters run >.<
17:13 anaeem1 joined #perl6
17:13 timotimo yup, that's how our profiler does it
17:13 timotimo let me dig out my partial patch that cuts down on size but also sadly makes the results wrong
17:13 timotimo maybe you can fix it? :)
17:14 timotimo remotes/origin/finite_callgraph_depth
17:14 timotimo please have a look at that :)
17:17 raiph joined #perl6
17:20 timotimo i'm definitely looking forward to native shaped arrays; that's going to give us flattened arrays in CStruct almost immediately
17:25 H2O1 joined #perl6
17:29 raydiak so I've seen people talking about cpan and perl 6...should I be worried about making p6 modules with the same names as p5 modules?
17:29 kjs_ joined #perl6
17:29 timotimo nope, no worries there
17:29 [Tux] joined #perl6
17:30 raydiak cuz math::symbolic is almost ready to go up, but it's not yet a faint glimmer of p5's math::symbolic, I almost felt bad for naming it the same when I saw it :)
17:30 timotimo in that case, just call it Math::Symbolish :P
17:31 raydiak heh not that bad
17:33 raydiak how's it goin anyway timo? working on anything interesting today?
17:34 timotimo my current focus is SDL2 bindings
17:34 raydiak awesome!
17:34 timotimo afk for a tiny bit &
17:35 H2O1 left #perl6
17:43 flussence joined #perl6
17:43 timotimo and you? anything besides math::symbolic keeping you busy?
17:44 raydiak I'm procrastinating walking/bussing half way across town in the rain to jack up my g/f's car and carry the flat tire w/wheel to the nearest gas station and pray it holds air :P
17:45 timotimo oh my
17:45 timotimo i had b0rked my car recently, too
17:45 anaeem1 joined #perl6
17:45 adu joined #perl6
17:45 raydiak ah, sorry to hear it...you okay? the car?
17:46 timotimo yeah, it was only damage to the autobody
17:46 timotimo happened at very low speeds
17:46 raydiak one time I rear-ended a truck in an entry-level new car at like 5 mph and half the engine compartment crumpled up like an accordian
17:47 raydiak gotta love them crumple zones
17:47 timotimo :o
17:47 timotimo that doesn't sound so good
17:47 timotimo also, that sounds like it'd be very expensive to repair
17:47 raydiak was just body stuff mostly, didn't total it...drove it a couple blocks home, hanging my head out the window so I could see around the hood
17:47 timotimo d'oh
17:48 timotimo i only lost the bumper
17:48 timotimo it was hanging on by one of the light's cables, so before i could drive it away "to safety" i had to unscrew the light using one of my keys :S
17:48 timotimo cars can be fun
17:48 raydiak hah yes they can
17:49 raydiak I've learned a *ton* about physics just from learning about cars, too
17:49 timotimo oh, yeah
17:50 timotimo i recently went karting with friends and i was kind of disappointed that all the stuff i learned from my dad, who's big into racing simulation games, wasn't enough to make my performance stand out :|
17:50 FROGGS__ joined #perl6
17:51 raydiak I haven't really done any kind of competitive driving
17:52 raydiak except a little fling with need for speed once in a while
17:52 timotimo ah, you were considering "simulated driving" in that description, too
17:52 raydiak I have done a *ton* of fixing (and breaking)
17:53 timotimo i think i've been karting twice in my life so far; once with regular combustion engines and recently with electric karts
17:53 timotimo electric karts are way cool.
17:53 raydiak oh I'll bet...weird to have all the torque right from the start?
17:55 timotimo didn't feel weird; not entirely sure why, though
17:56 raydiak wI've always wanted to try an electric car, a car w/a cvt, and a rotary mazda, to see what they feel like
17:57 timotimo i know neither what a cvt nor a rotary mazda is :\
17:57 raydiak cvt=continuously variable transmission, no discreet "1st", "2nd", "3rd" gear
17:58 Ven joined #perl6
17:58 timotimo ah
17:58 timotimo liz and wendy took me to APW in their plug-in prius
17:59 raydiak and mazda has made some cars with rotary engines, which don't have pistons
17:59 gfldex joined #perl6
17:59 raydiak instead it's this weird sort of "triangle spinning in an oval" shape
17:59 timotimo https://en.wikipedia.org/wiki/Wankel_engine - like this one?
17:59 raydiak yeah that one!
18:00 raydiak I knew there was a more specific term I wasn't remembering
18:01 timotimo i always thought wankel engines were really neat
18:01 timotimo but i never saw one in action
18:01 raydiak I hear they love to accelerate...almost no reciprocating mass, very well-balanced, high redline, wide powerband
18:02 raydiak poor fuel economy b/c of a low compression ratio, but that means they probably do well with turbo/supercharging
18:02 timotimo mhm
18:02 timotimo i'd love to own a tesla one day
18:02 timotimo or at least drive
18:03 raydiak yeah no kidding
18:03 timotimo i've seen a quite big amount of charging stations all around the city
18:03 raydiak haven't seen any here yet
18:06 raydiak though tbh if I had a bunch of money and wanted a nice car, I'd rather have a lotus than most other things...they tend to be crazy light, good fuel economy and power-weight ratio
18:06 raydiak not that expensive either, by comparison to most other "exotic" brands
18:07 raydiak entry-level elise was like $60k US last time I looked
18:08 timotimo what's missing in the entry-level ones?
18:08 raydiak but I got a few years to worry about how to bankroll my midlife crisis yet :)
18:08 raydiak no supercharger, for one
18:08 raiph joined #perl6
18:08 raydiak or was it a turbo on the exige? I forget, either way, naturally aspirated
18:08 timotimo i wouldn't accept a car that doesn't have air conditioning and heating, for example
18:09 raydiak not sure if the bottom-end elise has limited-slip or not, either
18:09 BenGoldberg joined #perl6
18:09 timotimo to me, a "supercharger" is the thing that you can charge your car very quickly with
18:09 raydiak I don't use A/C, but I'd be surprised if it has no heat
18:09 raydiak hehe
18:09 japhb raydiak: Back in the 80's my dad had a rotary-engine sports car.  The acceleration was indeed amazing.  It had an auditory readline, because you might not notice you were hitting it.
18:09 timotimo i kind of sort of know what a turbo is
18:10 timotimo ... a readline?
18:10 japhb redline
18:10 raydiak the way the slang around here goes, turbo is forced-induction (air pump in your intake) powered by the exhaust flow, while supercharger is belt-driven
18:10 japhb Clearly you know which one I type more often
18:10 raydiak japhb: nice :) I'm jealous
18:10 timotimo oh, redline is the point where your rpm is too high?
18:10 japhb timotimo: yeah
18:10 timotimo OK
18:11 raydiak yeah past that you're risking immediate internal engine damage
18:11 TimToady the redline on a rotary was up like 6-7000 rpm, iirc
18:11 timotimo mhm
18:11 raydiak though many engines make peak power below their redline anyway
18:11 xenoterracide_ joined #perl6
18:12 raydiak hm, 7k isn't much higher than many piston engines
18:12 TimToady the three main problems with rotaries were: seals, efficiency, and emissions
18:13 TimToady well, back in the day, was more like 3000 for most pistons
18:13 TimToady materials have improved :)
18:13 raydiak when was this? :)
18:13 thou joined #perl6
18:13 TimToady back when you added more cylinders, not more rpms :)
18:13 japhb From the WP article on the Mazda RX-7: "Because of the smoothness inherent in the Wankel rotary engine, little vibration or harshness was experienced at high engine speeds, so a buzzer was fitted to the tachometer to warn the driver when the 7,000 rpm redline was approaching."
18:14 raydiak ah, before my time :)
18:14 raydiak japhb: hah that's awesome
18:15 raydiak guess the limiting factor for a rotary is burning the seals or something, then?
18:16 japhb There was a running joke that only Mazda mass-produced them, because they were the only ones that had figured out how to seal them well enough.
18:16 TimToady well, the center of mass of the rotor does move around some, so you still get some vibrational effects, just less than in a piston engine
18:17 anaeem1_ joined #perl6
18:17 TimToady there was also a diesel wankel that had more lobes
18:17 raydiak there was?
18:17 TimToady german, not japanese, iirc
18:17 japhb There's also a story that when they first came out they caused some issues in racing competitions because they produced so much more power for unit displacement and engine weight, so rules had to be refined to place them off in their own bracket.
18:18 TimToady then there was the episode of turbines at Indy...
18:18 japhb Oh dear, I can imagine that being ... spectacular.
18:18 japhb And not in a "I want to be in that car" sense
18:18 TimToady I think they basically outlawed them by limiting air intake
18:19 * japhb dislikes the fact that so many racing competitions deal with real innovation by disallowing it.
18:21 japhb My uncle (an avid race fan) tells me of when active aerodynamics first came out, and cars that could turn their spoiler into an air brake started lapping cars that didn't ... so they disallowed that.  I would like to have seen that kind of thing in my day, rather than what frankly looks like slot cars sometimes.
18:22 raydiak I had a co-worker tell me about some guy way back that affixed huge fans or something to the bottom of his car for downforce, b/c there wasn't a rule against it
18:23 raydiak idk where or what sort of racing he was talking about
18:24 japhb The rules of modern downforce boggle me -- "If you don't enter that corner going FAST ENOUGH, you'll lose traction"
18:24 kurahaupo japhb: rumour has it the Mazda put an RX7 engine on a test bench and ran it up to something like seven times the official redline rpm
18:25 japhb woah
18:25 BenGoldberg Another problem with mazda's (early) rotary engines was how they dealt with emmissions... to get rid of unburnt hydrocarbons in the exhaust, they decided to just throw a bit of air and fuel into the exhaust, and burn it.  This was *just* before fuel economy requirements went up, which was unfortunate for them.
18:26 BenGoldberg Modern rotarys use extra spark plugs, to fully burn the fuel inside the engine, to avoid that problem.
18:26 japhb Yeah, dad's car got like 14 MPG.  But they were very fun miles.  :-)
18:26 Ulti if I have a sub with two typed parameters and pass in a list as the arguments with two elements how can I get that to match the sub?
18:26 japhb .oO( Oh no, on topic conversation! )
18:26 timotimo fun miles and likely also cheap gallons
18:26 BenGoldberg Ulti, typed parameters?  Using Moose, or what?
18:27 Ulti o___O using Perl6
18:27 timotimo Ulti: sounds like you'd my_sub(|@foo)
18:27 BenGoldberg Erps, wrong channel ;)
18:27 * BenGoldberg feels silly, now.
18:27 japhb m: sub foo(Int $a, Str $b) { say "$a $b" }; my @a = (1, 'bar'); foo(|@a);
18:27 Ulti sub add (int $a, int $b --> int) {$a+$b}  and then add(@args)
18:27 camelia rakudo-moar 315ec6: OUTPUT«1 bar␤»
18:27 Ulti timotimo: aha!
18:28 Ulti I tried @args[*] living in hope
18:28 japhb Ulti: Is what I sent what you meant?
18:28 Ulti yeah
18:28 Ulti thanks
18:28 timotimo Ulti: well, that's already syntax for "the element after the last element"
18:28 japhb OK, cool
18:29 ugator reading S09#Compact_structs: I wonder if it's possible to translate strongly typed code directly into C - for specific operators, loops or simiar?
18:29 ugator *similar
18:29 Mso150 joined #perl6
18:29 timotimo ugator: MoarVM's jit will come very close
18:29 TimToady timotimo: * by itself is not a closure
18:29 timotimo oh
18:29 TimToady so @args[*] is just all the values
18:30 TimToady @args[*-0] is the one beyond the end
18:30 Ulti ha! now I have the inverse problem that the one with @args isnt *@args
18:30 timotimo mhm mhm
18:30 ugator timotimo: in terms of speed too? that would be a huge thing?!
18:30 flussence joined #perl6
18:31 timotimo ugator: we hope! :)
18:31 ugator :-))
18:31 timotimo perl6 classes with native attributes are already only a bit more expensive than a regular struct would be
18:32 Ulti oh wow adding typed information to that recent benchmark with the ast makes it incredibly slow
18:32 Ulti x___X
18:32 timotimo but our jit is currently not clever enough to avoid reading from and writing to the stack before and after every single op
18:33 raydiak okay, thanks for the chat this morning everyone, I feel prepared to go tackle my g/f's car now...catch you all later :)
18:33 TimToady .oO(Car Talk)
18:33 timotimo good luck!
18:34 timotimo maybe you'll be able to replace her engine with a wankel engine now? :)
18:34 * raydiak would rather replace it with a horse at this point :)
18:34 TimToady which is sort of the flip side of #perl6, insofar as it's two guys doing a car talk show where nothing is OT
18:35 japhb Ulti: Type information both helps and hurts: Enforcing constraints constantly is slow, but with the constraints in place, the optimizer can be smarter about the compiled code.  It just so happens that right now usually for object types the constraint checking wins, and for native types the optimization wins.  Especially when the JIT kicks in.
18:35 raydiak hahaha
18:35 raydiak okay really gone now o/
18:35 timotimo i think type checking is often expensive
18:35 timotimo Ulti: it may be the case that you're getting poor performance due to slurpy arguments, though
18:35 Ulti I think the problem is that benchmark is all anon subs?
18:36 colomon joined #perl6
18:36 Ulti timotimo: I just added the slurpy argument to one of them to avoid the implicit slurpy of the untyped subs everywhere
18:36 timotimo i've noticed a huge amount of code objects being created from the clone method from these anon subs
18:36 timotimo er
18:36 Ulti oh I tell a lie!!
18:36 timotimo surely you mean @_[0] and @_[1]?
18:37 japhb Methinks an idiomatic version of that benchmark (the same was as was done for Go) would make it much, much faster (the same way as for Go).  Use the language the way it's most often used, and you'll tend to hit the optimized paths.
18:37 timotimo because we don't have implicit slurpy arguments; you have to explicitly refer to @_ for them to appear
18:37 Ulti the native typed code with fixed numbers of arguments takes 88 seconds rather than 111
18:37 Ulti not exactly incredible but also essentially the same code
18:37 timotimo yeah, i've observed something similar
18:37 timotimo also using Num instead of Rat gives a little speed boost as well
18:37 Ulti still 12% for just specifying type information... kind of cool
18:38 japhb timotimo: Why not num instead of Num?
18:38 Ulti yeah this was all num
18:39 timotimo japhb: might as well
18:39 timotimo https://gist.github.com/timo/2d2cc1260428e5758086 - this is how i patched it recently
18:40 Ulti though I think the benchmark is specifically testing this horrible case with just passing in a list and accessing it
18:40 timotimo yeah
18:40 cognominal joined #perl6
18:40 Ulti since the Go and everything else is written that way even when it is really gross
18:41 timotimo well, if the code doesn't pass arrays as args around any more, it might as well use the built-in +, -, * and / operators
18:43 japhb But, but, they call out the idiomatic Go as well.  And it's an order of magnitude faster.
18:43 Ulti oh I also changed the total sum to use [+] not sure that is better
18:44 Ulti the idiomatic Perl6 wouldnt even implement the AST that way though :/
18:45 Ulti we'd have a grammar to define a whole sublanguage or something right >:3
18:48 timotimo Ulti: to be honest, the AST representation is just fine; this is *after* any grammar or similar would have run
18:51 BenGoldberg How much speed difference is there between @ast[$i] and @ast.at_pos($i)?
18:51 timotimo a bit. one has to do a range check and defer to the other
18:52 erkan joined #perl6
18:53 BenGoldberg Would it be faster, or slower, to loop over @ast[ 1 .. @ ], and get rid of $i entirely?
18:53 BenGoldberg Err, @ast[ 1 .. * ]
18:54 timotimo i tried to have @ast is copy and shift off the first element and then iterate over the whole list
18:54 timotimo that seemed a lot slower
18:57 timotimo how come uint8 doesn't work in native calls? :\
19:00 Mso150_m joined #perl6
19:03 ghostlines joined #perl6
19:06 dalek perl6-bench/stress: 8e2d9f9 | (Geoffrey Broadwell)++ | analyze:
19:06 dalek perl6-bench/stress: Add simple HTML hover text with a couple diagnostic details
19:06 dalek perl6-bench/stress: review: https://github.com/japhb/perl6-bench/commit/8e2d9f9148
19:15 Sqirrel joined #perl6
19:28 zakharyas joined #perl6
19:32 anaeem1_ joined #perl6
19:35 denis_boyun_ joined #perl6
19:38 anaeem1_ joined #perl6
19:39 raiph joined #perl6
19:44 kjs_ joined #perl6
19:53 tinyblak joined #perl6
20:03 tinyblak_ joined #perl6
20:10 Ven joined #perl6
20:14 colomon joined #perl6
20:15 Mso150 joined #perl6
20:24 timotimo i'm back :)
20:24 timotimo even though i don't think anybody noticed i was gone
20:24 denis_boyun___ joined #perl6
20:29 masak moritz: I saw this and thought of you: http://lesswrong.com/lw/l16/2014_iterated_prisoners_dilemma_tournament_results/
20:34 FROGGS__ wow, now I cpandatesters is almost fast... I compile the templates on one now
20:34 FROGGS__ (which is not the default when using Bailador)
20:34 timotimo "on one"?
20:34 FROGGS__ only once
20:34 FROGGS__ sorry
20:34 timotimo aaah
20:34 masak moritz: it's an interesting twist for a bot to be able to run its opponent. :>
20:35 timotimo almost fast, eh? we still got some way to go
20:35 timotimo FROGGS__: could you make anything of the branch that tries to limit the depth of the call stack for the profiler?
20:36 FROGGS__ timotimo: no, because I've got profile atm that are almost usable... so I didn't try your branch :/
20:37 [Coke] kk
20:38 Ven joined #perl6
20:39 dalek cpandatesters.perl6.org: 2e7cae9 | (Tobias Leich)++ | app.pl:
20:39 dalek cpandatesters.perl6.org: compile templates once at startup
20:39 dalek cpandatesters.perl6.org: review: https://github.com/perl6/cpandatesters.perl6.org/commit/2e7cae9c4a
20:40 dalek cpandatesters.perl6.org: b25f577 | (Tobias Leich)++ | app.pl:
20:40 dalek cpandatesters.perl6.org: allow binding to a specific ip address
20:40 dalek cpandatesters.perl6.org: review: https://github.com/perl6/cpandatesters.perl6.org/commit/b25f577c91
20:44 timotimo :(
20:50 raydiak yay back home and out of the rain, and the tire seems to hold air after bouncing it around to re-seat the bead \o/
20:52 timotimo bounce it to the beat to re-seat the bead
21:00 dalek cpandatesters.perl6.org: 1bcdea1 | (Tobias Leich)++ | setup/cpandatesters_pg.sql:
21:00 dalek cpandatesters.perl6.org: update prostgres schema (serial,varchar)
21:00 dalek cpandatesters.perl6.org: review: https://github.com/perl6/cpandatesters.perl6.org/commit/1bcdea1c0d
21:04 Alina-malina joined #perl6
21:07 Mso150_e joined #perl6
21:07 dalek cpandatesters.perl6.org: 00cc706 | (Tobias Leich)++ | setup/cpandatesters_pg.sql:
21:07 dalek cpandatesters.perl6.org: add column "grade"
21:07 dalek cpandatesters.perl6.org: review: https://github.com/perl6/cpandatesters.perl6.org/commit/00cc706ebb
21:09 raydiak is there a way to overload operations on a class besides exporting subs? i.e. so it still works when the object is passed into a namespace that doesn't directly use my module, so doesn't import
21:09 raydiak or would that be considered "spooky action at a distance"?
21:10 timotimo there's a mechanism for that
21:10 timotimo NYI, though
21:11 raydiak ah, glad I asked before digging in to that one, then :) thanks timotimo++
21:12 jack_rabbit joined #perl6
21:14 revlin joined #perl6
21:14 dalek cpandatesters.perl6.org: 3240e6e | (Tobias Leich)++ | app.pl:
21:14 dalek cpandatesters.perl6.org: switch from mysql to postgresql
21:14 dalek cpandatesters.perl6.org: review: https://github.com/perl6/cpandatesters.perl6.org/commit/3240e6eb9c
21:15 timotimo kind of "import operators from the caller's scope"
21:16 raydiak it's fun to rip pieces of conversation out of context: "spooky action at a distance? there's a mechanism for that"
21:16 timotimo :)
21:17 raydiak huh...my first thought was a way to say it with methods instead of subs
21:18 raydiak but then I guess every operator has to check for the existence of special methods on its arguments
21:18 dalek zavolaj: 7687ca0 | (Salve J. Nilsen)++ | README.markdown:
21:18 dalek zavolaj: Fix typo in SQL
21:18 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/7687ca05ea
21:18 dalek zavolaj: 1b220a2 | (Tobias Leich)++ | README.markdown:
21:18 dalek zavolaj: Merge pull request #50 from sjn/master
21:18 dalek zavolaj:
21:18 dalek zavolaj: Fix typo in SQL
21:18 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/1b220a26da
21:22 revlin perl6: say 3;
21:22 camelia rakudo-{parrot,moar} 315ec6: OUTPUT«3␤»
21:26 revlin Anyone aware of some interest in developing a language-to-language compiler: Perl6 to asm.js?
21:27 BenGoldberg There're always interest in porting perl6 to new backends.
21:27 revlin Is this the place to follow such interest or is there another pond I should be fishing in?
21:27 BenGoldberg This is the place for it.
21:28 revlin cool
21:28 raydiak didn't someone start some sort of js backend?
21:28 BenGoldberg perlito
21:28 timotimo forget perlito
21:28 timotimo we are getting a rakudo-js
21:28 BenGoldberg ooh
21:28 revlin can I search rakudo-js and find anything?
21:29 revlin ah, on github
21:29 revlin it uses NQP
21:30 timotimo it's a javascript backend for nqp right now
21:30 timotimo but when you have a complete nqp backend for something, you're quite close to a rakudo backend
21:30 revlin that's cool.
21:31 revlin What I actually had in mind was writing an app in Perl(6), which compiles down to the asm.js subset to be run client side
21:31 revlin http://asmjs.org/spec/latest/
21:31 timotimo perl6 doesn't lend itself to be compiled to asm.js ... at least at compile time
21:32 revlin I'm not new to Perl, but am just starting to read about Perl 6... what does it lend itself to?
21:33 timotimo compiling to js is fine
21:33 timotimo we don't compile down to machine code - although MoarVM has a JIT compiler
21:33 timotimo you'd need an AOT compiler to output asm.js instead
21:34 ugexe_ joined #perl6
21:35 revlin k, I need to read a bit more before I can have an intelligible conversation about this
21:35 ugexe__ joined #perl6
21:35 revlin now figuring out what a Parrot Virtual machines is, so I can better understand rakudo
21:36 timotimo you can pretty much ignore parrot nowadays :\
21:36 raiph joined #perl6
21:37 revlin ignore? Is MoarVM the active development stream?
21:37 raydiak aye
21:37 masak pretty much.
21:37 timotimo you can say that, yes
21:37 timotimo moarvm and the jvm backend, too
21:37 revlin K, thanks. I will read about that instead.
21:37 timotimo feel free to approach us with any questions you have :)
21:38 revlin Is perlito also a "dead end"?
21:38 revlin thx
21:39 FROGGS__ perlito's goal is just to support a subset... dunno if these are your plans too
21:39 timotimo i heard fglock considers the perl6 part of perlito to be done
21:39 FROGGS to support more than a subset you basically *have to* use/port rakudo
21:40 timotimo or build your own compiler :)
21:40 revlin no plans, as of yet. I love Perl, but spend most of my days in JS. Mojolicious is really cool, but looking for more signs indicating Perl's future
21:40 FROGGS sure... and in twenty years... :o)
21:41 tony-o in twenty years we're in here asking FROGGS about perl7
21:41 FROGGS hehe
21:41 FROGGS I don't think so :o)
21:42 tony-o haha
21:44 Guest33617 joined #perl6
21:46 raydiak revlin: perhaps this highlights troubles you might run in to?
21:46 raydiak "Unlike nqp-rx, which aimed to have almost no runtime component whatsoever, this new version of NQP accepts that a minimal Perl 6 object metamodel, multidispatcher, and regular expression engine are needed on top of the underlying virtual machine."
21:48 revlin raydiak: problems I might run into if trying to build my own compiler?
21:48 raydiak revlin: yeah, looks like those are some of the key points of trouble others have run in to
21:49 raydiak I don't know much about it and am not a language implementor, but it looked relevant
21:50 revlin I'm just fact-finding. I want to use Perl in full-stack web development, so just exploring different possibilities for doing that
21:51 masak ooh. Dylan has a macro called `block`, which is used to implement "nonstandard flow of control". neat.
21:52 masak which means that they don't need a special mechanism for `last`, for example, because `block` can already do that.
21:52 masak http://opendylan.org/books/drm/Statement_Macros#block
21:53 revlin thanks for the pointers, folks :)
21:55 raydiak saw something called tao3d mentioned on /. today...noticed it claimed "It makes it very easy to create new control structures. Defining if-then-else is literally a couple of lines of code."
22:13 molaf__ joined #perl6
22:13 masak raydiak: interesting. I was just reading about a language called 3D, in connection with metacircularity.
22:13 masak 'night, #perl6
22:14 raydiak g'night masak o/
22:22 raiph joined #perl6
22:41 moritz masak: thanks for the prisoner's dilemma link, and good night
22:48 dalek rakudo/nom: e46b2f4 | (Elizabeth Mattijsen)++ | src/core/IO.pm:
22:48 dalek rakudo/nom: More primitives
22:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e46b2f48a9
22:48 dalek rakudo/nom: 930bb08 | (Elizabeth Mattijsen)++ | src/core/IO/Dir.pm:
22:48 dalek rakudo/nom: Use new MAKE-CLEAN-PARTS primitive
22:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/930bb08d30
22:56 psch joined #perl6
22:56 psch hi #perl6 o/
22:56 raydiak \o psch
22:56 psch grammars are my newest hammer.  i hit a (very limited) assembly with it.
22:57 psch hey raydiak o/
22:57 psch although i still feel like grammars are lacking something, which means i probably don't understand something about them yet
22:58 psch i.e. when wanting to match things that can be specified from outside.  .parse(:rule<...>, :args<...>) still seems unfinished
22:59 psch i'm helping myself with dynamics, which feels a bit too global-ish
22:59 psch the improved cli parsing as well as the little assembler i wrote both suffer from that, FSVO suffer
23:01 psch lines like this one: https://github.com/rakudo/rakudo/pull/324/files#diff-c722fa19c07b584633fcb8fd94a98650R90
23:10 colomon joined #perl6
23:31 psch i also think i'm missing something re: the difference between WhateverCode and blocks with placeholders
23:31 psch m: say { :16($^a) }('ff') # works
23:31 camelia rakudo-moar 315ec6: OUTPUT«255␤»
23:31 psch m: say (:16(*))('ff') # doesn't
23:31 camelia rakudo-moar 315ec6: OUTPUT«Cannot call 'UNBASE'; none of these signatures match:␤:(Int:D $base, Cool:D $num)␤:(Int:D $base, Str:D $str)␤  in block <unit> at /tmp/RbNH1gh1IY:1␤␤»
23:31 psch m: say { :16(*) }('ff') # neither
23:31 camelia rakudo-moar 315ec6: OUTPUT«Cannot call 'UNBASE'; none of these signatures match:␤:(Int:D $base, Cool:D $num)␤:(Int:D $base, Str:D $str)␤  in block <unit> at /tmp/b7gV9PMaiT:1␤␤»
23:32 psch maybe it's not Whatever vs placeholder but colon-pair--as--UNBASE...
23:32 * sjn wonders what "To compile on the MoarVM backend, QAST::VM must have an alternative 'moar' or 'moarop'" means
23:33 * sjn is using rakudobuild, fwiw
23:33 PZt joined #perl6
23:39 psch sjn: google against the clog suggests some module might be lagging behind.  i'm not sure
23:39 psch fwiw, i built nom HEAD without rakudobrew cleanly a few minutes ago.  i won't build with rakudobrew 'cause i'm low on bandwidth... :)
23:41 * sjn just rebuilt both moar_jit-HEAD and moar-HEAD
23:42 psch oh right, i'm not running jitted, 32bit here
23:51 sjn Hm. Does NativeCall work on moar?
23:53 psch it doesn't test properly on 32bit
23:53 psch but it should definitely work
23:55 * sjn tries with parrot-HEAD, to see if that makes a difference
23:56 sjn hm. lots of build warnings when compiling rakudo-parrot
23:57 sjn looks like most of them are of type -Wunused-parameter

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

Perl 6 | Reference Documentation | Rakudo