Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-01-21

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:05 BenGoldberg joined #perl6
00:09 mrons joined #perl6
00:10 haircode joined #perl6
00:10 haircode joined #perl6
00:11 mrons joined #perl6
00:16 daxim joined #perl6
00:29 raiph joined #perl6
00:33 perlawhirl joined #perl6
00:34 arlenik_ joined #perl6
00:49 geraud joined #perl6
00:53 roguelazer joined #perl6
00:56 xpen joined #perl6
00:56 ruoso joined #perl6
00:57 yeahnoob joined #perl6
00:57 lnrdo joined #perl6
01:00 ELBeavers joined #perl6
01:11 meth joined #perl6
01:13 cognominal joined #perl6
01:19 pierre-vigier joined #perl6
01:31 Actualeyes joined #perl6
01:35 Zoffix joined #perl6
01:36 Zoffix left #perl6
01:39 average joined #perl6
01:39 average a word of caution for all the CoC purists in here
01:39 average https://lobste.rs/s/3hwckc/banning_mr_nutter_for_repeated_harassment
01:40 average notice what has happened in the misuse of CoC , basically the bashing of an individual in a public blogpost
01:40 average and the CoC and policies are used to support that
01:40 average this is not ok
01:40 average it's a very bad example for any OSS project to do that
01:42 average and these CoC-backed disputes are on the rise, you can see them in a lot of places these days:
01:42 average - github issues
01:42 average - blogposts
01:42 average - mailing lists
01:45 average but GH issues are increasingly becoming this sort of pugilistic parking lot where devs are duking it out
01:58 zacts joined #perl6
02:08 Zoffix joined #perl6
02:09 Zoffix I'm trying to install SDL module and I'm getting "Cannot locate native library 'liblibSDL.so': liblibSDL.so: cannot open shared object file: No such file or directory".... that double-lib is suspicious. Were there NativeCall changes that removed the need to use the "lib"?
02:10 average left #perl6
02:11 skids .tell hoelzro I don't use any of those IDPs used by disqus, so here's comment on your pod blog: https://gist.github.com/skids/5c768ad78302a6b85142
02:11 yoleaux skids: I'll pass your message to hoelzro.
02:12 Zoffix Hmmm... "Hi Zoffix, I really enjoyed your Mojo talk and I see that you've been making a splash by blogging about Perl6. :)  What would you think about presenting something to TPM about Perl6? I'm sure a lot of folks would be interested."
02:12 Zoffix Anyone near Toronto who wants to do a Perl 6 talk?
02:13 jdv79 aren't you?
02:13 avs_ joined #perl6
02:15 Zoffix I am.... It's just... it's a really homogenous dude-only group. I kinda felt weirded out a bit during my Mojo talk :)
02:15 pierre-vigier joined #perl6
02:15 kaare_ joined #perl6
02:15 jdv79 sounds like every tech meeting i've been too
02:15 jdv79 *to
02:16 jdv79 well, smaller ones at least.
02:18 xpen joined #perl6
02:21 avs__ joined #perl6
02:28 Juerd joined #perl6
02:29 Zoffix Well... there goes nothing....
02:29 Zoffix "Yes, I would be interested in doing a Perl 6 presentation. Which month were you thinking to do it in?"
02:33 Juerd joined #perl6
02:40 Jesmaybe joined #perl6
02:41 lustlife joined #perl6
02:42 meth joined #perl6
02:46 pierre-vigier joined #perl6
02:48 ilbot3 joined #perl6
02:48 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
02:48 onMeth joined #perl6
02:49 ELBeavers joined #perl6
02:51 Zoffix Well, SDL module seems to be broken beyond repair. I progressed beyond my 'liblib' only to be stymied by everything else... https://github.com/PerlGameDev/SDL6/issues/9
02:52 Jesmaybe hmmm, so perl6 games might be a thing? haha
02:53 Zoffix There seems to be at least one that I was trying to run: http://modules.perl6.org/#q=games
02:53 Zoffix I'm also making Dice Poker that I kinda wanted to make look good too
02:54 Zoffix And there appear to be a couple of games in https://github.com/timo/SDL2_raw-p6 that I'm about to try to run
02:54 FreezerburnV joined #perl6
02:54 Jesmaybe cool, cool.
02:58 meth joined #perl6
03:00 lnrdo joined #perl6
03:04 Zoffix timotimo, seems both conditions assign the same values here: https://github.com/timo/SDL2_raw-p6/blob/master/lib/SDL2/Raw.pm#L4
03:14 hoelzro skids: thanks for that input; I hadn't considered nesting declarative POD inside of other POD blocks!
03:14 yoleaux 02:11Z <skids> hoelzro: I don't use any of those IDPs used by disqus, so here's comment on your pod blog: https://gist.github.com/skids/5c768ad78302a6b85142
03:15 hoelzro that should definitely be a thing
03:15 cognominal joined #perl6
03:18 meth joined #perl6
03:19 meth joined #perl6
03:25 FreezerburnV So I have a class that takes in the parameter named $event, it then tries to call "self.bless($:event)", where I have a BUILD sub with :$event as a parameter. I'm getting the error "Redeclaration of symbol $:event as a placeholder parameter" when this worked pre-Christmas
03:25 FreezerburnV What am I doing wrong here?
03:26 * Zoffix is surprised $:event is a thing
03:26 geekosaur so'm I
03:26 geekosaur not sure if that should be :$event or something else
03:26 Zoffix Well, yeah, it should be :$event
03:26 geekosaur I thik $: twigil is reserved?
03:26 FreezerburnV Ah, maybe it didn't work then
03:26 FreezerburnV And I'm just confused
03:27 FreezerburnV Haven't touched this code in a few weeks
03:27 geekosaur but I think $: was accidentally accepted without error pre-Christmas
03:27 Zoffix Ah
03:27 geekosaur I vaguely recall a bug about that
03:27 FreezerburnV Aaah
03:27 Zoffix http://doc.perl6.org/language/variables#The_%3A_Twigil
03:27 Zoffix FreezerburnV, I think you should remove the :$event in the parameter list
03:28 Zoffix That, or change the bless to :$event
03:28 FreezerburnV So: sub BUILD($:event), then call self.bless(:$event)
03:28 Zoffix m: sub foo (:$event) { say $:event }
03:28 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VxaKIybGXe␤Redeclaration of symbol $:event as a placeholder parameter␤at /tmp/VxaKIybGXe:1␤------> 3sub foo (:$event) { say $:event7⏏5 }␤»
03:28 meth joined #perl6
03:29 FreezerburnV I have "sub BUILD(SDL_Event :$event)" compiling somehow
03:29 Zoffix hmmm
03:29 FreezerburnV Theoretically, at least. I have some missing symbols due to an old version of a file I have
03:29 Zoffix m: sub foo (:$event) { bar :$event }; sub bar () { say $:event }; foo "meow"
03:29 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LdyEAtAFoe␤Placeholder variable '$:event' cannot override existing signature␤at /tmp/LdyEAtAFoe:1␤------> 3sub foo (:$event) { bar :$event }; sub7⏏5 bar () { say $:event }; foo "meow"␤»
03:30 stmuk_ joined #perl6
03:30 Zoffix m: sub foo (:$event) { bar :$event }; sub bar { say $:event }; foo :event<meow>
03:30 camelia rakudo-moar 775271: OUTPUT«meow␤»
03:32 telex joined #perl6
03:38 vendethiel joined #perl6
03:41 mrons joined #perl6
03:43 mrons msg NickServ SENDPASS mrons
03:46 cpage_ joined #perl6
03:46 geekosaur ewps
03:47 noganex_ joined #perl6
03:49 ugexe .tell jdv79 thanks, managed to get a basic distro request, deps fetched, tars extracted, and finally installed with it. would have a better idea if the dists weren't months old heh
03:49 yoleaux 20 Jan 2016 22:53Z <jdv79> ugexe: its back up.  maybe its time to run it better.
03:49 yoleaux ugexe: I'll pass your message to jdv79.
03:53 mrons /msg NickServ SETPASS mrons axzawkbxygyy Hey1Hey1
04:01 khw joined #perl6
04:01 mrons joined #perl6
04:03 cognominal is  there a way to test if a named argument is absent? which is different from a present named argument with an undefined value.
04:03 mrons joined #perl6
04:04 cognominal this a nqp question btw
04:05 llfourn cognominal: I don't think so. Though it would weird if someone manually set a named arg to NQPMu to trick you :P
04:07 molaf joined #perl6
04:09 davido joined #perl6
04:09 cognominal ok, then I will test for NQPMu to assess an absent argument
04:09 llfourn yes I think that's the way to do it
04:10 cognominal I want to add an :actions parameter to the LANG method
04:10 llfourn cognominal: interesting. what is LANG in this case?
04:10 araujo_ joined #perl6
04:11 cognominal https://github.com/perl6/nqp/blob/master/src/HLL/Grammar.nqp#L656
04:12 llfourn cognominal: cool so you could use your own actions with P6 grammar?
04:13 cognominal motivation: I am writing a slang generating AST. I use the variable rule put depending on the context, it generate a QAST::Var or a nqp var.
04:14 llfourn so this is to help you write slangs?
04:14 cognominal lifourn: yes, you can you use a lang but with your own action class or none.
04:15 llfourn I will be interested to see what you come up with. Slangs are very releveant to my interests.
04:16 llfourn also parsing P6 without actually compiling any code is relevant to lots of peoples interests I think
04:20 cognominal lifourn: I am not sure that's currently possible. I fear a lot of context is set in the actions that are necessary for further parsing. Probably the actions class should be broken in a context setting Actions class and a derived class that does the code generation.
04:21 llfourn cognominal: yeah I was going to say... Maybe all the context settings thing could put into the grammar itself.
04:21 llfourn but packaged in some way that it doesn't make a mess
04:23 cognominal I am happy to see there is a lot of interest like the P6FE author (forgot his nick).
04:24 llfourn MadCapJake
04:24 llfourn yeah being able to re-use the Perl 6 grammar for completions and editor support would be awesome obviously
04:24 n0tjack joined #perl6
04:26 MadcapJake joined #perl6
04:37 ELBeavers joined #perl6
04:44 Actualeyes joined #perl6
04:46 yeahnoob joined #perl6
04:47 lokien_ joined #perl6
04:51 MadcapJake I've been casually posting links to this new site for developers called Hashnode https://hashnode.com
04:51 MadcapJake It's kind of like reddit + stackoverflow + twitter polls all rolled into one and only about software dev
04:53 MadcapJake I'm only posting Perl 6 content from around the web.  Gotta represent! ✊
04:56 * skids follows.
04:58 km3 joined #perl6
05:02 lnrdo joined #perl6
05:20 Herby_ joined #perl6
05:20 Herby_ Good evening, everyone!
05:24 cognominal m: my %a = 'a'..'d'; use nqp; say nqp::atkey(%a, 'a')
05:24 camelia rakudo-moar 775271: OUTPUT«b␤»
05:25 Herby_ o/
05:25 cognominal \o
05:42 Herby_ anyone familiar with the Gumbo Parser?
05:43 Herby_ Trying to figure out how to install it on Ubuntu
05:43 Herby_ https://github.com/google/gumbo-parser
05:43 Herby_ I'm new to linux and I don't quite understand the installation instructions
05:43 Herby_ trying to install Gumbo Parser, so I can use the perl6 Gumbo binding
05:44 CIAvash joined #perl6
05:46 maslan joined #perl6
05:48 Cabanossi joined #perl6
05:54 yeahnoob joined #perl6
05:57 petercom1and joined #perl6
06:11 arlenik_ joined #perl6
06:12 pierre-vigier joined #perl6
06:16 MadcapJake .tell Herby_ I think it's just sudo apt-get install libgumbo1
06:16 yoleaux MadcapJake: I'll pass your message to Herby_.
06:18 perlawhirl m: ?('!?.,;;:' ~~ /<:punct>/), ?('!?.,;;:' ~~ /<:Punct>/)
06:18 camelia rakudo-moar 775271: OUTPUT«WARNINGS for /tmp/ZYkLZWUNf3:␤Useless use of "?" in expression "?('!?.,;;:' ~~ /<:Punct>/)" in sink context (line 1)␤Useless use of "?" in expression "?('!?.,;;:' ~~ /<:punct>/)" in sink context (line 1)␤»
06:18 perlawhirl m: say ?('!?.,;;:' ~~ /<:Punct>/)
06:18 camelia rakudo-moar 775271: OUTPUT«False␤»
06:18 perlawhirl m: say ?('!?.,;;:' ~~ /<:punct>/)
06:18 camelia rakudo-moar 775271: OUTPUT«True␤»
06:19 perlawhirl Looks like unicode_db is missing Punct with a capital P
06:58 marmay_ joined #perl6
07:13 avs_ joined #perl6
07:19 _mg_ joined #perl6
07:30 nakiro joined #perl6
07:35 FROGGS joined #perl6
07:37 darutoko joined #perl6
07:44 firstdayonthejob joined #perl6
07:45 domidumont joined #perl6
07:51 domidumont joined #perl6
07:56 zakharyas joined #perl6
07:57 kanishka joined #perl6
08:04 lnrdo joined #perl6
08:09 yurivish joined #perl6
08:13 pierre-vigier joined #perl6
08:14 abraxxa joined #perl6
08:15 abraxxa good morning!
08:24 moritz good morning
08:24 moritz is there a good reason for the Unicode properties to be case sensitive at all?
08:25 pierre-vigier joined #perl6
08:25 cschwenz joined #perl6
08:25 FROGGS moritz: I dunno... I mean, for a property Foo_Bar we also support FooBar and foobar
08:26 cschwenz left #perl6
08:27 FROGGS on the other hand everything is case sensitive
08:27 FROGGS so why should there be an exception?
08:27 cc9989 joined #perl6
08:29 ely-se joined #perl6
08:30 moritz I'm trying to find out how Unicode names that property
08:30 abaugher joined #perl6
08:31 RabidGravy joined #perl6
08:31 yurivish_ joined #perl6
08:37 pierre-vigier joined #perl6
08:39 RabidGravy marnin!
08:42 DrForr o/
08:42 adhoc_ left #perl6
08:45 xinming joined #perl6
09:01 rindolf joined #perl6
09:04 jast joined #perl6
09:05 masak good antenoon, #perl6
09:08 leont joined #perl6
09:09 bjz joined #perl6
09:10 g4 joined #perl6
09:10 g4 joined #perl6
09:10 nowan joined #perl6
09:14 RabidGravy RARR!
09:16 kjs_ joined #perl6
09:20 dakkar_ joined #perl6
09:20 pierre-vigier joined #perl6
09:27 bjz joined #perl6
09:29 RabidGravy m: sub fib(Int $i) { (0 .. $i).reduce( { $^a + $^b });}; say fib(100)
09:29 camelia rakudo-moar 775271: OUTPUT«5050␤»
09:29 RabidGravy m: sub fib(Int $i) { (0 .. $i).reduce( { $^a + $^b });}; say fib(100); say now - INIT now
09:29 camelia rakudo-moar 775271: OUTPUT«5050␤0.012489␤»
09:29 RabidGravy m: sub fib(Int $i) { (0 .. $i).reduce( { $^a + $^b });}; say fib(100); say now - BEGIN now
09:29 camelia rakudo-moar 775271: OUTPUT«5050␤0.03500472␤»
09:29 araujo joined #perl6
09:29 araujo joined #perl6
09:29 RabidGravy m: sub fib(Int $i) { (0 .. $i).reduce( { $^a + $^b });}; say fib(1000); say now - BEGIN now
09:29 camelia rakudo-moar 775271: OUTPUT«500500␤0.06357005␤»
09:30 RabidGravy m: sub fib(Int $i) { (0 .. $i).reduce( { $^a + $^b });}; say fib(10000); say now - BEGIN now
09:30 camelia rakudo-moar 775271: OUTPUT«50005000␤0.2198037␤»
09:30 RabidGravy m: sub fib(Int $i) { (0 .. $i).reduce( { $^a + $^b });}; say fib(100000); say now - BEGIN now
09:30 camelia rakudo-moar 775271: OUTPUT«5000050000␤2.6733089␤»
09:30 perlawhirl joined #perl6
09:31 RabidGravy why is that last one ~ ten times slower rather than approximately four times as I would have guessed?
09:34 RabidGravy no, biggy still waaaaaaaaay faster for larger numbers than the python version in http://www.rabbitmq.com/tutorials/tutorial-six-python.html
09:35 domidumont joined #perl6
09:37 Actualeyes joined #perl6
09:43 RabidGravy e.g.
09:43 RabidGravy m: multi fib(0) { 0 }; multi fib(1) { 1 }; multi fib(Int $i) { fib($i - 1) + fib($i - 2) }; say fib(10); say now - BEGIN now
09:43 camelia rakudo-moar 775271: OUTPUT«55␤0.0332950␤»
09:43 RabidGravy m: multi fib(0) { 0 }; multi fib(1) { 1 }; multi fib(Int $i) { fib($i - 1) + fib($i - 2) }; say fib(20); say now - BEGIN now
09:43 camelia rakudo-moar 775271: OUTPUT«6765␤0.6049244␤»
09:44 RabidGravy m: multi fib(0) { 0 }; multi fib(1) { 1 }; multi fib(Int $i) { fib($i - 1) + fib($i - 2) }; say fib(30); say now - BEGIN now
09:44 camelia rakudo-moar 775271: OUTPUT«(timeout)»
09:44 RabidGravy at which point it craps out
09:45 zakharyas joined #perl6
09:46 nadim joined #perl6
09:47 M-eternaleye joined #perl6
09:52 Actualeyes left #perl6
10:02 ELBeavers joined #perl6
10:06 lnrdo joined #perl6
10:07 salv0 joined #perl6
10:11 dalek perl6-most-wanted: bba23ad | pmqs++ | most-wanted/modules.md:
10:11 dalek perl6-most-wanted: Update modules.md
10:11 dalek perl6-most-wanted: review: https://github.com/perl6/perl6-most-wanted/commit/bba23ad409
10:11 dalek perl6-most-wanted: ea88356 | (Fritz Zaucker)++ | most-wanted/modules.md:
10:11 dalek perl6-most-wanted: Merge pull request #14 from pmqs/patch-3
10:11 dalek perl6-most-wanted:
10:11 dalek perl6-most-wanted: Fix typo for Archive::SimpleZip
10:11 dalek perl6-most-wanted: review: https://github.com/perl6/perl6-most-wanted/commit/ea883566e1
10:12 maslan joined #perl6
10:15 perlawhirl joined #perl6
10:15 domidumont joined #perl6
10:17 espadrine joined #perl6
10:20 perlawhirl joined #perl6
10:20 perlawhirl moritz: re "is there a good reason for the Unicode properties to be case sensitive at all?"
10:20 perlawhirl 'Punct' is how it's written in the docs
10:20 perlawhirl so i guess you could just update the docs :D
10:22 espadrine_ joined #perl6
10:31 rodarmor joined #perl6
10:32 moritz perlawhirl: sounds surprisingly sensible
10:32 moritz m: say so '2' ~~ /<:Digit>/
10:32 camelia rakudo-moar 775271: OUTPUT«True␤»
10:32 timotimo o/
10:32 moritz m: say so '2' ~~ /<:Cntrl>/
10:32 camelia rakudo-moar 775271: OUTPUT«False␤»
10:33 moritz m: say so "\r" ~~ /<:Cntrl>/
10:33 camelia rakudo-moar 775271: OUTPUT«False␤»
10:33 moritz m: say so "\r" ~~ /<:cntrl>/
10:33 camelia rakudo-moar 775271: OUTPUT«True␤»
10:33 timotimo Zoffix: yeah, they do. i could only fix the linux version of that, because i don't have a windows. it may need fixing, too, with the latest nativecall changes, but i can't test it.
10:33 dalek doc: 68fa353 | moritz++ | doc/Language/regexes.pod:
10:33 dalek doc: Fix case of abbreviated Unicode properties, perlawhirl++
10:33 dalek doc: review: https://github.com/perl6/doc/commit/68fa353b2d
10:35 perlawhirl m: say so '2' ~~ /<:digit>/
10:35 camelia rakudo-moar 775271: OUTPUT«True␤»
10:40 perlawhirl i ... just search DDG for 'pure functions' and it's showing me images of sex toys?
10:41 perlawhirl so yeah... fair warning
10:44 ely-se What is the opposite of slurp?
10:44 timotimo spurt
10:45 ely-se ah, thanks
10:45 TEttinger perlawhirl: is that some kind of metaphor for academic pure functional programming being intellectual masturbation?
10:46 llfourn DDG often shows me different types of perversions when searching for perl stuff
10:46 TEttinger perlversions
10:47 TEttinger perl 6 is a perlversion
10:47 ely-se m: $*SPEC.catpath('/', 'etc', 'passwd').say
10:47 camelia rakudo-moar 775271: OUTPUT«etc/passwd␤»
10:47 ely-se hmm, interesting.
10:47 ely-se m: $*SPEC.catpath('etc', 'passwd').say
10:47 camelia rakudo-moar 775271: OUTPUT«Too few positionals passed; expected 4 arguments but got 3␤  in block <unit> at /tmp/_Zc9FMnafX line 1␤␤»
10:48 TEttinger m: $*SPEC.catpath('/', 'etc', 'passwd').text
10:48 camelia rakudo-moar 775271: OUTPUT«Method 'text' not found for invocant of class 'Str'␤  in block <unit> at /tmp/65pTinTTPs line 1␤␤»
10:51 frankjh joined #perl6
10:51 timotimo ely-se: it may want the first argument to be like a drive letter?
10:51 timotimo m: $*SPEC.catpath('', '/', 'etc', 'passwd').say
10:51 camelia rakudo-moar 775271: OUTPUT«Too many positionals passed; expected 4 arguments but got 5␤  in block <unit> at /tmp/CHbXp7aedr line 1␤␤»
10:51 timotimo um ...
10:51 timotimo or not?
10:52 ely-se moritz: are there plans for pretty-printing in JSON::Tiny?
10:53 RabidGravy there is JSON::Pretty already
10:54 kjs_ joined #perl6
10:55 bjz_ joined #perl6
10:56 ely-se oh I see
10:56 FROGGS m: say to_json { foo => <one two three> }
10:56 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/IvQf7BoOJg␤Undeclared routine:␤    to_json used at line 1. Did you mean 'to-json'?␤␤»
10:56 FROGGS m: say to-json { foo => <one two three> }
10:56 camelia rakudo-moar 775271: OUTPUT«{␤  "foo" : [␤    "one",␤    "two",␤    "three"␤  ]␤}␤»
10:56 FROGGS ely-se: and that's the same --^
10:58 timotimo doesn't JSON::Fast also have pretty-printing?
10:58 timotimo https://github.com/timo/json_fast/blob/master/lib/JSON/Fast.pm#L13
10:58 timotimo this to-json is also significantly faster compared to JSON::Tiny's to-json
11:00 lnrdo joined #perl6
11:03 rindolf joined #perl6
11:08 ely-se timotimo: no idea. catpath is poorly documentd
11:08 ely-se the first argument is unnamed, even
11:09 timotimo :\
11:11 mprelude joined #perl6
11:11 FROGGS m: say $*SPEC.^find_method('catpath').signature
11:11 camelia rakudo-moar 775271: OUTPUT«(IO::Spec::Unix $:, $dirname, $file, *%_)␤»
11:11 FROGGS ely-se: that $ is the invocant
11:11 FROGGS ($*SPEC here)
11:12 FROGGS m: $*SPEC.catpath('etc', 'passwd').say
11:12 camelia rakudo-moar 775271: OUTPUT«Too few positionals passed; expected 4 arguments but got 3␤  in block <unit> at /tmp/WGf63Djvse line 1␤␤»
11:14 perlawhirl joined #perl6
11:21 Peter_R joined #perl6
11:24 sortiz o/ #perl6, just send my first PR for the ecosystem
11:27 dalek ecosystem: e2f7e4c | (Salvador Ortiz)++ | META.list:
11:27 dalek ecosystem: Add p6-LMDB to ecosystem
11:27 dalek ecosystem:
11:27 dalek ecosystem: See https://github.com/salortiz/p6-LMDB
11:27 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/e2f7e4cde8
11:27 dalek ecosystem: 98bc743 | moritz++ | META.list:
11:27 dalek ecosystem: Merge pull request #129 from salortiz/master
11:27 dalek ecosystem:
11:27 dalek ecosystem: Add p6-LMDB to ecosystem
11:27 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/98bc7439c9
11:27 DrForr Cthulhu save me from git newbs...
11:28 moritz DrForr: if you pray to Cthulhu, it might help you in ways you didn't anticipate. Like eating you whole. That would save you from the git newbs, to be sure :-)
11:29 sortiz moritz++ # Thank you
11:29 lnrdo joined #perl6
11:29 DrForr That's all I ask, to be found crunchy and good with ketchup.
11:30 moritz sortiz: you're welcome. Our nicks seem to have a frightening low edit distance :-)
11:31 kjs_ joined #perl6
11:35 sortiz moritz, I hope soon that distance is reflected in the knowledge of perl6 :-)
11:35 masak sortiz++ # first PR
11:38 g4 joined #perl6
11:40 DrForr The annoying part is really that to make any headway whatsoever I can't make a single assumption, like "Are you up-to-date?"...
11:41 DrForr Which results in the usual "Oh, you got that command from your coworker which only works if you do X, and you instead were doing Y but didn't know, so you ended up with result Z."
11:42 * RabidGravy goes with
11:42 RabidGravy m: use nqp;  say nqp::sha1(rand ~ $*PID ~ DateTime.now.Str)
11:42 camelia rakudo-moar 775271: OUTPUT«9A73EB104EB91EB6F56024F6B95F1DA981C4B89D␤»
11:43 RabidGravy rather than using Data::UUID
11:43 sortiz masak, *, All comments, questions, guidance, etc. are welcome
11:44 masak sortiz: start small. iterate often. ask "stupid" questions. :)
11:46 pmurias joined #perl6
11:46 pmurias hi
11:46 kaare_ joined #perl6
11:50 ELBeavers joined #perl6
11:54 masak hi, pmurias
11:57 kid51 joined #perl6
11:58 colomon joined #perl6
12:04 marmay joined #perl6
12:07 keix joined #perl6
12:08 nowan joined #perl6
12:14 _mg_ joined #perl6
12:18 Actualeyes joined #perl6
12:27 pierre-vigier joined #perl6
12:31 Alina-malina joined #perl6
12:33 ely-se joined #perl6
12:39 Alina-malina left #perl6
12:43 ely-se m: $*SPEC.join('a', 'b', 'c').say
12:43 camelia rakudo-moar 775271: OUTPUT«b/c␤»
12:44 ely-se m: $*SPEC.dir-sep.say
12:44 camelia rakudo-moar 775271: OUTPUT«/␤»
12:47 arlenik joined #perl6
12:48 FreezerburnV joined #perl6
12:52 ely-se :m $*PERL.gist.say
12:52 ely-se m: $*PERL.gist.say
12:52 camelia rakudo-moar 775271: OUTPUT«Perl 6 (6.c)␤»
12:53 ely-se can I get the "6.c" part? there doesn't seem to be a method for it
12:53 Actualeyes left #perl6
12:54 skids joined #perl6
12:55 ely-se Also, if I say "use vXXX;" for some valid version XXX, does $*PERL report XXX or the most recent supported version?
12:57 timotimo m: say $*PERL.^attributes
12:57 camelia rakudo-moar 775271: OUTPUT«(Compiler $!compiler Str $!name Str $!auth Version $!version Blob $!signature Str $!desc)␤»
12:57 timotimo m: say $*PERL.version
12:57 camelia rakudo-moar 775271: OUTPUT«v6.c␤»
12:57 ely-se oh I tried .^methods
12:57 ely-se interesting
12:57 timotimo m: say $*PERL.^methods
12:57 camelia rakudo-moar 775271: OUTPUT«(BUILD VMnames DISTROnames KERNELnames Str gist <anon> <anon> <anon> <anon> <anon> <anon>)␤»
12:57 timotimo huh. it seems to be one of those anon methods, then
12:57 timotimo annoying.
12:58 ely-se hmm
12:58 ely-se yeah
12:58 ely-se thanks
12:58 ilmari why aren't attribute accessors named?
12:58 timotimo smells like a bug :)
12:59 ilmari Attribute.compose() does set the name
12:59 ilmari $meth.set_name($meth_name);
12:59 ilmari $package.^add_method($meth_name, $meth);
13:00 skids m: $*PERL.^attributes.say
13:00 camelia rakudo-moar 775271: OUTPUT«(Compiler $!compiler Str $!name Str $!auth Version $!version Blob $!signature Str $!desc)␤»
13:01 skids Oh, ENOTENOUGHBACKLOGGING
13:03 ely-se use v{$*PERL.version}; refreshing :)
13:04 FreezerburnV ely-se: Won'T that end up as "use vv6.c"? I think the version string is "v6.c"
13:04 ely-se nope
13:04 ely-se m: say ~$*PERL.version
13:04 camelia rakudo-moar 775271: OUTPUT«6.c␤»
13:05 ely-se m: say $*PERL.version.gist
13:05 camelia rakudo-moar 775271: OUTPUT«v6.c␤»
13:06 ely-se m: say $*PERL.version.perl
13:06 camelia rakudo-moar 775271: OUTPUT«Version.new('6.c')␤»
13:06 timotimo FreezerburnV: did you see my comment on your SDL2::Raw pull request?
13:08 FreezerburnV timotimo: Yep. I was originally going to respond about how it couldn't find the SDL2 dylib on OS X, but I realized that the lib string was "libSDL2" a the time I was working on it, so I think I had a different solution
13:08 timotimo i see you defined a bunch of GL constants. are you playing around with some OpenGL binding together with SDL2?
13:09 FreezerburnV timotimo: Indeed. I'm also working on an OpenGL::Raw package. Though the constants defined in SDL2::Raw are all inside SDL2
13:10 sammers joined #perl6
13:10 timotimo neat!
13:10 FreezerburnV When it's more than 2 exported functions, I'll be sure to put it up on github
13:10 timotimo are you using the OGL API thingie?
13:10 timotimo the xml file?
13:11 vendethiel joined #perl6
13:11 timotimo i've been wanting to build something on top of that, but it's not really something that can be built in little increments :|
13:11 timotimo so it became a bit too daunting and i ended up not doing anything at all
13:11 sufrosti1o joined #perl6
13:11 FreezerburnV No, but I probably should. I tend to handwrite any FFI code I work on. And yeah, I don't feel like writing all the xml handling code either :(
13:11 timotimo https://github.com/bartschuller/perl6-OpenGL - there's also this POC that isn't going to be developed any further by bartschuller himself
13:12 FreezerburnV I don't think I found that one
13:12 timotimo yeah, it didn't get much publicity
13:13 FreezerburnV At the very least, that's a useful jumping-off point
13:13 timotimo i'm very glad you're working on OpenGL stuff :)
13:13 FreezerburnV I'll probably pull out the GL.pm6 part and keep it as the only piece of OpenGL::Raw
13:13 timotimo i'm very much looking forward to the point where NativeCall gets sufficiently re-written so that moar itself can just jit a native call into an actually native call
13:13 FreezerburnV Then theoretically write a nicer wrapper on top of it. Same that I'm currently doing for SDL2
13:14 FreezerburnV That would be very nice indeed!
13:14 timotimo yay! i was hoping someone would wrap SDL2::Raw with something more high-level
13:14 FreezerburnV Compete with LuaJIt
13:14 timotimo you're making me very happy
13:14 FreezerburnV Haha
13:14 timotimo luajit isn't really what we're using in moar, actually
13:14 timotimo we only use dynasm, which is what luajit uses, but not the other way around
13:14 FreezerburnV My main interest with programming languages is for gamedev, so it's in my interest to have FFIs to SDL2 and OpenGl
13:15 timotimo \o/
13:15 FreezerburnV Well I figured MoarVM didn't use LuaJIT, just saying that we would be competing with its CFFI
13:15 FreezerburnV To soem degree, at least
13:16 FreezerburnV I'm not sure of which other JITs out there actually output native code calls to the C code like LuaJIT does
13:17 timotimo i haven't looked into how LuaJIT does it, but we'll definitely be in a position to do it like that
13:17 FreezerburnV Nice! I'm definitely looking forward to the future of Perl6 even more then
13:18 timotimo me, too
13:18 timotimo 2016 will be a year with a lot more work put into performance
13:18 FreezerburnV That sounds exciting
13:19 timotimo doesn't it :)
13:21 FreezerburnV Is $*VM.config<dll> defined for every OS?
13:22 FreezerburnV Actually, lemme just double-check my mac
13:22 timotimo i can only check for linux
13:26 Woodi Yay! sortiz++ # LMDB
13:26 Woodi hallo #perl6 :)
13:26 FROGGS FreezerburnV: the VM config is per VM, so every OS should have the same VM config keys
13:27 s_kilk joined #perl6
13:34 sortiz Woodi, Thanks! By now all the documentation is in the tests. :-) Feedback is welcome
13:35 vendethiel joined #perl6
13:35 FreezerburnV FROGGS: Awesome, thanks
13:39 ELBeavers joined #perl6
13:44 lokien_ joined #perl6
13:56 FreezerburnV timotimo: I'll submit a new pull request with better handling of lib name later. For now, I need to head off to work. Good to talk to you!
13:58 brrt joined #perl6
13:59 dalek ecosystem: 6256d13 | rightfold++ | META.list:
13:59 dalek ecosystem: Add Module::Skeleton to ecosystem
13:59 dalek ecosystem:
13:59 dalek ecosystem: See https://github.com/rightfold/Module-Skeleton
13:59 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/6256d13859
13:59 dalek ecosystem: 23bf3b6 | moritz++ | META.list:
13:59 dalek ecosystem: Merge pull request #130 from rightfold/master
13:59 dalek ecosystem:
13:59 dalek ecosystem: Add Module::Skeleton to ecosystem
13:59 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/23bf3b67f7
14:03 pierre-vigier joined #perl6
14:03 _Vi joined #perl6
14:03 webstrand joined #perl6
14:05 vendethiel joined #perl6
14:05 webstrand I remember reading that it's possible to extend the language with grammars, does anyone know where I can find documentation for this feature?
14:05 mspo http://docs.perl6.org/language/grammars
14:06 webstrand mspo: I don't see anything that discusses extension of the perl language, just the syntax and usage of grammars.
14:07 PerlJam webstrand: maybe read the code of one of the slangs? (you'll have to google it as I don't have a link handy)
14:08 zakharyas joined #perl6
14:08 ely-se webstrand: here is an example https://github.com/FROGGS/p6-if/blob/master/lib/if.pm
14:08 PerlJam webstrand: maybe ask FROGGS or nine or ...
14:08 moritz or look for "slang" on https://modules.perl6.org/
14:08 webstrand that's what I'm looking for, thanks
14:09 PerlJam huh.
14:09 * PerlJam didn't even realize we has a Slang:: namespace yet
14:09 mspo slang isn't mentioned in docs.perl6.org
14:10 RabidGravy well it's all a bit ad hoc at the moment
14:11 moritz also, doc.perl6.org is known to be incomplete
14:11 mspo are they all this? http://docs.perl6.org/syntax/augment
14:12 cdg joined #perl6
14:13 mspo also http://docs.perl6.org/language/functions#Defining_Operators
14:23 n0tjack joined #perl6
14:24 Actualeyes joined #perl6
14:26 webstrand joined #perl6
14:26 skids joined #perl6
14:34 Sgeo joined #perl6
14:35 Arsad joined #perl6
14:35 lichtkind joined #perl6
14:38 Arsad hi
14:38 Zoffix \o
14:38 Arsad \help
14:38 Zoffix ?
14:39 timotimo o/
14:39 timotimo what can we do for you?
14:40 masak Arsad: come back soon! :)
14:40 kjs_ joined #perl6
14:40 masak decommute &
14:41 lichtkind it looks to be like lc flattens an LoL
14:42 rindolf joined #perl6
14:42 colomon lichtkind: doesn’t lc stringify whatever it is given?
14:43 moritz I sure hope it does
14:43 moritz m: say lc(['a', 'b', ['c', 'd']).perl
14:43 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xnRqiisTHm␤Unable to parse expression in array composer; couldn't find final ']' ␤at /tmp/xnRqiisTHm:1␤------> 3say lc(['a', 'b', ['c', 'd']7⏏5).perl␤    expecting any of:␤        statement end…»
14:43 moritz m: say lc(['a', 'b', ['c', 'd']]).perl
14:43 camelia rakudo-moar 775271: OUTPUT«"a b c d"␤»
14:44 moritz m: say (['a', 'b', ['c', 'd']])>>.lc.perl
14:44 camelia rakudo-moar 775271: OUTPUT«["a", "b", ["c", "d"]]␤»
14:44 moritz m: say (['a', 'B', ['C', 'd']])>>.lc.perl
14:44 camelia rakudo-moar 775271: OUTPUT«["a", "b", ["c", "d"]]␤»
14:44 RabidGravy anyone here use blogger and found a better way of posting code than sticking it in a gh gist?
14:44 vendethiel joined #perl6
14:45 prammer joined #perl6
14:46 CIAvash joined #perl6
14:47 moritz does blogger allow HTML input?
14:47 moritz if yes, pipe through Text::VimColor first :-)
14:48 RabidGravy ooh
14:48 moritz or pygementize
14:51 _Vi joined #perl6
14:54 Skarsnik joined #perl6
15:00 * Zoffix suspects Skarsnik will enjoy trying out http://www.ponyos.org/
15:00 raiph joined #perl6
15:00 lichtkind colomon, thanks yes that would explain a lot
15:01 lichtkind colomon are you still working on the Math::vector?
15:02 FreezerburnV joined #perl6
15:03 colomon lichtkind: I haven’t touched it in ages except for fixing occasional test failures caused by rakudo updates
15:04 Skarsnik Zoffix, Happy April Fools Day at the bottom x)
15:04 lichtkind colomon, i currently work on Math::Matrix and would like to touch some corders even its just for interoperability
15:04 colomon lichtkind++
15:05 Zoffix Skarsnik, that probably explains why it didn't run last time I tried it X)
15:05 lichtkind thanks so you maybe want me to add as author or you accept pull  requests
15:06 lichtkind but its still lot of work till we get Math::Matrix on the level of octave
15:06 lichtkind what would be the most perlish name for a pretty printer  method ?
15:06 Skarsnik pretty ?
15:07 ilmari .gist?
15:07 lichtkind well my current  candidate is table because its basically a table few liek spreadsheet
15:07 lichtkind gist sounds to me like essence
15:07 lichtkind but what does gist in rest of perl6?
15:07 ugexe gist is the pretty, human version of .perl
15:08 ilmari it's used for stringifying objects
15:08 ilmari e.g. by say
15:08 lichtkind thank you that sounds like pretty much it
15:08 geekosaur .gist is supposed to produce just the essence, whereas .perl produces everything (visible)
15:08 lichtkind becasue Math::Matrix has a .perl method
15:08 lichtkind telling you type and the condensed view
15:08 lichtkind geekosaur++
15:09 ilmari .perl is meant to be something you can EVAL to get an equivalent object back, isn't it?
15:09 pmurias yes
15:09 lichtkind well  not in our case
15:09 lichtkind but thats easy ficable
15:09 lichtkind i do that today
15:10 lichtkind needs just some little extra chars, fixed content
15:11 lichtkind ilmari++
15:13 lichtkind my fault i verlooked the small new our .erl is allright
15:20 mspo isn't .perl limited to some number of outputs?
15:20 mspo or is that .somethingelse
15:22 geekosaur .perl isn't limited, aside from the visibility thing (IIRC by design it does not show private data)
15:22 brrt \quit
15:26 [Coke] .gist is limited.
15:26 [Coke] AlexDaniel - there is no tag for optimization issues at this time. I don't think the tags are highly used anyway, so I wouldn't worry about it. If you still worry about it, use [OPT]
15:27 [Coke] Zoffix - I'm a 7 hour drive to Toronto, which is slightly out of my day trip comfort zone. :)
15:28 timotimo to ronto or not to ronto
15:29 Zoffix Unless you love driving :P
15:31 ely-se pronto
15:33 timotimo proto-ronto?
15:35 ely-se pronto sub f() { } # invokes f immediately
15:35 timotimo hah
15:35 timotimo i like that more than the javascript equivalent
15:36 ely-se var f = pronto(() => { });
15:39 RabidGravy quick reboot to get the inotify working again
15:42 khisanth_ joined #perl6
15:42 mr_ron joined #perl6
15:44 mr_ron m: <a b c> ==> $*OUT
15:44 camelia rakudo-moar 775271: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in block <unit> at /tmp/TysiQlK4Jq line 1␤␤»
15:44 mr_ron m: gather for <a b c> {say "letter"; take $_} ==> say()
15:44 camelia rakudo-moar 775271: OUTPUT«letter␤letter␤letter␤(a b c)␤»
15:45 mr_ron anyone know how to do lazy feed output?
15:45 timotimo m: my $things = <a b c>.map({ say "letter"; $_ }); $things.map(*.say)
15:45 camelia rakudo-moar 775271: OUTPUT«letter␤a␤letter␤b␤letter␤c␤»
15:46 timotimo dunno how exactly to turn that into a feed-based thing
15:46 jnthn ==> map(&say)
15:48 mr_ron m: gather for <a b c> {say "letter"; take $_} ==> map(&say) # thx jnthn++ there you have it
15:48 camelia rakudo-moar 775271: OUTPUT«letter␤a␤letter␤b␤letter␤c␤»
15:48 timotimo ah
15:49 timotimo oh, right, because ==> say() means invoke say with the list as argument
15:49 timotimo and say has no reason to be lazy
15:49 domidumont joined #perl6
15:51 mr_ron FWIW http://design.perl6.org/S06.html#Feed_operators says ... the operand on the sharp end of a feed ... something ... that can be evaluated to produce an object that does the KitchenSink role, such as an IO object.
15:51 [Coke] m: say KitchenSink;
15:51 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xKIQ89VlWK␤Undeclared name:␤    KitchenSink used at line 1␤␤»
15:52 [Coke] so, that is probably speculative.
15:53 sftf joined #perl6
15:55 mr_ron m: gather for <a b c> {say "letter"; take $_} ==> map { .say } # also seems to work
15:55 camelia rakudo-moar 775271: OUTPUT«letter␤a␤letter␤b␤letter␤c␤»
15:56 perl6newbee joined #perl6
15:56 timotimo aye. not too much difference between map &say and { .say } or *.say
15:57 _Vi joined #perl6
15:59 PerlJam "not too much difference"?  hopefully it's only syntactic difference.
15:59 Zoffix oh god... I can't enter any Unicode chars any more at all... Not even the default ones I had
15:59 ely-se PerlJam: &say picks the say in local scope
15:59 ely-se lexical*
15:59 [Coke] PerlJam: one's calling the sub - one's calling the method...
15:59 Zoffix My revert of nemo's suggested instructions for using a better Compose file failed :|
15:59 mr_ron Oh just remembered ... I didn't notice feed operators mentioned on doc.perl6.org just synopses.  Anyone seen them on public facing docs?
15:59 timotimo the difference is the signature
16:00 timotimo { .say }, { say $_ }, *.say all have a single argument
16:00 timotimo but &say takes as many as you want
16:00 timotimo m: say 1, 2, 3, 4
16:00 camelia rakudo-moar 775271: OUTPUT«1234␤»
16:00 timotimo m: ({ .say })(1, 2, 3, 4)
16:00 camelia rakudo-moar 775271: OUTPUT«Too many positionals passed; expected 0 or 1 arguments but got 4␤  in block <unit> at /tmp/2h_ix05Sia line 1␤␤»
16:00 timotimo that can make a difference with reduction operators, for example
16:00 [Coke] mr_ron: they're mentioned on design.perl6.org, but not docs, yet.
16:01 [Coke] http://design.perl6.org/S03.html#Feed_operators
16:02 Zoffix nemo, any idea what broke my system? I followed your instructions on http://doc.perl6.org/language/unicode_entry#XCompose and, as you recall, I wasn't getting the updated Compose file. So I removed GTK_IM_MODULE=xim and uninstalled uim-xim, and now I can't enter any Unicode chars at all...
16:02 ely-se m: say(*.perl)
16:02 camelia rakudo-moar 775271: OUTPUT«WhateverCode.new␤»
16:02 ely-se m: say(("a", "b", "c").map(*.perl))
16:02 camelia rakudo-moar 775271: OUTPUT«("a" "b" "c")␤»
16:02 ely-se this is niteresting
16:03 ely-se oh wait, it isn't. :D
16:03 Zoffix map takes a block to run, so it executes the Whatever
16:03 ely-se I mistook "WhateverCode.new" for "Whatever.new"
16:03 ely-se m: say Whatever.new.perl
16:03 camelia rakudo-moar 775271: OUTPUT«*␤»
16:04 ely-se m: say *.perl
16:04 camelia rakudo-moar 775271: OUTPUT«WhateverCode.new␤»
16:04 Zoffix I wonder how good an idea it would be to spend my short vacation updating my system to newer Linux, considering all the problems I'm having :}
16:05 mr_ron Coke: can/should I add an issue to https://github.com/perl6/doc/issues?  I didn't notice one there.
16:05 Zoffix mr_ron, yeah
16:06 mr-foobar joined #perl6
16:07 timotimo how many years old is your linux installation there? :)
16:08 Zoffix Linux ZofMain 3.5.0-11-generic #11 SMP Wed Aug 22 14:45:14 CDT 2012 i686 i686 i386 GNU/Linux
16:08 Zoffix My unicode entry is broken. My drive is on its last breath (I wanna get an SSD). I can't try out your SDL2::Raw, because I don't got the lib. And it's a 32bit OS :)
16:08 timotimo that doesn't tell me how old the installation is, though?
16:08 Zoffix 2012
16:08 timotimo oh?
16:09 Zoffix Or is that the kernel release?
16:09 timotimo good question. probably is.
16:09 Zoffix Dunno "old and broken" is a good approximation :P
16:09 timotimo fair enough
16:11 ely-se Hmm, my code seems to be faster when being benchmarked. :S
16:11 ely-se Volkswagen code
16:11 timotimo you found our cheat code! oh no!
16:13 Zoffix When I make changes in rakudo repo and do configure; make; make test; make install... the new perl6 executable is in install/bin/perl6, right?
16:13 Zoffix For some reason it's behaving as if I haven't made any changes :/
16:14 timotimo that's the default, but you might have changed it?
16:15 Zoffix Nope.
16:15 vendethiel joined #perl6
16:16 timotimo you can also try ./perl6-m and see if it makes a difference
16:16 Zoffix Aha, that one works
16:17 Zoffix timotimo++
16:18 marmay__ joined #perl6
16:18 timotimo so the "make install" did something wrong
16:20 Zoffix This was the output from it FWIW: https://gist.github.com/zoffixznet/a14dcf0dd003e9199685
16:21 timotimo dunno
16:21 Zoffix Ahh... I'm a dummy
16:21 timotimo maybe perl6-m was still running somewhere and so something got "text file busy"?
16:21 Zoffix I went to install/bin and ran "perl6 -e ''" instead of "./perl6 -e"
16:21 timotimo hah
16:21 FROGGS ahh :o)
16:24 hoelzro o/ #perl6
16:25 Zoffix \o
16:25 timotimo ro ro ro your hölz :)
16:25 hoelzro timotimo: =)
16:25 nemo Zoffix: so... WRT your ping above, I wasn't really offering instructions, I was giving an example of an IME bridge that might be needed
16:25 nemo instructions would be more complex 😝
16:26 Zoffix :)
16:26 Zoffix k
16:26 nemo Zoffix: were you using uim prior?
16:27 nemo or IBus or SCIM
16:27 Zoffix No idea. I did have to install "uim-xim" package
16:27 nemo had to?
16:27 nemo ah
16:27 nemo do you have any other uim packages still installed?
16:28 nemo or any other IME anything
16:29 Zoffix Are these roast failures expected? https://gist.github.com/zoffixznet/231e36c148d051a1235f I made a fix for #127252, which has no relation to sockets :/
16:30 ninereasons joined #perl6
16:30 timotimo yeah, those tests are flappy :(
16:30 Zoffix nemo, hm, I have "uim-utils" and "uim-common" installed
16:32 mr_ron left #perl6
16:33 jevin joined #perl6
16:33 RabidGravy joined #perl6
16:34 jme` joined #perl6
16:35 mre joined #perl6
16:36 pmurias joined #perl6
16:36 mst joined #perl6
16:37 khw joined #perl6
16:38 Zoffix Omh WOOO \o/ I've just played a graphical snake game written in Perl 6 :D http://i.imgur.com/sSYUtKQ.png
16:38 Zoffix timotimo++
16:38 timotimo yay
16:39 FreezerburnV Zoffix: Oooh, nice
16:40 FreezerburnV Did you write that?
16:40 Zoffix FreezerburnV, no, it's in timotimo's repo: https://github.com/timo/SDL2_raw-p6
16:40 Zoffix (in examples/)
16:40 FreezerburnV Aah, did not pay attention to that
16:42 nemo Zoffix: yeah. detailed support for IMEs would have probably included links to all the various arch and ubuntu help docs on IMEs and their various options for xim, such as ibus --xim, uim-xim, scim_xim
16:42 nemo Zoffix: maybe that page should just say, your IME might need a xim bridge
16:42 nemo rather than suggesting a package that could get people into trouble
16:42 Zoffix *shrug*
16:48 vendethiel joined #perl6
16:48 pmurias_ joined #perl6
16:51 frankjh left #perl6
16:53 pmurias joined #perl6
16:57 kaare_ joined #perl6
17:16 ELBeavers joined #perl6
17:19 sufrostico joined #perl6
17:19 sufrosti1o joined #perl6
17:24 [Coke] timotimo: https://github.com/timo/SDL2_raw-p6/blob/master/lib/SDL2/Raw.pm#L5 - that conditional seems odd. :)
17:25 Zoffix Creepy. ssh to whoami.filippo.io and it'll tell you your GitHub username: https://twitter.com/zoffix/status/690223477308133380
17:25 domidumont joined #perl6
17:28 nadim joined #perl6
17:30 Aankhen`` joined #perl6
17:30 Sgeo joined #perl6
17:31 rindolf joined #perl6
17:32 ely-se joined #perl6
17:32 ely-se Morning.
17:33 Zoffix 'noon
17:33 timotimo yo
17:33 [Coke] timotimo: I have trouble running that on OS X. https://gist.github.com/coke/0351bd85b2f06d2dd982
17:34 ely-se Is there a (de-facto) standard place to put files used by tests? (like fixtures)
17:35 llfourn when I needed to I just put them in t/lib
17:35 llfourn dunno if there's a better way
17:35 ely-se ok :3
17:36 llfourn then: use lib $?FILE.IO.parent.child("lib").Str; :S
17:36 llfourn in the test file
17:37 llfourn I wish there was $?DIR.child("lib")
17:37 [Coke] timotimo: ah, this appears to be a bug in my libsdl, not in your nativecall. :|
17:41 leont joined #perl6
17:41 bowtie joined #perl6
17:41 [Coke] if this were c, I'd tell gcc -L/opt/local/lib - how do I tell nativecall?
17:41 jdv79 firmly
17:41 yoleaux 03:49Z <ugexe> jdv79: thanks, managed to get a basic distro request, deps fetched, tars extracted, and finally installed with it. would have a better idea if the dists weren't months old heh
17:42 mspo [Coke]: it's loading the wrong libjpeg?
17:44 jdv79 .tell ugexe oh wow.  is it available to play with yet?  its only ~ 1 month cause i loaded it up for the advent post.  i'll move on that tomorrow.
17:44 yoleaux jdv79: I'll pass your message to ugexe.
17:44 RabidGravy [Coke], some environment variable like LD_LIBRARY_PATH I guess
17:45 [Coke] RabidGravy: on OS X, that's typically DYLD_LIBRARY_PATH, which the gist shows with an error.
17:45 mspo osx uses different stuff
17:46 ely-se One of my fixture file names ends in ".t" :(
17:46 [Coke] ah. DYLD_FALLBACK_LIBRARY_PATH is best.
17:46 mspo does nm -o /opt/local/lib//libJPEG.dylib show that ymbol?
17:48 hankache joined #perl6
17:48 [Coke] something similar, but not exactly. The problem was the wrong DYLD var, my bad.
17:48 FreezerburnV [Coke]: Is there something you'd prefer the conditional to be when detecting which lib to use for the native calls? (currently it seems like it might not need a conditional, actually)
17:49 FreezerburnV Though I remember having an issue at one point running SDL2::Raw on OS X, I just don't remember what the problem was
17:55 [Coke] timotimo++
17:55 [Coke] FreezerburnV: I'm saying that both the if and the else are the same value.
17:56 FreezerburnV Gotcha
17:56 bowtie joined #perl6
17:57 SCHAAP137 joined #perl6
17:58 FreezerburnV I'm doing work on the Raw bindings, and currently I"m considering dumping the conditionals because it honestly does seem to be the same across platforms. I need to take a minute to double-check OS X later though
17:58 FreezerburnV Either that or leaving them in case something changes on one platform that needs specific things, that way a specific branch can easily be added. (with basically no actual cost other than a few lines of code)
17:59 [Coke] I am now working on OSX using the FALLBACK en var.
18:00 Amnez777 joined #perl6
18:01 ely-se where in META.info should I specify test-only dependencies?
18:01 FreezerburnV And that's with lib set to "SDL2"?
18:01 ugexe test-depends
18:01 yoleaux 17:44Z <jdv79> ugexe: oh wow.  is it available to play with yet?  its only ~ 1 month cause i loaded it up for the advent post.  i'll move on that tomorrow.
18:02 FreezerburnV Where is your library located? I'm also considering adding a few simple tests for common locations in case it isn't somewhere that perl6 would normally look
18:02 ely-se ugexe: thanks
18:02 molaf joined #perl6
18:03 _mg_ joined #perl6
18:03 RabidGravy there, all the RabbitMQ tutorials made in Perl 6 https://github.com/jonathanstowe/Perl6-RMQ-Examples
18:03 Amnez777 joined #perl6
18:08 sjoshi joined #perl6
18:08 mspo RabidGravy: very nice
18:08 mspo rabbitmq doesn't totally suck :)
18:11 lokien_ joined #perl6
18:13 RabidGravy It's the best messaging broker I've worked with over the years and the model plays nicely wth the Perl 6 asynchronous features
18:16 pmurias_ joined #perl6
18:19 addison joined #perl6
18:19 mspo it's a little too easy to slow down and I've had some (probably erlang) issues running on vmware
18:20 mspo it's a cpu-per-queue or something like that
18:24 RabidGravy I dunno, the one running on this laptop has 78 threads
18:26 zakharyas joined #perl6
18:27 AlexDaniel joined #perl6
18:29 Skarsnik FreezerburnV, does NC try to find the right file under os X? (not even considering the path)
18:29 [particle] joined #perl6
18:30 [Coke] FreezerburnV: It's with whatever's checked in.
18:30 FreezerburnV Skarsnik, I think NC looks at standard locations for libraries (I'm not sure how it determines what those locations are, however). E.g.: /usr/lib/libSDL2.so on Linux or the current directory in Windows
18:31 Skarsnik NC use what dlopen/whatever has for default directory
18:31 Skarsnik it's not very clever x)
18:31 FreezerburnV Heh
18:31 alber joined #perl6
18:32 FreezerburnV That's why I want to try and put a little logic into the module to check common locations (/usr/local/lib/libSDL2.dylib for OS X, for example, where homebrew will install the library)
18:32 FreezerburnV I don't know if dlopen will check there, though I think it does
18:32 Skarsnik should it be added to the env?
18:32 Skarsnik m: use NativeCall :TEST; guess_library_name('foo', v0.0.0);
18:32 camelia rakudo-moar 775271: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in sub guess_library_name at /home/camelia/rakudo-m-inst-1/share/perl6/sources/075EFE4B4CDAAF73190194EA876F81A1F128D1A2 line 169␤  in block <unit> at /tmp/gD94Iz2sr_ line 1␤␤»
18:33 Skarsnik m: use NativeCall :TEST; say guess_library_name(('foo', v0.0.0));
18:33 camelia rakudo-moar 775271: OUTPUT«libfoo.so.0.0.0␤»
18:33 Skarsnik libSDL2 does not have versionning?
18:34 FreezerburnV Wait, using "is native($lib, v1.0.0)" will actually add the version number to the library name?
18:35 RabidGravy yep
18:35 FreezerburnV Hm
18:35 Skarsnik that why it warn if you don't do it btw
18:36 Skarsnik m: use NativeCall :TEST; say guess_library_name(('foo');
18:36 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4KVW32pXM1␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/4KVW32pXM1:1␤------> 3l :TEST; say guess_library_name(('foo');7⏏5<EOL>␤    expecting any of:␤        argu…»
18:36 Skarsnik m: use NativeCall :TEST; say guess_library_name('foo');
18:36 camelia rakudo-moar 775271: OUTPUT«NativeCall: Consider adding the api version of the library you want to use, sub foo is native(foo, v1)␤libfoo.so␤»
18:36 FreezerburnV But what if I want it to just be libfoo?
18:37 Skarsnik it's just a warning
18:37 FreezerburnV An irritating one :) And I don't like having warnings spewed out of code I write
18:37 Skarsnik well you should provide a version
18:38 RabidGravy m: use NativeCall :TEST; say guess_library_name(('foo', Version))
18:38 camelia rakudo-moar 775271: OUTPUT«Use of uninitialized value $apiversion of type Version in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in sub guess_library_name at /home/camelia/rakudo-m-inst-1/share/perl6/sources/075EFE4B4CDAAF7319019…»
18:38 FreezerburnV Though I suppose if I add everything from the current SDL2 version, I'll probably need it to be v2.0.4 (or however it names it) due to features being added in their minor versions
18:38 FROGGS joined #perl6
18:39 ely-se joined #perl6
18:39 Skarsnik Yes, maybe can add an hidden feature to hide the version like False
18:39 Skarsnik Like mysqlcient annoy me
18:39 Skarsnik their version is not an ABI version
18:40 RabidGravy I think so, there's stuff out there that isn't versioned or weirdly versioned
18:40 Skarsnik like 14-18 have the same api
18:40 Juerd joined #perl6
18:41 Skarsnik Yes, but I don't want that to be documented, this warning is not for nothing x)
18:41 FROGGS o/
18:41 Skarsnik since it avoid installing devel package on distrib to have the version
18:41 Skarsnik Hello freeze
18:41 Aankhen`` left #perl6
18:41 Skarsnik FROGGS,
18:41 arnsholt Skarsnik: That warning is super-annoying though
18:42 Skarsnik This routine should be made cached btw
18:42 arnsholt There should be a way to turn it off, documented. With the appropriate warnings of knowing what you do, but that holds for basically all of NativeCall
18:42 Skarsnik the warning will happen once x)
18:43 arnsholt If you wouldn't be capable of writing the equivalent code to your Perl 6 binding in C, you really shouldn't be using NativeCall
18:43 arnsholt It's basically syntactic (and some semantic) sugar on top of the semantics of C
18:43 arnsholt And if you're not comfortable with C, you're gonna have a bad time
18:44 arnsholt Anyways, sometimes you really do want to load a library without a version number. That should be possible without cluttering the client code's stderr
18:44 Skarsnik if you give a full path it does not warn
18:45 Skarsnik m: use NativeCall :TEST; say guess_library_name('/iknow/where/is/mylib/foo.so');
18:45 camelia rakudo-moar 775271: OUTPUT«/iknow/where/is/mylib/foo.so␤»
18:45 Skarsnik m: use NativeCall :TEST; say guess_library_name('/iknow/where/is/mylib/foo');
18:45 camelia rakudo-moar 775271: OUTPUT«/iknow/where/is/mylib/libfoo.so␤»
18:46 RabidGravy there are 89 .so files without versions on my system
18:46 Skarsnik with -devel package installed?
18:46 _mg_ joined #perl6
18:47 Skarsnik or just that does not have a versionned eqv?
18:47 RabidGravy not symlinks
18:47 Skarsnik how did you check that?
18:47 arnsholt find(1), probably
18:48 RabidGravy ls -l /usr/lib64/*.so | grep -v '^l' | w
18:48 Skarsnik yes but where. I have a bunch of .so that are plugins
18:48 arnsholt find /lib /usr/lib -name \*.so -ftype f # Or something along those lines
18:48 arnsholt Can't remember the directive to check file type off the top of my head
18:49 arnsholt Also, producing warnings in cases that are not 100% unambiguiously problems is pretty bad mannered. *Especially* in infrastructure-type code like NativeCall
18:49 rindolf joined #perl6
18:51 Skarsnik well specs about dynamic lib are quite clear (for linux/bsd), you should provide an abi/api version to your file. unversionned are for devel only
18:51 Skarsnik even os X doc recommand it
18:52 mspo -type f
18:52 FreezerburnV What about Windows? I know most of the time a library is "something.dll"
18:53 FreezerburnV (if not basically every time)
18:53 Skarsnik dll on windows are quite tricky
18:53 Skarsnik most of the time just saying you want mylib.dll windows will not find it
18:54 Skarsnik it has to be in the PATH or in the system directory
18:54 FreezerburnV Don't most programs ship a dll with the program? I know I would ship something with SDL2.dll right next to the .exe
18:54 Skarsnik Yes, so you know the path
18:54 vendethiel joined #perl6
18:54 FreezerburnV Most games I've looked at directories for tend to have a glut of them there as well
18:54 Skarsnik so no warning x)
18:54 FreezerburnV hah
18:54 FreezerburnV Fair enough
18:55 Skarsnik m: use NativeCall :TEST; say guess_library_name('hello.dll');
18:55 camelia rakudo-moar 775271: OUTPUT«hello.dll␤»
18:55 FreezerburnV Puts a little extra work into getting the lib though, since it needs to get the current absolute path for the .exe and put that before the correct dll name. But not too much
18:55 FreezerburnV Would be nice to have the absolute path thing documented. Don't remember reading about it
18:55 Zero_Dogg joined #perl6
18:56 Skarsnik blame me x)
18:56 FreezerburnV Heh
18:56 Skarsnik I should probably explain how this sub work
18:57 FreezerburnV So a question about all this: How do we ensure something will work on any give machine for a major version of something? SDL2 has added new capabilities in minor version (2.0.4 has more than 2.0.0). How can I make sure I get the correct version number and only export the correct subs for whatever exists on the machine (which could very likely be 2.0.0 for all I know!)
18:58 FreezerburnV (but the module might have 2.0.4 features)
18:58 FreezerburnV Or even a module which might encompass multiple major versions, or odd versioning, etc.
18:59 Skarsnik You probably need more advanced stuff to dectect the lib
18:59 colomon YAPC::NA in Orlando!
18:59 Skarsnik and blame the META spec for having nothing (yet) to handle external dependancy stuff related
19:00 FreezerburnV Heh
19:00 Skarsnik There is nothing to check the version at run time of sdl?
19:00 Skarsnik sqlite has it
19:00 FreezerburnV There is
19:00 prammer joined #perl6
19:00 FreezerburnV But the problems exists that if someone has production 2.0.2, and I write expecting 2.0.4, I can't even find the library
19:01 FreezerburnV e.g.: An old package in a manager
19:01 Skarsnik like you can still say is native(('sdl2', v2)) and check if you the right version
19:01 FROGGS Skarsnik: linked_version
19:04 ely-se I think if statements where the body is not a used labeled statement should start with the iff keyword instead of the if keyword.
19:04 ELBeavers joined #perl6
19:05 FreezerburnV Ah, so you can specify major version only. Cool. Then generate native definitions only for what's supported in the version of SDL returned by a function call from the library?
19:05 skids Conditionally generating the native definitions is probably tricky.
19:05 FreezerburnV Maybe generate the unsupported functions as normal Perl6 subs and put a "die" into them?
19:06 FreezerburnV Could the native definitions always exist, but a perl sub wrapper is created that might die if the version is too low?
19:07 bowtie joined #perl6
19:07 FreezerburnV (with a message such as "SDL2 on system is only vX.Y.Z whereas functions A is only supported in version B.C.D"?
19:07 _mg_ joined #perl6
19:07 skids I would think you would want to export the "die" versions instead of the NC versions.
19:07 mohae joined #perl6
19:08 FreezerburnV skids, yeah, that's what I meant. Perl subs get generated that just die if the SDL2 version is too low for a specific function
19:08 FreezerburnV With a nice message for the user about why it died
19:08 ugexe people do that currently in their Build.pm to prevent installation
19:08 skids The problem is that normally one would generate subs at compile time -- and the user can change the SDL lib under your feet between runs, so you essentially have no choice but to not precompile those subs and have to regenerate them at runtime after checking the version.
19:09 skids Which sucks probably for startup time and general efficiency.
19:09 FreezerburnV Hm
19:10 Skarsnik the native trait does not build the nc call. it's done at run time
19:10 Skarsnik like the guess_library_name is called the firs ttime the sub is called
19:10 skids Ah good.  Well good from one point of view.
19:10 FreezerburnV Then maybe: Each sub can possibly generate a version check at compile time based on whether or not it's being compiled for debug or not, and die nicely in the optional conditional. Production code wouldn't version check
19:11 musiKk joined #perl6
19:13 FreezerburnV Or, since NC does stuff at run time, it could just generate the native stuff that is supported at compile time
19:13 FreezerburnV Though that still doesn't solve the "lib changing from under you" issue...
19:14 leont joined #perl6
19:14 FreezerburnV I wonder if I could always have a static set of functions that are supported at the base level, then have a bunch of other stuff that is only supported at certain version levels and swap those into the proper names at run time based on version
19:15 FreezerburnV Won't have to compile more than once, with a small amount of time needed to shuffle some functions around
19:16 frankjh joined #perl6
19:17 DrForr Um, is it a bug that Test::use-ok() doesn't seem to actually load the module in question?
19:17 skids m: use NativeCall; "OHAI".say; sub cprint(str $) is native is symbol("printf") { }; cprint "foo\n"; sub nyiprint(str $) is native is symbol("printfoo") { }; nyiprint "foo";
19:17 camelia rakudo-moar 775271: OUTPUT«OHAI␤Cannot locate symbol 'printfoo' in native library ''␤  in method setup at /home/camelia/rakudo-m-inst-1/share/perl6/sources/075EFE4B4CDAAF73190194EA876F81A1F128D1A2 line 263␤  in method CALL-ME at /home/camelia/rakudo-m-inst-1/share/perl6/source…»
19:17 skids Hrm locally that manages to call the good printf before bailing.
19:17 skids m: use NativeCall; "OHAI".say; sub cprint(str $) is native is symbol("printf") { }; cprint "foo\n";
19:18 camelia rakudo-moar 775271: OUTPUT«OHAI␤foo␤»
19:19 DrForr use-ok 'Foo'; Foo.new; # throws "Could not find symbol '&Foo'" error rather than loading Foo.pm6 and continuing.
19:20 skids FreezerBurnV: well if the checks are runtime, maybe just let the user fall through to NC's error message -- it isn't awful, and if they wanted to handle multiple versions they should not be calling them.
19:20 [Tux] csv-ip5xs       17.699
19:20 [Tux] test            22.469
19:20 [Tux] test-t          12.173
19:20 [Tux] csv-parser      49.324
19:21 FreezerburnV skids, I just like providing very nice error message :) "You're using SDL2 2.0.1, function blabla was added in 2.0.3. Consider upgrading, otherwise you will be unable to use blabla." for example
19:22 FreezerburnV If someone somehow has an old version of SDL2, and is not aware of it
19:22 FreezerburnV Or is limited by their package manager
19:23 skids Hrm I wonder whether you could CATCH NC errors.
19:23 skids m: use NativeCall; "OHAI".say; sub cprint(str $) is native is symbol("printf") { }; cprint "foo\n"; sub nyiprint(str $) is native is symbol("printfoo") { }; nyiprint "foo"; CATCH { $!.WHAT.say }
19:23 AlexDaniel like which ones? Segmentation faults? :DD
19:23 camelia rakudo-moar 775271: OUTPUT«OHAI␤Nil␤Cannot locate symbol 'printfoo' in native library ''␤  in method setup at /home/camelia/rakudo-m-inst-1/share/perl6/sources/075EFE4B4CDAAF73190194EA876F81A1F128D1A2 line 263␤  in method CALL-ME at /home/camelia/rakudo-m-inst-1/share/perl6/…»
19:24 skids No, like "can't find symbol in lib"
19:25 skids m: use NativeCall; "OHAI".say; sub cprint(str $) is native is symbol("printf") { }; cprint "foo\n"; sub nyiprint(str $) is native is symbol("printfoo") { }; nyiprint "foo"; CATCH { $_.WHAT.say }
19:25 camelia rakudo-moar 775271: OUTPUT«OHAI␤(AdHoc)␤Cannot locate symbol 'printfoo' in native library ''␤  in method setup at /home/camelia/rakudo-m-inst-1/share/perl6/sources/075EFE4B4CDAAF73190194EA876F81A1F128D1A2 line 263␤  in method CALL-ME at /home/camelia/rakudo-m-inst-1/share/pe…»
19:25 skids Hrm that one is not typed yet.
19:31 RabidGravy yeah, there should be a set of X::Native suckers
19:35 [Coke] DrForr: the use-ok is inside a block. theoretically that shouldn't leak out.
19:35 frankjh Hi, I have a question related to ecosystem/modules. IN META6.json I have "version" : "0.0.2", is the name of a branch I have to create on github, or is it a tag name? Or how does it relate to my repo?
19:35 [Coke] m: try { use "Test"; } ; ok(True, "hi");
19:35 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZdnMX9MQXn␤Undeclared routines:␤    ok used at line 1␤    use used at line 1␤␤»
19:35 FROGGS m: try { use "Test"; }; say Test
19:35 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/E8pHQLDNTG␤Undeclared name:␤    Test used at line 1␤Undeclared routine:␤    use used at line 1␤␤»
19:35 [Coke] m: try { use Test; } ; ok(True, "hi"); # oops
19:35 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Ya94rKkeAv␤Undeclared routine:␤    ok used at line 1␤␤»
19:36 FROGGS m: try { use Test; }; say Test
19:36 camelia rakudo-moar 775271: OUTPUT«(Test)␤»
19:36 FROGGS global symbol ^^
19:36 DrForr [Coke]: Again, I was just used to the p5 behavior, wanted to check my expectations before filing a perl6bug.
19:36 RabidGravy frankjh, I use it as a tagname, but as it stands at the moment the version isn't used for what gets pulled to do the installation
19:36 [Coke] FROGGS: Test is available, but 'ok' ain't.
19:36 FROGGS aye
19:36 skids maybe at some point we'll be able to sub is native { {*} CATCH { } }
19:37 FROGGS [Coke]: I'd like to see that the Test symbol would be lexical also, but I don't know if we get there
19:38 frankjh RabidGravy: What does it (panda?) do instead, pull HEAD?
19:39 RabidGravy yeah, you could make it pull a tag or branch or something by what you put in the source-url
19:39 ely-se I want to write a compiler in Perl 6.
19:39 DrForr I suppose having a file of nothing but 'use-ok' statements, and then another file of 'use' statement is okay, but since both file are run anyway, there doesn't seem to be a point to use-ok in that case.
19:39 DrForr ely-se: drforr/perl6-ANTLR -
19:39 ely-se lol why would I use ANTLR
19:40 DrForr It's an ANTLR -> Perl 6 compiler.
19:40 ely-se I figured that much.
19:41 DrForr You were just talking about writing a compiler, I thought I'd point you to one that's already (sort of - epsilon GLR) working.
19:41 ely-se ohh I see
19:42 ely-se I thought you were suggesting I use ANTLR
19:42 frankjh RabidGravy: That would be nice, but I do not know how. Where should I do my development, after my module is added to the modules list, if I would want avoid problems for users of my module?
19:42 DrForr Well, you can use that to avoid using ANTLR :)
19:42 RabidGravy to be honest I haven't given it much thought
19:44 Skarsnik We need an authoring tool to do the version stuff x)
19:46 leont I would love to imagine how much coffee I can make in the amount of time dzil would take on p6 :-p
19:49 _Vi joined #perl6
19:50 frankjh So currently the best way is to fork the repo? Having perl6-mymodule and perl6-mymodule-dev repos?
19:51 FROGGS leont: like, watching the plants grow?
19:51 Skarsnik frankjh, depend, having a 'stable' branch for the ecosystem and a dev branch for you?
19:51 AlexDaniel frankjh: I think that having a stable master and other branches for unstable stuff should work fine
19:51 Skarsnik erff panda use master <
19:53 frankjh So master and dev branch is ok too? This would probably be easier.
19:53 Skarsnik yes
19:54 frankjh And if my module ever gets a new user, the user would get the lastest contents of the stable branch?
19:55 Skarsnik yes, panda always clone the master git repo
19:56 AlexDaniel m: say Duration.new(Inf)
19:56 camelia rakudo-moar 775271: OUTPUT«Type check failed in assignment to $!tai; expected Rat but got Num␤  in block <unit> at /tmp/vqjCVUi2zS line 1␤␤»
19:56 frankjh Ok thanlks, I will try to make a PR on ecosystem soon. :)
20:06 AlexDaniel does anybody know what is Duration?
20:07 skids An amount of time, not pinned to any calendar.
20:07 Skarsnik It's the difference between two Instant
20:07 skids (a delta-T)
20:08 Skarsnik ?
20:09 frankjh OK done PR done.
20:10 n0tjack joined #perl6
20:14 ely-se joined #perl6
20:16 dalek ecosystem: 8278af7 | (Frank Hartmann)++ | META.list:
20:16 dalek ecosystem: Add perl6-tweetnacl to ecosystem
20:16 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/8278af7f52
20:16 dalek ecosystem: 9b1e71f | (David Warring)++ | META.list:
20:16 dalek ecosystem: Merge pull request #131 from soundart/master
20:16 dalek ecosystem:
20:16 dalek ecosystem: Add perl6-tweetnacl to ecosystem
20:16 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/9b1e71f378
20:18 AlexDaniel is there any way to provide alternative “source-url”?
20:18 AlexDaniel e.g. I want to list github and bitbucket repos at the same time
20:20 spider-mario joined #perl6
20:20 addison joined #perl6
20:21 Skarsnik probably not?
20:22 AlexDaniel I see. What would be the most appropriate place to create an issue about this?
20:23 frankjh Uh and how do I add these logos? Some modules have a nice logo on https://modules.perl6.org/?
20:24 Skarsnik add a logotype directory
20:24 Skarsnik well look at a module that have it x)
20:24 n0tjack joined #perl6
20:25 skids AlexDaniel: https://github.com/perl6/specs/issues probably.  S22 is the spec that would handle META.
20:26 ugexe source-url is not spec though
20:26 skids support { source: } is.
20:27 ugexe yes, big distinction
20:29 AlexDaniel ugexe: so what is it then? Common convention?
20:30 Skarsnik panda spec
20:30 Skarsnik S22 is... quite sparse
20:32 AlexDaniel but what about zef?…
20:32 ugexe one having multiple sources of the same auth. if source-url were specced i imagine it would be like metacpan "download_url", where the content storage sets it
20:33 ugexe support: source i can see having multiple urls
20:34 AlexDaniel actually, a lot of stuff that is written in S22 makes sense
20:36 laz78 joined #perl6
20:41 AlexDaniel m: say ('test' x *)(5)
20:41 camelia rakudo-moar 775271: OUTPUT«testtesttesttesttest␤»
20:41 AlexDaniel m: say ('test' xx *)(5)
20:41 camelia rakudo-moar 775271: OUTPUT«Cannot find method 'CALL-ME'␤  in block <unit> at /tmp/DA8qdZr8qO line 1␤␤»
20:41 AlexDaniel m: say 'test' x Inf
20:41 camelia rakudo-moar 775271: OUTPUT«Cat object not yet implemented. Sorry. ␤  in block <unit> at /tmp/z8BhXiZssK line 1␤␤Actually thrown at:␤  in block <unit> at /tmp/z8BhXiZssK line 1␤␤»
20:41 AlexDaniel m: say 'test' xx Inf
20:41 camelia rakudo-moar 775271: OUTPUT«(...)␤»
20:49 n0tjack joined #perl6
20:53 nadim joined #perl6
20:56 frankjh1 joined #perl6
20:59 Calibellus joined #perl6
21:02 prammer joined #perl6
21:06 nadim joined #perl6
21:07 frankjh1 left #perl6
21:07 cdg joined #perl6
21:08 _mg_ joined #perl6
21:08 ely-se I'm gonna write a http://foo.wyrd.name/en:bearlibterminal binding and make a video game in Perl 6. :3
21:09 RabidGravy coooooool
21:12 RabidGravy oooh so whacking up fs.inotify.max_user_watches to 4 times what it was fixes IO::Notification.watch-path
21:12 Skarsnik fun
21:12 RabidGravy something is chewing through 'em
21:19 geraud joined #perl6
21:31 dfcarpenterak joined #perl6
21:34 salv0 joined #perl6
21:37 llfourn joined #perl6
21:37 [Coke] .u later
21:37 yoleaux U+01C1 LATIN LETTER LATERAL CLICK [Lo] (ǁ)
21:38 flussence RabidGravy: default seems to be 8192 here, what the heck could possibly need that many?
21:42 maslan joined #perl6
21:47 RabidGravy I dunno, there are 25 processes using inotify, I suspect tracker-miner-fs is the culprit
21:49 flussence oh right, one of those indexing things, that'd make sense...
21:49 RabidGravy [jonathan@coriolanus perl6]$ tracker status
21:49 RabidGravy Currently indexed: 241922 files, 23308 folders
21:54 alwpex joined #perl6
21:58 laz78 joined #perl6
22:04 addison joined #perl6
22:13 FreezerburnV joined #perl6
22:19 MadcapJake i want to put a `-d` flag before a path in a MAIN signature, but it's complaining that it's variadic: «multi sub MAIN ('complete', Bool :$d!, $filepath)»
22:20 DrForr I seem to be having difficulties capturing output from "run 'perl6 -c', $filename;" - 'syntax OK' should appear on STDERR but I can't figure out how to capture it.
22:20 timotimo yo yo yo
22:20 timotimo i'm back from all the errands
22:21 FreezerburnV ...what? "Constraint type check failed for parameter '$precomp-id'" when attempting to run some code. I don't think I have anything defined with that name
22:22 MadcapJake DrForr: syntax OK is printed to STDOUT I believe
22:23 sortiz joined #perl6
22:23 DrForr Hmm,yeah, it is stdout, but the statement still doesn't appear to be capturing it.
22:23 * DrForr retries the paste in case soemthing went pear-shaped.
22:24 FreezerburnV Also: Is it possible to just pass in a string when specifying version for a native sub? e.g.: "is native($lib, $versionString)"
22:24 FreezerburnV And if so, can an empty string be passed?
22:25 geekosaur FreezerburnV, that precomp-id thing is a known bug
22:25 MadcapJake FreezerburnV: you can assemble the proper native string via a sub: http://doc.perl6.org/language/nativecall#Routine
22:26 DrForr Not working with sample code, but I'll have to check into it tomorrow.
22:27 FreezerburnV MadcapJake: Oooh, nice! Do I need to return a tuple from the sub to get the lib and version number, or do I pass in 2 subs?
22:27 FreezerburnV geekosaur: Any way to get around it? It suddenly showed up when the code was previously working
22:28 geekosaur is there a module associated with the error? you have to add 'no precomp;' at the top of a module that is triggering it
22:28 espadrine joined #perl6
22:29 nadim joined #perl6
22:30 FreezerburnV geekosaur: Hm, now it's gone and replaced by an error about a missing or wrong dependency. Gimme a sec
22:31 FreezerburnV Ok I _think_ it has something to do with SDL2/Raw.pm because it's complaining about missing a dependency on it directly after the preomp thing
22:32 FreezerburnV joined #perl6
22:32 FreezerburnV And putting in "no precomp;" just gives an error that it doesn't know how to do that
22:34 FreezerburnV I changed the logic of how a string is computed from being in a BEGIN block to just being done at runtime, which is when it started complaining. the string is used in "is native($lib)"
22:35 FreezerburnV Putting it back into a BEGIN block does nothing
22:37 espadrine_ joined #perl6
22:37 llfourn joined #perl6
22:38 MadcapJake FreezerburnV: what do you want native to do with the version number?
22:38 FreezerburnV MadcapJake: I want to be able to look for the absolute path of a library, and if so, not use a version number. Otherwise append the version that is expected of the library
22:39 FreezerburnV On Windows a dll is usually in the same directory sans version number, but on unix I usually just want to give an expected version to dlopen, so I want to be able to change how I use "is native" without having to put ifs over every sub definition
22:39 MadcapJake yeah so you would write that as a sub and then just do `is native(&lib)` for each routine
22:39 MadcapJake but the sub should only return one string in the end
22:39 FreezerburnV Got it
22:40 FreezerburnV And no warnings about not having a version number?
22:40 MadcapJake it will search in the whatever the manual places for whatever string you provide
22:40 ELBeavers joined #perl6
22:41 MadcapJake in other words, I don't know what the Windows DLL location is, but it'll search there :P
22:41 FreezerburnV Haha
22:41 timotimo FreezerburnV: the error about "precomp-id" could be from outputting text on stdout (or perhaps stderr?) during compile time
22:42 FreezerburnV Well on Windows, I can be confident it will be in the same directory as the script. It's on Unix that, apparently, having a version number is the well-defined way of finding a library, and is native will warn if a version is not passed. So I want to be able to output an absolute path on Windows, which will not warn, and libname with version on Unix
22:42 FreezerburnV So no warnings and it's well-defined which version of the lib is getting opened
22:43 FreezerburnV timotimo: Hm, I'll take a look around to see if that's happening
22:45 yqt joined #perl6
22:46 FreezerburnV Can IO be done at compile time?
22:46 ely-se FreezerburnV: sure
22:46 ely-se m: BEGIN { say "hello world" }
22:46 camelia rakudo-moar 775271: OUTPUT«hello world␤»
22:46 Skarsnik FreezerburnV, you can have the verision number on windows
22:46 Skarsnik it does nothing
22:47 ely-se m: sub f() is native is symbol(do { say "hello world"; 'pipe' }) {*}
22:47 camelia rakudo-moar 775271: OUTPUT«hello world␤5===SORRY!5=== Error while compiling /tmp/yRBgFaUsg9␤Can't use unknown trait 'is native' in a sub declaration.␤at /tmp/yRBgFaUsg9:1␤    expecting any of:␤        rw raw hidden-from-backtrace hidden-from-USAGE␤        pure defaul…»
22:47 FreezerburnV Hmm
22:47 Skarsnik and if you need to do specific change for windows just set the thing you give to the native trait according to the os
22:48 FreezerburnV I'm gonna have to work on this more a bit later. Gotta go for now. Thanks for all the help!
22:48 ely-se I did this in my library recently: https://github.com/rightfold/NativeCall-Errno/blob/master/lib/NativeCall/Errno.pm6#L6
22:48 ely-se should find a nicer way probably :p
22:48 ely-se I should make a module for each platform and import conditinoally
22:49 Skarsnik well for the symbol you don't have a choice
22:49 Skarsnik It's fine really
22:49 Skarsnik using cglobals does not work for errno ?
22:49 ely-se no
22:50 ely-se errno is thread-local, not global
22:50 geekosaur errno is not a global variable on any system with thred suypport
22:50 * geekosaur eyes finfers
22:50 ely-se errno in <errno.h> is typically defined as a macro that expands to something along the lines of (*__errno_location()) or __errno()
22:51 Skarsnik m: my $var := cglobal(('c', v6), 'errno', int): say $var;
22:51 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VVvHI1hZ0J␤Confused␤at /tmp/VVvHI1hZ0J:1␤------> 3var := cglobal(('c', v6), 'errno', int):7⏏5 say $var;␤    expecting any of:␤        colon pair␤»
22:51 Skarsnik m: my $var := cglobal(('c', v6), 'errno', int); say $var;
22:51 camelia rakudo-moar 775271: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xfqsfvnUCn␤Undeclared routine:␤    cglobal used at line 1␤␤»
22:51 ely-se you have to use NativeCall
22:51 Skarsnik m: use NativeCall; my $var := cglobal(('c', v6), 'errno', int); say $var;
22:51 camelia rakudo-moar 775271: OUTPUT«2␤»
22:52 lichtkind good night
22:52 ely-se that probably "works" because of legacy support for errno as a global variable
22:52 ely-se it'll probably break if you use it in multiple threads
22:52 ely-se there's a reason C headers use macros
22:53 geekosaur yep
22:53 ely-se it's best to exactly mimic such implementations
22:54 Skarsnik m: use NativeCall; my $var := cglobal(('c', v6), '__errno_location', int); say $var;
22:54 camelia rakudo-moar 775271: OUTPUT«7205820969213332296␤»
22:54 Skarsnik fun
22:54 ely-se need to dereference
22:54 ely-se well, dereference the result of a call to __errno_location
22:55 ely-se m: use NativeCall; sub __errno_location(--> Pointer[int]) is native {*}; __errno_location.deref.say
22:55 camelia rakudo-moar 775271: OUTPUT«2␤»
22:55 Skarsnik fun fact: deref is buggy
22:56 Skarsnik well I had weird issue replacing nativecast with a Pointer[struct].deref
22:56 Skarsnik even if deref just call nativecast xD
22:56 geekosaur not all systems provide the back-compat thing, even.  (OS X, and this stuff appears to be copied from FreeBSD, does not have a legacy errno.)
22:57 Skarsnik Well I trust you on this x)
23:02 cpage_ joined #perl6
23:03 yurivish joined #perl6
23:05 yurivish joined #perl6
23:14 mcmillhj joined #perl6
23:20 woodruffw joined #perl6
23:21 woodruffw joined #perl6
23:25 Skarsnik Good night #perl6
23:51 kid51 joined #perl6
23:53 addison joined #perl6
23:55 Peter- joined #perl6

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

Perl 6 | Reference Documentation | Rakudo