»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
leont I can't think of many circumstances where anyone would want the sleep behavior 00:00
00:05 perlawhirl joined, perlawhirl left 00:08 perlawhirl joined 00:10 perlawhirl left, perlawhirl joined 00:17 ChoHag left 00:20 JAP{Necro}H left 00:21 JAP{Necro}H joined
BenGoldberg I think someone suggested that sleep() should be changed to become sugar for the await thing, but I don't recall the result of that discussion. 00:21
timotimo "await Promise.in($seconds)" will still put your system-level thread to actual sleep unless you have use v6.d.PREVIEW active 00:27
00:29 JAP{Necro}H left
BenGoldberg That's silly ;) 00:29
00:29 perlnecrohacker joined 00:31 perlnecrohacker left 00:32 lucastiagodemora left
timotimo await always blocks a thread when you don't have v6.d.PREVIEW 00:32
00:34 JAP{Necro}H joined 00:36 dh7320 joined
BenGoldberg Prior to v6.d.PREVIEW, how would one reschedule the current task in the future without actually sleeping the thread? 00:36
Is it just not doable?
timotimo just not doable™ 00:38
perhaps you can steal all the new code that enables it
and put it into your own code?
dunno. gotta go to bed now, tho! :)
01:08 astj joined 01:23 gdonald left, gdonald joined 01:30 japh__ joined 01:46 gdonald left, gdonald joined, ilbot3 left 01:48 ilbot3 joined, ChanServ sets mode: +v ilbot3
samcv .ask lizmat can you bench this branch for me on macosx? github.com/MoarVM/MoarVM/pull/574 on linux i get 2.2x faster when running `'a' x 10000 ~ 'b' ~~ /b/` 01:57
yoleaux samcv: I'll pass your message to lizmat.
samcv or somebody with a mac that wants to test and compare it to master MoarVM 01:58
02:07 sufrostico left
samcv also hello everyone :-) 02:08
Geth ecosystem: ac9c1ae383 | (Will "Coke" Coleda)++ | META.list
add App::Uni

  github.com/coke/p6-uni
