Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-01-19

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:20 cfedde joined #perl6
00:26 flussence joined #perl6
00:29 shadowpaste joined #perl6
00:32 protium joined #perl6
00:38 SCHAAP137 joined #perl6
00:39 protium joined #perl6
00:50 BenGoldberg joined #perl6
00:51 protium joined #perl6
00:52 yeahnoob joined #perl6
00:54 protium joined #perl6
00:57 BenGoldberg m: { my sub foo { 42 } }; say foo;
00:57 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Lo96KfyYq3␤Undeclared routine:␤    foo used at line 1␤␤»
00:57 BenGoldberg m: { my sub foo { 42 }; say foo };
00:57 camelia rakudo-moar 770d10: OUTPUT«42␤»
00:58 BenGoldberg m: { say my sub foo { 42 };  };
00:58 camelia rakudo-moar 770d10: OUTPUT«sub foo () { #`(Sub|64228656) ... }␤»
00:58 BenGoldberg m: my $secret = { my sub foo { 42 };  }; say $secret();
00:58 camelia rakudo-moar 770d10: OUTPUT«sub foo () { #`(Sub|57335376) ... }␤»
01:02 dalek ecosystem: 8a34595 | (brad clawsie)++ | META.list:
01:02 dalek ecosystem: add WebService::AWS::V4
01:02 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/8a34595e04
01:02 dalek ecosystem: 3c9f418 | (Zoffix Znet)++ | META.list:
01:02 dalek ecosystem: Merge pull request #127 from bradclawsie/master
01:02 dalek ecosystem:
01:02 dalek ecosystem: add WebService::AWS::V4
01:02 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/3c9f418605
01:03 BenGoldberg m: my $secret = { anon Int sub { 42 };  }; say $secret();
01:03 camelia rakudo-moar 770d10: OUTPUT«sub ( --> Int) { #`(Sub+{Callable[Int]}|62201728) ... }␤»
01:04 BenGoldberg m: my $secret = anon Int sub { 42 }; say $secret();
01:04 camelia rakudo-moar 770d10: OUTPUT«42␤»
01:31 mcmillhj joined #perl6
01:33 adu joined #perl6
01:36 dalek rakudo-star-daily: 3227cc6 | coke++ | log/ (6 files):
01:36 dalek rakudo-star-daily: today (automated commit)
01:36 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/3227cc6c57
01:36 dalek rakudo-star-daily: 3491280 | coke++ | log/ (6 files):
01:36 dalek rakudo-star-daily: today (automated commit)
01:36 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/3491280953
01:36 dalek rakudo-star-daily: 3c084de | coke++ | log/ (6 files):
01:36 dalek rakudo-star-daily: today (automated commit)
01:36 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/3c084dec4c
01:36 dalek perl6-roast-data: d2d8319 | coke++ | / (6 files):
01:36 dalek perl6-roast-data: today (automated commit)
01:36 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/d2d8319837
01:36 dalek perl6-roast-data: b66f6e4 | coke++ | / (7 files):
01:36 dalek perl6-roast-data: today (automated commit)
01:36 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/b66f6e4fdc
01:44 Actualeyes joined #perl6
01:51 vendethiel joined #perl6
02:09 BenGoldberg joined #perl6
02:11 xpen joined #perl6
02:19 vendethiel joined #perl6
02:24 pierre-vigier joined #perl6
02:32 Cabanossi joined #perl6
02:34 kid51 joined #perl6
02:50 linuxuser9000 joined #perl6
02:53 Calibellus joined #perl6
03:00 Calibellus joined #perl6
03:05 pierre-vigier joined #perl6
03:15 psy_ joined #perl6
03:16 psy_ joined #perl6
03:17 Calibellus joined #perl6
03:38 MadcapJake joined #perl6
03:49 noganex_ joined #perl6
04:02 linuxuser9000 joined #perl6
04:03 TEttinger joined #perl6
04:17 MadcapJake any suggestions on how i could keep a linecount while parsing with a grammar?
04:18 gregf_ joined #perl6
04:24 llfourn MadcapJake: I'm not sure, if there is a builtin way, btu maybe just increment a counter at linebreaks?
04:24 skids MadCapJake: increment a dynamic in the newline rule, assuming you never backtrack it.
04:24 llfourn that sounds even cleverer :)
04:26 MadcapJake cool, that's good! thanks! I was leaning towards having a `token line { <useful> | <gibberish> }` but i think making a newline rule will be a lot easier!
04:30 n0tjack joined #perl6
04:48 pierre-vigier joined #perl6
05:09 pierre-vigier joined #perl6
05:14 marmay_ joined #perl6
05:38 n0tjack joined #perl6
05:50 Cabanossi joined #perl6
06:09 pierre-vigier joined #perl6
06:30 darutoko joined #perl6
06:41 sjoshi joined #perl6
06:47 sjoshi joined #perl6
06:47 dalek ecosystem: d4c384a | (brad clawsie)++ | META.list:
06:47 dalek ecosystem: apologies, fixed package repo name
06:47 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/d4c384a544
06:47 dalek ecosystem: 315f659 | sylvarant++ | META.list:
06:47 dalek ecosystem: Merge pull request #128 from bradclawsie/master
06:47 dalek ecosystem:
06:47 dalek ecosystem: apologies, fixed package repo name
06:47 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/315f659a06
07:10 ChoHag joined #perl6
07:14 vendethiel joined #perl6
07:15 quester joined #perl6
07:16 bjz joined #perl6
07:17 pierre-vigier joined #perl6
07:23 MadcapJake what's a quick way to remove the first character of a string?
07:23 MadcapJake I tried comb.shift.join, but apparently you can't do that on Sequences
07:23 MadcapJake I tried comb.eager.shift.join but apparently you can't do that to immutable lists :(
07:24 MadcapJake maybe comb[1..*]?
07:24 FROGGS joined #perl6
07:25 MadcapJake that did it, thanks!
07:26 ugexe $str.substr(1)
07:26 MadcapJake haha that works too :D
07:26 MadcapJake I was wondering if anyone was reading me talk to myself xD
07:29 MadcapJake weird, it's still printing the `\` must not actually be there or something :S
07:29 cognominal when creating a postcircumfix op, how to tell that the operand should not be a list. I seem to remember there is a way to tell the loosest precedence accepted but I can't seem to find it
07:30 MadcapJake cognominal: maybe this: http://doc.perl6.org/langua​ge/functions#Coercion_Types
07:32 cognominal nope, I am messing with nqp. thx anyway
07:34 cognominal on the other hand, I may have seen that feature used in rakudo because it is written in nqp
07:37 firstdayonthejob joined #perl6
07:37 Actualeyes joined #perl6
07:39 salva joined #perl6
07:41 bjz joined #perl6
07:47 [Tux] csv-ip5xs            50000    18.300    12.374
07:47 [Tux] test                 50000    23.677    23.010
07:47 [Tux] test-t               50000    12.662    11.739
07:47 [Tux] csv-parser           50000    52.584    -0.576
07:49 abraxxa joined #perl6
07:54 _mg_ joined #perl6
07:59 n0tjack joined #perl6
08:00 RabidGravy joined #perl6
08:01 MadcapJake cognominal: maybe this: http://doc.perl6.org/langua​ge/functions#Coercion_Types
08:02 MadcapJake oops sorry, trying to access terminal history :P
08:05 quester left #perl6
08:07 masak morning, #perl6
08:08 pierre-vigier joined #perl6
08:09 [Sno] joined #perl6
08:09 moritz \o masak, *
08:09 RabidGravy erp!
08:11 CIAvash joined #perl6
08:11 vendethiel joined #perl6
08:11 _nadim joined #perl6
08:15 bjz_ joined #perl6
08:16 zakharyas joined #perl6
08:26 pierre-vigier joined #perl6
08:32 uruwi joined #perl6
08:33 cognominal Venus. I mean morning *
08:35 frankjh joined #perl6
08:39 RabidGravy Boo!
08:41 cc9989 joined #perl6
08:42 RabidGravy so yesterday, I stated my intention to make Perl 6 versions of the RabbitMQ tutorials, today I realise that I am going to spend most of the time adding functionality to Net::AMQP
08:43 RabidGravy A WHOLE FARM OF HIRSUTE YAKS
08:47 moritz the yak is strong in this one
08:49 masak good ♀, cognominal
08:54 dakkar_ joined #perl6
09:00 masak Unicode has made my life so much richer. before Unicode 6.0.0, I didn't even know cats could cry tears of joy.
09:02 masak or pout.
09:03 lizmat joined #perl6
09:04 * lizmat wonders why there still isn't a Rakudo *, a P6W or a decision on how to work with versioning
09:06 pierre-v_ joined #perl6
09:06 Actualeyes joined #perl6
09:09 RabidGravy I think I need a thing that is like a collection of promises such that when one is Kept or Broken it is removed and can be treated as a single promise that can be kept or broken
09:10 masak RabidGravy: not quite clear to me what you mean, but check out .allof and .anyof on Promise
09:10 brrt joined #perl6
09:11 cognominal messing with the NQP grammar :  https://github.com/cognominal/nqp/blob/bran​ch-multi-rules/t/nqp-lite/02-multi-rules.t
09:12 RabidGravy the reason for this is that something like Net::AMQP may have a bunch of promises that are waiting on a '*-ok' message from the server, but if the connection craps out it may for instaance get a close-ok but none of the others
09:12 RabidGravy soOooooo potentially a program could just be left hanging on a Promise that will never be Kept
09:14 cschwenz joined #perl6
09:14 RabidGravy masak, oh I know *how* to make it, I just want someone else to do it :)
09:14 cschwenz o/ #perl6 :-)
09:15 brrt \o cschwenz
09:17 nakiro joined #perl6
09:22 leont joined #perl6
09:24 masak RabidGravy: ok. I thought either of those two might be what you were looking for.
09:29 RabidGravy oh yeah, it would almost certainly involve anyof :)  It's basically a loop round   anyof(@bunch-o-primises).then({ # remove done ones from @bunch-o-promises};
09:30 n0tjack joined #perl6
09:31 moritz there should be a primitive that turns a bunch of promises into a stream, based on their completion/breakage
09:33 FROGGS cant we .grep them?
09:36 RabidGravy well you can do something like  Supply.merge(@promises.map({ $_.Supply })).grep(...)
09:36 RabidGravy which is fun
09:40 moritz but that doesn't give you the list of pending promises, right?
09:40 vendethiel joined #perl6
09:41 RabidGravy oh I see, no that just gives the Kept ones
09:43 moritz maybe it's enough
09:44 RabidGravy m: say (Promise.new, Promise.new.keep, Promise.new).grep({ $_.status ~~ Planned})
09:44 camelia rakudo-moar 770d10: OUTPUT«Use of Nil in numeric context  in block  at /tmp/4k9xA3o6KX line 1␤(Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Planned) Nil Promise.new(scheduler => Th…»
09:44 RabidGravy ok, that's special
09:44 RabidGravy but something like that
09:47 RabidGravy oh yeah, the Promise.new.keep no return a Promise
09:48 brrt masak: nice blog post (as usual)
09:48 RabidGravy m: my @ps = (Promise.new, Promise.new, Promise.new); @ps[1].keep; say @ps.grep({ $_.status ~~ Planned})
09:48 camelia rakudo-moar 770d10: OUTPUT«(Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Planned) Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_h…»
09:48 RabidGravy there
09:49 rindolf joined #perl6
09:50 masak brrt: thanks
09:52 moritz m:  m: my @ps = (Promise.new, Promise.new, Promise.new); @ps[1].keep; say @ps.classify(*.status).perl
09:52 camelia rakudo-moar 770d10: OUTPUT«(my Any %{Any} = PromiseStatus::Planned => $[Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Planned), Promise.new(scheduler => ThreadPoolScheduler.new(initia…»
09:52 abaugher joined #perl6
09:52 moritz m:  m: my @ps = (Promise.new, Promise.new, Promise.new); @ps[1].keep; say @ps.classify(*.status).keys
09:52 camelia rakudo-moar 770d10: OUTPUT«(Planned Kept)␤»
09:53 kjs_ joined #perl6
09:55 RabidGravy Ooh classify doesn't stringify the keys
09:56 RabidGravy ah,  Hash[Any, Any]
09:58 g4 joined #perl6
09:58 g4 joined #perl6
10:04 espadrine joined #perl6
10:12 ely-se joined #perl6
10:12 ely-se moroning
10:13 ely-se oops :P
10:13 ely-se Is it possible to query errno after a NativeCall call?
10:14 ely-se Currently I have "fail 'cannot create pipe' if $status == -1;" but I'd like to fail with something more descriptive.
10:19 RabidGravy yes, it's http://doc.perl6.org/language/​nativecall#Exported_variables
10:24 ely-se That's quite scarce and low-level. What if I have a different libc version? Does it respect errno being thread-local? What about __errno_location?
10:25 ely-se There is a reason libc implementations define errno as a macro that expands to __errno_location. Does cglobal treat errno as a special name?
10:26 ely-se or rather, expands to (*__errno_location())
10:26 timotimo i don't think it does; it just uses that dlopen mechanism
10:28 joydo joined #perl6
10:29 moritz ely-se: if you want to take care of such abstractions, the most reliable way is to write your own C function my_errno() or so that returns errno, and which you can use reliably in NativeCall
10:30 moritz ely-se: if you think such a thing is universally helpful, maybe submit a pull request that adds it to NativeCall?
10:30 ely-se I think I will use this: https://gist.github.com/rig​htfold/a6cd608544912f91e401
10:31 adhoc_ joined #perl6
10:32 RabidGravy the example in that doc is not quite up-to-date with what cglobal actually does, it uses "guess_library_name" so you can pass it anything that you can pass the native trait
10:32 RabidGravy including Str
10:32 ely-se moritz: I like the way Go handles errno (https://golang.org/cmd/cgo/). Maybe some trait that enables a similar mechanism would be nice.
10:33 brrt joined #perl6
10:33 ely-se to also automatically wrap it in an exception object
10:33 RabidGravy i.e.  cglobal(Str, "errno", Int) should work
10:33 timotimo except if the libc has errno as a macro
10:33 timotimo in which case, you're out of luck
10:33 RabidGravy indeed
10:34 RabidGravy in which case one would need to compile a tiny helper I guess
10:34 lnrdo joined #perl6
10:34 timotimo ely-se: you can build a proxy for the errno in your code
10:34 ely-se timotimo: solution: https://gist.github.com/rig​htfold/a6cd608544912f91e401 but fragile if the VM decides to do some I/O in between.
10:34 timotimo alternatively, a term for errno would also work
10:35 pmurias joined #perl6
10:35 ely-se it has to be atomic
10:35 timotimo hm. i don't think the VM would decide to do I/O by itself. __errno_location is supposed to be thread-safe, yeah?
10:35 ely-se yes. that's the point of __errno_location. it uses thread-local storage
10:35 timotimo right
10:35 ely-se I'll make the current solution into a library and use that. Thank you all.
10:39 max___ joined #perl6
10:39 RabidGravy good good
10:42 pmurias for binding c++ libraries just wrapping everything in c functions and using NativeCall is the only way?
10:43 timotimo no
10:43 timotimo we implement name mangling for methods
10:43 max___ Hi, I've installed the Rakudo Xmas release only just recently - up until then I'd been playing with some older version. Now I wonder what happened to Parcels...they
10:44 max___ don't seem to be there anymore - can anybody confirm that?
10:44 moritz max___: they were remove with the Great List Refactor
10:44 moritz so gone since 2015.09
10:44 max___ thanks...good to know!
10:46 virtualsue joined #perl6
10:46 max___ while we'r at it...I can't access the perl6maven.com site anymore - I've been using it quite a bit. Anybody seeing similar problems?
10:47 moritz http://isup.me/perl6maven.com "It's not just you! http://perl6maven.com looks down from here."
10:47 moritz max___: you could shoot an email to gabor@szabgab.com who runs that
10:48 timotimo "gateway time-out"
10:50 stmuk_ perl6maven is restarted on a cron according to his YAPC talk
10:50 stmuk_ apparently due to the language it uses :)
10:58 lnrdo joined #perl6
11:04 ely-se RabidGravy: done: https://github.com/rightfold/NativeCall-Errno :)
11:15 ely-se joined #perl6
11:17 RabidGravy coolio
11:18 vendethiel joined #perl6
11:22 RabidGravy .seen retupmoca
11:22 yoleaux I saw retupmoca 12 Dec 2015 19:56Z in #perl6: <retupmoca> .tell nine renaming dlls works fine if libfoo.dll is standalone. But in the case of openssl: ssleay32.dll depends on libeay32.dll. I load libeay32.dll (works great!), then I try to load ssleay32.dll which tries to find or load a dll named 'libeay32.dll'. Since I didn't load it with that filename, ssleay32 won't load because it can't find libeay32.dll
11:26 max___ just to let you know - Gabor Szabo just restarted his perl6maven....
11:31 pmurias timotimo: does that work with templates and inline methods?
11:32 timotimo i don't think we can do templates, no. not without a compiler.
11:34 xpen joined #perl6
11:34 pmurias is there any hope for transparent "read the header", use the compiler, maybe offer a clunky interface style interop?
11:39 pmurias being able to parse a c++ header and generate a c wrapper+native call binding would be really awesome
11:40 brrt joined #perl6
11:44 timotimo we have gptrixie by skarsnik which generates NC bindings from a header file
11:45 vendethiel joined #perl6
11:46 RabidGravy but a sort of damn clever Inline::C that just takes the header and a library and creates the subs on the fly might be cool
11:47 RabidGravy infact I guess you could sorta kinda do that now if you took the output of gptrixie and EVAL it
11:48 brrt why don't we just write a c compiler in perl6
11:48 moritz because ugly
11:48 * brrt is grinning widely at the thought
11:48 RabidGravy but don't let use stop you ;-)
11:48 RabidGravy us
11:50 brrt moritz: do you manage pl6anet.org?
11:50 moritz brrt: no, itz does
11:50 moritz or does itz have a new nick? I can't remember
11:51 RabidGravy stmuk mostly nowadays
11:51 RabidGravy or some variant therepf
11:51 moritz stmuk_: please add up-to-date contact information (your current nick name, possibly email address) to pl6anet.org. Thanks!
11:52 RabidGravy and goats, we need more goats
11:54 timotimo is a javascript dev here? how do nodejs version numbers work? i have 0.10.36 locally, but apparently there's already 4.2.4 LTS and 5.4.1 stable ... o_O
11:56 perlawhirl joined #perl6
11:56 pmurias timotimo: they changed the version scheme after a fork took over
11:57 timotimo i see it now
11:57 timotimo fair enough
12:00 stmuk_ moritz: done
12:01 stmuk_ brrt: is the expired cert? I'll be on the case shortly :)
12:01 brrt no, that's not what it is about
12:02 brrt i was wondering if we could make it so that only my posts categorised perl6 would get syndicated
12:02 brrt so i can safely publish stuff that is not of interest to the perl6 community without spamming everyones feed reader
12:03 stmuk_ I really would need a perl6 specific RSS feed
12:03 stmuk_ unless you can 'tag' non-perl 6 and I put a special case hack in
12:04 brrt hmmm
12:04 brrt let me see if that can be arranged
12:08 arnsholt brrt: I believe some Lisp machines had C compilers that compiled to Lisp or somethiing like that =)
12:08 brrt cool :-)
12:09 brrt stmuk_: url would be http://brrt-to-the-future.blogspo​t.com/feeds/posts/default/-/perl6
12:09 stmuk_ ok it will be updated shortly
12:09 brrt thanks :-)
12:10 max___ quit
12:12 Skarsnik joined #perl6
12:15 Skarsnik brrt, hello. I tried on 64 bits and my code still segfault on parse x)
12:15 virtualsue joined #perl6
12:17 pierre-vigier joined #perl6
12:30 vendethiel joined #perl6
12:30 telex joined #perl6
12:30 pmurias joined #perl6
12:37 kid51 joined #perl6
12:41 llfourn joined #perl6
12:48 lucasb joined #perl6
12:48 lnrdo joined #perl6
12:48 brrt oh... great
12:48 brrt :-(
12:48 brrt can you run perl6-gdb-m and give us a backtrace?
12:49 pierre-vigier joined #perl6
12:50 Skarsnik https://gist.github.com/Ska​rsnik/ef3c2613aec884b2202f
12:52 virtualsue joined #perl6
12:52 Skarsnik you can find the code on https://github.com/Skarsnik/gptrixie the reftype branch x)
12:56 ely-se joined #perl6
13:00 virtualsue joined #perl6
13:02 timotimo well, a C compiler is just a different QAST code-gen that also tells the jit to output its machine code stuff into a .o file, right? :P :P :P
13:02 timotimo "basically" :D
13:04 Skarsnik x)
13:04 RabidGravy "just a simple matter of programming"
13:06 pmurias timotimo: we could have a C to moar bytecode compiler
13:07 timotimo if we simply map the mov instruction to a moar bytecode, we can translate any C program to moar bytecode
13:07 pmurias brrt: re write a c compiler, I want to be able to bind c++ libraries
13:08 pmurias brrt: I have a lot of things I would rather do than write a c++ compiler
13:08 brrt :-)
13:09 domidumont joined #perl6
13:09 RabidGravy binding c++ libraries works
13:09 brrt well, darn, skarsnik, that looks ugly
13:11 Skarsnik it's when I added https://github.com/Skarsnik/gptrixie​/blob/reftype/lib/GPT/Class.pm6#L73 that is start segfaulting. but even removing it did not make it work x)
13:12 brrt no, it's a GC issue
13:12 brrt i wonder how
13:14 dalek ecosystem: 79ba90b | rightfold++ | META.list:
13:14 dalek ecosystem: Add NativeCall::Errno to ecosystem
13:14 dalek ecosystem:
13:14 dalek ecosystem: See https://github.com/rightfold/NativeCall-Errno
13:14 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/79ba90ba1b
13:15 ely-se I oh thought it would create a pull request and not instantly commit it to the main repo. :v
13:15 vendethiel joined #perl6
13:15 timotimo it's totally fine
13:15 moritz ely-se: no harm done
13:15 ely-se ok :p
13:15 timotimo i don't mind direct commits to the ecosystem repo
13:15 timotimo in fact, i've added my most recent modules like that, too
13:16 lokien_ joined #perl6
13:16 ely-se I do use .t6 not .t for my tests. Is that problematic?
13:16 cschwenz left #perl6
13:16 ely-se I think Panda won't pick them up.
13:16 moritz ely-se: yes, that's problematic
13:17 ely-se I do it because my editor otherwise thinks it's Perl 5.
13:17 ely-se But I'll change that tehn
13:18 moritz teach your editor to take a 'use v6;' as an indicator for Perl 6 code, maybe?
13:18 kjs_ joined #perl6
13:19 musiKk joined #perl6
13:20 sufrostico joined #perl6
13:21 pmurias Skarsnik: having something like gptrixie for C++ to generate things like an OpenCV binding would be awesome
13:21 Skarsnik well it should not be hard to add c++ support to it
13:22 Skarsnik I am pretty sure gccxml give me class information
13:23 Skarsnik what is the name of opencv c++ lib?
13:24 ely-se moritz: ok, I changed it :0
13:24 ely-se :)
13:26 pmurias Skarsnik: you mean the name of the .so?
13:27 pierre-vigier is there any possibility to make a binding between a list elements, and a hash element? like my @array = $r; my %h = 'key' => $r;
13:27 Skarsnik I mean libopencv-dev is the right lib? not the C one?
13:27 pierre-vigier and if i do %h<key> = 12; then my array first element = 12 ?
13:29 pmurias Skarsnik: it to seems to be
13:30 FROGGS m: my $r = 42; my @a;  @a[0] := $r; my %h; %h<key> := $r; say @a; say %h; $r = 111; say @a; say %h # pierre-vigier
13:30 camelia rakudo-moar 770d10: OUTPUT«[42]␤key => 42␤[111]␤key => 111␤»
13:30 FROGGS m: my $r = 42; my @a;  @a[0] := $r; my %h; %h<key> := $r; say @a; say %h; %h<key> = 111; say @a; say %h
13:30 camelia rakudo-moar 770d10: OUTPUT«[42]␤key => 42␤[111]␤key => 111␤»
13:30 lnrdo joined #perl6
13:30 Skarsnik I get output with class and stuff with gccxml
13:31 Skarsnik so it's doable x)
13:31 pierre-vigier thanks,
13:31 pierre-vigier strnage i had that message:
13:32 pierre-vigier Cannot use bind operator with this left-hand side
13:32 pierre-vigier it might come from somethign else
13:33 pierre-vigier oh, i was using a list, not an array
13:33 pierre-vigier so it ws immutable
13:33 FROGGS aye
13:34 iH2O joined #perl6
13:38 dalek tablets: 87b312f | lichtkind++ | docs/tablet-3-variables.txt:
13:38 dalek tablets: preparing the next changes
13:38 dalek tablets: review: https://github.com/perl6/tablets/commit/87b312f86e
13:39 _mg_ joined #perl6
13:39 vendethiel joined #perl6
13:39 domidumont1 joined #perl6
13:43 llfourn joined #perl6
13:44 ely-se When I write "#| C<foo> bar" before my sub, Pod::To::HTML doesn't generate "<code>foo</code> bar" but "&lt;code&gt; bar". is that a bug in Pod::To::HTML or am I using #| wrong?
13:45 Skarsnik pod parser is "weak"
13:45 Skarsnik not your fault ^^
13:46 ely-se ok
13:47 iH2O left #perl6
13:51 molaf joined #perl6
13:52 domidumont joined #perl6
13:53 Roamer` joined #perl6
13:55 sufrostico joined #perl6
14:07 vendethiel joined #perl6
14:10 cdg joined #perl6
14:12 skids joined #perl6
14:19 n0tjack joined #perl6
14:20 pmurias is zef the panda replacement?
14:21 timotimo i wouldn't call it "replacement" per se
14:21 timotimo but it fills the same niche
14:25 pmurias panda's slowness is annoying
14:25 ely-se what is slow about Panda?
14:25 ely-se it's always been fast for me
14:26 timotimo you seem to have low expectations, then
14:26 pmurias the json parsing is slow
14:27 pmurias time panda help takes 21seconds on my machine
14:28 timotimo but it already uses json::fast!
14:28 timotimo what more do you want ;(
14:28 timotimo (yes, json::fast is also very slow)
14:29 __HOO joined #perl6
14:31 adu joined #perl6
14:31 pmurias timotimo: why don't we have a fast json parser?
14:32 ely-se pmurias: only 1.47s on mine
14:35 Skarsnik rakudo is slow x)
14:36 gfldex if i overwrite a method in a subclass (that does exactly the same thing) that is used by some operator, should that method call have a performance impact?
14:37 pmurias would it be possible to parse json faster using nativecall?
14:38 ely-se gfldex: it might, because the base method may have been JIT-compiled already whereas the override might not have
14:39 Skarsnik pmurias, well it's sad that everytime we want perf we use a libc xD
14:39 ely-se pmurias: if the bottleneck is with the actual parsing and not with data structure construction, then I'm pretty sure that's possible
14:39 gfldex pmurias: the individual json files are quite small. So the overhead might outweigh the benefit
14:40 Skarsnik It annoy me a lot that it take more than a 1 second to parse xml file that are less that 1Mb
14:40 ely-se ini > JSON :)
14:41 llfourn joined #perl6
14:42 ugexe its slow because it uses a grammar
14:44 ugexe parsing speed can be increased by only parsing the parts that need to be parsed
14:44 gfldex can i precomp a script?
14:45 ugexe if i dont access $json<some-key2> it doesnt need to parse the possibly 100 levels under "some-key2" :
14:45 ugexe you can precomp a script but you still need a perl6 entry point
14:46 ely-se ugexe: interesting, but how will you do that?
14:46 ugexe originally (and probably in the future again) bin/ scripts got precompiled, and the wrapper was the perl6 entry point
14:46 ely-se brace balancing won't work; braces may appear in string literals that you have to parse
14:46 pmurias Skarsnik: in perl5 a lot of the speed critical things are in XS
14:46 ugexe ely-se: there was an article on hacker news a few months ago about the "worlds fastest json parser". i forget the language it was in even, but that was how it was done
14:47 ugexe it was in D
14:49 ugexe https://news.ycombinator.com/item?id=10430951 # some explanations here as well
14:50 prammer joined #perl6
14:50 ely-se ugexe: apparently it accepts invalid JSON
14:51 ely-se that's not good for a general-purpose JSON parser
14:51 ugexe its a json parser yes, not a json validator
14:56 Skarsnik ok that not funny 10-20 sec to parse a 650kb xml file
14:57 ugexe if you think thats bad try `to-json()`ing a large structure
14:59 Skarsnik funny how a simple c++ headers imply the inclusion of 47 files just by using std::string x)
14:59 jnthn If only there were as many people able to work on performance as there were people willing to carp about it. :P
14:59 timotimo pmurias: we have a NativeCall-based json parser already
15:00 sftf joined #perl6
15:00 ugexe i certainly tried, but couldnt do any better than timotimo/tony-o
15:01 timotimo only for a json parser?
15:01 timotimo why not try to make rakudo itself or moarvm faster? :) :)
15:02 timotimo join us at the internals side. it's fun! i promise*!
15:02 timotimo * not an actual promise
15:02 kaare_ joined #perl6
15:02 Skarsnik do you have cookies?
15:03 timotimo no, but we have a CCookie REPR
15:03 sufrostico joined #perl6
15:04 ugexe because i dont have what it takes to properly benchmark/optimize/repeat
15:04 CIAvash joined #perl6
15:04 ugexe it ends up into just optimize/repeat, and then eventually confusion
15:04 adu joined #perl6
15:04 Skarsnik should I start working on my c++ support in gptrixie on spend time binding libxml2 to have xml parsing perf xD
15:04 raiph joined #perl6
15:05 _Vi joined #perl6
15:05 arnsholt timotimo: Do you know how the NativeCall JSON parser compares to the pure Perl 6 ones?
15:05 timotimo i never actually ran it
15:05 arnsholt From memory the overhead in NativeCall is non-trivial, sadly
15:05 timotimo it's probably between 10000000x and 100000000000000000000000000000000x faster
15:05 FROGGS Skarsnik: do we want to join our libxml2 effort?
15:06 * [Coke] comes back online, and is forced to skip backscroll here.
15:06 timotimo hm
15:06 yoleaux 17 Jan 2016 20:27Z <bartolin> [Coke]: looks like you have about 100 processes (some of them a few days old) running on hack. no real problem so far, just got some notifications (we're monitoring the number of procs on hack)
15:06 Skarsnik FROGGS, well I probably don't want the whole libxml2, just having a dom from a xmlfile and convert it to p6 XML object
15:07 colomon joined #perl6
15:07 [Coke] bartolin: fixed the symptom, will prevent the problem from happening again.... but this means that spectests are hanging on hack, which is bad.
15:07 lnrdo joined #perl6
15:07 FROGGS Skarsnik: and I basically "just" want to make XML::Compile work, but I dont have enough tuits for anything these days :/
15:08 Skarsnik XML::Compile?
15:09 FROGGS Skarsnik: a P5 module that loads a wsdl, compiles it to Perl 5 code, so you call subroutines and it does the right things
15:10 pierre-vigier joined #perl6
15:11 FROGGS "Where other Perl modules (like SOAP::WSDL) help you using these schemas (often with a lot of run-time XPath searches), XML::Compile takes a different approach: instead of run-time processing of the specification, it will first compile the expected structure into a pure Perl CODE reference, and then use that to process the data as often as needed."
15:13 FROGGS bbl
15:13 adrusi joined #perl6
15:15 Skarsnik gah I wish there was a module C { class are export are rw; } to put commons traits to the class in the same module xD
15:18 timotimo you could build a module with an EXPORTHOW "xclass" and "xstruct" that automatically apply "is export" and "is export is rw" and treat the rest of the stuff as classes
15:22 ely-se I see people in labcoats.
15:23 Skarsnik hm
15:26 timotimo ely-se: the scary kind or the nice kind?
15:28 jvcakg joined #perl6
15:28 pmurias joined #perl6
15:29 ely-se timotimo: yes
15:29 pmurias Skarsnik: for what I need from opencv I should be fine with just manually extending the hand written binding
15:29 ely-se There's a lab on the other side of the canal here.
15:29 timotimo ah
15:30 jvcakg joined #perl6
15:30 Skarsnik hm, what can prevent a class to be composable?
15:31 ely-se use of global mutable state
15:31 jvcakg is perl 6 totally different from perl 5?
15:31 DrForr One easy way to find out :)
15:31 Skarsnik Na, I mean I have an error telling me that one calss it not composable
15:31 ely-se jvcakg: it has some similarities but there's little chance your existing Perl 5 code will work without being completely rewritten
15:32 jvcakg ah i see
15:32 DrForr But you can use Inline::Perl5 in order to still use it.
15:32 ely-se Going from Perl 5 to Perl 6 is not like going from Perl 4 to Perl 5 but more like going from C++ to C#
15:33 jvcakg I see your point
15:33 Skarsnik m: class A { has $.a}; class B does A { has $.b}; class C does B {has $.c};
15:33 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Hr2P3_FWwG␤A is not composable, so B cannot compose it␤at /tmp/Hr2P3_FWwG:1␤»
15:33 Skarsnik hm, I need to use is and not does?
15:34 jvcakg so people like me that are starting to learn Perl "6" will benefit
15:35 timotimo Skarsnik: well, classes can't be applied as if they were roles
15:35 Skarsnik Oh is the right thing
15:35 jvcakg good thing I didn't learn Perl 5
15:35 timotimo you can use roles as if they were classes because they can, at any point, be turned into a class by composing them into an empty class. that's called "punning"
15:36 timotimo jvcakg: ah! welcome to the club :)
15:36 ely-se Learning Perl 5 may still be useful.
15:36 Skarsnik It's confusing that is the same keywoerd that for trait
15:36 timotimo i went straight from python to perl6
15:36 jvcakg thank you
15:36 ely-se Especially if you want to use a Perl in production right now.
15:36 jnthn Skarsnik: does is also a trait modifier :)
15:36 Skarsnik m: class A { has $.a}; class B does A { has $.b}; class C is B {has $.c}; say C.^attributes;
15:36 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/TP2m8h9n_U␤A is not composable, so B cannot compose it␤at /tmp/TP2m8h9n_U:1␤»
15:36 jvcakg is there a book in Perl 6?
15:37 DrForr At least a few people here are already using perl6 in "production", whatever that means.
15:37 jvcakg or there all documented in web?
15:37 timotimo we don't have a perl6 book yet, but a bunch of docs online, yeah
15:37 jvcakg ok
15:37 jvcakg interesting
15:37 timotimo http://perl6.org/downloads/ - i recommend all of the "introductory material" links on the right side of this page
15:38 ely-se I have had too much trouble with using experimental software in production. I don't want to make that mistake again.
15:40 timotimo i'm certainly hopeful our stability stuff works as well as it sounds
15:40 Skarsnik well aside from my leak issue and my weird sigseg it's stable? x)
15:42 llfourn joined #perl6
15:42 gfldex are there any guidelines on how to do versioning of modules?
15:44 Skarsnik nop
15:46 _Vi joined #perl6
15:47 timotimo do you ever wonder if things would have been way better if instead of "Perl 6" we had called it "PerlScript"?
15:48 timotimo hm. or perhaps ECMAPerl
15:48 perl6newbee joined #perl6
15:48 jvcakg any website examples written in Perl 6?
15:48 moritz jvcakg: doc.perl6.org
15:48 jvcakg thank you
15:49 ely-se timotimo: Oystear
15:49 ely-se Perl ~ Pearl hence Oystear ~ Oyster
15:50 timotimo excellent
15:52 jvcakg moritz, not that. a finish example, someone mention made a site base on Perl 6
15:52 Skarsnik doc is generated with perl6 code
15:52 jvcakg ok
15:52 Skarsnik but if you mean something hosting dynamic content in perl6, well
15:52 jvcakg hehe
15:52 virtualsue joined #perl6
15:53 jvcakg waiting..
15:53 moritz http://perl6maven.com/
15:53 jvcakg appreciate it
15:54 xpen joined #perl6
15:54 ely-se I was working on one recently. Current status is ABANDONED
15:54 ely-se but it's proprietary anyway :P
15:58 Skarsnik it's annoying this error does not generate the backtrace: Cannot unbox a type object
15:59 vendethiel joined #perl6
16:01 moritz Skarsnik: have you submitted a bug report already?
16:02 sena_kun joined #perl6
16:03 PerlJam joined #perl6
16:04 lnrdo joined #perl6
16:05 Skarsnik duh C allow for anonymous struct? :(
16:07 frankjh joined #perl6
16:08 mohae joined #perl6
16:08 PerlJam timotimo: re perlscript ... it would have been worse IMHO
16:09 timotimo Skarsnik: only new-ish C allows that, i think
16:09 timotimo or, wait
16:10 timotimo i think i'm thinking of anonymous union
16:10 Skarsnik pthread as it apparently
16:10 geekosaur struct { ... } is fine, yes
16:10 PerlJam C has had anonymous structs for as long as I can remember.
16:10 geekosaur back to K&R days
16:10 PerlJam Though, you usually typedef them or something so that you can do more useful things with them.
16:11 geekosaur yes. there was inconsistency in the old days, some compilers would consider identical anonymous structs to be type compatible and others wouldn't
16:12 geekosaur that is, given `struct { whatever} a; struct { same thing } b;` different compilers would or would not allow `a = b`
16:13 geekosaur although if we have to care aout what pre-ANSI C compilers do, we may have already lost
16:13 ely-se timotimo: you are confusing C with C++. in C++ it is a very new feature (C++11), except for unions
16:13 ely-se C has had them since longer
16:13 geekosaur yeh, C++ made it go away because `struct foo` and `foo` are the same thing
16:13 geekosaur and then brought it back\
16:15 timotimo ely-se: what now. unions or structs?
16:16 ely-se timotimo: in pre-C++11 C++, only unions could be anon. since C++11, structs can be too
16:16 timotimo OK
16:17 Skarsnik hm interesting calling $o<key>:exists on an object that does AT-KEYS does not work
16:17 moritz Skarsnik: it needs EXISTS-KEY too
16:17 jme` joined #perl6
16:17 Skarsnik hm, I should add it to XML them
16:19 frankjh Hi, I have a question wrt to types and units: I want to refactor some code, but if I move the fuction nonce() called from  https://github.com/soundart/perl6-tweet​nacl/blob/master/t/03-crypto_box.t#L12 which is currently defined here https://github.com/soundart/perl6-tweetnacl/blo​b/master/lib/Crypt/TweetNacl/PublicKey.pm6#L187, into another unit module then I get an error from line 13 of 03-crypto_box.t: Type check failed in bindin
16:20 frankjh So what is the difference between the two types and why does it depend on the unit where the nonce function is defined?
16:21 lokien_ joined #perl6
16:22 timotimo <list type="ordered" start="4" tight="true" delimiter="period" sourcepos="21:1-22:0">
16:22 timotimo sorry
16:22 timotimo cat stepped on laptop's trackpad ...
16:23 ely-se punish the cat
16:23 stmuk_ cat = entropy for key generation
16:25 kjs_ joined #perl6
16:27 gfldex frankjh: sub crypto_box (Blob $buf!, CArray[int8] $nonce!, CArray[int8] $pk!, CArray[int8] $sk!)
16:27 gfldex that's what you call
16:27 gfldex native shaped arrays and error messages are not the best friends right now
16:28 Skarsnik ?
16:28 frankjh gfldex: uh I still do not understand.?
16:29 Skarsnik CArray are not shapped array
16:29 gfldex indeed, that error message part still stands
16:29 RabidGravy CArray type constraints are somewhat wonky
16:29 vendethiel joined #perl6
16:30 RabidGravy it did work at some point, then stopped working somewhere between september and december
16:30 gfldex frankjh: try to add the same type to 'my $nonce = nonce();' and see if that points you to the righ line/file
16:32 _mg_ joined #perl6
16:33 stmuk_ is there any "cross installer" (eg. panda and zef) way (API whatever) of querying what's installed from the ecosystem and where?
16:35 frankjh If I modify line12 to my CArray[int8] $nonce = nonce(); and add use NativeCall, Then I get the same Error from the same call of crypto_bob(...)
16:35 xdg joined #perl6
16:40 nemo joined #perl6
16:41 [Coke] (entropy generation) I just had a bug trying to launch a coldfusion container due to not enough entropy. I may need to borrow your cat.
16:42 khw joined #perl6
16:43 llfourn joined #perl6
16:45 rudi_s joined #perl6
16:51 frankjh RabidGravy: Is above a known Bug? And is NativeCall::Types::CArray[int8].new a type or something I can call?
16:53 RabidGravy It is known, the message isn't very nice and you just want to relax the typeconstraints, you still need to create shaped CArrays
16:55 raiph m: my @d; @d.append: 1,2; @d.push: 3, 4; @d.append: [5,6]; @d.push: [7,8]; dd @d
16:55 camelia rakudo-moar 770d10: OUTPUT«Array @d = [1, 2, 3, 4, 5, 6, [7, 8]]␤»
16:55 raiph ^^ http://doc.perl6.org/routine/append says "The difference to method push is that with an array or list argument, append appends several elements (one for each array or list element), whereas push appends just one element."
16:55 raiph ^^ Do folk agree the doc is wrong and I should s:g/array or// ?
16:56 raiph (I'll backlog later)
16:56 musiKk joined #perl6
16:57 RabidGravy oh well, clearly not that interested
16:57 moritz RabidGravy: @d.push: 3, 4 ; is a call with two arguments, not with a list argument
16:57 RabidGravy I know
16:57 moritz sorry, meant raiph
16:58 moritz m: my @d = 1, 2; @d.push: (3, 4); say @d.perl
16:58 camelia rakudo-moar 770d10: OUTPUT«[1, 2, (3, 4)]␤»
16:58 RabidGravy I was going to say that what the description in the doc exactly matches the result
16:59 raiph joined #perl6
17:00 flussence [Coke]: you may find `haveged` a bit safer than a cat in production there :)
17:00 raiph moritz, RabidGravy: I meant s:g/or list//
17:01 moritz raiph: I figured. And the answer is: the docs are correct as is. See my example above.
17:02 frankjh RabidGravy: I am trying to read what a shaped array is... How do I relax my type constraint?
17:02 rindolf joined #perl6
17:02 RabidGravy CArray[uint8] is shaped,  CArrat is relaxed
17:02 frankjh RabidGravy: Ah ok..
17:05 llfourn joined #perl6
17:05 RabidGravy raiph, @p.push: 1,2  is neither an array or a list, it is multiple arguments
17:06 vendethiel joined #perl6
17:06 RabidGravy (1,2) is a list; [1,2] is an array
17:06 stmuk hmmm shouldn't the panda "state" file contain the version of module installed?
17:09 frankjh RabidGravy: I relaxed the type constraints and it compiles and tests are passing again. Thank you!
17:09 raiph RabidGravy, moritz: Makes sense, thanks for your steady patience.
17:09 RabidGravy no worries both :)
17:23 SCHAAP137 joined #perl6
17:27 MageAlpha joined #perl6
17:32 MageAlpha 'p6: say 3;'
17:32 MageAlpha p6: say 3
17:32 camelia rakudo-moar 770d10: OUTPUT«3␤»
17:33 * [Coke] tries to read Shimmerfairy's "calmer" rant.
17:35 [Coke] Nope. Ah well.
17:39 kaare_ [Coke]: Where?
17:39 [Coke] I'm not linking to it.
17:39 [Coke] it was related to https://rt.perl.org/Ticket/Display.html?id=127108
17:41 psy_ joined #perl6
17:42 psy_ joined #perl6
17:50 mspo [Coke]: link?
17:51 [Coke] mspo: 12:39 < [Coke]> I'm not linking to it.
17:53 b2gills Can someone look at https://github.com/rakudo/rakudo/pull/686 I'm waiting on it to push a Palindromic Code Golf
17:54 lichtkind joined #perl6
17:54 moritz b2gills: I'm trying to find out why travis complains about this
17:54 moritz without success so far
17:54 vendethiel joined #perl6
17:55 timotimo on my end, travis says rakudo/rakudo isn't an active repository >_>
17:55 b2gills I think GitHub itself might have been too slow when it was pulling the code????
17:56 b2gills I could force push a newer version ( that is only the time will change)
17:56 xpen joined #perl6
17:56 b2gills Which I think will cause it to try it again
17:57 b2gills I already force pushed the associated ROAST changes ( I forgot two `;` )
17:58 moritz timotimo: yes, same here
17:58 mspo found it
17:59 moritz did anybody deactivate travis for rakudo?
17:59 ab6tract joined #perl6
17:59 ab6tract o/ #perl6
18:01 b2gills If you are planning on just clicking the accept button I will force push an iteration with newer timestamps
18:01 [Coke] anyone know if Grammar::Parsefail::Exceptions is in a module somewhere?
18:01 _mg_ joined #perl6
18:02 stmuk maybe its a "provides" you could try grepping the panda.json
18:03 autarch1 joined #perl6
18:03 [Coke] ah, this user declared the dep in a readme instead of in a deps file.
18:04 stmuk https://github.com/ShimmerFairy/gram​mar-parsefail/blob/master/META6.json
18:04 ab6tract masak: it probably already occurred to you, but `subset PlannedPromise where { $_.status ~~ Planned }` has a really nice feel to it :)
18:04 stmuk its there
18:04 autarch1 how can I fork a running p6 program? there doesn't seem to be a fork builtin and the Proc class seems to be for spawning another program
18:04 firstdayonthejob joined #perl6
18:04 stmuk shouldn't it be X::Grammar::Parsefail :P
18:04 captain-adequate joined #perl6
18:06 ab6tract autarch1: what's your use case?
18:06 autarch1 ab6tract: I want to test some IPC code so I'd like to fork in my test code
18:06 autarch1 I could write two separate scripts and have one call the other but it'd be nice to keep this all in one file
18:06 ab6tract autarch1: ah, i see
18:07 mspo [Coke]: ~/perl6 is unclean :)
18:07 mspo err. ~/.perl6
18:07 RabidGravy sub fork() returns int32 is native { * }
18:07 autarch1 I think that threads are preferred over forks in p6 but in this particular case I'd like to test the code both ways
18:08 autarch1 also, sometimes forking is better since it gives you better isolation between interpreters
18:08 ab6tract autarch1: yeah, in general there hasn't been call for fork afaict
18:08 autarch1 that seems odd
18:08 autarch1 but if it's not implemented I guess that's my answer ;)
18:09 ab6tract i wonder if RabidGravy's proposal would work
18:09 PerlJam It should
18:09 RabidGravy jt does
18:09 PerlJam (unless you've got a libc without fork :)
18:09 PerlJam And I think that's part of the reason why it hasn't been implemented.
18:10 PerlJam (It was easy enough if ever anyone wanted it)
18:10 dalek ecosystem: 674191d | (Zoffix Znet)++ | spec.pod:
18:10 dalek ecosystem: Delete "spec.pod" from the repo. It"s outdated and the README already mentions Test::META
18:10 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/674191d2c7
18:10 ab6tract can someone on Linux try installing Audio::Sndfile ?
18:10 ab6tract I'm curious whether my troubles are OS X related
18:11 RabidGravy what's the matter with it?
18:11 dalek ecosystem: 6380513 | (Zoffix Znet)++ | META.list:
18:11 dalek ecosystem: Math::Matrix now uses META6.json; not META.info
18:11 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/6380513f46
18:11 RabidGravy I will check in a minute
18:11 ab6tract I get 42 fails in 010-read.t
18:12 mspo what if you want to daemonize?
18:12 RabidGravy ah, I took the todo out
18:12 PerlJam ab6tract: trying now.
18:12 ab6tract mspo: then your code could just look like:   my $daemon = supply { ... }; await $daemon;
18:13 PerlJam ab6tract: All tests successful.
18:13 ab6tract mspo: unless i'm mistaken, which happens frequently enough :)
18:13 mspo ab6tract: I mean without forking
18:13 mspo unless supply does a lot more than I think
18:14 RabidGravy ab6tract, it's an os/x specific rakudo bug, there's an RT
18:14 ab6tract RabidGravy: nooooooo
18:14 ab6tract :
18:14 ab6tract :(
18:14 ab6tract there is a lack of NativeCall hackers running OS X :(
18:15 gregf_ joined #perl6
18:15 ab6tract my example doesn't fork. but if you mean without using any extra threads, you could use loop { ... } ?
18:16 * ab6tract has never written a daemon, just imagines them as processes that don't exit until they get a message to do so
18:17 flussence there's nothing magical about a daemon, except maybe the amount of effort needed to get the @&$%ing thing to behave in a proper environment when it insists on backgrounding
18:17 mspo ab6tract: to get into the background you need to fork, sedsid, cd /, umask, close some fd's
18:18 arnsholt That's more or less it. Except there's a bunch of OS-specific crap you need to deal with to run properly in the background
18:18 spider-mario joined #perl6
18:18 mspo on a bsd system you can just call daemon(3)
18:18 mspo but on linux daemon(3) is broken or something
18:18 mspo nfi how to run a windows process
18:19 autarch1 is serialization in p6 supposed to be done by implement .perl methods for one's objects?
18:20 ab6tract autarch1: the default should do it for you
18:20 autarch1 ok, that works
18:21 vendethiel joined #perl6
18:22 ab6tract thanks for the primer on daemon architecture. 20 years on *nix and never bothered to do more than start or stop them :)
18:23 mspo ab6tract: https://api.metacpan.org/source/AJDI​XON/Daemonise-1.0-1/lib/Daemonise.pm
18:23 mspo fwiw
18:24 mspo I should give it a try
18:24 RabidGravy ab6tract, this is the RT for that BTW https://rt.perl.org/Ticket/Display.html?id=125408
18:24 abraxxa joined #perl6
18:26 RabidGravy but I did infact take the TODOs on the afflicted tests
18:27 ab6tract m: class A { has A $.a; has $.b }; my $a = A.new(a => A.new( b => 'bye!'), b => 'brooklyn'); say $a.perl.EVAL.b
18:27 camelia rakudo-moar 770d10: OUTPUT«brooklyn␤»
18:27 ab6tract mspo ^^
18:27 ab6tract erm, sorry, autarch1 ^^
18:27 awwaiid what is a name for the concept of classes-as-special-values, such as Inf, NaN, and maybe True, False?
18:28 PerlJam Type object?
18:28 PerlJam oh, no, not that
18:28 perigrin They're not that yeah.
18:28 raiph joined #perl6
18:29 awwaiid "special-values" is what came to mind
18:29 ab6tract perigrin: they aren't type objects?
18:29 awwaiid also Nil
18:29 perigrin awwaiid: I've never heard of a single name other than "special-values"
18:29 awwaiid well they ARE type objects, but their usage is more than that
18:29 PerlJam yeah
18:29 masak [Coke]: if I may just hold two contradictory ideas for a while, I think (a) ShimmerFairy is valuable to #perl6 and losing her like this would make us all poorer, (b) that second post was still very tone-deaf, in ways that none of us managed to convey to ShimmerFairy without making her feel like crap
18:29 ab6tract right, i just thought of type objects as the overall genre
18:29 RabidGravy ab6tract, if you have an application for Audio::Sndfile on OSX I could stick the todo back in just for that platform
18:30 ab6tract in which case 'special types' is more evocataive than 'special values'
18:30 awwaiid ab6tract: I want to have a name for them in documentation. Heck maybe even a list of them.
18:30 ab6tract RabidGravy: that would be great :)
18:31 awwaiid ab6tract: the reason I like special-values more than special-types is that they are being returned as and treated as values
18:31 RabidGravy it works fine for non-floating point data iirc
18:31 RabidGravy (makes a change from fixing Net::AMQP to be able to do the RabbitMQ tutorial examples :)
18:32 Skarsnik hm, what can I use to count subset of an array/hash?
18:32 Skarsnik map then elems?
18:33 FROGGS joined #perl6
18:33 ab6tract awwaiid: maybe we could call them 'value-types' ?
18:34 [Coke] masak: my solution is to find out what the actual bug is.
18:34 [Coke] which I think I just did.
18:34 [Coke] wow, that took... 15 minutes. :P
18:34 mindos joined #perl6
18:34 kipd_ joined #perl6
18:34 corbyhaas_ joined #perl6
18:35 [Coke] Ok. more of a toolchain question, and this is something that definitely would have been impacted by CURL?I
18:35 [Coke] https://github.com/ShimmerFairy/​SUPERNOVA/blob/master/test.p6#L6
18:35 [Coke] there's a 'use Grammar;' line there. I think the expectation is that that is going to load https://github.com/ShimmerFairy/SUP​ERNOVA/blob/master/lib/Grammar.pm6
18:36 masak makes sense, no?
18:36 [Coke] if I put a BEGIN { say "GOAT THERE" } in that file, nothing. if I change that use to an EVALFILE, I get the note. Is it possible that she's inadvertently loading an internal Grammar ?
18:36 awwaiid indeed
18:36 ugexe joined #perl6
18:37 masak m: use Grammar
18:37 camelia rakudo-moar 770d10: OUTPUT«===SORRY!===␤Grammar is a builtin type. You can use it without loading a module.␤»
18:37 masak [Coke]: indeed
18:37 masak looks like a name collision of some kind
18:37 robinsmidsrod joined #perl6
18:38 ggherdov_ joined #perl6
18:38 hoelzro I think that if all of the supernova stuff were prefixed with SUPERNOVA:: as a namespace, it would probably work, but that's LTA
18:38 RabidGravy ab6tract, are you sure it was the t/010-read.t rather than the 020-write.t that was failing? the former never had any todos in it
18:38 flussence .oO( not to mention all-caps generally means "internal, don't touch" )
18:38 awwaiid ab6tract: thanks for the input, I'll noodle a bit. will be s/// relaceable either way and I guess there's no standard yet
18:39 jnap joined #perl6
18:39 parisba joined #perl6
18:39 [Coke] also, the Grammar.pm6 file has a grammar called Pod6::Grammar in it, which is weird to me. I'd expet that to live in Pod6/Grammar.pm6
18:40 FROGGS [Coke]: aye
18:41 ab6tract RabidGravy: yup. 'seekable' returns False instead of True, and a lot of others
18:41 ab6tract seems to happen for multiple formats
18:41 ab6tract i wonder if i'm missing some compilation flags in my install of libsndfile?
18:42 ab6tract awwaiid: sounds good :)
18:44 [Coke] ah, changing the BEGIN { say ... to a straight up "die" does show it's calling that file.
18:45 marmay_ joined #perl6
18:45 RabidGravy ab6tract, oh, there were never any todos in that file, this is going to be one of those "won't get fixed because I can't test" things
18:49 RabidGravy ab6tract, can you post the verbose output of the failing test files, then I can at least see if there is anything I can do without being able to reproduce
18:49 domidumont joined #perl6
18:49 RabidGravy that is post it as an issue on the Audio::Sndfile GH
18:50 ab6tract RabidGravy: verbose would be just running the test file with perl6 instead of through the test harness?
18:50 ab6tract or with --ll-debug
18:50 RabidGravy yeah just running the test files without the harness will do fune
18:50 RabidGravy fine
19:14 jme` joined #perl6
19:21 [Coke] .tell shimmerfairy to see latest comment on RT #127108 that will give you a workaround so you can keep moving.
19:21 yoleaux [Coke]: I'll pass your message to shimmerfairy.
19:21 [Coke] it's a precompilation bug. Like many of the others that have been reported.
19:24 llfourn joined #perl6
19:26 _nadim joined #perl6
19:26 ely-se joined #perl6
19:29 AlexDaniel joined #perl6
19:32 AlexDaniel o/
19:33 musiKk joined #perl6
19:33 Skarsnik I think I will never understand how to use grep/map on stuff like hash xD
19:34 AlexDaniel Skarsnik: do it over keys?
19:34 b2gills moritz: currently permutations(1) and permuations(0) don't work at all, so I don't know how it would expose a bug that wouldn't have already been exposed
19:34 b2gills star-m: say permutations(1).perl; say permutations(0).perl # I think it is a bug that this produced ().Seq because +permutations(0) should be 1
19:34 b2gills m: say permutations(1)
19:34 b2gills m: say permutations(0)
19:34 camelia star-m 2015.09: OUTPUT«((0,),)␤().Seq␤»
19:34 camelia rakudo-moar 770d10: OUTPUT«Index out of range. Is: -1, should be in 0..Inf␤  in block <unit> at /tmp/VvcE1t9ZY_ line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/VvcE1t9ZY_ line 1␤␤»
19:34 camelia rakudo-moar 770d10: OUTPUT«Constraint type check failed for parameter '$n'␤  in block <unit> at /tmp/SstxroKePy line 1␤␤»
19:34 _Vi joined #perl6
19:35 ely-se How can I conditionally define a subroutine at compile-time?
19:36 raiph joined #perl6
19:36 Skarsnik m: my %h = a => 1, b => 2; my @t = %h.values.grep{ %% 2}; say @t;
19:36 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZxPrf6GW7M␤Two terms in a row␤at /tmp/ZxPrf6GW7M:1␤------> 3=> 1, b => 2; my @t = %h.values.grep{ %%7⏏5 2}; say @t;␤    expecting any of:␤        infix␤        infix stopper␤        statemen…»
19:36 Skarsnik m: my %h = a => 1, b => 2; my @t = %h.values.grep{ * %% 2}; say @t;
19:36 camelia rakudo-moar 770d10: OUTPUT«Cannot call grep(Seq: ); none of these signatures match:␤    ($: Bool:D $t, *%_)␤    ($: Mu $t, *%_)␤  in block <unit> at /tmp/rLhgx828jD line 1␤␤»
19:37 Skarsnik I really don't get it xD
19:37 AlexDaniel m: my %h = a => 1, b => 2; my @t = %h.values.grep: * %% 2; say @t;
19:37 camelia rakudo-moar 770d10: OUTPUT«[2]␤»
19:37 AlexDaniel m: my %h = a => 1, b => 2; my @t = %h.values.grep: { $_ %% 2 }; say @t;
19:37 camelia rakudo-moar 770d10: OUTPUT«[2]␤»
19:38 AlexDaniel m: my %h = a => 1, b => 2; my @t = %h.values.grep(* %% 2); say @t;
19:38 camelia rakudo-moar 770d10: OUTPUT«[2]␤»
19:38 Skarsnik hm
19:39 Skarsnik how I can remove these result from the hash?
19:41 AlexDaniel m: my %h = a => 1, b => 2; -> $a, $b { %h{$a} :delete if $b == 2 } for %h.kv; say %h
19:41 camelia rakudo-moar 770d10: OUTPUT«a => 1␤»
19:41 AlexDaniel m: my %h = a => 1, b => 2; { %h{$^a} :delete if $^b == 2 } for %h.kv; say %h
19:41 camelia rakudo-moar 770d10: OUTPUT«a => 1␤»
19:43 AlexDaniel Skarsnik: is it good enough? ↑
19:43 awwaiid I find state-changing adverbs on things that don't look like verbs (such as non-state-changing hash value lookups) to be... interesting. Like veribifying a noun kinda.
19:44 psy_ joined #perl6
19:44 gfldex awwaiid: we do that in german all the time. It works well.
19:46 awwaiid gfldex: which, verbifying nouns? we do that in english as well; I'm just not sure this is quite that
19:48 gfldex the order feels a little odd
19:49 gfldex i would say :delete {$^a} in %h. Both in english and in german. In german however I would be allowed to change the order, it doesn't got strict SPO
19:51 AlexDaniel m: :<x>
19:51 camelia rakudo-moar 770d10: OUTPUT«WARNINGS for /tmp/XbevNzTxXa:␤Useless use of constant value x in sink context (line 1)␤»
19:51 AlexDaniel m: say :<x>
19:51 camelia rakudo-moar 770d10: OUTPUT«x␤»
19:51 AlexDaniel m: say ::<x>
19:51 camelia rakudo-moar 770d10: OUTPUT«Nil␤»
19:51 AlexDaniel m: say :::<x>
19:51 camelia rakudo-moar 770d10: OUTPUT«===SORRY!===␤Could not locate compile-time value for symbol :<x>␤»
19:51 AlexDaniel m: say ::::<x>
19:51 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/eJ5lull58K␤Name component may not be null␤at /tmp/eJ5lull58K:1␤------> 3say ::7⏏5::<x>␤»
19:54 sufrostico joined #perl6
19:54 awwaiid reading rakudo:src/core/Hash.pm, what does 'is raw' on methods mean? mmm... looks like that basically does 'is raw' on each of the params, which looks like it means it uses binding instead of assignment
19:57 xpen joined #perl6
19:57 awwaiid AlexDaniel: what is :<x>?
19:57 AlexDaniel awwaiid: I don't know
19:57 awwaiid the rest kinda make sense
19:57 FROGGS m: say (:<x>)
19:57 camelia rakudo-moar 770d10: OUTPUT«x␤»
19:58 vendethiel m: say (:<x>).perl #:)
19:58 camelia rakudo-moar 770d10: OUTPUT«"x"␤»
19:58 gfldex awwaiid: it's binding
19:58 awwaiid oh, like :("x") ?
19:59 AlexDaniel binding what?
19:59 gfldex m: sub ($a is raw, \b){}
19:59 camelia rakudo-moar 770d10: ( no output )
19:59 awwaiid m: say :("x").perl
19:59 camelia rakudo-moar 770d10: OUTPUT«:(Str $ where { ... })␤»
19:59 stmuk does anyone know of an ecosystem module with good POD which isn't DBIish?
19:59 awwaiid oh, gfldex was referring to my 'is raw' comment
19:59 gfldex :() <-- signature literal
19:59 gfldex and a big monkey ofc
20:00 awwaiid gfldex: yeah, but :<x> doesn't seem to be shorthand for :("x")
20:00 Ven joined #perl6
20:00 Skarsnik m: my %h; say %h<a>.elems # why 1?
20:00 camelia rakudo-moar 770d10: OUTPUT«1␤»
20:00 gfldex m: say (:<x>).WHAT
20:00 camelia rakudo-moar 770d10: OUTPUT«(Str)␤»
20:01 Skarsnik should it be 0? x)
20:01 * awwaiid examines AST output
20:02 gfldex m: my %h; say %h<a>:exists;
20:02 camelia rakudo-moar 770d10: OUTPUT«False␤»
20:02 gfldex m: my %h; say %h<a>:exists; say %h.elems;
20:02 camelia rakudo-moar 770d10: OUTPUT«False␤0␤»
20:02 awwaiid m: %h<x>.WHAT.say
20:02 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0Q_gDoP_jx␤Variable '%h' is not declared␤at /tmp/0Q_gDoP_jx:1␤------> 3<BOL>7⏏5%h<x>.WHAT.say␤»
20:02 gfldex m: my %h; say %h<a>:exists; say %h.elems; say %h<a>; say %h.elems;
20:02 camelia rakudo-moar 770d10: OUTPUT«False␤0␤(Any)␤0␤»
20:02 awwaiid m: my %h ; %h<x>.WHAT.say
20:02 camelia rakudo-moar 770d10: OUTPUT«(Any)␤»
20:03 gfldex m: my %h; say %h<a>:exists; say %h.elems; say %h<a>; say %h.elems; say %h<a>.elems;
20:03 camelia rakudo-moar 770d10: OUTPUT«False␤0␤(Any)␤0␤1␤»
20:03 awwaiid Skarsnik: %h<a> returns Any. One of them :)
20:03 RabidGravy stmuk, all of mine have *comprehensive* pod I'm not sure about *good*
20:03 Skarsnik Oh make sense
20:03 geekosaur hm, could that :<x> be colliding with a unfortunate degenerate case of base-literals?
20:03 gfldex %h<a> is a list of Pair with one element. The value of that Pair happens to be undefined/false
20:03 geekosaur m: say :0<x>
20:03 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/K6184Wfysf␤Radix 0 out of range (allowed: 2..36)␤at /tmp/K6184Wfysf:1␤------> 3say :0<x>7⏏5<EOL>␤»
20:03 dalek doc: 28e6394 | (Steve Mynott)++ | bin/p6doc:
20:03 dalek doc: teach p6doc about the existance of panda installed precomp ecosystem modules. Unlikely to work with zef
20:03 dalek doc: review: https://github.com/perl6/doc/commit/28e63946fd
20:04 geekosaur maybe not
20:04 geekosaur probably have to look at the grammar to see if it's falling through the cracks or something
20:04 RabidGravy stmuk++ # nice one, there's an actual point in putting POD in them now :)
20:05 gfldex awwaiid: where did you find that :<x> ?
20:06 stmuk I'm not very happy with how that works! There probably should be proper APIs. But I figure partly working hack is better than not working at all
20:07 awwaiid gfldex: AlexDaniel was playing with it
20:07 AlexDaniel gfldex: yeah, that's a typical result of my brain fart :)
20:08 awwaiid AlexDaniel: gfldex: I tried to suss it out looking at the AST of :<x> vs "x", but haven't gained any insight: diff -u <(perl6 --target=AST -e 'say "x"') <(perl6 --target=AST -e 'say :<x>')
20:08 psy_ joined #perl6
20:11 moritz awwaiid: the main difference seems to be that "x" is an allomorphic str/Str thingy, while :<x> is a pure Str
20:11 awwaiid moritz: ... interesting. Is there another way to make a pure Str?
20:12 moritz awwaiid: presumably through Str.new
20:16 ely-se Is the current way to make public constants to make them subroutines? our \blah = 1; is not yet supported by rakudo
20:17 Skarsnik ?
20:17 awwaiid moritz: looks legit... so is this a feature or implementation side-effect?
20:18 jnthn ely-se: constant blah = 1; # is our-scoped by default
20:18 Skarsnik m: module A { constant PIKO is export = "hello" }; import A; say PIKO;
20:18 camelia rakudo-moar 770d10: OUTPUT«hello␤»
20:18 ely-se jnthn: oh I see
20:18 ely-se I couldn't find "constant"
20:18 awwaiid ely-se: might want to use :: instead of .
20:20 Calibellus joined #perl6
20:20 moritz awwaiid: the :<x> not being allomorphic looks like an oversight
20:21 moritz ely-se: or "our constant" if you want to be explicit
20:25 awwaiid moritz: but is it legit that :<x> is more or less "x", and is :<x> shorthand for something in this case? Or in other words, do I get to add another thing to my colon collection (https://thelackthereof.org/Perl6_Colons)?
20:25 llfourn joined #perl6
20:25 ely-se what is "Koalatee" in the module listing?
20:25 ely-se jnthn: thanks, that works :)
20:26 awwaiid moritz: and if it is a lovely additon to my colon collection, does the construct have a name?
20:27 Praise joined #perl6
20:27 Praise joined #perl6
20:28 awwaiid ely-se: https://github.com/perl6/modules.perl6.org/blo​b/master/lib/ModulesPerl6/Metrics/Koalatee.pm is the code for it -- in other contexts it is a somewhat-subjective score hopefully correlated to the module authors doing good stuff (subjective is why it isn't spelled "quality")
20:28 ely-se oh ok
20:28 moritz awwaiid: no idea
20:29 ely-se ah, very trivial stuff I see
20:29 moritz awwaiid: looks like the degenrate form of a colon pair to me
20:30 nemo Heh. unc0rr just linked me to some code he wrote for our haskell game server that I thought might entertain you perl6 folks w/ your unicode-in-the-language
20:30 nemo http://hg.hedgewars.org/hedgewars/file/t​ip/gameServer/OfficialServer/Glicko2.hs
20:32 * awwaiid imagines a slang where latex equations are valid
20:33 ely-se I've always used Unicode in my code, for ASCII is a subset of Unicode.
20:33 awwaiid ely-se++ # profound
20:33 nemo heh
20:33 breinbaas joined #perl6
20:33 huf pretty much everyone ever has used unicode
20:33 moritz awwaiid: the Mathematica language has something very close, and some other scientific language whose name I forgot too
20:33 huf since the point of unicode is to contain everything
20:33 huf (and it's not an encoding)
20:34 moritz "One code to rule them all"
20:34 dfcarpenterak joined #perl6
20:34 grondilu joined #perl6
20:36 ely-se Next step is to figure out how to run an extra build step with META.info.
20:37 moritz ely-se: look at Inline::* modules as examples?
20:37 ely-se Hmm. I'm not sure I want it.
20:37 ely-se It's the numeric values of the <errno.h> constants.
20:37 ely-se They never change so I could just as well not have them generated.
20:38 telex joined #perl6
20:38 El_Che ely-se: famous last words :)
20:39 ely-se I vaguely remember those constants being on http://doc.perl6.org/ about a year ago
20:39 ely-se But they aren't there anymore.
20:39 arnsholt They're constants, until suddenly they're not anymore
20:39 arnsholt (If your code moves to a different OS, f'rinstance)
20:39 ely-se POSIX error numbers will never change. It would break too much software.
20:39 ely-se They are also not OS-specific. POSIX defines them.
20:40 arnsholt Aren't there OS-specific extensions too, though?
20:40 ely-se I don't support them.
20:40 arnsholt Well, that solves it, yeah =)
20:40 ely-se looks like this now: https://github.com/rightfold/NativeCall-Errno​/blob/master/lib/NativeCall/Errno.pm6#L14-L92
20:41 zakharyas joined #perl6
20:45 ely-se manually copied from generator output
20:49 Skarsnik what the hell is short unsigned int
20:51 lucasb joined #perl6
20:51 geekosaur C lets you permute those
20:53 ely-se volatile const auto short unsigned int x = 0;
20:53 Skarsnik great I have wchar_t what the hell is this dumb header
20:53 ely-se wchar_t is an abomination.
20:54 lucasb wtfchar
20:54 nemo ely-se: amen
20:54 arnsholt Skarsnik: "Wide character"
20:54 arnsholt From ).
20:54 arnsholt some functions and attributes of the gc module behave in a slightly different way: for example, gc.enable and gc.disable are supported, but instead of enabling and disabling the GC, they just enable and disable the execution of finalizers.
20:54 arnsholt Whoops. Mispaste
20:54 arnsholt Damn tiny laptop keyboard
20:54 ely-se doesn't matter; still hilarious
20:54 nemo arnsholt: back from when people thought 16 bits would be enough for all chars - didn't count on CJK being quiiiite as big as it was
20:54 nemo poor naive western designers
20:54 Skarsnik I am writing fundamental C type to perl6 table
20:54 arnsholt Yeah, what nemo said
20:55 ely-se 8 bit is enough
20:55 ely-se people should just learn English
20:55 Skarsnik so wchar_t will be... fund this
20:55 arnsholt From the days before Unicode was fully figured out
20:55 moritz ely-se: 7 bit is enough!
20:55 nemo ely-se: I feel sorry for all the poor kids in this area learning chinese as a second language.  they are all feeling super confident at learning the accents and all that, then someone turns the script loose on them and crushes their tiny spirits
20:55 ely-se hmm, no equivalent for !eqv :(
20:55 nemo Funny essay. http://www.pinyin.info/readings/texts/moser.html
20:56 ely-se teach them Perl 6
20:56 arnsholt (Without reading it) is that "Why Chinese is so damn hard"? =)
20:56 nemo arnsholt: indeedy
20:56 nemo 'I couldn't remember how to write the character 嚔, as in da penti 打喷嚔 "to sneeze". I asked my three friends how to write the character, and to my surprise, all three of them simply shrugged in sheepish embarrassment'
20:57 nemo 'three Ph.D. students in the Chinese Department at Peking University, all native Chinese'
20:57 arnsholt I've been told the Japanese have a term for that: wopurobaka (literally "word processor stupid") for the phenomenon where people can recognize characters when reading, but not produce them
20:58 Skarsnik hm, what can I do with complex of C99 ?
20:58 * alpha123 tried to learn chinese in grade school, spoken isnt bad but writing killed him
20:58 ely-se Skarsnik: what do you mean?
20:58 nemo arnsholt: at least the set of kanji is a lot smaller in japanese, and semi-avoidable while writing
20:58 alpha123 Skarsnik: complex number arithmetic and a few transcendental functions
20:58 Skarsnik how to translate the complex float to a perl6 type
20:58 ely-se complex numbers are useful in a variety of disciplines
20:59 lnrdo joined #perl6
20:59 Skarsnik I assume a complex float is just a fancy float?
20:59 alpha123 arnsholt: it's a pretty common phenominon in japan, kids aren't learning stroke order anymore (they just type hiragana or katakana and phones etc complete the kanji)
20:59 arnsholt Skarsnik: On a first pass, I'd mark them as TODO, and see if people have good ideas =)
20:59 alpha123 Skarsnik: if you don't know what it is, you probably don't care
20:59 nemo arnsholt: really, the only utility to kanji in japanese seems similar to variant spellings of same sound in french, to help in disambiguation a bit
20:59 nemo although in french it is probably just due to sounds fading off over time
20:59 ely-se Skarsnik: a complex float is typically implemented as a pair of floats
20:59 Skarsnik I am writing something that produce Nativecall code from c header
20:59 nemo arnsholt: and I guess to look pretty
21:00 arnsholt Yeah, French spelling is a confluence of insanely archaic orthography and some annoying sound changes
21:00 Skarsnik I don't care the use I have of these type xD
21:00 ely-se struct complex { float real; float imag; };
21:00 arnsholt Much the same is true for English, really
21:00 alpha123 nemo: kanji actually mean a lot more than that, for example they sometimes convey respect and formality
21:00 Skarsnik ok, I will stick to returning NYI or something like that x)
21:00 mspo wouldn't a french word be written in katakana or romanji?
21:00 alpha123 yeah
21:00 nemo arnsholt: english is a whole different beast... a frankenstein stiched from german, french and a ton of other languages
21:00 [Coke] m: say complex;
21:00 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Jr7p08l6vD␤Undeclared routine:␤    complex used at line 1␤␤»
21:01 alpha123 nemo: but at least english verbs are great
21:01 [Coke] m: say Complex;
21:01 camelia rakudo-moar 770d10: OUTPUT«(Complex)␤»
21:01 ely-se You should give Finnish a try.
21:01 ely-se That's a weird language.
21:01 arnsholt That's vocabulary though. Completely different =)
21:01 * alpha123 still firmly believes every language other than english and mandarin got verbs wrong
21:01 nemo my russian friends claim russian is a pretty rational language
21:01 ely-se Dutch is hte best language.
21:01 psy_ joined #perl6
21:01 alpha123 ely-se: screw dutch, messed up our english spelling
21:01 alpha123 ;)
21:02 nemo and a couple of my russian speaking french friends (fair # of french speak russian for some reason, and vice versa) agree
21:02 arnsholt nemo: Eh. Similar claims have been made for (off the top of my head): French, German, Latin and Greek
21:02 nemo perhaps due to a history of mutual invasions
21:02 arnsholt It's all bollocks =)
21:02 nemo arnsholt: latin is just hilarious
21:02 alpha123 I only know a bit of russian but it seems nice. At least they spell mostly phonetically
21:02 nemo arnsholt: every time a short latin phrase comes up online on some latin forum, and someone asks for the "correct" text, you get a forum thread like 20 posts long
21:02 alpha123 lol
21:03 arnsholt Latin isn't too bad, TBH. The morphological system is really quite regular, due to it being radically restructured relatively recently
21:03 nemo I ran into this when looking up that latin from that space horror movie
21:03 nemo the one that is kinda like warhammer
21:03 revhippie joined #perl6
21:03 nemo Event Horizon
21:04 nemo http://latindiscussion.com/forum/lat​in/liberate-tuteme-ex-inferis.7499/
21:04 nemo I stand corrected. only 18 responses
21:05 diakopter spoiler alert: there is blood
21:05 nemo alpha123: eh. I like the flexibility of tenses in other languages.  more expressive
21:05 arnsholt *tutemet is the correct form of the pronoun, if you care =p
21:05 nemo alpha123: there have been times when the limitations of english have kind of annoyed me
21:05 alpha123 nemo: english has a bunch of tenses and moods and aspects too, they're just not used much and we don't have 20 versions of each verb because of it
21:06 alpha123 for as weird as english is, at least we have non-gendered nouns and comparatively simple verb forms
21:06 lokien_ joined #perl6
21:06 geekosaur there is no such thing as a regular language. if it gets used, it sprouts irregular "conveniences" for the frequent speaker.
21:06 nemo alpha123: well, the number of tenses in latin-derived languages is pretty insane, but most of 'em aren't used, and the ones that are used are pretty easy to remember I think
21:06 nemo geekosaur: lojban/
21:06 nemo ?
21:06 alpha123 geekosaur: HTML?
21:06 alpha123 ;D
21:07 nemo I considered trying to teach my kid lojban but was 1) too lazy and 2) told it would be child abuse
21:07 geekosaur I shoul hae qualified that with "natural" laguage. lojban etc. don't really count since they are artifically structured
21:07 alpha123 nemo: lol
21:07 alpha123 that would be interesting at least
21:07 geekosaur (also anyone who thinks HTML is regular should try to parse actual web pages >.> )
21:08 alpha123 geekosaur: that was rather tongue-in-cheek, referencing the stackoverflow HTML IS NOT A REGULAR LANGUAGE post
21:08 geekosaur there's a reason the most popular html parser is called "tag soup"
21:08 ely-se it's offensive towards soup
21:08 ely-se soup is unlike HTML: good
21:08 alpha123 the html5 parsing algorithm is a minor disaster
21:08 nemo alpha123: did you ever see the regex on stackoverflow for HTML?
21:08 alpha123 nemo: No, was it PCRE?
21:09 alpha123 because standard regexes can't do html
21:09 nemo alpha123: http://stackoverflow.com/a/5233151
21:09 nemo well. that's just XML
21:10 nemo but came from an XHTML question on stackoverflow
21:10 nemo so there's some overlap
21:10 nemo and still funny
21:10 * geekosaur surprised nobody added CTHULHOID TENTACLES to unicode just for the benefit of that post
21:10 alpha123 lol
21:10 ely-se In Perl it's easier
21:10 ely-se just embed a block that calls into an HTML parser
21:10 alpha123 ely-se: well perl regexes aren't regular anyway
21:10 ely-se neither are .NET's
21:10 alpha123 what even are perl regexes, LR(0)?
21:11 [Coke] (;,;)
21:11 nemo alpha123: http://pastebin.com/HUmPzP5M  the pastebin unpack from that post in case you're feeling lazy or TLDR
21:11 diakopter [Coke]: XD
21:11 [Coke] /|\(;,;)/|\ . o O (zzz)
21:11 alpha123 nemo: bWVuLCBpIHNwZWFrIGJhc2U2NCBuYXRpdmVseQ==
21:12 nemo alpha123: heh. I piped that to xxd in case you were being evil
21:13 nemo but, yeh, perl -e 'print unpack "B*","hi"'  - old silly forum favourite
21:13 alpha123 perl6 grammars are really awesome, even though PEG is not really my favorite algorithm
21:14 Skarsnik libxml2 is fun... https://gist.github.com/Ska​rsnik/c4b3bd674fbb407d9d0e 1068 functions xD
21:14 nemo hm. does that line of perl5 still work in perl6?
21:14 nemo m: print unpack "B*","hi"
21:14 camelia rakudo-moar 770d10: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gW0xGUtMZH␤Undeclared routine:␤    unpack used at line 1. Did you mean 'pack'?␤␤»
21:14 nemo oh well
21:15 cdg joined #perl6
21:15 lucasb left #perl6
21:16 alpha123 I hope something like grammars becomes more standard in languages in the future. My own language (which is a bit like an illegitimate child of Perl 5 and Haskell) ~~stole~~ adopted the idea
21:18 AlexDaniel actually, Russian is just insane. You might like it if only you don't mind that the same thought expressed in English is twice shorter than in Russian…
21:18 maslan joined #perl6
21:18 alpha123 AlexDaniel: English is pretty efficient in general, but 2x seems like a stretch
21:18 AlexDaniel and that its alphabet barely fits into your keyboard layout
21:21 AlexDaniel alpha123: sure, I am exaggerating a bit
21:21 alpha123 also russian has a vastly more expressive array of profanity than english :p
21:22 dfcarpenterak joined #perl6
21:22 geraud joined #perl6
21:22 sno joined #perl6
21:23 dfcarpenterak joined #perl6
21:24 llfourn joined #perl6
21:24 gfldex nemo: Date:   Wed Dec 23 22:31:59 2015 +0100
21:24 gfldex Make pack and unpack experimental
21:25 _mg_ joined #perl6
21:25 AlexDaniel alpha123: yes, what an advantage. Not sure where would you use it though…
21:25 gfldex russians use that advantage at every opportunity
21:28 gfldex i used to play eve-online quite a lot. One day I had a russian cussing at me for 15 minutes. At least 25 individual insults. I was impressed.
21:30 nemo AlexDaniel: I understand where russian truly shines, is profanity
21:30 nemo https://en.wikipedia.org/wiki​/Mat_%28Russian_profanity%29
21:30 nemo "Mat has thousands of variations but ultimately centers on four pillars"
21:32 nemo AlexDaniel: http://www.russki-mat.net/p​age.php?l=RuEn&amp;a=%D0%95
21:42 YP-QMUL-W joined #perl6
21:47 Skarsnik right side of 'and' or '&&' is never evaluated if the left is false?
21:48 gfldex they short circuit
21:48 Skarsnik because I have
21:48 Skarsnik say $t.ref-type ~~ FundamentalType;
21:48 Skarsnik return 'Str' if ($t.ref-type ~~ FundamentalType and $t.ref-type.name eq 'char') ||
21:49 Skarsnik and I get Method 'name' not found for invocant of class 'GPT::Class::PointerType' on the second line
21:49 Skarsnik and it say false
21:50 Skarsnik So I am really confused now x)
21:54 nadim joined #perl6
21:54 cognominal joined #perl6
21:58 Skarsnik and obviously I only have this bug on a huge ass file
21:58 xpen joined #perl6
22:01 leont joined #perl6
22:01 dalek doc: ac1285c | (Steve Mynott)++ | bin/p6doc:
22:01 dalek doc: -l now lists panda installed modules as pod candidates
22:01 dalek doc: review: https://github.com/perl6/doc/commit/ac1285c558
22:04 espadrine joined #perl6
22:11 timotimo you may want .^name on that?
22:12 timotimo or does FundamentalType have an actual name method?
22:14 timotimo i didn't see skarsnik leave :\
22:18 colomon joined #perl6
22:21 llfourn joined #perl6
22:29 pmurias joined #perl6
22:30 pmurias re koalatee it seems to be broken as it gives a travis score for a module with unknown travis status
22:31 gfldex there may be caching involved
22:31 pmurias I think it would be great to either document it or just remove it
22:31 AlexDaniel joined #perl6
22:31 AlexDaniel nemo: what a good list
22:31 pmurias by document it I mean is that the module.perl6.org page doesn't mention what it is
22:32 yqt joined #perl6
22:32 RabidGravy right no more fixing software for the day
22:33 zengargoyle joined #perl6
22:34 AlexDaniel nemo: of course there are much more. People come up with these words on the fly, so honestly I haven't thought that someone will attempt to create a list like this…
22:37 n0tjack joined #perl6
22:38 dalek rakudo-star-daily: a142780 | coke++ | log/ (5 files):
22:38 dalek rakudo-star-daily: today (automated commit)
22:38 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/a14278060b
22:48 nemo AlexDaniel: I heard some russian artist is making like a 6 volume encyclopedia set of mat
22:48 nemo kinda like as an art piece I guess
22:49 nemo ah. 12 volumes
22:49 nemo 'The Russian linguist (and protest art guru) Alexey Plutser-Sarno is working on a dictionary of Russian curses.'
22:49 nemo https://www.quora.com/Which-are​-the-best-languages-to-swear-in (from here)
22:50 mspo can I use rakudo directly and then moar to execute directly?
22:50 mspo like a traditional compile/run cycle
22:50 alpha123 mspo: why
22:50 mspo alpha123: I think I'd prefer it
22:50 flussence that's how the core setting is done, I don't know how well it'd work for other code
22:51 mspo alpha123: especially if I can eventually create compiled things to deploy
22:51 mspo alpha123: which, for example, also package their dependencies
22:52 alpha123 mspo: I don't think MoarVM bytecode is portable across platforms or Moar versions
22:52 mspo that's fine
22:53 mspo alpha123: I'm not a fan of artifacts getting autocreated here and there
22:53 mspo pyc files are bad news :)
22:53 llfourn mspo: perl6 --target=mbc --output=foo.moarvm foo.p6 # worked last time I tried it
22:54 llfourn though rakudo is doing this for you and putting it into .precomp
22:55 mspo ~/.perl6/.precomp ?
22:56 llfourn mspo: depends. If you are using a lib like perl6 -Ilib foo.p6 it will put it in lib/.precomp
22:56 llfourn it won't compile foo.p6 -- just the dependencies in lib
22:56 llfourn precompile*
22:57 llfourn if you have an installed module it will probably be precompiled in .perl6
23:00 pmurias mspo: you are a fan of Makefiles? or just having them autocreate in a single place?
23:04 awwaiid PolyConf call for papers is open (polyglot programming conference in Poland) -- http://eventil.com/events/polyconf-16 . Would be great to have some p6 representation :)
23:10 b2gills .ask jnthn wouldn't Seq.Numeric always be the same as Seq.elems?
23:10 yoleaux b2gills: I'll pass your message to jnthn.
23:15 [Tux] joined #perl6
23:17 skids joined #perl6
23:26 AlexDaniel nemo: and sure enough we have some profanity in perl6: https://github.com/Skarsnik/acme-wtf
23:28 AlexDaniel nemo: though it would have been nicer if it accepted all sorts of “fuck” words as “die” alternatives
23:28 kid51 joined #perl6
23:31 pmurias I get a an error while doing rakudobrew build-panda
23:32 pmurias it seems to have disappeared
23:32 nemo AlexDaniel: I'm disappointed it isn't licensed under the DWTFYW
23:33 AlexDaniel nemo: WTFPL you mean?
23:33 nemo oh right
23:33 * nemo forgot the name
23:43 TEttinger joined #perl6
23:45 leont joined #perl6
23:48 pmurias ahh, an old version of shell command was causing the error
23:49 xdoctor joined #perl6
23:54 colomon joined #perl6
23:55 n0tjack joined #perl6
23:59 xpen joined #perl6

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

Perl 6 | Reference Documentation | Rakudo