Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-12-13

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:14 secwang joined #perl6
00:28 timotimo grondilu: did you measure performance with your latest pull request?
00:32 cdg joined #perl6
00:34 stmuk DrForr++
00:34 stmuk liz++
00:35 lucs stmuk: Did you see some presentations today?
00:36 stmuk yes
00:36 lizmat joined #perl6
00:36 stmuk Nigel Hamilton++ # whatever his nick is
00:37 leont joined #perl6
00:38 Ben_Goldberg joined #perl6
00:39 dalek rakudo/nom: 1f45b22 | grondilu++ | src/core/native_array.pm:
00:39 dalek rakudo/nom: improve permutations
00:39 dalek rakudo/nom:
00:39 dalek rakudo/nom: implement the XOR swap algorithm in a single statement.  Not really necessary but still pretty cool.  It should also provide a small performance improvement as we can then put the C<until> in the end, thus avoiding creating a lexical scope.
00:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1f45b22cd1
00:39 dalek rakudo/nom: 4cf0862 | grondilu++ | src/core/native_array.pm:
00:39 dalek rakudo/nom: Update native_array.pm
00:39 dalek rakudo/nom:
00:39 dalek rakudo/nom: use a shortcut for deciding IterationEnd
00:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4cf0862053
00:39 dalek rakudo/nom: e52617c | lizmat++ | src/core/native_array.pm:
00:39 dalek rakudo/nom: Merge pull request #631 from grondilu/patch-8
00:39 dalek rakudo/nom:
00:39 dalek rakudo/nom: improve permutations
00:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e52617c104
00:41 lmmx joined #perl6
00:44 lucs "regex" question: (trigger warning, may provoke earworm!) https://gist.github.com/lucs/bae8c4e4101d9476b661
00:48 jdv79 nine: not that i'm aware of.  they aren't used that way together.
00:49 geekosaur lucs, try .perl.say?
00:50 geekosaur say uses .gist which removes some things
00:50 lucs geekosaur: Ah, I see. Trying...
00:51 lucs .perl.say, same result, as does using 'print'.
00:52 jdv79 nine: sorry i was out;  bday and all.  maybe tomorrow.
01:00 lizmat congrats jdv79
01:01 lizmat good night, #perl6!
01:01 lucs Good night lizmat
01:01 AlexDaniel grondilu: it looks like “}” is misplaced a bit :)
01:03 AlexDaniel grondilu: line 746
01:04 AlexDaniel ah
01:04 AlexDaniel it does not look like you can quickly fix that. Whatever, who cares then
01:06 skids m: say Match.new(:list(2,3)).perl.say
01:06 camelia rakudo-moar e52617: OUTPUT«Match.new(ast => Any, list => (), hash => Map.new(()), orig => Any, to => 0, from => 0)␤True␤»
01:07 skids Match is pretty hnky under the hood.
01:09 lucs skids: Would you say there's nothing to worry about?
01:10 jdv79 lizmat: congrats on what - not dying?  :)
01:12 secwang joined #perl6
01:18 cognominal what is the canonical way to do a $*OUT redirection for the time of a &run ?
01:18 leont It takes an :out parameter, I think
01:20 cognominal leont, it seems to ignore IO::PATH or IO::Handle instances
01:20 leont AFAIK it should accept the latter
01:21 cognominal indeed I made a mistake.
01:24 cognominal strangely it say the fh is still at "octet 0". Probably the source of my confusion
01:25 skids lucs: maybe worth an RT for later on, forging Match objects is probably not a priority.
01:26 lucs skids: Okay, thanks.
01:26 telex joined #perl6
01:27 llfourn joined #perl6
01:51 labster joined #perl6
01:56 xpen joined #perl6
02:09 AlexDaniel nine: there is still something with DBIish: https://github.com/perl6/DBIish/issues/37#issuecomment-164211632
02:09 moei left #perl6
02:09 AlexDaniel nine: the error is different, but it points to the same line
02:16 dalek rakudo/gsr: f95c144 | TimToady++ | src/Perl6/ (3 files):
02:16 dalek rakudo/gsr: Great Sink Refactor
02:16 dalek rakudo/gsr:
02:16 dalek rakudo/gsr: The actions now actively mark wanted nodes so that useless use errrors
02:16 dalek rakudo/gsr: will be suppressed on those nodes.  This marking is recursive on the last
02:16 dalek rakudo/gsr: statement of a statement list.  The optimizer now pays more attention to
02:16 dalek rakudo/gsr: such annotations when traversing children.  Also, we now distinguish
02:16 dalek rakudo/gsr: children that default to void (Stmts, Stmt, Block) from those that default
02:16 dalek rakudo/gsr: to using the child values they calculate (Op, etc.).
02:16 dalek rakudo/gsr: review: https://github.com/rakudo/rakudo/commit/f95c14402a
02:20 AlexDaniel 2m34s first run, 15s second run. OK it seems like precompilation thing is actually working :)
02:21 AlexDaniel 13s third run, 12s fourth… What
02:23 dalek Heuristic branch merge: pushed 19 commits to rakudo/gsr by TimToady
02:26 AlexDaniel nine: that being said, it feels like the module itself is working
02:29 anon joined #perl6
02:37 b2gills m: .say for (^100).rotor(1,9,10 xx *) # I would have thought this was tested
02:37 camelia rakudo-moar e52617: OUTPUT«(timeout)»
02:42 AlexDaniel b2gills: I'm sorry, but what would be the right behavior?
02:45 zengargoyle m: .say for (^100).rotor(1,9,lazy 10 xx 100);
02:45 camelia rakudo-moar e52617: OUTPUT«(0)␤(1 2 3 4 5 6 7 8 9)␤(10 11 12 13 14 15 16 17 18 19)␤(20 21 22 23 24 25 26 27 28 29)␤(30 31 32 33 34 35 36 37 38 39)␤(40 41 42 43 44 45 46 47 48 49)␤(50 51 52 53 54 55 56 57 58 59)␤(60 61 62 63 64 65 66 67 68 69)␤(70 71 72 73 74 75 76 77…»
02:45 zengargoyle i would expect that..
02:45 AlexDaniel b2gills: you've basically told it to rotor infinitely. You can say that it should return a lazy list, maybe
02:45 secwang joined #perl6
02:45 b2gills m: say (^100).rotor(1,9,10 xx 10000)[*-1]
02:45 camelia rakudo-moar e52617: OUTPUT«(90 91 92 93 94 95 96 97 98 99)␤»
02:45 b2gills 10 xx * should be a lazy list
02:45 AlexDaniel 10 xx * is
02:45 b2gills The problem is .rotor is too eager
02:45 AlexDaniel yeah, ok, I probably agree with that
02:48 zengargoyle m: .say for (^100).rotor(1,9,9,$(10 xx *));
02:48 camelia rakudo-moar e52617: OUTPUT«(0)␤(1 2 3 4 5 6 7 8 9)␤(10 11 12 13 14 15 16 17 18)␤Cannot .elems a lazy list␤  in block <unit> at /tmp/IUgT6zNL8c:1␤␤Actually thrown at:␤␤»
03:09 advwp joined #perl6
03:24 dalek roast: 9977e56 | LLFourn++ | S04-blocks-and-statements/temp.t:
03:24 dalek roast: Tests for RT #126880
03:24 dalek roast:
03:24 dalek roast: also removed unnecessary EVAL around temp @array tests
03:24 dalek roast: review: https://github.com/perl6/roast/commit/9977e560ff
03:26 advwp joined #perl6
03:28 secwang joined #perl6
03:33 noganex joined #perl6
03:40 psch joined #perl6
03:43 psch inspired by ab5tract++'s advent post i learned that we're able to reverse either part of a metaop assign
03:45 psch m: sub more-state($a?) { (state $x) = $a // ++$x }; say more-state 6; say more-state 7; say more-state 11; say more-state;
03:45 camelia rakudo-moar e52617: OUTPUT«6␤7␤11␤12␤»
03:45 psch i'm not sure the golf is worth it there specifically, but it is kind of neat
03:45 psch eh, wrong line copied :/
03:45 psch m: sub more-state($a?) { ($ [R[//]]= $a)++ }; say more-state 6; say more-state 7; say more-state 11; say more-state;
03:45 camelia rakudo-moar e52617: OUTPUT«6␤7␤11␤12␤»
03:46 psch it does seem somewhat brittle, though...
03:46 psch ah, no, i just did something wrong, nevermind
03:50 b2gills from earlier I guess .rotor(1,10 xx *) should be an error, but .rotor(1,|(10 xx *)) doesn't work either
03:54 psch b2gills: the clog doesn't seem to suggest it should error, more that it tries to reify too strongly?
03:57 psch i don't have a good intuition for what exactly can (or should) accept laziness though, so i'm likely wrong...
04:00 Zoffix joined #perl6
04:08 bjz joined #perl6
04:10 grondilu joined #perl6
04:20 Actualeyes joined #perl6
04:21 diakopter AlexDaniel: you discovered the magic auto-profile-guided-optimization feature
04:24 uruwi joined #perl6
04:28 jack_rabbit joined #perl6
04:31 nowan_ joined #perl6
04:40 dalek roast: c205f71 | LLFourn++ | S32-list/map.t:
04:40 dalek roast: Test for RT #126883
04:40 dalek roast: review: https://github.com/perl6/roast/commit/c205f71781
04:42 Actualeyes left #perl6
04:45 psy_ joined #perl6
04:50 dalek doc: 48d263a | skids++ | doc/Language/control.pod:
04:50 dalek doc: Start control.pod out with statements for the truly new users.
04:50 dalek doc: review: https://github.com/perl6/doc/commit/48d263afe6
04:54 vividsnow joined #perl6
05:05 loren joined #perl6
05:12 vividsnow joined #perl6
05:14 dalek rakudo/gsr: 2807a3c | TimToady++ | src/Perl6/Actions.nqp:
05:14 dalek rakudo/gsr: allow wanted to be called on bogus asts
05:14 dalek rakudo/gsr: review: https://github.com/rakudo/rakudo/commit/2807a3cec9
05:15 dalek roast: 688c43b | TimToady++ | S32-exceptions/misc.t:
05:15 dalek roast: allow WARNINGS to indicate a filename
05:15 dalek roast: review: https://github.com/perl6/roast/commit/688c43b032
05:24 bjz joined #perl6
05:40 Peter_R joined #perl6
05:47 kaare_ joined #perl6
05:49 AlexDaniel m: sub List { say ‘Hello world’ }; List
05:50 camelia rakudo-moar e52617: ( no output )
05:50 AlexDaniel ouch
05:50 AlexDaniel m: sub List { say ‘Hello world’ }; &List()
05:50 camelia rakudo-moar e52617: OUTPUT«Hello world␤»
06:10 adu joined #perl6
06:21 pdcawley joined #perl6
06:29 pierre-vigier joined #perl6
06:42 luis joined #perl6
06:47 rosso_ joined #perl6
06:50 dalek rakudo/gsr: 398ac59 | TimToady++ | src/Perl6/Actions.nqp:
06:50 dalek rakudo/gsr: don't need the secondary markers anymore
06:50 dalek rakudo/gsr: review: https://github.com/rakudo/rakudo/commit/398ac59c42
07:02 M-Illandan joined #perl6
07:06 molaf joined #perl6
07:08 dalek doc: 621eb8a | skids++ | doc/Language/control.pod:
07:08 dalek doc: Smooth out and simplify the section on blocks a bit
07:08 dalek doc: review: https://github.com/perl6/doc/commit/621eb8a398
07:11 M-eternaleye joined #perl6
07:31 hassoub joined #perl6
07:32 hassoub left #perl6
07:32 hassoub joined #perl6
07:37 pierre-vigier joined #perl6
07:44 domidumont joined #perl6
07:48 darutoko joined #perl6
07:50 adhoc joined #perl6
07:56 rurban joined #perl6
07:59 adhoc joined #perl6
07:59 pierre-vigier joined #perl6
08:00 pdcawley joined #perl6
08:00 pierre-vigier joined #perl6
08:07 dalek rakudo/gsr: c64a401 | TimToady++ | src/Perl6/Actions.nqp:
08:07 dalek rakudo/gsr: traits are also wanted
08:07 dalek rakudo/gsr: review: https://github.com/rakudo/rakudo/commit/c64a401fba
08:07 dalek rakudo/gsr: 4b13795 | TimToady++ | src/Perl6/Optimizer.nqp:
08:07 dalek rakudo/gsr: allow useless use of &foo and other symbols too
08:07 dalek rakudo/gsr: review: https://github.com/rakudo/rakudo/commit/4b13795e38
08:12 CIAvash joined #perl6
08:22 Hotkeys is there any major difference between these two http://i.imgur.com/rDsKy3a.png
08:24 rurban_ joined #perl6
08:30 labster joined #perl6
08:35 xfix joined #perl6
08:42 darutoko- joined #perl6
08:52 rindolf joined #perl6
08:53 hartenfels joined #perl6
08:54 spider-mario joined #perl6
08:55 firstdayonthejob joined #perl6
08:56 labster joined #perl6
08:57 sno joined #perl6
08:59 _nadim Good morning.
08:59 _nadim do "we" have standardish names for object factories? Some de-facto term.
09:01 brrt joined #perl6
09:08 adhoc joined #perl6
09:33 domidumont joined #perl6
09:34 domidumont joined #perl6
09:36 Hazim joined #perl6
09:37 rindolf joined #perl6
09:38 RabidGravy joined #perl6
09:39 labster joined #perl6
09:40 Hazim Hello, Whin perl 6 will be released
09:40 pierre-vigier joined #perl6
09:41 llfourn Hazim: Christmas :)
09:42 Hazim llfourn: great news
09:42 llfourn though I think we're aiming for 17th -- so it might be before then...yes it is!
09:43 Hazim how perl6 will play QT 5
09:44 llfourn that I do not know others might :)
09:45 Hazim ok no problem, is there any good link to learn about the QT with perl6   : )
09:47 hartenfels Hazim: I don't think there's any QT module yet.
09:47 llfourn probably not :P
09:47 stmuk http://modules.perl6.org suggests QT bindings are still to be done but there are GTK ones
09:47 llfourn you can check out: http://docs.perl6.org/language/nativecall
09:48 hartenfels I also heard that somebody's gonna do an advent post on NativeCall that talks a bit about calling into C++.
09:48 Hazim ok thanks...
09:49 Hazim should i learn the C language or i can use only perl6 with the NativeCall
09:50 dalek doc: 917addb | sylvarant++ | doc/Language/concurrency.pod:
09:50 dalek doc: Some spelling fixes and clearer wording
09:50 dalek doc:
09:50 dalek doc: Small changes to make the meaning of certain sentences clearer.
09:50 dalek doc: review: https://github.com/perl6/doc/commit/917addb41f
09:51 llfourn Hazim: you don't need to know C to use p6 but it's there if you need to communicate with C libs
09:51 nine Hotkeys: none that I can see.
09:52 hartenfels Hazim: To call into a C++ library like QT, you probably need to use some C++.
09:52 nine Hotkeys: though I've been asleep mere minutes ago and am only starting to have my coffee ;)
09:52 hartenfels Because C++ is a bit harder to call from outside than C.
09:53 nine hartenfels: there is at least one program using Qt in Perl 6: http://niner.name/talks/Leapfrogging%20the%20bootstrap/examples/qt.pl
09:54 hartenfels Well, I guess using Inline::Perl or Inline::Python is a way too :P
09:54 hartenfels That's probably the best way right now in fact.
09:55 nine At least if one doesn't know C++
09:55 Hazim llfourn: Ok , about the hardware interface (mouse, sound card, printers....) or image manipulation, is there a function in perl 6 to do this tasks, because one from the community suggested to learn C and call this function from perl 6
09:56 adu joined #perl6
09:56 hartenfels nine: Knowing C++ might make it even more desirable not to use it.
09:56 llfourn Hazim: NativeCall and IO stuff is not my area :)
09:57 nine While NativeCall works without even a compiler installed, experience suggests that one needs to know quite a bit of C to use it. Typical C APIs use custom data types and macros a lot and decifering them can be hard if one doesn't know C.
09:58 Hazim llfourn: thanks for help :)
09:58 RabidGravy Hazim, re "sound card" there is a work in progress for a PortAudio binding that shows some promise, not release yet
09:58 nine Hazim: printers on UNIX are a network service, so we should be covered quite well already
09:59 hartenfels There's also SDL bindings that can do sound I think, but it don't seem to have much documentation yet.
09:59 Hazim ok thanks  to you all
10:02 Hazim perl6 still in progress i will start learn it for now , The GUI and Hardware interface is so important to the language from my humble opinion.
10:03 brrt languages don't deal with hardware, operating systems do
10:03 brrt languages may provide bindings for libraries, but that's not the same thing
10:03 diana_olhovik joined #perl6
10:04 Hazim brrt: operating systems do that but i meant the function to use or read the data from the hardware
10:04 brrt that's libraries bindings, i think? well, that is what NativeCall is for
10:05 brrt if there is a C or C++ interface to it, NativeCall can bind it and expose it to perl6
10:05 brrt that does take some work, but not as much as in other cases
10:05 * grondilu hopes that someday the bindings will auto-generate so we can just do 'use somelibrary:from<C>;'
10:07 hartenfels Sounds like a pretty neat idea actually, writing `is native('libsomething')` gets tiring after a while.
10:07 Hazim brrt: NativeCall will do the job done & thanks for the info it was helpfull
10:08 brrt you are welcome of course :-)
10:08 brrt given DWARF debugging symbols, i'm fairly sure that's possible grondilu
10:08 grondilu hartenfels: it's not my idea though, I think it's a (very) long term goal TimToady already stated.
10:10 grondilu I don't know about DWARF, I thought :from<C> would involve parsing the headers somehow.
10:10 grondilu basically automating what humans currently do.
10:10 labster joined #perl6
10:11 nine I seem to remember that someone has already started such a parser
10:11 brrt the other side of the coin is that as we make metahacking and binding easier and easier, it actually might discourage people from providing a library that does it
10:12 nine brrt: so what?
10:12 labster left #perl6
10:12 brrt so that a beginner that *doesnt* know what libfoobar even does, just wants something to foo his bars, will think
10:12 nine absolute #1 top priority for Perl: get the job done!
10:13 pierre-vigier joined #perl6
10:13 brrt 'but python/ruby provide a Foo library, and perl6 doesn't'
10:13 grondilu some libraries are so big you just don't want to write the bindings, even if it's only copying the names of the functions.
10:13 brrt what i kind mean, is that in java, everything is verbose and difficult and takes a billion hours to design, *hence people use standardized enterprise frameworks*
10:13 nine Making it trivial to bind native libraries frees the programmer to create a Perl6ish interface for it.
10:14 brrt and the existence of such frameworks, while insane from an outside perspective, then goes to justify the use of java
10:14 RabidGravy I've written a couple of little tools in the last year that munge the definitions in a include file into something like a useable Perl code
10:14 brrt making it harder to do something more justifies the existence of libraries
10:14 brrt libraries go on to justify the use of a language
10:14 brrt do you see what i mean?
10:15 nine brrt: I hear you. I don't think I agree however.
10:16 brrt hmmm
10:16 brrt i'm not100% sure i agree, either
10:16 brrt just a nagging doubt
10:16 RabidGravy But that assumes that the C interface is similar to one you would like in Perl 6, simply binding a C library is not going to make a good Perl module
10:16 nebuchadnezzar Hotkeys: According to the documentation (http://doc.perl6.org/language/control#default_and_when) it can act like an if, the only thing I see is that if will to change topic ($_) in the bloc
10:16 nine RabidGravy: that's what I meant
10:17 brrt well, in contrast, what is or is not perl6ish will grow to depend on taste, hence what *you* think is a good perl6 interface will not match what a lot of others may think;
10:17 nine In general whenever people tried to make such decisions on a political basis, they lost. Like Stallman's reluctance to let GCC have a plugin interface. Thing is, people wanted to plug into their compiler. So they went to llvm instead.
10:17 nine I think it's actually the one instance where I really think that Stallman was just plain wrong.
10:18 brrt hence why would i use your library and have your idioms forced on me, when binding the library myself is so easy
10:18 brrt hmm.... i'm not sure nine, i think he had a point
10:18 nine Reality proved him wrong.
10:18 brrt really?
10:19 brrt it was not until some weeks ago that swift, which is 90% llvm magic, was 'open sourced'
10:19 nebuchadnezzar Hotkeys: I imaging that “when” will only smartmatch “$_” with its argument only if “$_” is not provided in the argument
10:19 nine His motive was a good one, but he strayed from helping people, so people went away and he lost a lot of leverage.
10:19 brrt one could provide an AwesomePlugin for gcc, keep it propietary, and benefit from 99% of the development of others, while keeping a tight lock on the users of AwesomeC
10:19 grondilu even a "dumb" binding that would stricly map the structures and functions would be useful.  It could be used as an intermediary step towards a more high-level, perlish interface.
10:20 brrt hmmm
10:20 brrt that is true, yes
10:20 nine brrt: he didn't want to risk proprietary plugins and instead lost part of the user base. That's certainly a net loss.
10:20 nebuchadnezzar when 3 { say "OK" } == when $_ ~~ 3 { say "OK" }, but when $_ %% 3 { say "OK" } will not result in when $_ ~~ $_ %% 3 { say "OK" } since programmer specify $_ in the when argument
10:20 Ulti there is a C parser in the ecosystem re: automagic native interface
10:21 brrt nine: not necessarily according to his philosophy
10:22 brrt i'm fairly sure that if he hadn't done that, we'd have seen a propietary swift-on-gcc
10:22 brrt well, maybe llvm would've 'won' on technical merits, but the risk was there
10:22 nine I'm quite sure we'd have seen an open sourced later swift on gcc, just like we've seen with the llvm version
10:22 brrt i'm not so sure
10:23 brrt and in the meantime, that would have invalidated all what gnu stood for
10:23 brrt stands for
10:24 brrt let's put it another way
10:24 nine Why? Having a plugin interface doesn't mean that they would have to accept proprietary plugins. _If_ there were proprietary plugins, they could have still sought legal measures.
10:24 brrt i don't think gnu/stallman had any choice in the manner, given the behaviour of others and their commitment to user freedoms
10:25 ChoHag I tried creating a new adverb for a postcircumfix operator with: multi sub postcircumfix:<[ ]>(\SELF, \pos, :$new-adverb!) is rw { die "here" }
10:25 ChoHag It doesn't die there.
10:25 brrt well, what would have stopped a propietary plugin-swift from a legal standpoint?
10:26 ChoHag Whether called as $foo[*]:new-adverb or postcircumfix:<[ ]>($foo, *, :new-adverb).
10:26 brrt not that it matters much; if you develop in swift then obviously open-source purity isn't your main concern
10:26 timotimo nebuchadnezzar: i'm not aware of any such magic that looks for a $_ in the argument passed to "when"
10:27 ChoHag [How] can I get my new adverb to be used?
10:27 dalek doc: c99887d | (Daniel Dehennin)++ | doc/Language/control.pod:
10:27 dalek doc: Remove implementation notes obsoleted by 2015.09
10:27 dalek doc:
10:27 dalek doc: Tested with Rakudo 2015.09 and IRC evalbot Rakudo
10:27 dalek doc: 2015.11.505.ge.52617.c.
10:27 dalek doc: review: https://github.com/perl6/doc/commit/c99887dd06
10:27 dalek doc: ab5de74 | (Daniel Dehennin)++ | doc/Language/control.pod:
10:27 dalek doc: Remove implementation notes obsoleted by 2015.11
10:27 dalek doc:
10:27 dalek doc: Tested with IRC evalbot Rakudo 2015.11.505.ge.52617.c.
10:27 dalek doc: review: https://github.com/perl6/doc/commit/ab5de74533
10:27 dalek doc: 68a913a | RabidGravy++ | doc/Language/control.pod:
10:27 dalek doc: Merge pull request #239 from baby-gnu/fix/obsolete-implementation-notes
10:27 dalek doc:
10:27 dalek doc: Fix/obsolete implementation notes
10:27 dalek doc: review: https://github.com/perl6/doc/commit/68a913a6d4
10:29 chansen_ joined #perl6
10:30 corbyhaas joined #perl6
10:31 timotimo ChoHag: you may need to put it earlier in the source, as adverbs do not take part in the sorting
10:31 BuildTheRobots joined #perl6
10:33 ChoHag I just tried having my -e string begin with that in a BEGIN block (and *then* the use statements which were previously -M options) and it still didn't work.
10:34 ChoHag Unexpected named parameter 'new-adverb' passed
10:34 ChoHag All I know is that it got trapped in the bind call in m-BOOTSTRAP.nqp, then I got lost.
10:35 timotimo oh, um
10:35 timotimo wasn't postcircumfix:<[ ]> actually turned into a method? or was that reversed in the mean time?
10:36 ChoHag Rakudo's source is full of 'multi sub postcircumfix:<[ ]>' definitions.
10:36 timotimo ah, it's a sub.
10:36 Hazim good buy to all
10:37 nebuchadnezzar timotimo: So you mean, “when $_ %% 3” evaluate to “when $_ ~~ $_ %% 3” ?
10:37 ChoHag m: BEGIN { multi sub postcircumfix:<[ ]>(\SELF, \pos, :$new-adverb!) is rw { die "here" } }; my @a; say @a[0]:new-adverb
10:37 camelia rakudo-moar e52617: OUTPUT«Unexpected named parameter 'new-adverb' passed␤  in block <unit> at /tmp/LggYSsUYzA:1␤␤»
10:37 timotimo nebuchadnezzar: i'd expect so, yeah
10:38 nebuchadnezzar Hotkeys: that make a great difference between when and if ;-)
10:39 timotimo ChoHag: the thing is, there's candidates in the core that take a slurpy hash, so they'll eat all named arguments
10:39 timotimo and i think that knows about what exact adverbs are "fine"
10:40 ChoHag So basically, it's a bad idea *and* probably impossible.
10:40 timotimo sorry about that :(
10:40 timotimo we may want to have a bug about that
10:40 timotimo but postcircumfix:<[ ]> is kind of performance critical :|
10:41 ChoHag Aye.
10:42 chansen_ joined #perl6
10:43 isacloud joined #perl6
10:44 olinkl joined #perl6
10:45 mrsolo joined #perl6
10:45 nine This is certainly one of the oddest bugs I've seen so far: https://gist.github.com/niner/fbacfa535a8bd8f8104e
10:47 kipd joined #perl6
10:47 nine Certainly something is wrong with merging globals
10:47 pnu joined #perl6
10:47 zemmihates joined #perl6
10:48 nine Well with merging globals when loding the precompiled files. Because without precomp it just works
10:48 Spot__ joined #perl6
10:50 SmokeMachine___ joined #perl6
10:50 parisba joined #perl6
10:50 ChoHag It took me 3 days (on and off) to figure this out and now I've no idea why I wanted to...
10:52 BuildTheRobots joined #perl6
10:53 ggherdov joined #perl6
10:53 clkao joined #perl6
10:54 jx2nas joined #perl6
10:56 dalek rakudo/nom: 4bc8f33 | lizmat++ | src/core/ (2 files):
10:56 dalek rakudo/nom: Remove $init-time-num leak from CORE
10:56 dalek rakudo/nom:
10:56 dalek rakudo/nom: Related to #126889 , but that is really about another problem.
10:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4bc8f33580
10:56 jdong joined #perl6
10:56 RabidGravy nine, seeing global merge failures in http::useragent on and off
10:57 xpen joined #perl6
10:59 lizmat timotimo: re unexpected named param, perhaps before throwing the error, we need to revisit if it really is an error
10:59 lizmat that would only make the new-adverb case slower, rather than all cases
11:01 lizmat sightseeing and decommute&
11:01 timotimo how do we reach the target lexical scope that may have the extra candidate available?
11:04 nowan joined #perl6
11:08 Skarsnik joined #perl6
11:11 RabidGravy okay to save me from having to try every thing I can think of how would I test whether a particular sub is defined?
11:12 llfourn RabidGravy: in a particular scope?
11:12 RabidGravy yeah
11:12 jdv79 doesnt ::() work?
11:12 llfourn ^^
11:12 jdv79 i never tried
11:13 RabidGravy let's look
11:13 llfourn ::('&particular-sub')
11:13 Skarsnik ::('sym') does Callable?
11:13 Skarsnik And hello
11:13 jdv79 hola
11:14 pierre-vigier joined #perl6
11:14 llfourn ::('sym') ~~ Callable :)
11:14 RabidGravy that was the one option I hadn't considered, that works cheers
11:14 jdv79 woohoo
11:16 vendethiel joined #perl6
11:16 jnthn afternoon, #perl6
11:16 yoleaux 12 Dec 2015 22:36Z <nine> jnthn: if use lib ought to install a $?REPO and this is a lexical and we prohibit use lib in modules, those modules may not be able to load their dependencies, since they will only look in $*REPO
11:17 pRiVi joined #perl6
11:18 timotimo afternoon, jnthn! :)
11:18 jdv79 afternoon
11:19 jnthn nine: Urgh...yes, unless it's a lexical effect on a global thing...
11:20 Skarsnik Any idea on how I can have https://github.com/Skarsnik/nativecall-typediag/blob/master/lib/NativeCall/TypeDiag.pm6#L19 to work? If I put like Mymodule::EXPORT::DEFAULT::.keys it works
11:20 dalek rakudo/nom: 50879b2 | grondilu++ | src/core/native_array.pm:
11:20 dalek rakudo/nom: cosmetic change in permutations
11:20 dalek rakudo/nom:
11:20 dalek rakudo/nom: re-align a closing bracket
11:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/50879b25dc
11:20 dalek rakudo/nom: a360f3b | jnthn++ | src/core/native_array.pm:
11:20 dalek rakudo/nom: Merge pull request #632 from grondilu/patch-9
11:20 dalek rakudo/nom:
11:20 dalek rakudo/nom: cosmetic change in permutations
11:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a360f3ba55
11:21 llfourn Skarsnik: try .WHO.keys
11:21 jnthn Skarsnik: Won't "$module-name::EXPORT::DEFAULT" parse as a fully qualified variable name that you'd like to interpolate?
11:22 jnthn Try "{$module-name}::EXPORT::DEFAULT" or so
11:24 Skarsnik does not work still ~~
11:25 pdl joined #perl6
11:26 Begi joined #perl6
11:28 llfourn m: module Foo { our sub test { } }; say ::('Foo').WHO.keys # not sure if this is anything close to what you want :P
11:28 camelia rakudo-moar 4bc8f3: OUTPUT«(&test)␤»
11:28 Begi2 joined #perl6
11:28 Skarsnik m: use NativeCall; my $a = "NativeCall"; say NativeCall::EXPORT::DEFAULT::.keys.elems;  say ::("{$a}::EXPORT::DEFAULT").WHO.keys.elems
11:28 llfourn ohh right your looking at EXPORT::DEFAULT :\ nvm that won't work
11:28 camelia rakudo-moar 4bc8f3: OUTPUT«Could not find symbol '&DEFAULT'␤  in block <unit> at /tmp/OKtvXP1Eyw:1␤␤Actually thrown at:␤  in block <unit> at /tmp/OKtvXP1Eyw:1␤␤»
11:29 llfourn EXPORT::DEFAULT is UNIT scoped so that won't ever work..?
11:29 Skarsnik duh it work me x)
11:29 llfourn or at least that's what I though
11:29 llfourn it can work?
11:29 Skarsnik root@testperl6:~/piko/nativecall-typediag/examples# perl6 -e 'use NativeCall; my $a = "NativeCall"; say NativeCall::EXPORT::DEFAULT::.keys.elems;  say ::("{$a}::EXPORT::DEFAULT").WHO.keys.elems'
11:29 Skarsnik 15
11:29 Skarsnik 15
11:30 llfourn hmm ok maybe I didn't think you could see those kind of things from outside
11:31 jnthn TimToady++ # great sink refactor
11:32 timotimo i don't even know what the GSR is there to achieve
11:32 Skarsnik the goal was to found the exported stuff x)
11:32 timotimo but TimToady++ anyway
11:33 llfourn Skarsnik: well you got to your goal I guess I learned something too :D
11:33 RabidGravy every time I have to look to work out the order of the args to Test::skip
11:34 leont joined #perl6
11:34 jdv79 a multi with named would help?
11:35 RabidGravy it would
11:35 RabidGravy same for todo
11:36 s_kilk joined #perl6
11:39 xpen joined #perl6
11:45 Skarsnik hm, that does not work well if I don't use the module and require ::($module-name) does not work too
11:46 Skarsnik I mean I get the stuff exported but they are 'empty' as I can't test their REPR for example
11:47 nine jdv79: golfed down the URI2 bug some more: https://gist.github.com/niner/fbacfa535a8bd8f8104e
11:48 pjscott joined #perl6
11:49 pjscott For a p6ish idiom for "all elements of @a have the same value", anything more elegant than all @a == @a[0] ?  Suppose @a is longish expression
11:49 timotimo i'd go [==] @a
11:50 timotimo alternatively you can use 1 == @a.Set
11:50 jnthn @a.unique == 1 also
11:50 jnthn But timotimo's first one is probably the most idiomatic
11:50 pjscott sweet
11:50 timotimo i don't know if [==] short-circuits, though
11:51 timotimo m: say [==] (^1000000000)
11:51 camelia rakudo-moar a360f3: OUTPUT«False␤»
11:51 timotimo m: say [==] (^100000000000000000000)
11:51 camelia rakudo-moar a360f3: OUTPUT«False␤»
11:51 timotimo m: say [+] (^10)
11:51 camelia rakudo-moar a360f3: OUTPUT«45␤»
11:51 timotimo seems so
11:51 timotimo m: say [==] (1 xx 1000000)
11:51 camelia rakudo-moar a360f3: OUTPUT«True␤»
11:51 timotimo right, it does short-circuit, otherwise it couldn't have been as fast :)
11:55 vendethiel m: say (^100000000000000000000).reduce(* == *)
11:55 camelia rakudo-moar a360f3: OUTPUT«(timeout)»
11:55 vendethiel not quite the same, though
11:55 timotimo no, it won't be
11:55 timotimo * == * doesn't count as chaining, for one
11:56 Actualeyes joined #perl6
11:57 s_kilk joined #perl6
11:58 jnthn m: say (^100000000000000000000).reduce(&infix:<==>)
11:58 camelia rakudo-moar a360f3: OUTPUT«False␤»
11:58 jnthn m: say (^100000000000000000000).reduce(&[==])
11:58 camelia rakudo-moar a360f3: OUTPUT«False␤»
12:00 timotimo i think * infixop * is a good way to get the same code, but none of the "properties"
12:00 jnthn aye
12:04 gauss joined #perl6
12:06 vendethiel m: (1, 1, 1).reduce(* == *)
12:06 camelia rakudo-moar a360f3: ( no output )
12:06 vendethiel m: say (1, 1, 1).reduce(* == *)
12:06 camelia rakudo-moar a360f3: OUTPUT«True␤»
12:06 vendethiel m: say (0, 0, 0).reduce(* == *)
12:06 camelia rakudo-moar a360f3: OUTPUT«False␤»
12:06 vendethiel :D
12:06 timotimo yeah.
12:07 dalek roast: 24bf700 | jnthn++ | S02-types/resolved-in-setting.t:
12:07 dalek roast: Test that we resolve code types in the setting.
12:07 dalek roast:
12:07 dalek roast: So that users defining their own type that happens to be called Code,
12:07 dalek roast: Block, Regex and so forth will not find themselves in a pickle. If
12:07 dalek roast: there is real desire to override these, it is still possible, it just
12:07 dalek roast: needs a custom setting, which seems a fair trade-off.
12:07 dalek roast: review: https://github.com/perl6/roast/commit/24bf70087a
12:11 gauss Hi, what is the most common application of Perl nowadays? Is it suitable for end-user programming(small utilities, GUI) on Windows?
12:11 grondilu most common is system administration, I'd guess.
12:11 Skarsnik Not really for Gui
12:12 Skarsnik lack of binding + slow
12:12 jnthn Web is also common
12:12 tadzik Web is very common, yes
12:12 jnthn Plus some bioinformatics
12:13 grondilu instead of "web" I'd say CGI.  Seems more honest.
12:13 nine grondilu: why CGI?
12:14 RabidGravy data pipeline, application integration, data transformation are some of the things I've worked on in the last ten years
12:14 grondilu I may be wrong but to me web programming in perl is not easy unless you do CGI.
12:15 RabidGravy I'd say you're wrong but hey
12:15 jnthn You're probably wrong, or I've misunderstood nearly every recent web framework talk I've seen at Perl confs recently :)
12:16 grondilu yeah I may be still living in the 90s and early 2000s
12:16 nine grondilu: I can't imagine web dev being more comfortable than in Perl actually :)
12:16 nine We do have really awesome frameworks
12:17 grondilu yeah but are they really better than frameworks in other languages?
12:17 llfourn grondilu: surprisingly, yes.
12:17 pdl Perl is a fast, reliable 'glue language' which makes it perfect web development projects
12:18 RabidGravy whilst I have written actual CGI programs in the recent past it's been because I have considered that just to create some data anything else would be too much overhead
12:18 stmuk they are pretty much the same as the other lang web frameworks
12:18 llfourn grondilu: Mojolicious is better than python tornado and ruby sinatra ( in my brief use of them )
12:18 stmuk almost as if ideas had been directly copied ;)
12:18 llfourn (and I'm biased)
12:19 stmuk mojo is the dogs bollocks
12:19 RabidGravy even in the early 2000s people were using straight up mod_perl stuff in lieu of anything else rather than CGI
12:19 llfourn stmuk: I disagree D:
12:20 tadzik hmm
12:20 stmuk llfourn: that means its good :D
12:20 tadzik that guy with a red valve on the back of his head, you know, when source games start?
12:20 llfourn stmuk: Oh! then I am in furious agreement :D
12:20 grondilu I don't like frameworks anyway.  To me it's like I have to learn and use an other language.
12:20 tadzik what if that's bald gaben :o
12:20 jnthn (git rebase -i)++ # letting me screw up and still push commits that look great anyway :)
12:20 llfourn it's the bollocks of something awesome at least
12:20 dalek rakudo/nom: 3c81e33 | jnthn++ | src/Perl6/ (3 files):
12:20 dalek rakudo/nom: Resolve code-related objects in setting.
12:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3c81e335f3
12:20 dalek rakudo/nom: 7ecba50 | jnthn++ | src/Perl6/ (2 files):
12:20 dalek rakudo/nom: Fix X:: resolutions to be done in the setting.
12:20 dalek rakudo/nom:
12:20 dalek rakudo/nom: We already caught most of these before now, but missed these ones.
12:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7ecba50136
12:20 dalek rakudo/nom: 1943fa8 | jnthn++ | t/spectest.data:
12:20 dalek rakudo/nom: Run S02-types/resolved-in-setting.t.
12:20 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1943fa8e31
12:21 llfourn grondilu: that's true. I think I know mojolicious better than perl itself :P
12:21 llfourn which is probably a good thing...
12:21 stmuk https://pbs.twimg.com/media/CWBWZKQWEAABC6N.jpg:large
12:21 RabidGravy (British vernacular idiom)++ # confusing non-native speakers and americans for ever
12:22 pierre-vigier joined #perl6
12:22 llfourn stmuk: heh.. I don't even
12:22 grondilu I wonder if web frameworks would gain in marketting themselves as whole programming languages
12:22 stmuk maybe next year LPW gets a Edward Snowdon style talking jnthnbot :)
12:22 llfourn RabidGravy: I'm australian lol
12:22 grondilu something like here's Mojolicious, a programming language that looks like perl but which is designed for web programming.
12:23 vendethiel m: $_ = 'a'; say 'hey' if !/b/;
12:23 camelia rakudo-moar a360f3: OUTPUT«hey␤»
12:24 pdl gauss: The thing about perl is that it's very flexible. Almost anything that another language can do, perl can either use or replicate. It's used for loads and loads of things, but what it's traditionally been most stronlgly associated with is system administration, websites, and a few domain-specific things like bioinformatics. Does that answer your question?
12:24 llfourn grondilu: you need it though. It's got a consistent event loop interface and things like Mojo::Redis and Mango which I use all the time. Oh and Mojo::UserAgent which is the greatest thing ever. Come to think of it I use Mojo outside of a web server context than in it.
12:26 gauss pdl: yep)
12:26 jnthn A consistent interface for async things is important. (Thus why Promise and Supply are part of the Perl 6 language. :))
12:26 llfourn jnthn:
12:26 llfourn I am in absolute agreement :)
12:26 llfourn I can't wait to write all that kind of stuff without loading modules
12:27 llfourn and writing Mojo::IOloop->start
12:27 RabidGravy yeah, which makes it a no-brainer for the kind of things I like to work on
12:27 llfourn which I just mistyped # see what I mean
12:27 jnthn Well, it's not just "without loading modules", it's also that when we do get a bunch of modules that expose or process async data sources, they can do it using Promise/Supply, and so can be composed easily with others.
12:29 llfourn point taken. That's so true. Mojo doesn't even have inbuilt promises...
12:31 llfourn I really secretly enjoy angular JS because of it's inbuilt promises and how all extensions use it and provide their async interfaces with it.
12:31 * jnthn wonders if we can get back down to 20 xmas RTs today... :)
12:31 jnthn lunch &
12:32 RabidGravy easy
12:32 timotimo yeah. damn JS and its 50 different promise implementations
12:32 dalek rakudo/nom: db6e4d4 | (Stefan Seifert)++ | src/Perl6/World.nqp:
12:32 dalek rakudo/nom: No need to load Perl6::Module loader anymore for loading Perl6 modules
12:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/db6e4d4e3a
12:32 dalek rakudo/nom: 5308479 | (Stefan Seifert)++ | src/core/CompUnit/RepositoryRegistry.pm:
12:32 dalek rakudo/nom: Don't merge symbols into Any's WHO
12:32 dalek rakudo/nom:
12:32 dalek rakudo/nom: When loading precomp files, load_module is called without a GLOBALish, but with
12:32 dalek rakudo/nom: Any instead. In that case, we shouldn't merge globals at all.
12:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/53084790a3
12:33 * llfourn hides inside angularJS
12:33 pdl Followingin on from gauss' question, I would be interested to know what people on this channel think #perl6 will be most strongly associated with, what the problems are for which in a few year's time people will think "that's a job for perl6" rather than "I can do that in whatever other language I already know"
12:34 RabidGravy well, it's look at the ecosystem and see what people are already doing with it for starters :)
12:34 RabidGravy anyway off to get xmas tree
12:34 llfourn pdl: for me it is being able to create DSLs but have all the good stuff built in
12:35 llfourn async, module loading, loops, lexical scope
12:35 pdl RabidGravy: Mostly porting perl5 stuff, at the moment, it looks like.
12:36 pdl llfourn, sure. There are some really fantastic things in there.
12:36 llfourn so 'hey we need a language to let our users describe XXX problem to our framework' => Perl 6
12:36 pdl What I'm wondering though is what are the things that it'll be used for.
12:36 pdl Hm
12:37 llfourn (this is what I'm doing in Perl 6)
12:37 pdl In the same way that you *can* use R to do web dev but probably you'll be using it for stats, academia, maybe some business reporting
12:38 llfourn yes R is great for describing (and solving optimaly) some type of problems -- but Perl 6 can quickly and easily be morphed into whatever language you need
12:39 lmmx joined #perl6
12:39 llfourn because it's written in itself
12:42 xpen joined #perl6
12:46 kid51 joined #perl6
12:47 csson joined #perl6
12:54 lizmat joined #perl6
13:01 Begi2 Where should I write the doc of a module ? In the README file I guess ?
13:07 lizmat not sure if we have any official guidelines for that just yet
13:07 lizmat old-style Perl modules either carried it in the source itself, or in a separate .pod file
13:07 lizmat README I guess is the easiest visible on Github
13:07 lizmat YMMV
13:12 Skarsnik I like mi6 idea. put the doc in the "main" module and generate the readme.md from the pod
13:13 weihan joined #perl6
13:15 lizmat m: dd (1 => 42).key   # shouldn't that be a Str ???
13:15 camelia rakudo-moar 530847: OUTPUT«Int $var = 1␤»
13:16 llfourn lizmat: I think it should be a Int because it's a pair (anything can be the key afaik?)
13:16 lizmat m: dd Pair.new(1,42).key
13:16 camelia rakudo-moar 530847: OUTPUT«Int $var = 1␤»
13:16 lizmat in this case I agree
13:17 llfourn m: say dd { 1 => 42 }.keys[0]
13:17 camelia rakudo-moar 530847: OUTPUT«Str $var = "1"␤Nil␤»
13:17 n0xff joined #perl6
13:17 lizmat but the fat comma is supposed to stringify anything on the left
13:17 lizmat well, barewords that is
13:17 pdl 1 is an int and not a bareword
13:17 llfourn lizmat: heh well I've been using like it doesn't do that for a while so I'm not sure :P
13:19 llfourn m: class Foo { }; dd ( Foo.new => 42 ).key
13:19 camelia rakudo-moar 530847: OUTPUT«Foo $var = Foo.new␤»
13:20 llfourn so I guess you think Int.new(1) on LHS should be Int but 1 by itself should be Str?
13:21 lizmat m: dd (NaN => 42).key
13:21 camelia rakudo-moar 530847: OUTPUT«Str $var = "NaN"␤»
13:21 llfourn m: class Foo { }; dd ( Foo => 42 ).key
13:21 camelia rakudo-moar 530847: OUTPUT«Str $var = "Foo"␤»
13:22 lizmat it seems the spec indicate that autoquoting of the fatarrow only applies to identifiers
13:22 jnthn Only things that parse as identifiers to the LHS of => are considered identifiers
13:22 lizmat so, is NaN an identifier ?
13:22 jnthn Yes
13:22 jnthn It's literally "does it match <identifier>"
13:22 lizmat m: dd (Int => 42).key
13:22 camelia rakudo-moar 530847: OUTPUT«Str $var = "Int"␤»
13:22 lizmat ok
13:23 lizmat m: dd ((Int) => 42).key
13:23 camelia rakudo-moar 530847: OUTPUT«Int $var = Int␤»
13:23 jnthn Where <identifier> is declarative, so picking that parse over the infix => falls out of LTM
13:45 lucasb joined #perl6
13:47 zakharyas joined #perl6
13:48 lmmx joined #perl6
13:48 firstdayonthejob joined #perl6
13:54 grondilu m: my %h{Pair}; %h{A => "B"} = pi; say %h{A => "B"};
13:54 camelia rakudo-moar 530847: OUTPUT«(Any)␤»
13:55 grondilu m: say (A => "B").WHICH;
13:55 camelia rakudo-moar 530847: OUTPUT«Pair|63037200␤»
13:57 grondilu ^seems very wrong
13:57 dalek roast: 91eaba2 | jnthn++ | S09-multidim/subs.t:
13:57 dalek roast: Add tests for subs on multi-dim arrays.
13:57 dalek roast:
13:57 dalek roast: To complement the methods tests, and make sure we don't have any
13:57 dalek roast: divergences in behavior. (We do, as noted in RT #126799, in reverse;
13:57 dalek roast: this is being patched. But this shows that in all the other cases we
13:57 dalek roast: are already doing the righ thting.)
13:57 dalek roast: review: https://github.com/perl6/roast/commit/91eaba28ee
13:58 jnthn Is Pair listed as a value type in the design docs, ooc?
13:58 jnthn m: my $p = A => 2; $p.value = 42; say $p
13:58 camelia rakudo-moar 530847: OUTPUT«Cannot modify an immutable Int␤  in block <unit> at /tmp/JWHaGQNiOB:1␤␤»
13:58 jnthn Guess it maybe could be one
13:59 grondilu m: use MONKEY-TYPING; augment class Pair { method WHICH { .key.WHICH ~ '=>' .value.WHICH } }; say (a => "b").WHICH;
13:59 camelia rakudo-moar 530847: OUTPUT«Method 'key' not found for invocant of class 'Any'␤  in method WHICH at /tmp/il5sLhKv1P:1␤  in block <unit> at /tmp/il5sLhKv1P:1␤␤»
13:59 grondilu m: use MONKEY-TYPING; augment class Pair { method WHICH { self.key.WHICH ~ '=>' self.value.WHICH } }; say (a => "b").WHICH;
13:59 camelia rakudo-moar 530847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/w6aGdwX06Z␤Two terms in a row␤at /tmp/w6aGdwX06Z:1␤------> 3r { method WHICH { self.key.WHICH ~ '=>'7⏏5 self.value.WHICH } }; say (a => "b").WH␤    expecting any of:␤        infix␤        infi…»
13:59 grondilu m: use MONKEY-TYPING; augment class Pair { method WHICH { self.key.WHICH ~ '=>' ~ self.value.WHICH } }; say (a => "b").WHICH;
13:59 camelia rakudo-moar 530847: OUTPUT«Str|a=>Str|b␤»
14:01 grondilu FYI I thought about using pairs as keys while solving http://adventofcode.com/day/13
14:02 grondilu because then I could do %preferences{@permutation Z=> @permutation.rotate(1)}
14:03 lizmat grondilu: that should work fine
14:03 lizmat m: dd 1 => 2 => 3 => 4
14:03 camelia rakudo-moar 530847: OUTPUT«Pair $var = 1 => 2 => 3 => 4␤»
14:03 grondilu it did not.  See above.
14:03 lizmat ah ?
14:04 grondilu you can't use pairs as keys.
14:04 grondilu m: my %h{Pair}; %h{A => "B"} = pi; say %h{A => "B"};
14:04 camelia rakudo-moar 530847: OUTPUT«(Any)␤»
14:05 dalek rakudo/nom: 5b6cbc7 | lizmat++ | src/core/Pair.pm:
14:05 dalek rakudo/nom: Fix a number of edge cases in Pair.perl
14:05 dalek rakudo/nom:
14:05 dalek rakudo/nom: Spotted by zefram++ , cases such as Nil => 42 vs (Nil) => 42.  I also found
14:05 dalek rakudo/nom: two other edge cases: NaN and Inf as a left hand side
14:05 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5b6cbc7d54
14:06 lizmat m: my %h{Pair}; %h{A => "B"} = pi; dd %h.keys[0]   # grondilu, looks like it stores ok
14:06 llfourn m: use Test do { \(snake => 'viper').say; () } # use arg named munging leaks out of just top level arguments, bug?
14:06 camelia rakudo-moar 530847: OUTPUT«Pair $var = :A("B")␤»
14:06 camelia rakudo-moar 530847: OUTPUT«\("viper")␤»
14:07 grondilu m: my %h{Pair}; %h{A => "B"} = pi; say %h.keys.pick.perl
14:07 camelia rakudo-moar 530847: OUTPUT«:A("B")␤»
14:07 jnthn lizmat: Yes, it will, but you won't end up with it looked up OK, because the second time you mention the Pair you constuct a new one.
14:07 lizmat yeah, and it isn't a value type
14:07 jnthn m: my $p = A => "B"; my %h{Pair}; %h{$p} = 42; say %h{$p}
14:07 camelia rakudo-moar 530847: OUTPUT«42␤»
14:08 lizmat yeah, not helping much
14:08 lizmat I guess if neither of key and value are containers, we could generate a .WHICH that *is* a value type?
14:08 lizmat brb
14:08 grondilu m: my %h; %h{A => "B"} = pi; say %h.keys.pick.perl
14:08 camelia rakudo-moar 530847: OUTPUT«"A\tB"␤»
14:09 grondilu m: my %h; %h{A => "B"} = pi; say %h{A => "B"};
14:09 camelia rakudo-moar 530847: OUTPUT«3.14159265358979␤»
14:09 grondilu lol, I guess I could do that
14:11 lizmat yup, you're effectively making it a value type that way
14:11 jnthn m: my @a[2;2] = (0,1),(2,3); say squish @a
14:11 camelia rakudo-moar 5b6cbc: OUTPUT«Cannot access 2 dimension array with 1 indices␤  in block <unit> at /tmp/4mnZOYqqSY:1␤␤»
14:11 grondilu I lose the structure in the keys though.  I was planning on using it.
14:12 lizmat perhaps you need to mixin a .WHICH
14:12 lizmat hmmm....
14:13 lizmat jnthn: https://gist.github.com/lizmat/2b8ff5d17f6ef970fc20   # diff for fixing Slip assignment to a scalar and .map it
14:13 lizmat doesn't seem to work
14:13 lizmat decommute continues&
14:14 Zoffix joined #perl6
14:14 Zoffix left #perl6
14:16 grondilu 15:08 < lizmat> I guess if neither of key and value are containers, we could generate a .WHICH that *is* a value type?
14:16 grondilu ^I would agree with that
14:18 grondilu m: use MONKEY-TYPING; augment class Pair { method WHICH { "{self.key.WHICH} => {self.value.WHICH}" } }; say (a => "b").WHICH;  # or this
14:18 camelia rakudo-moar 5b6cbc: OUTPUT«Str|a => Str|b␤»
14:19 grondilu m: use MONKEY-TYPING; augment class Pair { method WHICH { "{self.key.WHICH} => {self.value.WHICH}" } }; say (a => "b").WHICH; my %h{Pair}; %h{foo => "bar"} = pi; say %h{foo => "bar"}
14:19 camelia rakudo-moar 5b6cbc: OUTPUT«Str|a => Str|b␤3.14159265358979␤»
14:20 grondilu m: use MONKEY-TYPING; augment class Pair { method WHICH { "{self.key.WHICH} => {self.value.WHICH}" } }; my %h{Pair}; %h{foo => "bar"} = pi; say %h{foo => "bar"}
14:20 camelia rakudo-moar 5b6cbc: OUTPUT«3.14159265358979␤»
14:20 lambert16 joined #perl6
14:20 grondilu m: use MONKEY-TYPING; augment class Pair { method WHICH { "{self.key.WHICH} => {self.value.WHICH}" } }; say (a => "b").WHICH; my %h{Pair}; %h{foo => "bar"} = pi; say %h.keys.pick.perl
14:20 camelia rakudo-moar 5b6cbc: OUTPUT«Str|a => Str|b␤:foo("bar")␤»
14:21 xpen joined #perl6
14:21 grondilu in any case returning the WHERE of the container seems wrong to me
14:21 grondilu m: say (my $ = A => "B").WHICH;
14:21 camelia rakudo-moar 5b6cbc: OUTPUT«Pair|70037216␤»
14:22 grondilu m: say (my $ = A => "B").WHERE;
14:22 camelia rakudo-moar 5b6cbc: OUTPUT«139907610496880␤»
14:22 grondilu ah sorry that's not the WHERE
14:22 * grondilu confused stuff
14:23 Zoffix joined #perl6
14:23 jnthn We don't try to use WHERE for identity, because it changes over an object's lifetime :)
14:23 Zoffix docs.perl6.org aren't being generated BTW
14:24 Zoffix Last update is "Generated on 2015-12-10T13:09:43Z"
14:26 Zoffix m: ^2 .grep(*.^can: 'a');
14:26 camelia rakudo-moar 5b6cbc: ( no output )
14:26 Zoffix m: ^2 .grep(*.^can:'a');
14:26 camelia rakudo-moar 5b6cbc: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OdIfxA9Ib7␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/OdIfxA9Ib7:1␤------> 3^2 .grep(*.^can:7⏏5'a');␤    expecting any of:␤        colon pair␤»
14:26 Zoffix That error is LTA :(
14:26 Upasaka joined #perl6
14:28 lucasb doc site error is: 'Could not find experimental in any of'
14:28 tipdbmp joined #perl6
14:30 jnthn m: use experimental :macros;
14:30 camelia rakudo-moar 5b6cbc: ( no output )
14:30 jnthn Hmm
14:30 jnthn lucasb: Do you know what Perl 6 version it's using to do the build?
14:31 lucasb build log says 2015.09-210-gef814c3, but idk... :)
14:31 jnthn yowser, that's old :)
14:31 lucasb I mean, that is just the directory under ~/doc.perl6.org/.perl6
14:32 lucasb ~doc.perl6.org/.perl6  # the username is doc.perl6.org
14:35 lmmx joined #perl6
14:36 pdl Even on 2015.11-513-g5308479 perl6/doc doesn't appear to run `make html`. https://github.com/perl6/doc/issues/227 looks like the problem.
14:38 pdl The error 'Type check failed in assignment to @!categories; expected Str but got Array' is a bit perplexing to me (still very new to perl6)
14:38 BenGoldberg joined #perl6
14:39 RabidGravy joined #perl6
14:39 pdl @!categories (declared as 'has Str @.categories' in Perl6/Documentable.pm), so isn't it expecting an array of strings?
14:40 RabidGravy yes
14:40 jnthn Yes. If I had to guess, I'd suspect a constructor call is feeding it an itemized array.
14:42 pdl Not sure what one of those is, but here's the line that's triggering the error: @!documentables.append: my $d = Perl6::Documentable.new(|%args)
14:44 pdl Which is probably not helpful unless the unary pipe (?) is doing something bad
14:44 RabidGravy it turns the associative into named args there
14:45 lucasb m: class C { has Str @.arr }; say C.new(arr => ['a','b'])
14:45 camelia rakudo-moar 5b6cbc: OUTPUT«C.new(arr => Array[Str].new("a", "b"))␤»
14:45 lucasb m: class C { has Str @.arr }; my %h = arr => ['a','b']; C.new(|%h)
14:45 camelia rakudo-moar 5b6cbc: OUTPUT«Type check failed in assignment to @!arr; expected Str but got Array␤  in block <unit> at /tmp/8PgTIwe7qa:1␤␤»
14:47 lucasb so... in the constructor ['a','b'] gets coerced into Array[Str], but not when it's unpacked with |%h, right?
14:47 RabidGravy m: class C { has Str @.arr }; my %h<arr> :=  ['a','b']; C.new(|%h)
14:47 camelia rakudo-moar 5b6cbc: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MlhfT4cZGu␤Shaped variable declarations not yet implemented. Sorry. ␤at /tmp/MlhfT4cZGu:1␤------> 3class C { has Str @.arr }; my %h<arr>7⏏5 :=  ['a','b']; C.new(|%h)␤»
14:47 RabidGravy m: class C { has Str @.arr }; my %h; %h<arr> :=  ['a','b']; C.new(|%h)
14:47 camelia rakudo-moar 5b6cbc: ( no output )
14:48 RabidGravy it's that one
14:50 lichtkind joined #perl6
14:56 lichtkind masak you brushing up knuth?
14:56 Zoffix Is it possible to make constants visible in the subclass?
14:56 Zoffix m: class Foo { constant foo = 42; }; class Bar is Foo { method x { return foo } }; Foo.new.x
14:56 camelia rakudo-moar 5b6cbc: OUTPUT«5===SORRY!5=== Error while compiling /tmp/D5BLLLRRlk␤Undeclared routine:␤    foo used at line 1␤␤»
14:57 jnthn constants are our-scoped by default
14:57 jnthn So you can see it as Foo::foo
14:57 Zoffix m: class Foo { constant foo = 42; }; class Bar is Foo { method x { return Foo::foo } }; say Bar.new.x
14:57 camelia rakudo-moar 5b6cbc: OUTPUT«42␤»
14:57 Zoffix How can I avoid typing Foo:: in the subclass?
14:58 pdl m: class C { has Str @.arr }; my %h; %h = :arr(["a","b"]); C.new(|%h)
14:58 camelia rakudo-moar 5b6cbc: OUTPUT«Type check failed in assignment to @!arr; expected Str but got Array␤  in block <unit> at /tmp/sSm2xtJxMd:1␤␤»
14:58 raiph joined #perl6
14:59 RabidGravy m: class Foo { our constant foo = 42; }; class Bar is Foo { method x { return Foo::foo } }; say Bar.new.x
14:59 camelia rakudo-moar 5b6cbc: OUTPUT«42␤»
14:59 jnthn Zoffix: Declare the constants outside of either?
14:59 RabidGravy or that
14:59 Zoffix jnthn, thanks. That worked
15:00 jnthn Unlike some languages, Perl 6 doesn't consider subclasses as privileged in any way with regard to what symbols they can see.
15:01 pdl I think this is what's going on, in https://github.com/perl6/doc/blob/master/htmlify.p6#L418
15:01 Zoffix That introduces the obvious problem that I can't just make a base class that declares a whole bunch of symbols the subclasses don't need to.
15:01 lichtkind is the official wording perl 6 1.0 or perl 6.0.0 ?
15:01 jnthn Zoffix: Yes, that's not what inheritnace is for.
15:01 Zoffix I see
15:01 jnthn That's what importing is for.
15:07 Zoffix m:  class Foo { method foo { say callframe.annotations } }; Foo.new.foo
15:07 camelia rakudo-moar 5b6cbc: OUTPUT«file => /tmp/vnAXFVCRPV, line => 1␤»
15:07 Zoffix Is there a way to get "Foo", the package name, as the response? The docs suggest there's no simply way: http://doc.perl6.org/language/5to6-perlfunc#caller
15:07 Zoffix Oh wait no
15:07 Zoffix Disregard, that's not what I want
15:08 Zoffix m:  class Foo { method foo { say callframe.annotations } }; class Bar is Foo { method bar { $.foo } }; Bar.new.bar
15:08 camelia rakudo-moar 5b6cbc: OUTPUT«file => /tmp/UwaBQ7YR_i, line => 1␤»
15:08 Zoffix This. I want to say "Foo"
15:08 Zoffix This. I want to say "Bar", I mean >_<
15:12 RabidGravy You can get the package of a method:
15:13 RabidGravy m: class Foo { method foo { say &?BLOCK.package.^name } }; Foo.new.foo
15:13 camelia rakudo-moar 5b6cbc: OUTPUT«Foo␤»
15:14 Zoffix m:  class Foo { method foo { say &?BLOCK.package.^name } }; class Bar is Foo { method bar { $.foo } }; Bar.new.bar
15:14 camelia rakudo-moar 5b6cbc: OUTPUT«Foo␤»
15:14 Zoffix I want that to say Bar. Basically, I want a class to have a method subclasses can call and if $!debug is set, I want that method to output the name of the subclass.
15:15 RabidGravy m: class Foo { method foo { say $?PACKAGE.^name } }; Foo.new.foo
15:15 camelia rakudo-moar 5b6cbc: OUTPUT«Foo␤»
15:15 RabidGravy m: class Foo { method foo { say $?PACKAGE.^name } }; class Bar is Foo {}; Bar.new.foo
15:15 camelia rakudo-moar 5b6cbc: OUTPUT«Foo␤»
15:15 RabidGravy Hmm
15:16 Zoffix m: class Foo { method foo { say $?CLASS.^name } }; class Bar is Foo {}; Bar.new.foo
15:16 camelia rakudo-moar 5b6cbc: OUTPUT«Foo␤»
15:16 lichtkind im for the perl 6.0.0
15:17 RabidGravy entirely possible that there's something in the Backtrace or Callframe that has it
15:17 lichtkind even it sounds less s a new thing
15:17 Zoffix I'm for 6.0 v1
15:17 Zoffix Or rather, Perl 6 v1
15:17 lichtkind it is official?
15:17 RabidGravy of course if the method was in a role then it $?CLASS should be right
15:18 Zoffix lichtkind, what's "official"?
15:19 lichtkind well best approval by the big mustache
15:20 TimToady it will most likely be called 6c
15:20 RabidGravy what the boss said
15:21 lichtkind what the c stand for?
15:21 TimToady christmas
15:21 TimToady you you can call it 6.Christmas too
15:21 frizzi joined #perl6
15:21 TimToady that's a language version, not a rakudo version
15:21 lichtkind allright just want to let you know i dont joking this will be headline of the biggest german article about perl 6 on christma
15:21 lichtkind s
15:21 TimToady so it won't change very fast
15:21 lichtkind yes
15:22 jnthn The key thing to keep in mind is that there are now language and implementation versions.
15:22 * Skarsnik wish someone add a proper https support in ua
15:22 TimToady and the next one after that will likely be Diwali
15:22 jnthn So "officially" it's like "Rakudo 2015.12 (provides Perl 6.Christmas)"
15:22 TimToady note what -v says now
15:23 jnthn Ah, implementing :)
15:24 TimToady so that rt is partly fixed, but the info is still scattered about
15:24 lichtkind haha
15:24 jnthn TimToady: Yeah, I put it on the xmas list
15:24 TimToady saw
15:24 jnthn Currently tidying up some multi-dim corner cases
15:25 jnthn Figured we'll allow .reverse and .rotate on 1-dim
15:25 TimToady have a few more things to tidy up in the gsr, but it passes all the tests
15:25 jnthn We can decide semantics for those on multi-dim in the future if we want.
15:25 jnthn Nice \o/
15:25 RabidGravy but isn't Divali like next november now?  (still stuffed from all the goodies the lovely neighbours brought round)
15:25 frizzi left #perl6
15:25 TimToady the releases are just names, they don't have to track the dates
15:26 RabidGravy :)
15:26 jnthn That said, next November for the next *language* version is probably about right.
15:26 lichtkind TimToady so subtitel : larry set free rakudo on moar for productive use (loose translation)
15:26 lichtkind TimToady, that would be allright?
15:27 TimToady that's okay
15:28 TimToady shower &
15:30 grondilu we'll we have .transpose on 2-dim?
15:30 cognominal joined #perl6
15:31 jnthn That can be module space for now.
15:31 grondilu more generally linear algebra will be module space, I suppose.
15:31 grondilu (or PDL or whatever)
15:33 lichtkind TimToady it serves as explanation what christams means and second headline always should you give a gist of facts while being varity from first heading
15:33 lichtkind TimToady, thanks
15:35 grondilu the other day I was considering updating the French wikipedia article with inforabout the christmas release, but I was not sure what to say exacly, nor which reference to add on when and where exactly did the announcement occurred.
15:35 Zoffix Well, I solved my "can't get subclass's name from class's method" problem: https://gist.github.com/zoffixznet/5f563d30298552acf82e
15:35 lichtkind i already udated german wikipedia a bit
15:35 lichtkind but will do rest on release day
15:35 Zoffix So hackish and filthy... :)
15:35 grondilu what exactly will happen on christmas?
15:35 lichtkind yes took me weeks and weeks to clean up an article
15:35 Skarsnik the earth explode
15:36 dalek rakudo/nom: cb9ccb6 | jnthn++ | src/core/Rakudo/Internals.pm:
15:36 dalek rakudo/nom: Fix .Slip on shaped data structures.
15:36 dalek rakudo/nom:
15:36 dalek rakudo/nom: Slip has no shape, so we produce a Slip of the leaves.
15:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/cb9ccb6b61
15:36 dalek rakudo/nom: c2a726e | jnthn++ | src/core/Any-iterable-methods.pm:
15:36 dalek rakudo/nom: Add candidate for sort to fix passing multi-dim.
15:36 dalek rakudo/nom:
15:36 dalek rakudo/nom: Rather than letting it fall to the analysis done in the existing
15:36 dalek rakudo/nom: candidate, which is doomed to fail.
15:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c2a726e846
15:36 dalek rakudo/nom: c086506 | jnthn++ | src/core/List.pm:
15:36 dalek rakudo/nom: Fix reverse to directly delegate on arrays.
15:36 dalek rakudo/nom:
15:36 dalek rakudo/nom: So we get the correct exception for reverse(@multi-dim).
15:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c08650667c
15:36 dalek rakudo/nom: ba273ef | jnthn++ | src/core/ (3 files):
15:36 dalek rakudo/nom: Allow rotate/reverse of 1-dim fixed arrays.
15:36 lichtkind you need a ground plan  a structure and write it subheading by subheading
15:36 dalek rakudo/nom:
15:36 dalek rakudo/nom: Or at least, do so for non-native arrays. We didn't yet implement the
15:36 dalek rakudo/nom: two operations at all on native arrays yet.
15:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ba273ef183
15:36 dalek rakudo/nom: def7024 | jnthn++ | t/spectest.data:
15:36 dalek rakudo/nom: Run S09-multidim/subs.t.
15:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/def70247ec
15:36 dalek roast: 8b9ae0a | jnthn++ | S09-multidim/ (2 files):
15:36 dalek roast: More multi-dim method/sub tests.
15:36 dalek roast: review: https://github.com/perl6/roast/commit/8b9ae0a537
15:36 lichtkind jnthn++
15:36 grondilu I mean I'm not willing to write "official" and actually put quotes around the word.  What does that mean?
15:36 dalek roast: 30a3a5f | jnthn++ | S09-multidim/ (2 files):
15:36 dalek roast: Test rotate/reverse on 1-dimensional arrays.
15:36 dalek roast: review: https://github.com/perl6/roast/commit/30a3a5f06d
15:36 lichtkind so to repush the topic anybody interested in perl 6 article for perl.com?
15:37 Zoffix Isn't it a site for a different language? :)
15:38 lichtkind its perl.com
15:38 lichtkind not perl5.com
15:38 lichtkind besides it has relevance to p5
15:39 Zoffix Just scrolling through the list of those faces, I see one or two with whom I had a heated "Perl 6 is killing us all" argument.
15:40 lichtkind head plenty of the too
15:40 lichtkind and were still alive
15:40 [Tux] Cannot find method 'run_alt' :(
15:40 [Tux] not even in a second attempt
15:41 Zoffix There's an RT for it: https://rt.perl.org/Ticket/Display.html?id=126832
15:41 psy_ joined #perl6
15:42 Zoffix lichtkind, wasn't really my point. The question at hand is: does Perl 6 infiltrate all the current "Just Perl" sites with the excuse "well, it's not perl5, so we can do that" or ruffle a ton of feathers or would our effort be better spent not doing that and positioning P6 as a new language.
15:43 Zoffix s/or/and/;
15:43 lichtkind perl.com is more about the practical side and the major news  items which release of p6.c is
15:44 lichtkind so i guessed there will be rather seldom p6 content
15:44 lichtkind but given there was no update since 14 it helps to stay recent too
15:45 * Zoffix sighs
15:45 zakharyas joined #perl6
15:46 Zoffix I don't feel perl.com is an appropriate place for any P6 content and placing it there will just piss off more people that are already pissed off... but, I don't want to go down the Name Issue Argument™ again :/
15:46 lichtkind really im surprised o now very few people who would feel that way
15:47 lichtkind is see it as : reporting of what we can be proud of
15:48 RabidGravy I'm personally just ignoring that whole thing and getting on with making software in the language
15:48 jnthn RabidGravy++
15:49 leont jnthn: #126839 might be candidate for the christmas list
15:49 Zoffix Considering I have at least half a million lines of P5 code, I can't really do that.
15:49 jnthn leont: It's just a bug, doesn't raise a substantive semantic issue.
15:49 jnthn leont: I think we all agree it should work.
15:49 leont Ah, ok
15:49 jnthn leont: And it's highly unlikely anyone will come to depend on the current bug.
15:50 * leont already does :-/
15:50 jnthn Oh?
15:50 leont TAP::Harness doesn't hangs in its tests, though I could temporarily fixing it by uncommenting the Terminal::ANSIColor support
15:50 leont commenting
15:51 jnthn That means you want if fixed, though, not that we'll break your working code by fixing it?
15:51 jnthn *want it
15:51 jnthn (I agree it's not a nice bug, there's just limited time before xmas...)
15:51 leont Fair enough, time is short
15:52 Zoffix made me class-finding thing a sub now with a bit of tweaking: https://gist.github.com/zoffixznet/3022e62544149d6a03fa
15:52 Zoffix Will fail if the caller is not in IRC::Client::Plugin:: tho :/
15:52 leont I'm just expecting other people to hit it soon, EVAL isn't that obscure as a feature, and because it seems to work at first it's highly confusing
15:52 Zoffix oh well
15:53 patrickz joined #perl6
15:53 vendethiel https://github.com/rakudo/rakudo/commit/c08650667c can someone explain to me the behavior difference?
15:54 RabidGravy Hmm, hitting that run_alt thing in some H::UA tests now
15:54 * RabidGravy updates rakudo on the grounds it can't make things any weirder
15:54 vendethiel or the interaction +@ has with multidim
15:55 jnthn vendethiel: +@a is a kind of slurpy, meaning you don't get the passed thing itself, but something that is based on its iteration
15:55 jnthn vendethiel: That means we failed to delegate the original multi-dim thing
15:55 vendethiel "based on its iteration"?
15:56 jnthn m: my @a[2;2] = (1, 2), (3, 4); sub foo(*@s) { say @s.perl }; foo(@a)
15:56 camelia rakudo-moar def702: OUTPUT«[1, 2, 3, 4]␤»
15:56 jnthn Like that.
15:56 vendethiel m: my @a[2;2] = (1, 2), (3, 4); sub foo(+@s) { say @s.perl }; foo(@a)
15:56 camelia rakudo-moar def702: OUTPUT«[1, 2, 3, 4]␤»
15:56 jnthn Multi-dim arrays, unlike just making an array of arrays, will iterate over their leaves
15:56 vendethiel ... now that's an unexpected and surprising corner case...
15:57 vendethiel m: my @a[2;2;2] = ((1, 2), (3, 4)), ((5, 6),); @a.map(*.perl.say);
15:57 camelia rakudo-moar def702: OUTPUT«1␤2␤3␤4␤5␤6␤Any␤Any␤»
15:57 dalek rakudo/nom: e160c98 | jnthn++ | src/core/Seq.pm:
15:57 dalek rakudo/nom: Missing `is raw` in Seq.AT-POS.
15:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e160c98d3f
15:58 dalek roast: d2bc215 | jnthn++ | S04-statements/gather.t:
15:58 dalek roast: Tests for RT #126424.
15:58 dalek roast: review: https://github.com/perl6/roast/commit/d2bc215f1a
15:58 AlexDaniel joined #perl6
16:00 jnthn OK, if TimToady++ merges the sink refactors today I imagine we'll be rid of https://rt.perl.org/Ticket/Display.html?id=125769 and so get down to 20 RTs. :)
16:02 BenGoldberg joined #perl6
16:02 vendethiel okay, so that's because multi-dim operations work on leaves as you explained
16:02 vendethiel I still consider that to be surprising, though :p
16:05 Ven joined #perl6
16:06 hartenfels joined #perl6
16:07 RabidGravy still getting the "Cannot find method 'run_alt'  at gen/moar/stage2/QRegex.nqp:1416""  with a freshly built rakudo
16:11 * RabidGravy updates Zoffix' RT
16:12 * Woodi just created wikipedia's polish Perl6 page: 1 sentence - 1 link...
16:12 * Zoffix cues in the Polish sausages joke
16:13 * lucasb doesn't understand polish
16:16 patrickz joined #perl6
16:16 adhoc joined #perl6
16:18 * jnthn understands reverse polish, and wonders if that counts...
16:20 timotimo "reverse polish" is basically "dulling"?
16:21 Woodi timotimo: WAT ?
16:22 grondilu Woodi: https://en.wiktionary.org/wiki/polish#Verb
16:23 grondilu https://en.wiktionary.org/wiki/dull#Verb
16:23 khw joined #perl6
16:23 timotimo it's not possible to make this joke in german, because polish (nationality) is "polnisch" and polish (making something shiny) is "polieren"
16:25 lichtkind colomon ping
16:25 leont Really, someone should make a joke about Turkey, polish and Finnish, but I'm not funny enough
16:26 pjscott joined #perl6
16:27 grondilu I've boutght a turkey, cooked it in a well-polish plate, and when I ate it I was finnish.
16:27 grondilu s/boutght/killed/
16:27 lichtkind reminds me on the epic quiz show  with that stupid blonde who went over wondering: hungry is a country?
16:28 grondilu was that justin Bieber?  https://www.youtube.com/watch?v=76CqijPNGSk
16:29 st_iron joined #perl6
16:29 flussence good morning/* #perl6, I'm working on a rakudo package for gentoo today. I've already got moar/nqp working (and passing tests), just need to figure out how to work around precomp...
16:29 st_iron good afternoon my friends
16:30 Woodi ok, some Germans here so I can ask:  do for you saying (I hear it from some UK citizen) that Poles are f*g Russians is as much *abstract* as for us ? :)
16:30 lichtkind https://www.youtube.com/watch?v=NQc4V_wTT_I
16:31 lichtkind Woodi, please rephrase
16:31 Woodi nah, nvm :)
16:31 lichtkind there are jokes about poles
16:31 lichtkind and about russians
16:32 lizmat joined #perl6
16:32 flussence «No writeable path found in block <unit> at tools/build/install-core-dist.pl:15» -- this is the one error I can't fix
16:34 Ben_Goldberg joined #perl6
16:34 lichtkind cheers lizmat
16:35 lizmat lichtkind o/
16:36 * jnthn bbl &
16:36 flussence sanity tests in rakudo seem to be failing too, probably for the same reason...
16:37 AlexDaniel m: my @a[3]; say @a.reverse
16:37 camelia rakudo-moar e160c9: OUTPUT«[(Any) (Any) (Any)]␤»
16:37 AlexDaniel m: my @a[3,2]; say @a.reverse
16:37 camelia rakudo-moar e160c9: OUTPUT«Cannot reverse a fixed-dimension array␤  in block <unit> at /tmp/s70Osi4tmx:1␤␤»
16:37 diana_olhovik_ joined #perl6
16:40 lizmat grondilu: re making Pair conditionally a value type: the which would need to be something like self.^name ~ "|| ~ self.perl
16:40 lizmat to make sure we don't collissions on things like Nil => 42 vs (Nil) vs 42
16:40 lizmat *=>
16:42 davercc joined #perl6
16:43 espadrine joined #perl6
16:50 masak ahoy, #perl6
16:51 lizmat ahoy masak
16:51 lizmat tunnelling&
16:52 * moritz didn't think lizmat++ was small enough for quantum operations like tunnelling
16:53 lizmat well, within a car within a train, I'm small enough (apparently)
16:54 masak lizmat: you're on a train too? :D
16:55 lizmat yup
16:55 masak I wonder what the dot product of our velocities is.
16:56 noganex joined #perl6
16:58 lmmx joined #perl6
17:01 WizJin joined #perl6
17:01 jdv79 nine:  cool.  digging into that at this point is beyond me i'm afraid.
17:03 jdv79 wait.  is it fixed?
17:03 chansen_ Does perl6 implement the Unicode collation algorithm?
17:03 moritz chansen_: I don't think so
17:05 chansen_ moritz: :o(
17:06 chansen_ Top notch unicode string implementation, but we can't sort our strings
17:07 chansen_ jnthn, TimToady ^^^
17:07 moritz let's say there's still room for improvement :-)
17:07 chansen_ True!
17:07 moritz there are lots of Unicode features/algorithms (like decomposition into words and sentences) that we don't do (yet?)
17:08 mst chansen_: getting the representation right for 6.c is the crucial thing
17:08 jnthn In general, policy so far is that anything that is language/culture specific belongs in module space.
17:09 moritz jnthn: well, the collation algorithm is supposed to work well enough for "most" data without needing to determine language
17:09 rubio_terra joined #perl6
17:10 chansen_ moritz: is correct, the default algorithm works for many cases
17:10 moritz http://www.unicode.org/reports/tr10/
17:11 moritz also http://userguide.icu-project.org/collation
17:11 zakharyas joined #perl6
17:11 chansen_ Does MoarVM use ICU internally?
17:11 lizmat chansen_: no, it doesn't
17:12 chansen_ OK
17:12 vividsnow joined #perl6
17:12 * lizmat is surprised to still have 4G well into the Channel tunnel
17:13 RabidGravy it surprised me last time I was on it
17:13 flussence .oO( maybe they have a powerline-ethernet adapter plugged into the rails )
17:13 chansen_ mst: I can understand that, but collation is a fundamental part for non US/UK developers/users
17:14 mst chansen_: I'm aware. however that can be built on top of a correct representation, whereas with the representation wrong you'd be completely stuffed, and how fundamental collation is to people's usage doesn't change that reality
17:15 dalek doc: b45a10e | (Daniel Perrett)++ | htmlify.p6:
17:15 dalek doc: Fix type check failing (gh #227)
17:15 dalek doc: review: https://github.com/perl6/doc/commit/b45a10ec37
17:15 dalek doc: 592e4a5 | (Zoffix Znet)++ | htmlify.p6:
17:15 dalek doc: Merge pull request #240 from pdl/pr-type-error
17:15 dalek doc:
17:15 dalek doc: Fix type check failing (gh #227)
17:15 dalek doc: review: https://github.com/perl6/doc/commit/592e4a5453
17:15 curious__ joined #perl6
17:15 colomon lichtkind: pong?
17:16 lichtkind ah
17:16 lichtkind you still work on Math::Vector?
17:17 skids joined #perl6
17:17 chansen_ mst: True, but IMHO it should be build-in considering Perl6's excellent Unicode support, it would be a major selling point compared to other languages
17:17 curious__ Looking at "methods(:local)" in docs. What other than ':local' can go there? Can it be negated?
17:18 mst chansen_: well, yes, everybody wants their biggest wishlist item built in.
17:18 timotimo the default is probably "negated :local"
17:18 jnthn chansen_: That could easily still happen in a future Perl 6 version. Showing up *now* to ask for something major that you'd like to be done in 6.Christmas is simply way, way too late.
17:18 mst I don't think he's asking for it, as such
17:18 mst my point is "it's not crucial because it can be added"
17:19 jnthn *nod*
17:19 moritz curious__: http://doc.perl6.org/type/Metamodel::MethodContainer#method_methods :all and :local can go there
17:19 mst if you want it sooner than the current contributors want to implement it, I'm sure they'd be happy to have your help
17:19 chansen_ jnthn: I'm not asking for it this christmas! Perhaps next? ;)
17:19 mst actually
17:19 moritz curious__: and you can negate them (:!local), which does the same as not applying them
17:19 jnthn chansen_: That's more realistic, yes :)
17:19 mst jnthn: if you do implement it, totally make chansen_ help
17:19 jnthn ;-)
17:19 mst he's just the right sort of insane pedantic genius
17:20 mst he used to maintain a lot of the catalyst HTTP abstractions that eventually got extracted and turned into chunks of Plack
17:20 jnthn Looking just at TR10, that sounds exactly what implementing it needs. :)
17:20 mst (sadly sri happened to him, as was often the case in those days)
17:20 jnthn *Just looking
17:20 mst see also Time::Moment, wherein chansen_ applies said brilliant pedantry to datetime implementation
17:21 mst anybody capable of staring down datetime math, in C, without having a nervous breakdown, is a rare and useful resource
17:21 mst chansen_: but since I'm feeling nice today I'll wait until after 6.c is out to shout well volunteered at you :P :D
17:23 curious__ Thanks! I was struggling for a term to search for
17:24 * chansen_ hugs mst for his exaggerated praise
17:25 arnsholt Well volunteered is such a good term. I use it occasionally at work when people are being overly helpful
17:25 _sri of course mst came here to attack me
17:26 masak er, of course?
17:26 chansen_ But I think I can speed up the UTF-8 processing in MoarVM, I recently submitted <https://gist.github.com/chansen/36544a219c288f09e7dc> to p5p which could also be used in MoarVM
17:26 mst masak: didn't you know? everything I've done for ten years is part of a subtle evil plot to damage sri
17:26 masak mst: I'm only now starting to realize
17:26 masak mst: man, that's devious
17:26 flussence chansen_: those percentages are ...scary
17:26 lizmat joined #perl6
17:26 _sri mst has recently been banned from the mojolicious project for abusive behavior, since then he's been badmouthing me wherever he could
17:27 masak fancy that
17:27 _sri so, take what he says with a grain of salt
17:27 mst abusive behaviour, as in "sri accused me of unbanning myself from #mojo and then banned me for saying that no, I hadn't done that"
17:27 jnthn chansen_: Such a patch to MoarVM would certainly be welcomed, if you're interested.
17:27 mst which presumably was also part of my evil plan; I wish I understood how
17:28 chansen_ flussence: it's the basic of SIMD, single instruction, multiple data
17:28 masak mst, _sri: I'm going to jump ahead a bit and declare your mutual dislike off-topic for this channel.
17:28 chansen_ jnthn: i will look into it
17:28 jnthn chansen_: There's plenty of performance improvements to be had in the normalization stuff to in Moar, since I so far focused on "try to get it right" :)
17:29 _sri masak: appreciated
17:29 mst yes. sorry. mojo's code of conduct applying to everybody except sri is a sore point. my mistake.
17:29 masak mst: don't push it ;)
17:29 flussence chansen_: makes me wonder how much of the software I'm using is using slow utf8 code... sometimes it does feel much worse than it needs to be :(
17:33 chansen_ flussence: The worst part is that many implementations simply sucks because they have not read the spec and only implement it partially and is a subject for attacks, like the one I reported for MongoDB which allowed you to smuggle characters because they didn't implement it properly!
17:34 RabidGravy Has anyone looked at https://rt.perl.org/Ticket/Display.html?id=126832 ?  Things are properly messed up somewhere
17:34 jnthn RabidGravy: It looks like a pre-comp screw-up
17:36 lizmat jnthn: BTW, should all ad-hoc dies and fails in the core be given an exception?
17:36 * flussence is all too aware there's sucky utf-8 implementations... gtk2.d used to have a big fat segfault when it encountered anything >= 0x1ffff
17:37 jnthn lizmat: In the long run, yeah. In the short term, most important thing is that no spectests expect X::AdHoc
17:37 jnthn (They should just expect Exception, so we're free to refine it later)
17:37 lizmat ok, now I'm not following
17:37 lizmat ah
17:38 jnthn I already did a pass through the tests for X::AdHoc
17:38 lizmat but that is the equivalent of using "dies-ok", which we thought was a bad thing
17:38 chansen_ flussence: the worst part is MongoDB didn't submit a CVE! I said they have to do it, but they didn't ;)
17:38 jnthn Yeah but if there isn't a typed exception to test for then we can't do better :)
17:38 lizmat because then you can have false positives because they don't die for the right reason
17:39 lizmat whcih would be my argument for making one then?
17:39 lizmat aka, fix all the dies/fails?
17:39 jnthn Oh, absolutely make one if you're in the position to do so.
17:39 lizmat ok
17:39 jnthn I'm just a bit spectical we've time to actually nail them all this side of 6.Christmas
17:39 jnthn So am hedging the testsuite so we can in the future :)
17:39 lizmat ok
17:40 lizmat btw, I think I have a solution for zefram's (1,2,3)[0] := 4 hang
17:40 lizmat spectesting now
17:40 jnthn Nice
17:40 skids Well, you can still test for Exception and then test .message, I think was the point.
17:42 jnthn Aye, though I'm not too fond it exact messages making it into the spectests either. :)
17:42 jnthn *of
17:42 jnthn Looking for "does the message contain X important thing" is sensible, though.
17:42 skids I've tried to be minimalist and do things like "these three words" must be in the .message.
17:42 skids right.
17:43 lizmat if you can take the time to make a test for "foo" in .message, then you could also have made an Exception for it
17:43 skids Well, minus the PR process, for me.
17:43 lizmat ak, there's that  :-)
17:46 * skids hopes there's an advent slated for curli because he's totally behind on what all has happened.
17:46 * jnthn needs to write his advent post for the year once he's had dinner :)
17:47 toto joined #perl6
17:55 lizmat joined #perl6
18:00 masak skids: now I'm hpoing for that, too
18:01 RabidGravy I'm not sure that bisecting H::UA to see exactly where it started tickling this run_alt thing is going to help
18:02 rurban joined #perl6
18:03 Skarsnik gobbla42
18:03 Skarsnik oups
18:04 Zoffix joined #perl6
18:04 tadzik oh, a password :)
18:05 Skarsnik For some reason, something did not take the focus xD
18:06 adu joined #perl6
18:07 Skarsnik_ joined #perl6
18:07 cognominal_ joined #perl6
18:07 avalenn joined #perl6
18:08 nine jdv79: no, not fixed yet. I just came across two minor nits with the source while digging into your bug
18:08 BuildTheRobots joined #perl6
18:09 nine jnthn: do you have a quick idea into which direction I should investigate for this bug? https://gist.github.com/niner/fbacfa535a8bd8f8104e
18:09 kipd_ joined #perl6
18:09 zemmihates_ joined #perl6
18:10 nine skids: I fear I won't have time to write about curli with a couple of bugs still needing attention. However if someone were to write a post, I'd be happy to answer any questions.
18:10 aigan_ joined #perl6
18:10 nine skids: https://gist.github.com/jnthn/47a42b2e86e7e552b2e2 should be a great start in any case
18:10 clkao_ joined #perl6
18:11 mephinet- joined #perl6
18:12 Util_ joined #perl6
18:12 spidermario joined #perl6
18:13 stux|RC joined #perl6
18:13 Actualeyes1 joined #perl6
18:13 lizmat_ joined #perl6
18:13 RabidGravy joined #perl6
18:13 molaf joined #perl6
18:13 virtualsue joined #perl6
18:14 geekosaur joined #perl6
18:14 lmmx joined #perl6
18:15 jnthn nine: I'd suspect it's something going wrong in resolve_repossession_conflicts
18:15 jnthn Or something around that area.
18:15 Zoffix m: say [96..104][(9/11).fmt('%.9f').comb.grep(/\d/)».Int]».chr.join
18:15 camelia rakudo-moar e160c9: OUTPUT«`hahahahah␤»
18:16 jnthn It's meant to merge stashes
18:16 dalek rakudo/nom: 782f4b6 | lizmat++ | src/core/Nil.pm:
18:16 dalek rakudo/nom: Make (1,2,3)[2] = 4 and (1,2,3)[3] give same error
18:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/782f4b60e5
18:16 nine jnthn: thanks!
18:16 M-eternaleye joined #perl6
18:16 jnthn dinner; bbiab :)
18:17 Zoffix m: say (9/11).fmt('%.42f')
18:17 camelia rakudo-moar e160c9: OUTPUT«0.818181818181818000000000000000000000000000␤»
18:17 Zoffix well, that's disappointing
18:18 lmmx joined #perl6
18:18 Zoffix Though not as much as typing "9/11" into WolframAlpha :/ http://www.wolframalpha.com/input/?i=9%2F11
18:19 TimToady m: say (9/11).base-repeating
18:19 camelia rakudo-moar e160c9: OUTPUT«(0. 81)␤»
18:19 grondilu oops that looks wrong
18:19 regreg joined #perl6
18:19 TimToady m: say (9/11).base(10,42)
18:19 camelia rakudo-moar e160c9: OUTPUT«0.818181818181818181818181818181818181818182␤»
18:20 Zoffix m: say [96..104][(9/11).base(10,42).comb.grep(/\d/)».Int]».chr.join
18:20 camelia rakudo-moar e160c9: OUTPUT«`hahahahahahahahahahahahahahahahahahahahahb␤»
18:20 hacst joined #perl6
18:20 * Zoffix feels satisfied
18:20 rindolf joined #perl6
18:21 firstdayonthejob joined #perl6
18:21 grondilu what is wrong is the way it's printed.  Should be 0.(81)
18:21 TimToady no, that's the old way
18:21 Zoffix m: say (9/11).base-repeating.Str
18:21 camelia rakudo-moar e160c9: OUTPUT«0. 81␤»
18:21 leedo multi method extract (@nodes where { .elems == 0 }) # is this the best way to have a multi method candidate for an empty array?
18:21 Zoffix m: say pi.base-repeating
18:21 camelia rakudo-moar e160c9: OUTPUT«Method 'base-repeating' not found for invocant of class 'Num'␤  in block <unit> at /tmp/2J507SBSrP:1␤␤»
18:21 TimToady it's a list, and you can format it however you like
18:21 grondilu oh yeah, I remember now.  my bad.
18:22 Zoffix m: say (3/3).base-repeating
18:22 camelia rakudo-moar e160c9: OUTPUT«(1 )␤»
18:22 Zoffix interesting....
18:23 Zoffix m: say (3/3).base-repeating.elems
18:23 camelia rakudo-moar e160c9: OUTPUT«2␤»
18:23 WizJin joined #perl6
18:23 Zoffix m: say (3/3).base-repeating[1]
18:23 camelia rakudo-moar e160c9: OUTPUT«␤»
18:24 TimToady I suppose it could return ('1','0')
18:24 * Zoffix was hoping it would return 0. (9)
18:24 Zoffix :)
18:24 Zoffix «0. 9» I mean
18:25 TimToady <whineyvoice> Why? </whineyvoice>
18:25 Zoffix ¯\_(ツ)_/¯ so people could say it's wrong, even though it's right? :)
18:26 azzure joined #perl6
18:26 mst how does base 1 even make sense?
18:26 rindolf joined #perl6
18:27 * mst was oping that if you tried that, a small gnome would exit the monitor and hit Zoffix with a mallet
18:27 Zoffix mst, hm? what base 1?
18:28 mst uhhh, is base-repeating on a number nothing to do with bases?
18:28 Zoffix m: say (1/3).base-repeating
18:28 mst if so, I retract my comment and replace it with "can somebody tell me what the heck that even is so I can stop making a fool of myself, please?"
18:28 camelia rakudo-moar e160c9: OUTPUT«(0. 3)␤»
18:29 Zoffix I've no idea as to the name of the method, but it seems it's returning the repeating portion of the infinite decimal portion of a number
18:29 Zoffix m: say (2/3).base-repeating
18:29 camelia rakudo-moar e160c9: OUTPUT«(0. 6)␤»
18:29 Zoffix m: say (3/3).base-repeating
18:29 camelia rakudo-moar e160c9: OUTPUT«(1 )␤»
18:29 moritz it gives you the base of a fraction and the repeating part afterwards
18:29 moritz m: say 100 / 7
18:29 camelia rakudo-moar e160c9: OUTPUT«14.285714␤»
18:30 moritz m: say (100 / 7).base-repeating
18:30 camelia rakudo-moar e160c9: OUTPUT«(14. 285714)␤»
18:30 moritz the 285714 is repeating, the 14. is the base
18:30 lestrrat joined #perl6
18:30 TimToady that's not what "base" means there
18:31 TimToady m: say (9/11).base(2,42)
18:31 camelia rakudo-moar e160c9: OUTPUT«0.110100010111010001011101000101110100010111␤»
18:31 TimToady m: say (9/11).base-repeating(2)
18:31 camelia rakudo-moar 782f4b: OUTPUT«(0. 1101000101)␤»
18:31 mst right. the "math API designed by non-mathematicians" problem. we can write up a glossary later, I guess.
18:32 Zoffix :D
18:32 mst or at least "math API designed in such a way as to confuse *this* mathematician"
18:32 mst maybe I've just forgotten more of my degree than I thought
18:32 mst always possible
18:36 grondilu I'm not sure it's the best to return a list.
18:36 * RabidGravy concludes that there is no version of H::UA will work with the current rakudo and gives up trying to fix it from here
18:37 TimToady grondilu: what would you propose instead, that wouldn't for people to parse it?
18:37 TimToady *force
18:37 grondilu I think it's ok to have people parse it.
18:38 azzure joined #perl6
18:38 grondilu m: "0.1(21)".match('(' ~ ')' \d+);
18:38 camelia rakudo-moar 782f4b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/3CMnZqNFhx␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/3CMnZqNFhx:1␤------> 3"0.1(21)".match('(' ~ ')'7⏏5 \d+);␤    expecting any of:␤        infix␤        in…»
18:39 grondilu m: "0.1(21)".match(/'(' ~ ')' \d+ ')'/);
18:39 camelia rakudo-moar 782f4b: ( no output )
18:39 grondilu m: say "0.1(21)".match(/'(' ~ ')' \d+ ')'/);
18:39 camelia rakudo-moar 782f4b: OUTPUT«Nil␤»
18:39 grondilu m: "0.1(21)".match(/'(' ~ ')' \d+/);
18:39 camelia rakudo-moar 782f4b: ( no output )
18:39 * TimToady is rather more partial to overbars, so prefer to leave formatting to the person who actually cares that .0001% of the time
18:40 grondilu m: say "0.1(21)".match(/'(' ~ ')' \d+/);
18:40 camelia rakudo-moar 782f4b: OUTPUT«「(21)」␤»
18:40 flussence .oO( /me coins a new term, “mobsourcing”: leaving a problem until it gets fixed later in response to demands from an angry mob )
18:40 lucasb joined #perl6
18:40 grondilu but frankly neither solution (string or list) seems entirely satisfactory to me.
18:43 cognominal_ on my mac, perl6 bootstrap.pl creates a folder "(HANDLED) Failed to open file" :(
18:43 Zoffix m: say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^25000]
18:43 camelia rakudo-moar 782f4b: OUTPUT«False␤»
18:43 Zoffix :'(
18:43 TimToady m: my @result = "0.1", "21"; @result[1] ~~ s:g[\d] ~= "\x305"; say @result.join
18:43 camelia rakudo-moar 782f4b: OUTPUT«0.12̅1̅␤»
18:43 pjscott joined #perl6
18:44 cognominal_ and says Successfully installed panda
18:44 pjscott Another dumb question :)
18:44 pjscott > my @a = 1..3;
18:44 pjscott 1 2 3
18:44 pjscott > @a.append(4)
18:44 pjscott Method 'append' not found for invocant of class 'Array'
18:44 Zoffix pjscott, your rakudo is very old?
18:44 Zoffix m: my @a = 1..3; @a.append(4); say @a
18:44 camelia rakudo-moar 782f4b: OUTPUT«[1 2 3 4]␤»
18:45 TimToady why do both my terminal and my firefox offset the overline by a character?  you'd think someone wouldn've fixed that by now...
18:45 pjscott I guess it is relative... hold on
18:45 Zoffix is offset for me too
18:45 Zoffix m: say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^5000] :4accuracy
18:45 camelia rakudo-moar 782f4b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/64M9TOHjmV␤You can't adverb &infix:<≅>␤at /tmp/64M9TOHjmV:1␤------> 3map({4/$_[0]-4/$_[1]})[^5000] :4accuracy7⏏5<EOL>␤»
18:45 Zoffix hm
18:45 TimToady maybe when Perl 6 is done I'll fix the rest of everything...
18:45 Zoffix Could've swore I could
18:46 pjscott This is perl6 version 2015.06-294-gbc01cae built on MoarVM version 2015.06-98-gf22142b
18:46 Zoffix wooh
18:46 RabidGravy yeah pre-dates .append
18:46 Zoffix pjscott, that's like... Stone Age :)
18:46 TimToady m: say &infix:<≅>.^methods
18:46 camelia rakudo-moar 782f4b: OUTPUT«(<anon> <anon> <anon> soft <anon> <anon> yada perl <anon> onlystar candidates unwrap wrap <anon> <anon> package leave <anon> <anon> cando <anon> <anon> <anon> <anon> multi <anon> <anon> add_phaser phasers assuming WHY set_why perl of <anon> returns fire_ph…»
18:46 flussence TimToady: looks okay in urxvt, I don't think less-common combining chars and proportional fonts are well tested together :(
18:46 TimToady m: say &infix:<≅>
18:46 camelia rakudo-moar 782f4b: OUTPUT«sub infix:<≅> (Mu $?, Mu $?, *%) { #`(Sub|76233616) ... }␤»
18:47 flussence (it's 0.5ch off to the right in my firefox)
18:47 Zoffix m: say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^5000], :accuracy
18:47 camelia rakudo-moar 782f4b: OUTPUT«False␤»
18:47 TimToady m: say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^5000] :tolerance(0.1)
18:47 camelia rakudo-moar 782f4b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sRGWTBHnZQ␤You can't adverb &infix:<≅>␤at /tmp/sRGWTBHnZQ:1␤------> 4/$_[0]-4/$_[1]})[^5000] :tolerance(0.1)7⏏5<EOL>␤»
18:47 pjscott Evidently 'old' has a meaning in Rakudo-world that I am unused to :)  Thanks
18:48 Zoffix m: say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^5000], :tolerance(0.1)
18:48 TimToady I can't?
18:48 camelia rakudo-moar 782f4b: OUTPUT«False␤»
18:48 Zoffix hm
18:48 TimToady $*TOLERANCE = 0.1; m: say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^5000]
18:48 TimToady m: $*TOLERANCE = 0.1; say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^5000]
18:48 camelia rakudo-moar 782f4b: OUTPUT«Cannot modify an immutable Num␤  in block <unit> at /tmp/RsUfklb1AO:1␤␤»
18:48 TimToady o_O
18:49 Zoffix m: $*TOLERANCE = 0.1; say 3 ≅ 3.1
18:49 camelia rakudo-moar 782f4b: OUTPUT«Cannot modify an immutable Num␤  in block <unit> at /tmp/bA1iiX4nTK:1␤␤»
18:49 TimToady m: my $*TOLERANCE = 0.1; say π ≅ [+] (1,3...*).rotor(2).map({4/$_[0]-4/$_[1]})[^5000]
18:49 camelia rakudo-moar 782f4b: OUTPUT«True␤»
18:49 TimToady \o/
18:49 Zoffix \o/ TimToady++
18:50 TimToady m: my $*TOLERANCE = 0.1; say 3 ≅ 3.1
18:50 camelia rakudo-moar 782f4b: OUTPUT«True␤»
18:50 TimToady m: my $*TOLERANCE = 0.1; say 3 ≅ 3.11
18:50 camelia rakudo-moar 782f4b: OUTPUT«True␤»
18:50 TimToady er...
18:50 TimToady m: my $*TOLERANCE = 0.1; say 3 ≅ 3.2
18:50 camelia rakudo-moar 782f4b: OUTPUT«True␤»
18:50 TimToady hmm
18:50 TimToady that seems busticated
18:50 Zoffix m: my $*TOLERANCE = 0.1; say 4 ≅ 3.2
18:50 camelia rakudo-moar 782f4b: OUTPUT«False␤»
18:50 Zoffix m: my $*TOLERANCE = 0.01; say 3 ≅ 3.2
18:50 camelia rakudo-moar 782f4b: OUTPUT«False␤»
18:50 Zoffix m: say (1,3...*).rotor(2).map(*[0] + *[1])[^10]
18:50 camelia rakudo-moar 782f4b: OUTPUT«(8 24 40 56 72 88 104 120 136 152)␤»
18:51 azzure joined #perl6
18:51 Zoffix how come that ^ is different from the {$_[0]+$_[1]} version?
18:51 Zoffix m: say (1,3...*).rotor(2).map(*[0] + *[1])[^10]
18:51 camelia rakudo-moar 782f4b: OUTPUT«(8 24 40 56 72 88 104 120 136 152)␤»
18:51 Zoffix m: say (1,3...*).rotor(2).map(*[0])[^10]
18:51 camelia rakudo-moar 782f4b: OUTPUT«(1 5 9 13 17 21 25 29 33 37)␤»
18:51 Zoffix m: say (1,3...*).rotor(2).map(*[1])[^10]
18:51 camelia rakudo-moar 782f4b: OUTPUT«(3 7 11 15 19 23 27 31 35 39)␤»
18:51 TimToady well, gotta go play a different kind of keyboard for a while... &
18:51 Zoffix weird
18:51 leont Because you use the whatever star twice?
18:51 Zoffix leont, What does it become the second time?
18:52 leont The second argument to the anonymous sub
18:52 Zoffix ah
18:52 leont *[0] + *[1] equals {$^a[0] + $^b[1]}
18:52 Zoffix m: say (1,3...*).rotor(2).map(*[0] ~ ' ' ~ *[1])[^10]
18:52 camelia rakudo-moar 782f4b: OUTPUT«(1 7 9 15 17 23 25 31 33 39 41 47 49 55 57 63 65 71 73 79)␤»
18:53 Zoffix m: say (1,3...*).map(* - *)[^10]
18:53 camelia rakudo-moar 782f4b: OUTPUT«(-2 -2 -2 -2 -2 -2 -2 -2 -2 -2)␤»
18:54 b2gills m: Buf.new(:2<11000000>,:2<10000000>).decode('utf8-c8')
18:54 camelia rakudo-moar 782f4b: OUTPUT«(signal SEGV)»
18:57 webstrand joined #perl6
18:59 mst pjscott: delete whatever you already have installed. get rakudobrew. use that.
18:59 AlexDaniel Can I tell panda to install something from specific github repo?
18:59 timotimo i wonder if perl6 should steal a bit of c++11's random generator stuff
18:59 AlexDaniel or should I just clone it and point panda to that specific folder?
18:59 timotimo or perhaps that's moduley
18:59 mst pjscott: for a fast moving project near release, six months fits the standard definition of old, tbh
18:59 Skarsnik AlexDaniel, git clone and panda install . should work
18:59 AlexDaniel great
18:59 RabidGravy AlexDaniel, yeah the latter for the time being
19:03 flussence timotimo: maybe we oughta have a $*RNG so anyone who doesn't like the default can do what they want. And from a few recent conversations, $*TIMESOURCE would probably be useful to some too...
19:04 timotimo the thing is, our dynamic variable lookup is a noticable overhead at the moment
19:04 hankache joined #perl6
19:04 flussence oh... :(
19:04 timotimo and having a lookup to $*RNG everywhere ...
19:04 timotimo hmm.
19:04 vendethiel "everywhere" isn't quite true, though :)
19:04 timotimo if we had a way to keep the $*RNG lookup-less when doing something like rand() xx 1000 ...
19:05 vendethiel dynamic escape analysis *g*
19:06 FROGGS joined #perl6
19:07 pjscott Thanks mst.  I was already on rakudobrew btw
19:07 FROGGS o/
19:10 timotimo vendethiel: trace jit will do this admirably
19:10 timotimo because then a dynamic variable will just become a lexical variable
19:10 Zoffix pjscott, time to build anew. There've been some changes to packaging, so your best best is to nuke everything and start from scratch
19:20 mst pjscott: ah, ok, most people with horribly outdated installs aren't
19:20 hankache joined #perl6
19:21 mst pjscott: note that in my real life I support right back to perl5 5.8.1, so I am aware of stability as a concept, it's just a pre-release completely new language isn't the place to expect that :)
19:21 Zoffix 5.8.1 -_-
19:22 * Zoffix wouldn't want to touch those boxes with a bargepole
19:22 mst good. more consulting revenue for me :D
19:22 Zoffix heh
19:23 [ptc] joined #perl6
19:24 rindolf Zoffix: hi, sup?
19:25 Zoffix rindolf, hi... waiting for pizza. Writing IRC::Client... you?
19:25 rindolf Zoffix: I've been working on Freecell Solver.
19:25 rindolf Zoffix: I enhanced and refactored some JS code.
19:25 Zoffix Isn't that what you've been working on for years? Or was it some other game?
19:26 rindolf Zoffix: it's not a game - it's a solver for several games.
19:26 Zoffix Ahhh
19:26 jdv79 nine: ok
19:26 rindolf Zoffix: and yes - I've been working on it on and off since 2000.
19:26 Zoffix whoa
19:27 El_Che rindolf: so when is your christmas? :)
19:28 rindolf El_Che: 25 December.
19:28 mst rindolf: http://www.trout.me.uk/you.jpg
19:28 El_Che rindolf: a new release of perl6 and Frecell Solver!
19:28 rindolf El_Che: anyway, Freecell Solver is already at version 4.0.0 and pretty usable.
19:28 * El_Che googles
19:29 rindolf El_Che: I'm not planning a new release then.
19:29 El_Che rindolf: yes, I see 4.0.0 is very recent
19:30 rindolf El_Che: but it's not perfect.
19:31 rindolf Zoffix: is IRC::Client a Perl 6 thing?
19:31 RabidGravy if it was easy to make perfect software it would be boring
19:33 rindolf RabidGravy: yes.
19:33 curious__ joined #perl6
19:34 RabidGravy boom
19:34 hartenfels joined #perl6
19:34 lucs joined #perl6
19:34 dpk joined #perl6
19:34 camelia joined #perl6
19:34 ab5tract joined #perl6
19:34 sftp joined #perl6
19:34 xdbr joined #perl6
19:34 ashleydev joined #perl6
19:34 moritz joined #perl6
19:34 TimToady joined #perl6
19:34 brabo joined #perl6
19:34 Fleurety joined #perl6
19:34 El_Che joined #perl6
19:34 bhm joined #perl6
19:34 freeze joined #perl6
19:34 stmuk joined #perl6
19:34 mst joined #perl6
19:34 salva joined #perl6
19:34 baest joined #perl6
19:34 felher joined #perl6
19:34 konobi joined #perl6
19:34 cosimo joined #perl6
19:34 bartolin_ joined #perl6
19:34 petercommand joined #perl6
19:34 BooK joined #perl6
19:34 Possum joined #perl6
19:34 charsbar__ joined #perl6
19:34 krunen joined #perl6
19:34 cxreg joined #perl6
19:34 jordman_ joined #perl6
19:34 btyler joined #perl6
19:34 rjbs joined #perl6
19:34 mathw_ joined #perl6
19:34 mtj_ joined #perl6
19:34 zostay joined #perl6
19:34 shmibs joined #perl6
19:34 rudi_s joined #perl6
19:34 jferrero joined #perl6
19:34 ingy joined #perl6
19:34 Bucciarati joined #perl6
19:34 johan joined #perl6
19:34 retupmoca joined #perl6
19:34 pochi joined #perl6
19:34 yeltzooo joined #perl6
19:34 saaki joined #perl6
19:34 jnthn joined #perl6
19:34 nine joined #perl6
19:34 jdv79 joined #perl6
19:34 tinita joined #perl6
19:34 smash joined #perl6
19:34 ponbiki joined #perl6
19:34 inokenty joined #perl6
19:34 vike joined #perl6
19:34 Ulti joined #perl6
19:34 mls joined #perl6
19:34 KotH joined #perl6
19:34 SHODAN joined #perl6
19:34 risou joined #perl6
19:34 Skarsnik this split
19:35 Celelibi joined #perl6
19:35 jdv79 its been weeks. wth?!
19:35 jdv79 this is not normal
19:36 curious__ for self.^attributes.grep({.has-accessor}) -> $at { say $at.name," how do I call the accessor here given the attribute name"; }
19:37 Begi What's going on here ?
19:37 baest_ joined #perl6
19:37 curious__ joined #perl6
19:37 Begi Strange...
19:37 dpk joined #perl6
19:39 adhoc joined #perl6
19:39 pecastro joined #perl6
19:39 gfldex curious__: did you try http://doc.perl6.org/type/Attribute#method_set_value ?
19:41 Zoffix rindolf, yes
19:41 rindolf Zoffix: ah, what is it based on?
19:41 Zoffix nothing
19:42 rindolf Zoffix: I see.
19:42 rindolf Zoffix: did you draw any inspiration for the  API from somewhere?
19:46 Zoffix rindolf, I took from PoCo::IRC the idea of mapping IRC commands to method calls and using the return values to figure out whether to stop the plugin chain, but that's about it.
19:46 cygx joined #perl6
19:46 cygx o/
19:46 cygx re panda creating directories called "(HANDLED) Failed to open file"
19:46 Zoffix And there were a lot of annoyances with PoCo IRC that I hope to not have... \
19:46 curious__ gfldex: Ah. $at.get_value(self) . Thanks. Early days. Not even very good at navigating the docs.
19:46 cygx https://github.com/tadzik/panda/blob/master/lib/Panda/App.pm#L15 should stringify the path
19:46 Zoffix That's pretty annoying IMO
19:47 Zoffix underscores: http://doc.perl6.org/type/Attribute#method_get_value  kebob: http://doc.perl6.org/type/Attribute#method_has-accessor
19:47 Zoffix Reminds me of the PHP Training Wheels Without The Bike riling on how PHP's naming is inconsistent
19:47 cygx also, IO::Path.split and related functions likely should not handle the .open failure
19:47 rindolf Zoffix: there are some other IRC APIs now on CPAN - for IO-Async, AnyEvent, etc.
19:48 cygx I can submit some pull requests, but I cannot test things right now...
19:48 rindolf Zoffix: <perlbot> rindolf: Don't parse IRC with regex! See Bot::BasicBot, POE::Component::IRC, Net::Async::IRC, Mojo::IRC, or AnyEvent::IRC. Avoid Net::IRC.
19:49 Zoffix half of those suck
19:49 jdv79 what's wrong with parsing IRC with a regex?
19:50 jdv79 its a fairly simple format
19:50 stmuk regexes are for XML! ;)
19:50 jdv79 ah...
19:57 flussence Zoffix: PHP's horrible function naming is consistent, just not in the way most people think it should be :)
19:58 Zoffix flussence, yeah, but what about us?
19:58 Zoffix I'd expect all core methods to be in kebob
19:58 cygx cognominal_: https://github.com/tadzik/panda/pull/264/files
19:59 cygx also, https://github.com/rakudo/rakudo/pull/633
20:01 flussence Zoffix: their excuse boils down to hysterical raisins, which is what perl6 is trying to get far away from. AFAIK there was an explanation for _ vs - a long time ago, something about whether end users should be using that API or not, but I dunno if it's still valid today
20:02 cognominal_ cygx, also this line with a shell instead of a run, is very suspicious :  https://github.com/tadzik/panda/blob/master/bootstrap.pl#L65
20:02 sjohnsen joined #perl6
20:03 pmurias joined #perl6
20:04 Skarsnik Zoffix, You probably want priority for event (or order) Like a plugin that log will probably want to catch everthing
20:05 pmurias Zoffix: re - vs _ vs other naming conventions in the setting, there isn't any secret rule, things are just inconsistent
20:06 pmurias Zoffix: maybe we should create a Rakudo branch with things renamed to be consistent?
20:07 jdv79 is _ vs - really worth the time?
20:07 Zoffix jdv79, yes
20:07 Zoffix jdv79, because the difference means users will have to look up the method names
20:07 Skarsnik I had a tag for events in my old irc 'client', like start event and end event to be called at the start/end x)
20:07 jdv79 i look method names all the time
20:07 Zoffix pmurias, if by "we" you mean someone who knows what they're doing and not a Zoffix, then yes, definitely
20:07 Zoffix jdv79, well, then you're not an efficient programmer./
20:08 Zoffix Skarsnik, the priority is set by the order in the plugins array
20:08 Zoffix Though now that you mention it... I probably need to handle my @!plugins-essential and @!plugins in a smarter way.
20:08 Zoffix Skarsnik++
20:09 Zoffix jdv79, I meant, looking them up all the time or messing up - vs. _ all the time.
20:09 jdv79 well, i'm pretty new at p6 and there's a lot of core types so no, i don't think i'm an ineffficient programmer
20:09 Zoffix Consistency means predictability, and predictability means fewer errors.
20:10 bjz joined #perl6
20:10 pmurias it should be possible to have sufficently advanced autocompletion just DWIM things with - vs _
20:10 Zoffix That's horrible
20:10 jdv79 maybe you should lead the movement then.
20:11 Zoffix jdv79, I am. I'm complaining about inconsistency and pointing out another language where exact same inconsistency is problematic.
20:11 Zoffix That's all I can do with my skill level.
20:11 pmurias I could donate my time towards that as I believe naming inconsistency is a horrible stain on the language
20:11 jdv79 iirc most common things are already kebabed
20:11 Skarsnik all the META stuff is underscore
20:12 jdv79 Zoffix: php's naming issues are far worse.
20:12 pmurias what I would need the most help with is having someone create and *write* down the naming convention
20:12 pmurias jdv79: "this sucks but a tiny bit less than in PHP" is not what we are hopefully aiming for in Perl 6 ;)
20:13 Skarsnik *look at DBIIsh* It has everything!
20:13 cognominal_ joined #perl6
20:13 flussence "easy things should be easy, bad things should be possible but require proportional use of the shift key" - there, done :)
20:13 jdv79 it sucks a whole lot less in fact
20:13 jdv79 good luck getting something like that through.  i imagine it was take a language point release to do that in.
20:14 Skarsnik flussence, _ and - don't need shift on a azerty keyboard :)
20:14 El_Che Skarsnik: it's needed on a Belgian Azerty (they are on the same key)
20:15 pmurias jdv79: after christmas changing doing the rename will be a much bigger deal than now
20:15 Skarsnik fill a RT x)
20:15 jdv79 well:)  same thing could be said < a fortnight from The Release.
20:16 jdv79 simply not gonna happen.  too late.
20:16 flussence Skarsnik: IIRC one of ` or \ or | is harder to type on an en-US than en-GB too...
20:16 jdv79 maybe in 6.c -> 6.d if there's enough support for it
20:19 azzure left #perl6
20:22 xfix joined #perl6
20:22 pmurias what's the exact release date?
20:25 pmurias christmas or a few days before?
20:25 jdv79 i thought it was exactly xmas
20:25 jnthn The general rule is that stuff that's part of the MOP sticks with _ and other built-ins get -
20:26 jnthn Attribute is part of the MOP
20:26 jnthn So it's has-accessor that's wrong in this case.
20:26 jdv79 soft target is 17th just to leave some slack i think
20:26 dalek roast: 0588402 | usev6++ | S03-metaops/reduce.t:
20:26 dalek roast: Fudge (skip) dying tests for JVM
20:26 dalek roast: review: https://github.com/perl6/roast/commit/0588402f0a
20:26 telex joined #perl6
20:27 pmurias jdv79: so it's too late to fix anything and we will have to live with horrible names forever? :(
20:27 jnthn grmbl, there's a has_accessor *and* a has-accessor
20:27 jdv79 is that so you can grep for MOP crazy code quickly? :)
20:27 jnthn pmurias: You seem to think CORE.setting is full of inconsistencies. It's not.
20:28 jnthn We standardized on - for pretty much everything non-MOP
20:28 pmurias maybe it's just ack painting a grim picture with all the MOP stuff being mixed in
20:29 jnthn Probably
20:29 pyrimidine joined #perl6
20:29 jnthn I'll kill off has-accesor, since it's (a) dupe and (b) totally the odd-one-out in Attribute
20:33 jdv79 ack grim - i don't get it.
20:35 dwarring joined #perl6
20:35 pmurias jdv79: ack is a perlish grep
20:36 AlexDaniel cognominal_: yeah… in fact, panda is using 「shell」 for everything, I think that if you have a space in any path then it will freak out pretty quickly
20:36 jdv79 i know the the ack by alester.  just not sure what you meant there.
20:36 AlexDaniel cognominal_: I hope that one day I will have enough free time to run-ify everything :)
20:38 adhoc joined #perl6
20:40 TEttinger joined #perl6
20:45 dalek roast: 6bafc92 | usev6++ | S11-modules/require.t:
20:45 dalek roast: Remove troublesome "use lib '.'"
20:45 dalek roast:
20:45 dalek roast: ... which lead to failing tests on rakudo.jvm
20:45 dalek roast: review: https://github.com/perl6/roast/commit/6bafc9245c
20:47 pyrimidi_ joined #perl6
20:53 lizmat joined #perl6
21:03 nine jdv79: I think, I have a fix :)
21:03 nine jnthn: indeed, resolve_reposession_conflicts has been utterly broken for a couple of months at least
21:06 nine jdv79: could I interest you in turning my gist into a proper spec test? Testing my fix right now and will commit after the next episode of Planet Earth :)
21:07 jnthn (Planet Earth)++
21:10 roguelazer joined #perl6
21:11 * masak .oO( my favorite planet so far! )
21:13 RabidGravy I'm quite liking Gliese 581.c
21:13 dalek rakudo/nom: 82f273b | lizmat++ | src/core/Slip.pm:
21:13 dalek rakudo/nom: Fix for #126897
21:13 dalek rakudo/nom:
21:13 dalek rakudo/nom: And some code layout and doc
21:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/82f273b65c
21:14 dalek roast: b67ba84 | usev6++ | S (4 files):
21:14 dalek roast: Unfudge passing tests for JVM
21:14 dalek roast:
21:14 dalek roast: (some of those annoying UnwindExceptions are gone)
21:14 dalek roast: review: https://github.com/perl6/roast/commit/b67ba84d44
21:15 lmmx joined #perl6
21:16 masak RabidGravy: me and my family are planning our vacation for 2016. how would you rate Gliese 581.c compared to, say, Madrid?
21:17 RabidGravy well you'd get some airmiles in
21:17 grondilu what's planet earth?
21:18 masak RabidGravy: I've seen some negative reviews of Gliese 581.c, some of them going so far as saying it's not habitable. say what you want about Madrid, but...
21:18 RabidGravy habitable is over-rated, we went to Blackpool once and survived
21:19 lizmat masak: when going to Madrid, make sure it's in the summer...  autumn/winter can be cold in Madrid
21:20 jnthn I went to Madrid in January and it was great weather for me! ;)
21:20 RabidGravy or just go Ibiza and go large for two weeks
21:21 masak lizmat: I've actually been there in December once. it was nice :)
21:21 masak nicer than Sweden, anyway.
21:21 masak fresh oranges, yum!
21:21 lizmat been there in November once, it was cold, wet and dreary
21:22 lizmat colder than at home at the time
21:22 RabidGravy I think the only time I've been there was June and it was hot
21:22 masak ugh, Gliese 581.c is tidally locked. that settles it.
21:22 dalek roast: 6d06a5d | lizmat++ | S03-metaops/reduce.t:
21:22 dalek roast: Slip.perl now correctly returns slip(), fix!
21:22 dalek roast: review: https://github.com/perl6/roast/commit/6d06a5d3cd
21:22 RabidGravy a cruise then?
21:23 masak :P
21:23 Begi Did someone already went to Nancy (France) ?
21:24 lizmat we had a FPW there once, if I remember correctly?
21:25 vendethiel I did come there, but not for a fpw :P
21:25 RabidGravy that's the only region of France I've not been to
21:26 lizmat I remember being amazed by the https://en.wikipedia.org/wiki/Nancy_Guided_Light_Transit
21:26 dalek roast: da7ff73 | usev6++ | S04-phasers/in-loop.t:
21:26 dalek roast: Add (passing) test for RT #122134
21:26 dalek roast: review: https://github.com/perl6/roast/commit/da7ff73062
21:26 lichtkind will the version schema go on to d e f g or ill there be a perl 6.1?
21:26 lizmat more technical background: https://en.wikipedia.org/wiki/Bombardier_Guided_Light_Transit
21:27 FROGGS lichtkind: it will probably be letters
21:27 lizmat lichtkind: who knows, with yearly language releases, we should be fine for 20+ years
21:27 lizmat using letters
21:28 masak m: say 'z'.succ
21:28 camelia rakudo-moar 782f4b: OUTPUT«aa␤»
21:28 masak we'll be fine for a while :)
21:28 snarkyboojum joined #perl6
21:28 lucasb hi lizmat. do you know if LPW talks were recorded?
21:29 roguelazer joined #perl6
21:29 lichtkind thanks
21:29 lizmat I think the ones in the main hall were
21:29 lizmat I think the keynote was
21:30 lucasb lizmat: ah, ok. I'll wait for them to be put online. thanks
21:31 * masak waits, too
21:36 stmuk did anyone attend zefram's talk? I didn't since I would have probably heckled or something
21:37 lizmat I attended his talk
21:37 stmuk he is opening bugs again so maybe not as negative as I feared?
21:37 lizmat well, in the end he was very positive about MoarVM and nqp
21:38 lizmat but: he said it would be a good idea to throw away the rest of rakudo and build something better on top of MoarVM and nqp
21:38 lizmat he showed his issues with IterationEnd not being out-of-band
21:39 lizmat he showed some other issues, that were mostly genuiine issues
21:39 lizmat but of the type DIHWIDT (well, in my opinion :-)
21:40 stmuk :)
21:40 lizmat after his talk, and after my keynote, we talked a bit
21:40 lizmat I urged him to ticket the issues that he found, because otherwise we don't know about them and they won't get fixed
21:40 lizmat I think I made it clear they may well not be fixed before Xmas
21:40 masak in order for IterationEnd to be out-of-band, it'd need to be... not a value at all, right?
21:40 masak like, it could be an exception, for example
21:41 masak (this is how Python does it)
21:41 RabidGravy C# too iirc
21:41 lizmat not sure how we would do this *now*, it would be at least a severe performance penalty, I think
21:41 masak right
21:41 jnthn Note that you already *can* do .push-exactly(1, $buffer)
21:42 masak "don't use exceptions for non-exceptional circumstances" -- and hitting the end of an iteration is pretty non-exceptional
21:42 jnthn But the problem seems rather academic.
21:42 masak I agree
21:42 lizmat in any case, an iterator that would leak IterationEnd is just plain faulty
21:42 masak note that there are many clearly successful examples of in-band stoppers
21:42 * jnthn is, btw, working on his advent post
21:42 masak ASCII NUL comes to mind
21:43 stmuk 2600hz
21:43 masak there's no way to escape a NUL. you're just expected not to use it in the middle of a string.
21:44 lucasb masak: a line "." ends insert mode in the ed text editor... is this an example too? :)
21:45 lizmat m: CORE::.keys.sort.grep( { /d$/ } ).elems.say  # zefram's example
21:45 camelia rakudo-moar 82f273: OUTPUT«24␤»
21:45 masak lucasb: yes, I believe so.
21:45 lizmat m: CORE::.keys.sort.grep( { /d$/ } ).map( { $_ } ).elems.say
21:45 camelia rakudo-moar 82f273: OUTPUT«24␤»
21:45 masak lucasb: how the heck do you add a line that's just '.' in ed? :)
21:45 jnthn lizmat: Yeah, I'm aware of that one; that just wants the sentinel being a term in the parser
21:46 jnthn lizmat: And resolved in Rakudo::Internals
21:46 lichtkind could it be that panda is broken?
21:46 lichtkind i get
21:46 lichtkind Could not find symbol '&RepositoryRegistry'
21:47 masak m: say +CORE::.keys.grep( { /d$/ } )
21:47 camelia rakudo-moar 82f273: OUTPUT«24␤»
21:47 moritz lichtkind: how old is your rakudo?
21:47 RabidGravy lichtkind, newish panda with slighly older rakudo?
21:47 masak why does zefram .sort when he is only interested in .elems anyway?
21:48 lizmat maybe I remembered wrong
21:48 lichtkind i thought both were recent but i currently recompile to be sure
21:49 lizmat masak: in any case, the point was that IterationEnd lives in CORE:: , and thus will end an iteration unintendedly
21:49 lizmat oddly enough, I can't reproduce at the moment
21:50 RabidGravy yeah, it looks like the panda incorporates a recent change the rakudo hasn't got
21:50 lucasb m: say CORE::.keys.sort.grep({/^It/}).map({$_})
21:50 camelia rakudo-moar 82f273: OUTPUT«(Iterable IterationBuffer IterationEnd Iterator)␤»
21:50 lucasb ^^ IterationEnd was not the end?
21:51 lizmat yeah, I'm confused now
21:51 lizmat could be that zefram already made a ticket for that
21:51 RabidGravy I'm permanently confused
21:51 patrickz joined #perl6
21:53 lucasb ahhh, maybe it's because it's stringified, not the real object
21:53 lucasb since its a hash key
21:53 lucasb *it's
21:55 lizmat m: say CORE::.keys[0].WHAT
21:55 camelia rakudo-moar 82f273: OUTPUT«(Str)␤»
21:56 lizmat hmmm...
21:56 lizmat m: dd CORE::.keys[0]
21:56 camelia rakudo-moar 82f273: OUTPUT«Str $var = "SIGSEGV"␤»
21:56 lizmat m: dd CORE::.keys[0,1]
21:56 camelia rakudo-moar 82f273: OUTPUT«List $var = $("SIGSEGV", "WhateverCode")␤»
22:01 lichtkind sorry lizmat but i have weird error i updated perl want to call panda reboot with sudo and then it cant find perl6 which before was fine without sudo
22:02 lizmat sorry lichtkind, but I have no idea
22:03 dalek rakudo/nom: da9bf6b | lizmat++ | src/core/Failure.pm:
22:03 dalek rakudo/nom: Throw the Failure if we try to assign to it
22:03 dalek rakudo/nom:
22:03 dalek rakudo/nom: Now that Failure inherits from Nil, the recent Nil.STORE change brought
22:03 dalek rakudo/nom: some spectest breakage to light.  This seems like a good fix for that.
22:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/da9bf6bfd6
22:03 RabidGravy please open the pod bay doors
22:06 dalek rakudo/nom: 236cd2e | jnthn++ | src/core/Supply.pm:
22:06 dalek rakudo/nom: Fix head.
22:06 dalek rakudo/nom:
22:06 dalek rakudo/nom: Yes, last should work here too, but done does work here already.
22:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/236cd2ef88
22:06 dalek rakudo/nom: a342eb1 | jnthn++ | src/core/Supply.pm:
22:06 dalek rakudo/nom: Implement Supply.share (on-demand => live).
22:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a342eb1174
22:11 lizmat jnthn: what does Supply.share do ?
22:11 lizmat feels like identity to me?
22:12 jnthn lizmat: It taps an on-demand supply once
22:12 jnthn And allows it to be shared among many subscribers that may come and go as they please
22:12 lizmat ah, I see, it turns an on-demand into a live supply
22:12 jnthn Right :)
22:13 jnthn For an example usage, see the Perl 6 advent post I'm currently working on :P
22:13 lizmat ah, as it said in the commit message  :-)
22:13 lizmat ah, ADD   ( Advent Driven Development )
22:13 jnthn (Though I've used the .Net equivalent, .Publish, loads of times in the real world)
22:15 lizmat I'll write up the doc
22:15 rurban_ joined #perl6
22:15 lizmat jnthn: if the supply is already live, shouldn't it just return self ?
22:16 jnthn lizmat: My gut reaction is no
22:17 jnthn lizmat: Don't have a good argument either way yet :)
22:17 lizmat feels like it would just be adding overhead
22:18 jnthn I guess I'm worried about ref-counting style live supplies
22:18 jnthn Which we don't have yet
22:19 lizmat well, once we have those, I guess we can introspect that, no?
22:19 lizmat and then not return self :-)
22:20 lizmat anyway, just a thought  :-)
22:21 jdv79 nine: sure
22:21 yqt joined #perl6
22:26 dalek doc: c1510f6 | lizmat++ | doc/Type/Supply.pod:
22:26 dalek doc: Add preliminary doc for Supply.share
22:26 dalek doc: review: https://github.com/perl6/doc/commit/c1510f6023
22:26 geraud joined #perl6
22:28 * lizmat is tired and goes to bed
22:28 lizmat good night, #perl6!
22:28 jnthn Rest well, lizmat++ o/
22:29 El_Che by liz
22:29 El_Che e
22:29 [particle] joined #perl6
22:33 masak 'night, #perl6
22:34 RabidGravy nighty, nighty, nighty night night
22:34 * RabidGravy decides that he'll start the silan thing first, *then* do that thing he promised it's author over a year ago
22:38 Praise joined #perl6
22:38 Praise joined #perl6
22:40 jdv79 is there a diff between -I and use lib?
22:40 jdv79 i mean there is.  should there be and if so what is it?
22:44 RabidGravy .tell azawawi would you be cool with a PR to File::Which to make it optionally export 'whence' instead of which?  It's an ancieunte SysV user thing ;-)
22:44 yoleaux RabidGravy: I'll pass your message to azawawi.
22:49 timotimo "perl 6, unicode, and you" is still pretty much unbeaten in visitors/views counts
22:49 jdv79 nine: i don't know how to write the test since use lib seems to skirt the bug:(
22:50 snarkyboojum joined #perl6
22:50 RabidGravy it does, I think that's a partially deliberate feature, in as much as it turns precomp off if it appears after any other "use"
22:50 RabidGravy or did
22:51 jdv79 huh.  i guess i'll just shell out then.
22:55 raiph joined #perl6
23:10 RabidGravy top pro-tip of the day, always add .precomp to the .gitignore befiore doing "git add lib"
23:10 RabidGravy makes for a much happier life
23:11 timotimo yeah, i've already gone around and added .precomp to a bunch of gitignores
23:12 pmurias jdv79: re ack painting a grip picture, search the rakudo setting for methods that contain _ returns lots of methods that a user rarely calls
23:12 pmurias jdv79: making is appear so that things are more inconsitent then they appear
23:13 jdv79 ok
23:18 RabidGravy yeah, I'm quite happy that's quite consistent with the '-' in the core types and '_' in the MOP and internals and having to remember that shouldn't be a problem
23:29 dalek roast: 0899174 | jdv79++ | / (4 files):
23:29 dalek roast: Test for RT #126904.
23:29 dalek roast: review: https://github.com/perl6/roast/commit/0899174a53
23:30 jdv79 nine: created a ticket and assigned to you and pushed a test.  maybe you can rename the test file as i'm not sure what the issue is called.  thankss!
23:30 jdv79 also g'nite
23:40 gfldex m: my $s = 'in Latin | doc:Lingua::Romana::Perligata'; dd $s ~~ /(<![|]>+)? \s* '|' \s* (.+)/;
23:40 camelia rakudo-moar a342eb: OUTPUT«Memory allocation failed; could not allocate 969179136 bytes␤»
23:41 RabidGravy that's a bit excessive
23:41 gfldex m: my $s = 'in Latin | doc:Lingua::Romana::Perligata'; dd ($s ~~ /(<-[|]>+)? \s* '|' \s* (.+)/)[0,1]>>.Str;
23:41 camelia rakudo-moar a342eb: OUTPUT«List $var = $("in Latin ", "doc:Lingua::Romana::Perligata")␤»
23:41 gfldex ! <-- dangerous char
23:46 cognominal_ AlexDaniel, my current problem with panda is that compilation errors give a sha1 for a filename. Pretty unhelpful.
23:46 AlexDaniel cognominal_: yes, sucks
23:46 AlexDaniel cognominal_: I just open these files and try to guess what could that be
23:47 AlexDaniel at the same time, I'm happy that precompilation is there
23:48 jnthn That's not really panda's fault, fwiw
23:52 AlexDaniel jnthn: good point
23:52 AlexDaniel I wonder, is it reported?
23:53 jnthn And yeah, getting pre-comp and installation right is really tricky stuff. nine++
23:53 AlexDaniel it's a known issue, but…
23:53 jnthn AlexDaniel: Not sure it is
23:54 flussence er... what's %*CUSTOM_LIB been replaced with today? I didn't get the memo...
23:54 lmmx joined #perl6
23:55 AlexDaniel I hope that it will be improved before Christmas. Such stack traces just counterweight all of the effort that was put into awesome error messages…
23:56 Psyche^_ joined #perl6
23:59 cognominal_ s/with panda/when using panda/  :)

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

Perl 6 | Reference Documentation | Rakudo