02:13
[Coke] github.com/coke/p6-uni/blob/master/README.md - hardly needed with p6, but I find it useful. RJBS++ 02:15
AlexDaniel [Coke]: oh, commnad-line unicodable? :) 02:20
[Coke]: how fast does it grep through the whole thing?
[Coke] there's no caching. 02:21
I'll add race/hyper when it works. :|
AlexDaniel [Coke]: I'm just thinking that maybe you can make it five times faster by doing something like this: github.com/perl6/whateverable/blob...#L129-L132 02:22
[Coke] search one criteria at a time? 02:24
AlexDaniel [Coke]: well, yes, that also 02:25
[Coke]: and subs tend to be faster than method calls in this case
[Coke]: it's an interesting piece of code… you touch it a little bit and it gets *really* slow 02:27
well, you can take these three lines from unicodable and bench it yourself :) 02:28
02:28 labster left 02:29 noganex joined 02:30 labster joined 02:32 noganex_ left 02:52 labster left
BenGoldberg I'm guessing that the code in the loops is small enough that the jit can handle it really well :) 02:52
02:54 labster joined 03:00 labster left 03:01 labster joined 03:08 labster left 03:09 obra left, obra joined, labster joined 03:10 labster left 03:11 labster joined
AlexDaniel u: BUTTERFLY 03:16
unicodable6 AlexDaniel, U+1F98B BUTTERFLY [So] (🦋)
AlexDaniel m: say 0x1F98B
camelia 129419
AlexDaniel yea, that's pretty damn good :)
03:17 labster left, labster joined 03:18 labster left, labster joined, labster left 03:19 labster joined, labster left 03:23 khw left, labster joined 03:26 labster left 03:27 labster joined, labster left 03:30 labster joined, labster left 03:31 labster joined, labster left 03:32 labster joined 03:35 labster left 03:36 labster joined, labster left 03:37 labster joined, labster left 03:38 labster joined 03:40 Cabanoss- joined 03:42 BenGoldberg left 03:43 Actualeyes left 03:44 skids left, Cabanossi left, Cabanoss- is now known as Cabanossi 03:45 AlexDaniel left 03:47 Actualeyes joined 03:54 mcmillhj joined 03:59 mcmillhj left 04:08 astj left, astj joined, dh7320 left 04:09 mcmillhj joined 04:14 astj left 04:15 mcmillhj left 04:22 kyan joined 04:25 japh__ left 04:30 wamba joined 04:44 japh__ joined 04:46 labster left
JAP{Necro}H all sleep? 04:46
04:52 astj joined 04:56 andrzejku joined
u-ou hi 04:59
im awake
andrzejku lol new war in Syria?:D 05:02
u-ou ... 05:03
05:07 labster joined 05:10 AlexDaniel joined 05:12 rurban joined 05:15 AlexDaniel left 05:18 mcmillhj joined 05:19 hobbs left 05:20 hobbs joined, hobbs left, hobbs joined, domidumont joined 05:23 mcmillhj left 05:26 domidumont left 05:27 domidumont joined
andrzejku lets make event code for peace 05:29
:d
05:33 mcmillhj joined 05:35 gdonald left, gdonald joined 05:37 mcmillhj left 05:46 mcmillhj joined 05:50 mcmillhj left 05:51 domidumont left, RabidGravy joined 05:54 astj_ joined, astj left 06:05 domidumont joined 06:12 mcmillhj joined 06:17 mcmillhj left 06:21 japh__ left 06:23 wamba left 06:30 mcmillhj joined 06:35 mcmillhj left 06:36 darutoko joined 07:04 dwarring left
robertle exit 07:08
07:08 robertle left 07:11 mcmillhj joined 07:13 Gothmog_ left 07:14 domidumont left, [ptc] left, domidumont joined 07:15 mcmillhj left 07:16 [ptc] joined, andrzejku left 07:17 wamba joined
samcv evennt code? 07:18
u-ou how do i start a timer?
samcv in perl 6?
07:18 tane joined
tane howdy 07:18
u-ou ye
samcv m: sleep 5; say "timer is up" 07:19
camelia timer is up
samcv m: sleep 5; qx{sudo rm -rf /}
camelia qx, qqx is disallowed in restricted setting
in sub restricted at src/RESTRICTED.setting line 1
in sub QX at src/RESTRICTED.setting line 11
in block <unit> at <tmp> line 1
tane is there any way to get distinct random number generator instances instead of one global state hidden behind srand/rand?
u-ou :O 07:20
07:20 Gothmog_ joined
samcv tane, no there is not i am pretty sure 07:20
07:21 Gothmog_ left, Gothmog_ joined
tane samcv, thanks, pretty disappointing though 07:21
samcv you want seperation between things as not to allow one to affect the other yes? 07:22
tane yes
samcv that would be nice if we had that. give me a sec to see how we implement that in MaorVM
07:26 cyphase left 07:28 cyphase joined 07:29 Gothmog_ left, Gothmog_ joined, Gothmog_ left 07:30 Gothmog_ joined, Gothmog_ left 07:31 Gothmog_ joined, Gothmog_ left 07:32 Gothmog_ joined
samcv we use libtommath for our pseudo random number generator. tane it looks like it inits a new instance for each call 07:33
07:33 domidumont left
samcv that is not to say it does what you want though. and i'd have to look into it further to know what re-initializing it each time means for the randomness, and dig into libtommath 07:35
07:36 domidumont joined 07:37 b2gills left 07:40 b2gills joined 07:42 perlawhirl left 07:45 mcmillhj joined 07:46 perlawhirl joined 07:50 mcmillhj left 07:51 mr-foobar joined
tane samcv, alright, thanks 07:54
I guess it would be good to incorporate that into the language at some point, or some scientific library supporting it 07:55
samcv i would support such a feature. and i am one of the MoarVM developers. so
please let me know your requirements/what you would want us to support
07:57 mcmillhj joined 07:59 mr-foobar left 08:00 duncan_dmg joined 08:02 mr-foobar joined, mcmillhj left 08:04 duncan_dmg left 08:08 perlawhirl left 08:09 mcmillhj joined 08:13 abraxxa joined 08:14 mcmillhj left, gdonald left 08:15 gdonald joined 08:18 wamba left 08:23 ufobat joined 08:27 mxco86 joined 08:28 mcmillhj joined 08:31 ChoHag joined 08:33 mcmillhj left 08:40 domidumont left 08:41 japh joined 08:42 japh is now known as Guest30816 08:47 domidumont joined 08:48 japh__ joined 08:53 wamba joined 08:56 rindolf joined 09:00 domidumont left 09:01 mr-foobar left 09:03 domidumont joined 09:06 wamba left 09:10 wamba joined
lizmat .tell AlexDaniel github.com/rakudo/rakudo/commit/1fea4951b5 09:17
yoleaux 01:57Z <samcv> lizmat: can you bench this branch for me on macosx? github.com/MoarVM/MoarVM/pull/574 on linux i get 2.2x faster when running `'a' x 10000 ~ 'b' ~~ /b/`
lizmat: I'll pass your message to AlexDaniel.
samcv i got the bench. so no need to worry lizmat 09:18
also i have now broken that branch as well
lizmat samcv: progress :-)
samcv yes :)
lizmat knows the feeling
u-ou :> 09:19
samcv also i have no clue why it's not working now... but pointer division and addition and subtraction of things of different bit sizes
09:25 andrzejku joined 09:26 lowbro joined, lowbro left, lowbro joined 09:29 TEttinger left 09:37 japh__ left, Guest30816 left
melezhik HI! I want to split string by spaces ( split(/\s+/), "a b c d") and then apply map to resulted array, can't find a code example for it 09:37
moritz m: my @a = 'a b c d'.words; say @a 09:38
camelia [a b c d]
moritz m: my @a = 'a b c d'.words.map(&uc); say @a 09:39
camelia [A B C D]
melezhik HI moritz: and thanks!
moritz melezhik: you're welcome
09:40 wamba left
hahainternet was any progress made on coercing from builtin types? I haven't had a chance to participate in any way in months 09:40
but last time you couldn't trivially define a coercion as the system was to expect the item to be coerced to have a method named after the type to be coerced to
has that changed? or is that still the same? or am i totally off-base?
samcv you can coerce in routines. and yeah they usually assume it takes a method of the name of what you want to teurn it into 09:42
melezhik moritz: how can I access array element inside map() ?
samcv did you want it to use some other different method name when coercing?
lizmat melezhik: $_ ?
samcv single elements?
oh INSIDE
inside inside. not inside array
i think i'mm falling asleep 09:43
hahainternet samcv: my point is that if i make my own type, CoolerNumber, there's no .CoolerNumber method on Num, for example
melezhik m: say "a b ddc".words.map("$_ OK")
camelia Use of uninitialized value $_ of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at <tmp> line 1
Cannot resolve caller map(Seq: Str); none of these signatures …
hahainternet so i can't do any implicit coercion
moritz you need a block
samcv ah hahainternet very true
moritz m: say "a b ddc".words.map({"$_ OK"})
camelia (a OK b OK ddc OK)
samcv hahainternet, so coerce it to uh. not CoolerNumber?
melezhik thanks!
samcv what are you going from and to?
melezhik this is what I looked
samcv want to go TO a builtin? from a nonbuiltin?
hahainternet samcv: it's ok this is not a practical problem, i'm aware i can manually convert between types 09:44
just wondered if any work had been done on these implicit conversions
lizmat hahainternet: not that I'm aware of
hahainternet cheers lizmat
samcv hahainternet, can always augment the classes to _have_ that special method
which will then call the ethod you want
hahainternet samcv: that's not really an acceptable solution in 'production' code or similar
lizmat samcv: yeah, but you would need to re-compose all of the subclasses as well 09:45
as they won't see any augments in a base class
samcv yeah it's not perfect
hahainternet this was originally to deal with Advent Of Code
so i can't remember which particular challenge
but iirc i was wanting to coerce to one of a few types depending on the input category, and it would have been nicer to use the builtins 09:46
anyway it's no problem at all, i just thought i'd pop in and ask
lizmat m: use MONKEY; augment class Any { method foo() { "foo" } }; say 42.foo
camelia No such method 'foo' for invocant of type 'Int'
in block <unit> at <tmp> line 1
lizmat m: use MONKEY; augment class Any { method foo() { "foo" } }; augment class Int {}; say 42.foo
camelia foo
lizmat m: use MONKEY; augment class Any { method foo() { "foo" } }; Int.^compose; say 42.foo # shorter 09:47
camelia foo
hahainternet ok i've no idea how that ^compose works, that's magic :)
lizmat it's basically what the compiler does when it sees the closing curly of the class / augment
hahainternet ah right ok 09:48
lizmat m: use MONKEY; augment class Any { method foo() { "foo" } }; BEGIN .^compose for Cool,Int,Str; say "42".foo # if you need to compose more classes 09:51
camelia foo
hahainternet is that . implicitly calling on $_ ? 09:52
or does the BEGIN block affect that?
lizmat yup
no
hahainternet right, i don't think i knew you could do that :)
makes sense though
lizmat you'd want to do the ^compose at compile time :-) 09:53
09:53 pat_js joined
lizmat so it'll get precomped 09:53
hahainternet yeah i'm aware of the begin etc blocks, but didn't know if there were special syntax rules :)
09:54 v1_ joined, v1_ left 10:01 wamba joined 10:18 rurban left 10:19 cpage_ left 10:31 ponbiki joined, ponbiki is now known as Guest18019 10:34 wamba left 10:35 wamba joined 10:38 dakkar joined
dakkar hello! is rakudobrew still the recommended way to build a rakudo+moarvm in one's home directory? 10:39
10:39 Trupti joined
Trupti help 10:39
I need help for Inline Module 10:40
timotimo hi 10:44
which one?
Trupti When I am trying to run perl program using Inline::Java , it runs fine but when I create its exe , it fails with below error. Could not find or load main class org.perl.inline.java.InlineJavaServer 10:49
timotimo oh, is this a perl5 question? 10:52
Trupti yes
timotimo i'm sorry, but you've got the wrong channel
Trupti can you please help me to go to right channel 10:53
any link ?
timotimo here on this network there is a channel called #perl
there's also a server irc.perl.org (it's in a different network, too)
Trupti ok..let me check
Thanks
timotimo good luck!
10:55 Trupti left 10:56 parv joined 11:06 labster left
lizmat dakkar: it's my understanding that rakudobrew nowadays is really for core developers that would like to be able to switch between different versions a lot 11:07
dakkar: now that module installing has become version independent, the need for rakudobrew has severely diminished 11:08
it used to be the case that after each core compilation, you would need to re-*install* all the modules that you need
rakudobrew helped with that then 11:09
dakkar lizmat: (hi!) so, what's the "normal user, wants latest release" tool of choice?
lizmat latest compiler or latest star release ?
dakkar compiler
and not system-wide install
lizmat rakudo.org/downloads/rakudo/ # take your pick 11:10
afaik, rakudo still doesn't install system wide
11:10 gdonald left
dakkar I've just discovered that Gentoo has an ebuild for rakudo 11:11
11:11 gdonald joined 11:13 cpage_ joined 11:16 rurban joined
sammers hi all 11:20
11:22 tane left
sammers is there a list of experimental features with their status? when is an experimental feature considered ready? 11:24
11:26 Guest18019 is now known as ponbiki
lizmat sammers: if there isn't such a list on docs.perl.org, perhaps you could add a documentation issue? 11:27
sammers lizmat, the only list I have found is docs.perl6.org/language/experimental, not sure if there is another one somewhere... 11:29
lizmat that looks to be about it, I think 11:30
sammers
sammers: there's also "use v6.d.PREVIEW" of course
11:30 ambs_ left
lizmat but that's really bleeding edge and I don't think we have a lot of doc for that yet, as it is still in flux 11:30
sammers lizmat, thanks. how does that process work? What determines when a feature is mature enough? 11:31
lizmat I guess @LARRY decides that :-)
11:35 ambs joined
sammers ah, understand. just curious. 11:36
11:37 movl left
sammers is anyone using the feed operator much? Most of the modules I have browsed through tend to be more OO and use the .method syntax. 11:38
lizmat has never really used feeds 11:39
11:39 wamba left
moritz sammers: not really; they are more of a proof-of-concept implementation so far 11:39
sammers I like the feed operator, the way the code looks I guess.
12:01 kyan left 12:02 raschipi joined 12:05 AlexDaniel joined 12:12 lucastiagodemora joined 12:17 _lucas1_ joined 12:18 ufobat left 12:22 _lucas1_ left, _lucas1 joined 12:30 _lucas1 left, lucas1 joined 12:31 lucas1 left 12:33 lucas-1 joined, ufobat joined 12:34 lucastiagodemora left 12:36 jdmmmmm joined, wamba joined 12:39 nine_ is now known as nine 12:47 abraxxa left 12:50 jdmmmmm left 12:52 Peter_R left 12:53 mcmillhj joined, wamba left 12:54 Peter_R joined 13:02 bjz joined 13:13 AlexDaniel left 13:14 skids joined 13:18 avalenn joined 13:27 kurahaupo joined 13:31 gregf_ left 13:33 kurahaupo_ joined 13:35 kurahaupo left 13:37 kurahaupo joined 13:40 kurahaupo__ joined, kurahaupo_ left, parv left 13:55 mr-foobar joined 14:08 mr-foobar left, mr-foobar joined 14:12 bjz left 14:19 bjz joined 14:21 raschipi_ joined 14:23 raschipi left 14:26 notbenh left 14:27 notbenh joined, mingdao joined 14:28 nightfrog joined 14:33 g4 left 14:35 cdg joined 14:36 jdmmmmm joined 14:43 notbenh left 14:45 notbenh joined 14:46 jdmmmmm left 14:47 cowens joined 14:49 jdmmmmm joined
cowens I have a module in /Users/cowens/.perl6, in the repl, I say “use module_name” and it says “Could not find module_name at line 1 in: 14:49
/Users/cowens/.perl6
/usr/local/Cellar/rakudo-star/2017.01/share/perl6/site” and so on. If I then say use lib “/Users/cowens/.perl6” it can find it. What is going on?
moritz cowens: the ~/.perl6/ path is a search path for *installed* modules 14:51
cowens: which are stored in a different format than just source files (more meta data, potentially precompiled etc.)
cowens so installing a module is not the same thing as it being in the dir? 14:52
moritz correct
14:52 bjz left
moritz so, install your module (zef install .) 14:52
14:52 wamba joined, nightfrog is now known as culb
moritz (and use lib $path tells Perl 6 to look in that path for modules that haven't been installed, iirc) 14:52
cowens That error message needs some work then 14:53
It lists the installed dir with the other paths
moritz yes, improvements would be welcome
cowens Where is that error message located in the code? 14:54
roughly
14:58 bjz joined
cowens line 35 of src/core/CompUnit/Repository/AbsolutePath.pm? die("Could not find $file in:\n" ~ $*REPO.repo-chain.map(*.Str).join("\n").indent(4)); 14:59
there doesn’t seem to be a difference in the types 15:00
oh wait, it is calling .Str which is probably wiping it out
moritz right, the invidividual .Str methods might be a good starting point
cowens yep: file#/Users/cowens/.perl6 inst#/Users/cowens/.perl6
moritz or maybe introduce a new method apart from .Str, and call it there
MasterDuke m: dd $*REPO.repo-chain 15:01
camelia (CompUnit::Repository::Installation.new("/home/camelia/.perl6"), CompUnit::Repository::Installation.new("/home/camelia/rakudo-m-inst-1/share/perl6/site"), CompUnit::Repository::Installation.new("/home/camelia/rakudo-m-inst-1/share/perl6/vendor"), CompUni…
cowens I was thinking two greps
moritz I think we used to have output like file#/Users/cowens/.perl6 inst#/Users/cowens/.perl6 and it was very confusing
cowens one for inst and one for file
moritz cowens: users can supply their own repo types
cowens Hmm, so group it by repo type
moritz but then it doesn't report the search order correctly 15:04
cowens crap
moritz right :-)
cowens So, we need to turn it into something like /User/cowens/.perl (installed only) 15:05
15:05 culb left
cowens what are the user defined types? 15:05
moritz see src/core/CompUnit/Repository/*.pm 15:06
El_Che what was the magic incantation to know when the next rakudo will be released? 15:08
!last release
nope
one of the zillion bots of brokenChicken :) 15:09
tadzik !release
hm
15:09 khw joined
cowens so, .gist is supposed to be human readable, right? 15:10
15:10 bdmatatu joined
cowens Maybe make their .gist return something readable like “path (type)” 15:11
Of course, a path could have spaces and parens
but that would be unlikely and the only the last parens should be trusted
El_Che Added Ubuntu 17.04 amd64 pkg (out next week): github.com/nxadm/rakudo-pkg/releas...2017.03_02 15:13
15:13 bjz left
cowens multi method gist(CompUnit::Repository::Locally:D:) { 15:14
self.Str ~ "(" ~ self.^name ~ ")"
}
instead of the self.path-spec that is currently there 15:15
15:16 Gothmog_ left
MasterDuke NeuralAnomaly: release 15:16
NeuralAnomaly: status 15:17
NeuralAnomaly MasterDuke, [✘] Next release will be in 1 day and 1 week. Since last release, there are 17 new still-open tickets (6 unreviewed and 0 blockers) and 170 unreviewed commits. See perl6.fail/release/stats for details
15:19 Dunearhp left 15:25 ChoHag left
El_Che thx 15:29
15:31 domidumont left 15:41 Dunearhp joined 15:42 lowbro left, alphah left
lizmat NeuralAnomaly: status 15:46
NeuralAnomaly lizmat, [✘] Next release will be in 1 day and 1 week. Since last release, there are 17 new still-open tickets (6 unreviewed and 0 blockers) and 171 unreviewed commits. See perl6.fail/release/stats for details
lizmat ah, mustard
15:55 bjz joined 16:01 bdmatatu left, mr-foobar left, mr-foobar joined
cowens My changes to src/core/CompUnit/Repository.pm aren’t being picked up by ./perl6 in the git repo. Adding src/core to the search path didn’t help. How can I test this interactively? 16:06
perigrin w20 16:07
16:10 cdg_ joined, mcmillhj left 16:11 mcmillhj joined 16:12 cdg left 16:14 bjz left 16:16 mcmillhj left 16:19 Peter_R left, Peter_R joined
El_Che I'll have a crappy connection at release day. I'll try to have pkgs though. I hear Zoffix promissed a lot of breakage, so,pkgs could be handy ;) 16:19
16:20 Zoffix joined 16:21 dakkar left
Zoffix cowens: you need to compile the setting each time you make the change. perl Configure.pl --gen-moar --gen-nqp --backends=moar; make; make test; make install 16:21
cowens: after first running that, you can just run `make install` for any changes that don't involve an NQP bump
El_Che: I didn't promise breakage. In fact, if people follow the upgrade notices, there'll be zero breakage :) 16:22
cowens So you can’t test without installing?
El_Che Zoffix: wanne bet? ;)
Zoffix cowens: the src/core/CompUnit/Repository.pm file isn't used. All the src/ files get lumped into a single file, which then gets compiled and used.
El_Che "follow the instructions" <= have you ever bought stuff from Ikea? 16:23
cowens So, a make should be enough? Then I can run ./perl6?
Zoffix cowens: it installs into ./install/bin 16:24
cowens: this trick can come in handy to avoid recompiling every time: perl6.party/post/Hacking-on-Rakudo...x-Your-Fix 16:25
cowens Ah, I had assumed /usr/local as is customary
Zoffix More direct URL: perl6.party/post/Hacking-on-Rakudo...mixyourfix
16:26 cdg_ left
Zoffix And when there are conflicts, I just rename the method in my augment (e.g. .ACCEPTS2) and use that to ensure it works and when it does, rename it back and pop it into rakudo 16:26
The aforementioned upgrade notices: rakudo.org/2017/04/02/upgrade-infor...rant-work/ and rakudo.org/2017/04/03/part-2-upgrad...rant-work/ 16:28
Hoping to finish implementing everything mentioned on them by end of Monday. 16:29
So... upgrade your code.
16:30 setty1 joined
Zoffix And avoid IOcalypse. Coming to boxes near you 2017.04.17 16:30
Oh, yeah
NeuralAnomaly: status
NeuralAnomaly Zoffix, [✘] Next release will be in 1 day and 1 week. Since last release, there are 17 new still-open tickets (6 unreviewed and 0 blockers) and 172 unreviewed commits. See perl6.fail/release/stats for details
16:31 domidumont joined
Zoffix ^ very likely going to delay release until Apr. 17th, to ensure all the IO fixes are nice and polished, since the next oppportunity to receive fixes for regular users will be 3 months away. 16:31
huggable: star
huggable Zoffix, Estimated Rakudo Star releases for 2017: .01, .04, .07 & .10
16:31 mcmillhj joined
Zoffix ^ these are Rakudo Star releases. Someone was asking for March release; that was never planned. It's released every 3 months. In about 2 months, there'll be a bit different distribution (so not a direct competition to Rakudo Star): Perl 6 VIP that will be targeted for end users and released with same schedule as Rakudo. 16:32
El_Che so star will include your changes? that'z fast
Zoffix Perl6 VIP will be compiler + module installer + tool that lets you install groups of modules by topic (e.g. "web dev"), but it won't package any of them with it, unlike what Rakudo Star does 16:33
perl6.vip <-- website for it. Won't make it for the promised date due to IO work, but hopefully 2 months from now :)
El_Che pretty much like the packages I build. Is it a perl 6 project? I can retire my pkgs then 16:34
Zoffix El_Che: yeah, that was the idea since the start of the IO grant, to push everything into 2017.04 release so regular users can receive it all with the April's Rakudo Star
El_Che: so far Perl6.VIP is my own thing I'm doing and isn't part of Perl 6, at least as TPF/Perl 6 Core Team is concerned... If I die, there won't be VIP so to speak :) 16:35
El_Che: my goal is to wean users off stupid rakudobrew 16:36
El_Che are you targetting win en mac? (I don't)
16:36 mcmillhj left
Zoffix El_Che: yes, I am. Definitely Win, for Mac... I need to get acces to a Mac box first. Might buy a beater on the cheap. Some lappy with a scratched screen or something, just to compile/test stuff on it 16:37
El_Che good
Zoffix ... with IO grant money :D
So, donate to TPF. Your money gets put back into the system! :)
huggable: swear jar
huggable Zoffix, Help Perl 6. Donate (specify "Perl 6 fund" in purpose field): donate.perlfoundation.org/
El_Che i looked at snap before doing distro dependant packages. That may be also an option
Zoffix El_Che: snap? 16:38
16:39 mcmillhj joined
El_Che ubuntu's flatpack 16:39
bot do kind of the same. Bundle binary, dep libs in a sandbox
so you could have 1 pkg for all linuxes
Zoffix El_Che: but not for OSX?
El_Che Not that I know 16:40
I had a go at Solaris
got stuck on libuv
Zoffix Wonder if travis can be abused to build MacOS packages :}
El_Che it can
Zoffix \o/
Zoffix & 16:41
16:41 Zoffix left 16:54 TeamBlast left 16:55 TeamBlast joined
JAP{Necro}H hi! how to join in this irc chanel to pidgin? 16:59
16:59 Limit joined
JAP{Necro}H login/pass? 17:00
server?
17:07 espadrine joined
moritz no password 17:07
server is irc.freenode.org, the channel is #perl6 17:08
17:08 AlexDaniel joined 17:14 AndyDee left
El_Che JAP{Necro}H: get the irc plugins for piding 17:18
JAP{Necro}H: (not needed, just handy)
17:22 robertle joined 17:23 wamba left
cowens What are CompUnit::Repository::AbsolutePath<140211490473264>, CompUnit::Repository::NQP<140211475454056>, CompUnit::Repository::Perl5<140211475454096>? I assume they are additional ways to get modules, but do they have file paths? 17:27
17:27 perlnecrohacker joined
perlnecrohacker test 17:28
perlpilot perlnecrohacker: you passed! 17:32
perlnecrohacker yup) 17:33
. 17:36
17:37 perlnecrohacker left 17:39 perlnecrohacker joined 17:41 robertle_ joined 17:43 robertle left, TeamBlast left 17:44 JAP{Necro}H left 17:47 sammers left 17:48 sammers joined, AndyDee joined 17:49 TeamBlast joined 17:50 synopsebot6 joined, ChanServ sets mode: +v synopsebot6
[Coke] .tell zoffix there isn't a schedule about releasing star every three months. I think that it just kind of worked out that way for a while. Pretty sure it was never a hard and fast rule, despite some rumblings suggesting it. 18:04
yoleaux [Coke]: I'll pass your message to zoffix.
18:04 Zoffix joined
Zoffix . 18:04
yoleaux 18:04Z <[Coke]> Zoffix: there isn't a schedule about releasing star every three months. I think that it just kind of worked out that way for a while. Pretty sure it was never a hard and fast rule, despite some rumblings suggesting it.
Zoffix [Coke]: there isn't a hard and fast rule, but R*'s release manager gave me the dates in the bot as a guideline. 18:05
huggable: star
huggable Zoffix, Estimated Rakudo Star releases for 2017: .01, .04, .07 & .10
[Coke] AlexDaniel: re RT #131119 - Pretty sure rakudo & perl 6 in general are allowed to throw errors as soon as they can find them; I don't see a problem with turning that statement into a literal junction up front, before runtime.
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=131119
[Coke] m: say (+any("3","4")).perl; 18:06
camelia any(3, 4)
Zoffix [Coke]: FWIW, the #perl6's yoleaux ain't in -dev, so were it not for ZofBot pinging me, I'd probably not notice that message :)
I guess that means you can just `Zoffix: message` and ZofBot will forward it to me
<3 ZofBot
AlexDaniel [Coke]: yes, but if it is not compile time, then it shouldn't say ===SORRY!=== 18:07
yoleaux 09:17Z <lizmat> AlexDaniel: github.com/rakudo/rakudo/commit/1fea4951b5
[Coke] mst: can you please help us fix the yoleuax bot situation?
AlexDaniel: what makes you think it's not compile time?
Zoffix ? how can mst help it
AlexDaniel m: say 42; say +any(‘abc’, 42.5)
camelia 42
===SORRY!===
Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5abc' (indicated by ⏏)
Zoffix [Coke]: the "42" that's said before the error is shown
AlexDaniel [Coke]: notice that 「say 42」 right there? :) 18:08
m: say 123; say +any(‘abc’, 42.5)
camelia 123
===SORRY!===
Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5abc' (indicated by ⏏)
Zoffix m: say 123; say +‘abc’
camelia 123
Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5abc' (indicated by ⏏)
in block <unit> at <tmp> line 1

Actually thrown at:
in block <unit> at <tmp> line 1
[Coke] m: use MONKEY-SEE-NO-EVAL; say 42; "+'abc'".EVAL.say
camelia 42
Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5abc' (indicated by ⏏)
in block <unit> at EVAL_0 line 1
in block <unit> at <tmp> line 1

Actually thrown at:
in block <unit> at <tmp> li…
18:09 sammers left
Zoffix [Coke]: also, +"abc" is a Failure. It only gets thrown when it's fed to `say` 18:09
m: $ = +any(‘abc’, 42.5)
camelia ( no output )
[Coke] zoffix, alexdaniel; OK. I would say merely LTA.
AlexDaniel oh, I didn't mark it as LTA?
AlexDaniel fixes it
Zoffix [Coke]: how would mst help with the bot tho?
[Coke] m: use MONKEY-SEE-NO-EVAL; say 42; "+'abc'.say".EVAL 18:10
camelia 42
abc
[Coke] ok, now that's just weird. :)
Zoffix I think we're at an impasse with it: if we ban it and move yoleaux2 into here, messages in it will be lost.
And without an owner, we can't get the messages and transfer them to new bot 18:11
AlexDaniel so… how do we find the owner?
Zoffix [Coke]: it's +('abc'.say) => +(True)
Need a space to make it do the prefix first
m: use MONKEY-SEE-NO-EVAL; say 42; "+'abc' .say".EVAL
camelia 42
Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5abc' (indicated by ⏏)
in block <unit> at EVAL_0 line 1
in block <unit> at <tmp> line 1

Actually thrown at:
in block <unit> at EVAL_0 l…
Zoffix AlexDaniel: maybe it doesn't have an owner? 18:12
BOTS WERE MEANT TO BE FREE!
18:12 Zoffix left 18:16 sammers joined
TimToady so far I've paid $0 for every bot I've used... 18:17
also €0 and ¥0...
18:20 rurban left 18:21 rurban joined
Voldenet I can think of making a startup which would give people non-free irc bots 18:25
totally great
skids TimToady: If I were to convert gist.github.com/skids/18fa6fb1de77...6e82e9fcc2 to a scope declarator and invert its sense, so only roles/methods with that declarator were noisy, would you have a naming suggestion? I was thinking maybe "insist role Foo". 18:27
18:29 lostinfog joined 18:30 lostinfog left 18:33 salva left 18:36 rurban left 18:39 nicq joined
RabidGravy BOOM! 18:40
Voldenet, I guess the money would be in "corporate" slack accounts ;-) 18:41
Voldenet I'm surprised it's possible to make money on slack 18:42
raschipi_ There's a lot of companies out there that incorporated slack into their workflows. 18:45
skids slack is its own reward, hail bob! 18:46
Voldenet Oh I'm sure. A lot of companies are reinventing a stick and reselling it :P 18:49
raschipi_ Slack is IRC with hooks for applications instead of bots 18:50
Voldenet It'd be possible to set up hooks with unrealircd too, though. Through some "hookserv" or something ;) 18:52
skids Slack is what was taken away; Slack is what "Bob" gives BACK. 18:54
18:54 labster joined 18:57 dwarring joined 18:58 spebern joined 18:59 lichtkind left 19:04 raschipi_ left 19:10 cdg joined 19:11 lichtkind joined
TimToady skids: what happens if two different roles insist? 19:13
lunch &
perlpilot
.oO( I insist! I insist more! No, *I* insist more! )
19:14
skids An insist on a role just does all the methods in it. Two colliding methods in two different roles both insisting would still get noisy, plus also be a collision for which you'd have to disambiguate. 19:15
Supposing you could disambiguate (currently nonfunctional) you'd have violated the insist, and get noise. 19:16
19:18 rurban joined 19:22 domidumont left 19:24 Voldenet left 19:28 Voldenet joined, Voldenet left, Voldenet joined 19:34 darutoko left 19:39 pat_js left 19:42 nicq left 19:44 rurban left 19:48 rindolf left 19:49 alphah joined 19:52 rindolf joined 19:57 raschipi joined 19:59 raschipi left
[Coke] AlexDaniel++ grep: is much faster than .grep 19:59
lizmat [Coke]: huh? could you elaborate ? 20:01
[Coke] old code: github.com/coke/p6-uni/blob/master...ni#L37-L46 20:02
AlexDaniel lizmat: well, maybe you want to take a look at this? github.com/perl6/whateverable/blob...#L129-L132 20:03
[Coke] new code: gist.github.com/coke/bb7505962eb05...e41e7af80c
AlexDaniel lizmat: if you change this code slightly in any way, it gets slower
[Coke] new way takes 3.388s; old way: (one minute) 20:04
(I mean, wait one minute while I run it)
20:04 rindolf left
AlexDaniel xD 20:04
[Coke] old way: 47.041s 20:05
m: say 3.388/47.041
camelia 0.072022
lizmat wow
AlexDaniel yes-yes, I know
[Coke] m: say 47.041/3.388
camelia 13.884593
[Coke] so, 14 times faster.
lizmat am in the middle of some other stuff atm, will look at it shortly
[Coke] lizmat++
AlexDaniel [Coke]: I encourage you to mangle the code a bit more to see if you can get more out of it 20:06
[Coke] AlexDaniel: I just need it fast enough to test for now.
AlexDaniel [Coke]: 「$^a.chr.uninames.fc;」, what about 「fc uninames chr $^a」 ?
20:07 rindolf joined
AlexDaniel [Coke]: also, I have a feeling that it will be faster if you split your block into two (so that you have two greps) 20:08
[Coke] AlexDaniel: negligible.
AlexDaniel [Coke]: but faster, right? :)
[Coke] not over multiple runs, no
AlexDaniel hmm that's interesting 20:09
20:10 gensym joined
[Coke] not sure how splitting that grep into two is going to help unless I completely redo the inner loop, either. (I assume you mean one grep for @strings, one for @regexes) 20:11
20:11 mcmillhj left
AlexDaniel [Coke]: yes 20:12
u: Lo 20:13
unicodable6 AlexDaniel, U+00AA FEMININE ORDINAL INDICATOR [Lo] (ª)
AlexDaniel, U+00BA MASCULINE ORDINAL INDICATOR [Lo] (º)
AlexDaniel, 112804 characters in total: gist.github.com/01b68362720548185e...a7ce6115c1 20:14
AlexDaniel let's not try this with the whole unicode range… 20:15
[Coke] oh. this is much faster because it's not going through the whole range anymore, I think. :P 20:16
AlexDaniel [Coke]: you mean you forgot one F there? :D 20:17
[Coke] ayup.
AlexDaniel 4.6MB gist… I hope github won't ban me… 20:18
[Coke] so, lizmat, I apologize. :)
lizmat *phew* :-)
[Coke] new method is actually 2 seconds slower. :|
good thing I'm writing tests.. 20:19
AlexDaniel [Coke]: if I wanted to play around with it, what should I do? 20:20
just clone and?
[Coke] fork it/
fork & PR? 20:21
20:21 mcmillhj joined 20:24 cowens left 20:27 vike left 20:29 gdonald left 20:30 gdonald joined 20:31 ccntrq left
[Coke] ah. big difference between .uninames and .uniname 20:32
that takes it from 47s to 12s.
20:36 ccntrq joined 20:43 Peter_R left, vike joined 20:44 Peter_R joined
AlexDaniel [Coke]: ok, so 20:44
what about this
[Coke]: gist.github.com/AlexDaniel/6c55ec4...46930a31d8 20:45
[Coke]: can you run your test on it? 20:46
20:47 bjz joined, ufobat left
AlexDaniel tests* 20:48
[Coke] slightly faster at 2.5ish. Thanks. 20:49
AlexDaniel slightly? :D
20:49 lichtkind left
AlexDaniel m: say 12/2.5 20:50
camelia 4.8
[Coke] m: say 3.4/2.5
camelia 1.36
AlexDaniel how did you get 3.4?
[Coke] oh, wait, 3.4 was the incorrect one.
so, Thanks!! :) 20:51
AlexDaniel [Coke]: how do I test it with regexes?
ah, just /smth/ 20:52
[Coke] ./bin/uni -n /"rev".*"pilcr"/
sure, that too
that has always been much slower than fc string search 20:53
AlexDaniel I'm interested in knowing how to go beyound 2.5 though 20:54
I'd love to have that in unicodable…
[Coke] oh. and I am doing the case ins. wrong for regexes. I'm fc'ing the regex, not using :ignorecase.
AlexDaniel beyound xD
[Coke]: omg, this is so slow… 20:55
[Coke] aye. 20:56
in fact, commenting out that test for now, it's ridiculous. 20:57
AlexDaniel [Coke]: hmmmm, you know what
20:57 Geth left
AlexDaniel u: { m/cat/ && m/eyes/ } 20:58
20:58 Geth joined, ChanServ sets mode: +v Geth
unicodable6 AlexDaniel, «timed out after 30 seconds» «exit signal = SIGHUP (1)» 20:58
AlexDaniel :|
u: { /cat/ }
unicodable6 AlexDaniel, «timed out after 30 seconds» «exit signal = SIGHUP (1)» 20:59
20:59 perlpilot left 21:00 skids left
[Coke] wonder if we can narrow the range given that we know it's Unicode 9. 21:01
21:09 RabidGravy left
AlexDaniel [Coke]: the highest codepoint is pretty high 21:11
[Coke] Sure, every little bit helps, though. (would be nice if the range was introspectable and tied to the unicode version number, also introspectable) 21:12
21:14 mcmillhj left
AlexDaniel [Coke]: well, then you don't really need .fc there 21:15
[Coke]: shaves off 300ms or so
b2gills [Coke]: yoleaux and dpk (David P. Kendal) both originate from the same IP (/msg nickserv info dpk)
[Coke] .seen dpk 21:17
yoleaux I saw dpk 28 Feb 2017 12:10Z in #swhack: <dpk> ⬑ bettar
21:23 mcmillhj joined 21:27 mcmillhj left 21:31 spebern left 21:33 jdmmmmm left, TEttinger joined 21:36 jdmmmmm joined 21:53 espadrine left 21:55 mcmillhj joined 21:59 mcmillhj left 22:01 mr-foobar left 22:02 mr-foobar joined 22:06 kurahaupo__ left, kurahaupo_ joined 22:09 rindolf left 22:11 setty1 left 22:12 skink joined
skink Can anyone shed light on what this means? 22:14
>Cannot find method 'symtable' on object of type GLOBAL
Specifically github.com/skinkade/crypt-random/issues/2 22:16
timotimo probably the "if" module being broken
use Crypt::Random::Win:if($*DISTRO.is-win);
use Crypt::Random::Nix:if(!$*DISTRO.is-win);
if you run the thing with perl6 --ll-exception you perhaps will get a few lines of backtrace 22:17
skink Is there any way to just... not use that package? :) 22:19
Oh, the same issue's open on `if` as well
timotimo tbh i don't know what the best way to compile-time switch based on operating system 22:20
but you can definitely runtime-require with "require" or "need"
22:20 wamba joined
[Coke] .seen rjbs 22:25
yoleaux I saw rjbs 10 Mar 2017 21:04Z in #perl6: <rjbs> /win 7
22:28 mcmillhj joined, cdg left
u-ou how do i define a constant in perl 6? 22:30
22:31 bjz left
timotimo m: constant FOO = 100; say FOO 22:32
camelia 100
22:33 mcmillhj left 22:41 xfix left
u-ou :) thanks 22:41
skink timotimo, In my wrapper function that calls from the OS-specific module, I could add a check and require the right one 22:42
But I'd imagine that'd add a bunch of overhead, yeah?
timotimo why don't you do it in a sub EXPORT? 22:45
that'll run the check only once when your module gets used, and it should also be precompilable
mst [Coke]: what's the problem with yoleaux? 22:52
22:52 robertle_ left
AlexDaniel mst: long story short: we need yoleaux on #perl6-dev, but we cannot find who runs it 22:54
mst cute
AlexDaniel mst: now it turns out that it is dpk, so somebody has to find his/her contacts or whatever 22:55
mst right
there was some question about maybe running a yoleaux2
AlexDaniel mst: which is what we do know, but ideally we need the same bot everywhere
mst: but we cannot simply kick out yoleaux because we'd want its messages to be delivered… 22:56
do now*
mst ok, first, please explain "ideally we need"
given messages are per-channel what difference does it make anyway?
AlexDaniel mst: if I .tell you something on #perl6-dev, you will not receive it until you actually talk on #perl6-dev 22:57
mst I thought that was intentional
AlexDaniel mst: so you can spend your whole day on #perl6 without receiving the message…
well, not really
mst oh right
ok, so yoleaux is designed the way I really hate. fine ;)
fortunately people seem to've worked out they can just use IRC rather than the bot
so, the question is, I guess 22:58
is yoleaux on any channels other than this one?
AlexDaniel on many, I think. But we only care about #perl6 #perl6-dev and #moarvm
and currently it is only on #perl6 22:59
(and yoleaux2 is on #perl6-dev and #moarvm)
skink timotimo, use/require work in EXPORT?
mst AlexDaniel: right, so, why not parse outstanding yoleaux messages out of the public #perl6 logs so they don't get lost, and move to 2?
timotimo skink: should, yeah. just don't forget to return it, as well 23:00
AlexDaniel quotable6: / ^ ‘.tell ’ /
timotimo and iirc "is export" only works if you don't have an EXPORT sub
quotable6 AlexDaniel, gist.github.com/885e1cf8af0a7b1d72...d5551501cc 23:01
AlexDaniel mst: ↑ … well… I guess that's possible…
mst AlexDaniel: right, and it shouldn't be hard to find the ones that were already played back in here 23:02
then preload 2 with those
then declare victory ;)
AlexDaniel mst: uhm… I don't think anybody thought about this yet… 23:03
mst: we were kinda hoping for an easier way
mst well you can harass dpk and hope they re-appear 23:04
or you can do this now
also I'm fairly confused as to what isn't easy about this
seems like a handful of perl one-liners on a log 23:05
AlexDaniel mst: yea
I can do that
mst: ok, nevermind
mst I mean ... without access to the internals of yoleaux, which requires dpk anyway, I don't see any third option here 23:06
I can provide a few weeks of irssi logs for here if that's a more convenient format than whatever else you have
AlexDaniel mst: no need, it's great
23:09 BenGoldberg joined
[Coke] mst++ 23:10
mst sorry I don't have a magic wand, but given we're in a perl channel, I figure "reducing the problem to a couple regexps" isn't bad :D 23:11
23:11 skids joined
[Coke] AlexDaniel, samcv - is there a precedent for showing the props as [Po], e.g.? 23:12
AlexDaniel u: ∞
unicodable6 AlexDaniel, U+221E INFINITY [Sm] (∞)
AlexDaniel .seen dpk 23:15
yoleaux I saw dpk 28 Feb 2017 12:10Z in #swhack: <dpk> ⬑ bettar
23:19 mcmillhj joined
[Coke] AlexDaniel: changing my output to be more like p5's uni (but they don' thave the [Sm]) 23:19
unidump: ½⅔ 23:23
unicodable6 [Coke], gist.github.com/680af878d26a31812d...8d3f7b806a
23:23 mcmillhj left
samcv [Coke], what? 23:32
precedent where 23:33
23:33 aindilis left
BenGoldberg Perl is on the cutting edge of unicode support. We can have our tools display it however we want, and there's little chance someone will complain, "But this other project displays it differently, therefor perl6 is ugly!" 23:39
23:39 kyan joined 23:42 _28_ria joined
samcv i mean 23:43
www.unicode.org/Public/9.0.0/ucd/Pr...liases.txt ctrl +f "General_Category"
those are the official things we have to choose from
i mean. it's nice to get the full text of it, but also the shortcut does conver specific meanning about the cp's properties 23:44
which is not in the full name
though. idk maybe it'd be nice to choose beteen names you get 23:45
though anything we give that's in that list is unicode compliant. but if we give the full name (that's actually what i was planning to have it do in the long run) 23:47
23:48 mcmillhj joined
samcv so i'm not sure. it would toally break compatibility to change the default .uniprop result to change, and that should be more stable than the other properties. which i think should be their full names. and then return Bool's True/False for boolean ones 23:48
23:49 bjz joined
samcv and of course, any of the aliases are allowed when you do regex, since they are all equivilant. so you can use any official name 23:49
but general category is special in that the short name actually has programic information the long name does not. most are just names and that's it
let's see. the only other exception to how the others act would be canonical combining class, which has names/numbers, where the numbers convey programatic information not given by the full names. have not 100% decided that. maybe we will need uniprop-int... idk. have to think 23:54
see values here: of CCC unicode.org/reports/tr44/#Canonical...ass_Values
and there's large swaths between 10 and 199 that just have numbers
(sorry if this response is too much!) heh 23:55
23:56 mcmillhj left 23:57 kurahaupo left