»ö« 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.
tbrowder [Coke]: standing by for critique... 00:00
[Coke] tbrowder: you have been very patient. I'm late, I'll do it now. 00:01
tbrowder no hurry, we have 24 hrs or so 😃 00:03
00:03 pierre_ joined 00:06 cdg joined 00:09 wamba left, MasterDukeLaptop joined
[Coke] tbrowder: I actually don't have any edits for you, technically or stylistically. Good read, esp. liked the walkthrough on when you hide somethings. 00:10
well done, thanks for putting it together!
00:10 rindolf left
babydrop \o/ 00:10
00:10 pyrimidine joined
tbrowder ok, thanks. how about the ending comments and the clever // operator--too much? 00:11
babydrop Perl 6 Advent Day 11 — "Perl 6 Core Hacking: It Slipped Through The QASTs": perl6advent.wordpress.com/2016/12/...the-qasts/
MasterDukeLaptop babydrop: "avaiable" 00:14
00:15 pyrimidine left
[Coke] nah, 'sfine. 00:15
my FQN comment (which slipped out too early) was about this line:
github.com/perl6/doc/blob/master/d....pod6#L193
00:16 cdg left
babydrop MasterDukeLaptop: fixed, thanks. 00:16
00:17 pierre_ left
MasterDukeLaptop heh, want a really nitpicky one? S///‘s in the second to last sentence before "Slippety Slip" looks like a quote, not apostrophe (at least in this browser (FF 50 on Kubuntu 16.10)) 00:19
babydrop MasterDukeLaptop: same here. It's wordpress being too smart for its own good and changing the quotes. 00:21
MasterDukeLaptop yeah, i see another one, but probably way too minor to worry about 00:22
i was trying to use something at work yesterday to make a blog post (maybe it was wordpress, i don't know) and it was aweful 00:23
previews popping up unasked for (and incorrect), not showing images, etc
hats off to you people who do it more than once ever 00:24
oooh, and a link to QAST docs! babydrop++ 00:25
babydrop I didn't see what that 'v' in Want is about tho 00:26
00:26 bjz left
MasterDukeLaptop oh, just reading the docs you helpfully linked, maybe void context 00:28
babydrop .ask lucasb were you going to fix that slip bug or should I take care of it? It's trivial and will let you learn the build system. 00:34
yoleaux babydrop: I'll pass your message to lucasb.
00:35 lukiramu left
MasterDukeLaptop babydrop: nice article 00:37
babydrop Thanks. 00:39
00:54 bjz joined 00:58 canopus left 01:00 pyrimidine joined 01:04 canopus joined 01:05 pyrimidine left 01:19 pyrimidine joined 01:24 pyrimidine left 01:32 lucasb left 01:48 espadrine left 01:51 CIAvash[m] left 02:00 pyrimidine joined 02:05 pyrimidine left 02:06 pyrimidine joined 02:10 pyrimidine left 02:21 pierre_ joined 02:22 mulk[m] joined 02:27 giraffe left 02:28 pyrimidine joined 02:30 ilmari[m] joined, Matthew[m] joined, tadzik joined, M-Illandan joined, CIAvash[m] joined, Matias[m] joined, dp[m] joined 02:33 pyrimidine left 02:35 giraffe joined 02:36 skids joined 02:45 ilbot3 left 02:49 ilbot3 joined 02:51 bjz left
samcv i'm getting github's linguist to be able to classify Perl6 pod correctly as perl 6 pod now perl 5 pod 02:52
also do people want Pod to be its own 'language' on github
Pod6 that is
"Alright, the results of the .pod6 file search have finished downloading. All-in-all, we're only looking at 52 unique repositories, distributed between 28 unique users... so I'm afraid the usage is too thin to warrant addition as a new language, methinks. I'm a little concerned about how the syntactic differences might skew the classifier, though..." 02:53
that was for .pod6 but there are more than are just called .pod, but was curious how people want it to be classified on github? should I lobby for having it be 'Pod6' ? is that wanted by people? 02:54
or maybe Perl 6 Pod, any thoughts?
03:02 bjz joined, kyclark joined 03:08 labster left 03:09 kyclark left 03:13 noganex_ joined 03:14 pierre_ left 03:16 noganex left 03:19 pyrimidine joined 03:24 pyrimidine left
AlexDaniel hooray, uniprops! 03:27
samcv :)
03:28 kyclark joined, pyrimidine joined 03:29 pierre_ joined
AlexDaniel samcv: there's a little problem with uniprops 03:30
samcv yeah it's not building. fixing that. unless there's something else you didn't like in the implementation? 03:31
AlexDaniel samcv: basically, S15 suggests that uniprops should return a hash
samcv it does. but it also shows uniprops("a", "ASCII_Hex_Digit") 03:32
idk does it really make sense for it to be a hash though
03:32 kyclark left
samcv unless there is like .uniprops(:all) or something idk that will return all the unicode properties for something 03:33
but uninames returns a sequence
03:33 pyrimidine left
AlexDaniel yea, it would be stupid to have “uninames” do one thing but “uniprops” doing something different 03:33
also, this: irclog.perlgeek.de/perl6/2014-03-04#i_8379769
03:35 pierre_ left
samcv bookmarked that 03:37
the vulgar fractions I will have to see how I should do that 03:38
that would make the most sense and not involve weird checks
AlexDaniel samcv: actually: github.com/perl6/specs/commit/33dad1e20b
samcv oh i see it was rewritten 03:39
but they must have left in hash a few places
so you are for allowing a list of chars or list of integers for uniprops? 03:40
and then maybe we should also have a multi for uniprop(Int, @properties) hmm
AlexDaniel samcv: I'm not against, but I wonder what is the justification for having it 03:42
m: say (65,50)».uniprop 03:43
camelia rakudo-moar ea2884: OUTPUT«(Lu Nd)␤»
AlexDaniel that's kinda short enough, isn't it?
samcv because having uniprops only perform things on strings, whereas uniprop performs them on int's or on strings
i think it would be best if they have the same types allowed on them 03:44
m: say 10.uniname
camelia rakudo-moar ea2884: OUTPUT«LINE FEED (LF)␤»
samcv m: say (10, 11).uninames
camelia rakudo-moar ea2884: OUTPUT«Cannot resolve caller uninames(List); none of these signatures match:␤ (Str:D $str)␤ in block <unit> at <tmp> line 1␤␤»
samcv if as TimToady says that the essence of the function is getting values from integers, we should support integers for uniprops and uninames 03:45
not saying doing (65,50)».uniprop is not doable. but why should uniprop be able to take integers but uniprops can't? that seems weird 03:47
AlexDaniel samcv: the weird thing here is that uninames comes from Cool
and string operations from Cool tend to stringify stuff 03:48
samcv it works in my testing
a string of numbers
AlexDaniel no-no, sure
samcv (10,11).uniprops #> Cc, Cc is what i get
AlexDaniel but I'm trying to see any consistency between it and other methods from cool… 03:49
samcv ah
AlexDaniel maybe that's the wrong way to think about it, but…
samcv i mean. Cool doesn't make much sense i agree
AlexDaniel for example, unival is in Int 03:51
samcv (4000, 'a').uniprops('Script').perl #> ("Tibetan", "Latin").Seq
yeah it would make sense maybe to move them
"10".uniprops treats it as a string not a number 03:52
AlexDaniel m: say ‘⅔’.unival
camelia rakudo-moar ea2884: OUTPUT«0.666667␤»
AlexDaniel m: say 50.unival
camelia rakudo-moar ea2884: OUTPUT«2␤»
AlexDaniel and it also works on strings and ints 03:53
samcv so it only takes numbers right
i mean unival assumes you're giving it a number
whereas uniprop takes strings or integer
m: say 1.unival 03:54
camelia rakudo-moar ea2884: OUTPUT«NaN␤»
samcv m: say 50.unival
camelia rakudo-moar ea2884: OUTPUT«2␤»
samcv ah i guess it can take integers but
AlexDaniel m: say ‘2’.unival
camelia rakudo-moar ea2884: OUTPUT«2␤»
AlexDaniel in fact, unival looks up some uniprops, right?
samcv it's only used for numbers though, so i think it's different than uniprops
yeah 03:55
AlexDaniel … so is it unival that should be moved to Cool, or vice versa?
oh no… 03:56
samcv yeah i think unival should move to cool
no?
AlexDaniel m: say "4a¾".univals 03:57
camelia rakudo-moar ea2884: OUTPUT«(4 NaN 0.75)␤»
AlexDaniel /o\
THIS IS A STR METHOD!! /o\
samcv yeah it acts like uninames
where is it now?
int, ok
well unival/vals and uniname uniprop all work on ints and strings... 03:58
strings work on each character
integers work as integers
AlexDaniel s: '', 'univals'
SourceBaby AlexDaniel, Sauce is at github.com/rakudo/rakudo/blob/ea28...ol.pm#L102
samcv so i think it's natural for arrays to be allowed because it uses the strings chars individually. but where to put them, all in their own function?
the function is in Str but the method in Cool 03:59
AlexDaniel right
s: univals
SourceBaby AlexDaniel, Something's wrong: ␤ERR: ===SORRY!=== Error while compiling -e␤Calling univals() will never work with any of these multi signatures:␤ (Str:D $str)␤at -e:6␤------> put sourcery( ⏏univals )[1];␤
AlexDaniel s: univals('')
SourceBaby AlexDaniel, Something's wrong: ␤ERR: Cannot resolve caller sourcery(Seq); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
samcv s: univals('1') 04:00
SourceBaby samcv, Something's wrong: ␤ERR: Cannot resolve caller sourcery(Seq); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
samcv s: univals(1)
SourceBaby samcv, Something's wrong: ␤ERR: ===SORRY!=== Error while compiling -e␤Calling univals(Int) will never work with any of these multi signatures:␤ (Str:D $str)␤at -e:6␤------> put sourcery( ⏏univals(1) )[1];␤
AlexDaniel s: univals('hello')
SourceBaby AlexDaniel, Something's wrong: ␤ERR: Cannot resolve caller sourcery(Seq); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
AlexDaniel ah
s: 'univals' 'hello'
SourceBaby AlexDaniel, Something's wrong: ␤ERR: ===SORRY!=== Error while compiling -e␤Unable to parse expression in argument list; couldn't find final ')' ␤at -e:6␤------> put sourcery( 'univals'⏏ 'hello' )[1];␤ expecting any of:␤ infix␤ infix stopper␤
AlexDaniel s:'univals 'hello' 04:01
oops
s: univals 'hello'
SourceBaby AlexDaniel, Something's wrong: ␤ERR: Cannot resolve caller sourcery(Seq); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
samcv multi sub univals(Str:D $str) { $str.ords.map: { unival($_) } }
AlexDaniel babydrop: I'd be happy if I ever learn how to use this bot :)
*bleep blop* github.com/rakudo/rakudo/blob/ea28...r.pm#L2995
MasterDukeLaptop m: dd [.file, .line] with &univals 04:03
camelia rakudo-moar ea2884: OUTPUT«["SETTING::src/core/Str.pm", 3003]␤»
samcv but Str and Int's both inherit cool's methods, and since they are multi's that makes some since i guess? 04:04
i mean we have docs.perl6.org/type/Cool#routine_abs
too. and that can't be done on strings
AlexDaniel samcv: I am completely confused by now, but I think I found a doc bug
samcv though. i guess it tries to convert it to an actual number
AlexDaniel docs.perl6.org/type/Int#routine_unival 04:05
there is no unival in Int
samcv yeah
but *should* there be?
it probably should be in both Int and Str? 04:07
AlexDaniel why? One is enough :) 04:08
in its sub form I guess it doesn't matter
samcv though. in Str it says: # These probably belong in a separate unicodey file
above the unis
AlexDaniel and Cool.unival just passes it to sub unival which is in Str… okay 04:09
samcv but then on the docs they wouldn't show up in their proper section right?
AlexDaniel samcv: yes, I already created a ticket: github.com/perl6/doc/issues/1045
samcv well unival does take an int as an argument, so it could make sense to be in the int section? or is it more important for it to be in the section for the file it is in than the type it accepts 04:10
AlexDaniel samcv: well, it lists both sub and method forms. There is no unival method in Int, so it is misleading 04:13
i.e. this is what the docs say (on type/Int page): multi method unival(Int:D: --> Numeric) 04:14
m: say Int.^methods # (obviously no such method in Int)
camelia rakudo-moar ea2884: OUTPUT«(Int Num Rat FatRat abs Bridge chr sqrt base polymod expmod is-prime floor ceiling round lsb msb narrow Range sign sin tan cotan acosech conj atan2 cosec pred asec acotan cosh acos acosec sech unpolar log10 atanh log exp acosh truncate sinh tanh acotanh Re…»
samcv yeah
AlexDaniel samcv: but my question at this moment is actually “why keep it in Str? Why not move it to Cool?” 04:15
samcv that would be fine with me. all the methods are in Cool
+1
04:16 cdg joined
samcv should I go ahead and do that? 04:16
AlexDaniel *shrug* 04:17
samcv all the methods are there... so it makes way more sense
sec lemme make sure it won't break the docs
AlexDaniel samcv: right now everyone is asleep (me too!), perhaps try asking it again a bit later 04:18
samcv ok
like in how many hours? 04:19
a lot of people are in europe right
it's only 8pm here now
04:23 labster joined
samcv ok i moved them to Cool. i think that's the way to go tbh. will talk with people later about it and see what they think 04:30
04:34 cyphase left 04:39 kyclark joined, cyphase joined 04:44 cyphase left
dalek c: f1fa142 | coke++ | doc/Language/syntax.pod6:
remove trailing whitespace
04:49
synopsebot6 Link: doc.perl6.org/language/syntax
c: 10fcdc4 | coke++ | doc/Language/typesystem.pod6:
Expand acronym, switch article
synopsebot6 Link: doc.perl6.org/language/typesystem
04:56 travis-ci joined
travis-ci Doc build failed. Will "Coke" Coleda 'Expand acronym, switch article' 04:57
travis-ci.org/perl6/doc/builds/182964373 github.com/perl6/doc/compare/d14ee...fcdc4963d7
04:57 travis-ci left
[Coke] why does 'make html' in the doc project require bigpage? 04:58
[Coke] gets a SEGV building the docs, and upgrades his rakudo 05:03
05:05 pierre_ joined
[Coke] Couldn't determine correct make program. Aborting. 05:07
bah 05:08
05:08 kyclark left 05:09 nicq20_ joined, pyrimidine joined, cdg left 05:10 pierre_ left 05:14 pyrimidine left, bjz left
[Coke] updated; now I get "unlock when we're not locked!" (tagging jnthn) 05:20
(only when running in parallel) 05:21
05:23 nicq20_ left 05:24 khw left 05:27 bjz joined 05:28 pyrimidine joined 05:30 BenGoldberg left
dalek c: a93cbe7 | coke++ | doc/Programs/00-running.pod6:
searchable "environment variable"

Closes #950
05:30
05:33 pyrimidine left
Xliff Does anyone know why this error occurs? -- "Cannot invoke this object (REPR: Null; VMNull)" -- I'm getting it from the latest OO::Monitors, now 05:39
Which means Terminal::Print might also be affected.
05:43 cibs left 05:45 cibs joined
dalek c: 8d7b9d3 | coke++ | doc/Language/variables.pod6:
add a link from ! twigils to attributes.

closes #967
05:45
synopsebot6 Link: doc.perl6.org/language/variables
[Coke] Xliff: what version of rakudo are you using?
MasterDukeLaptop Xliff: usually seems to happen with async/conc stuff. dogbert17 was valgrinding a bunch of stuff earlier and creating moarvm issues for jnthn 05:46
lizmat has been getting those when running the spectest with TEST_HARNESS=6
05:50 travis-ci joined
travis-ci Doc build passed. Will "Coke" Coleda 'searchable "environment variable" 05:50
travis-ci.org/perl6/doc/builds/182967758 github.com/perl6/doc/compare/10fcd...3cbe7cd3e0
05:50 travis-ci left 05:51 Cabanossi left, Cabanossi joined 05:55 pyrimidine joined 06:00 pyrimidine left, rurban joined 06:04 travis-ci joined
travis-ci Doc build passed. Will "Coke" Coleda 'add a link from ! twigils to attributes. 06:04
travis-ci.org/perl6/doc/builds/182968696 github.com/perl6/doc/compare/a93cb...7b9d3b5edf
06:04 travis-ci left, rurban left 06:07 wisti left
[Coke] why is travis so verbose on doc build? 06:11
06:15 sunnavy left 06:18 pyrimidine joined 06:26 pyrimidine left
samcv nice Coke :) 06:31
06:31 rurban joined
samcv would be nice if it wasn't so verbose 06:31
06:40 AlexDaniel left 06:41 CIAvash joined 06:44 darutoko joined 06:50 pyrimidine joined
Xliff [Coke]: Latest from git. 06:51
Let me get exact. One sec.
[Coke]: 2016.11-182-gea28845f9
06:55 pyrimidine left 07:03 pyrimidine joined
Xliff I just rebuild my entire rakudo install. Version did not change. Still getting VMNull error. 07:04
07:05 bjz left 07:07 pyrimidine left, pierre_ joined 07:23 labster left 07:28 domidumont joined 07:32 domidumont left 07:33 domidumont joined 07:54 kaare_ left 07:55 pyrimidine joined, kaare_ joined 07:57 presiden joined 07:59 labster joined 08:00 pyrimidine left
presiden where can I read the doc about subscript and superscript operator(?) ? 08:06
08:13 pyrimidine joined 08:14 Tonik joined 08:18 pyrimidine left 08:20 domidumont left 08:25 Tonik left, bpmedley left, skids left 08:28 Vynce joined 08:29 RabidGravy joined, trnh joined, trnh left, trnh joined 08:35 pyrimidine joined 08:40 pyrimidine left
samcv presiden, this? docs.perl6.org/language/subscripts 08:44
08:45 giraffe left
presiden samcv: ah, thanks. 08:48
samcv no problem
presiden so, what about superscript, is that just exponentation operator?
08:48 notbenh left
samcv oh 08:49
you don't mean subscript as in accessing an array index?
m: say 2⁹
camelia rakudo-moar ea2884: OUTPUT«512␤»
samcv you can do that
or
m: say 2**9
camelia rakudo-moar ea2884: OUTPUT«512␤»
samcv but subscript letters don't do anything. what are you trying to do?
08:50 notbenh joined
samcv not sure what you mean by subscript, what mathematical operation are you meaning 08:50
08:54 ufobat joined
presiden samcv: eh, super-script I think what it's called, not sub-script, but yes, I mean the exponent operator. 08:54
08:54 giraffe joined 08:56 notbenh left
psch [Coke], samcv: travis isn't configured to be more verbose on doc than on e.g. rakudo. both have "on_success: change" and "on_error: always" as their reporting policy 08:57
08:58 notbenh joined
psch not sure why it reported two successes in a row though. maybe the second started before the first was finished and starting is what fetches the previous status 08:59
08:59 pyrimidine joined
samcv wth atom tests travis-ci.org/perl6/atom-language-...82071#L281 09:01
s ✗ #16: Line contains inconsistent indentation. Expected 2 got 4.
⚡ #17: Line exceeds maximum allowed length. Length is 83, max is 80.
✗ #19: Line contains inconsistent indentation. Expected 2 got 4.
⚡ #20: Line exceeds maximum allowed length. Length is 83, max is 80.
whyyyyy though.... 09:02
jesus
SHODAN because 09:04
samcv it tests fine on my computer using the apm test program
because no brackets or ; :(
it still runs fine though
09:04 pyrimidine left
samcv also i have no clue how i can keep the line under 80 because it's literally all one thing. but i don't know coffeescript at all 09:05
09:09 sena_kun joined, pierre_ left 09:12 Actualeyes left 09:15 labster left 09:23 pyrimidine joined 09:24 labster joined 09:25 domidumont joined 09:28 rindolf joined 09:29 wamba joined 09:30 girafe left
timotimo o/ 09:32
09:33 ufobat left 09:40 rindolf left 09:46 Vynce left 09:52 rindolf joined 10:01 andrzejku joined
samcv well i need to go to sleep. night all 10:03
timotimo gnite samcv 10:04
10:24 notbenh left 10:26 labster left, notbenh joined 10:31 brrt left, cibs left 10:33 cibs joined 10:35 TEttinger left 10:36 rurban left, bjz joined 10:40 presiden left 10:42 Actualeyes joined 10:45 trnh left 10:53 presiden joined 10:57 abruanese_ joined 11:07 abruanese_ is now known as abruanese 11:13 xinming_ left 11:14 xinming joined 11:17 pyrimidine left, pyrimidi_ joined 11:28 espadrine joined 11:29 pierre_ joined
RabidGravy okay, how is this react block exiting without hitting any phasers 11:33
11:34 ufobat joined 11:40 andrzejku left, bjz_ joined, bjz left 11:41 pierre_ left
RabidGravy ah the done phaser on a IO::Socket::Async.Supply doesn't get called unless there has been some input :( 11:42
11:44 presiden left 11:46 andrzejku joined
RabidGravy I'm going to call bug on that as otherwise there is no way of telling the client disconnected 11:47
11:51 lukaramu joined
ufobat does anyone know if Inline::Perl5 just works with perl5.24? or older versions as well? 11:57
11:58 CIAvash left 12:00 zacts left
nine ufobat: 5.18 minimum 12:01
ufobat nine: okay . then i am doing something wrong - cant get it up and running 12:02
nine ufobat: details? 12:03
ufobat wait a few sec, pls 12:04
gist.github.com/ufobat/d705a1bfc81...8ff865c110 12:06
nine ufobat: ah, I see :) Please try again with the modules you actually want to use. You picked two examples that expose a bit of strangeness of Perl 5. print is not really a function. It's more like an op and cannot be called that easily. 12:09
ufobat both are examples from your README.md 12:10
nine Data::Dumper is simply complaining about invalid usage. You need to pass the data it should dump to its constructor.
ufobat i wanted to start your Dancr benchmark :)
nine That's....true...and odd. That means those examples must have worked at some point. Could be that they still do on older Perl versions. 12:11
ufobat nine, could you pls have a look at gist.github.com/ufobat/7dbf0d77f9e...4d701b16df 12:12
thats the reason why i tried a more simple example ;)
but maybe this is not Inline::Perl5 related
looks perl6ish
okay DateTime works 12:15
perl6 -e 'use Inline::Perl5; use JSON::XS:from<Perl5>; my $j = Json::XS.new; ' 12:16
Could not find symbol '&XS'
nine Bailador-Benchmark? Is this about Dancr ported to Bailador or Dancr for Dancer2?
ufobat ahh damn!
its just a foldername where i stored your Dancr from your example dir 12:17
forget about my json example :-)
niner.name/talks/Web%20development%...dor/Dancr/ <- that one 12:18
nine ufobat: I don't get where Digest enters the picture here. It's not used by Dancr
Oh, then it's a pure Bailador application and Inline::Perl5 is not even used
ufobat i thought it was the reason since the other 2 examples didnt work, 12:19
nine examples/Dancer/Dancr is the one using Inline::Perl5
ufobat in the benchmark you just use Inline::Per5 for Plack and HTTP::Request::Common
niner.name/talks/Web%20development%...-bench.pl6 <- no? 12:20
nine Ooooh....I did not even script the Bailador benchmark. That's just copy pasta from the Dancer2 implementation
My Bailador benchmark was just ab2 -n 100 localhost:3000 after manually creating a couple of blog entries 12:21
ufobat okay now it makes more sense!
thanks for helping me :) 12:23
nine you're welcome :) 12:28
I'm happy that someone's interested in my work :) 12:29
12:30 FROGGS joined
ufobat me too :-) i am happy for the critic on bailador so i want to improve it :) 12:30
tadzik <3 12:31
dalek c: 3cb4189 | Altai-man++ | doc/Type/Signature.pod6:
Attempt to explain ways to declare return type in signature
12:33
synopsebot6 Link: doc.perl6.org/type/Signature
c: bd83d34 | Altai-man++ | doc/Type/Signature.pod6:
fill-region-as-paragraph
synopsebot6 Link: doc.perl6.org/type/Signature
c: ce8b05c | Altai-man++ | doc/Type/Signature.pod6:
Fix grammar
synopsebot6 Link: doc.perl6.org/type/Signature
c: 9babec9 | (Tom Browder)++ | doc/Type/Signature.pod6:
Merge pull request #1044 from perl6/return-ways-explanation

Attempt to explain ways to declare return type in signature
synopsebot6 Link: doc.perl6.org/type/Signature
c: 6afacd7 | (Tom Browder)++ | doc/Type/Signature.pod6:
grammar tweak
12:38
synopsebot6 Link: doc.perl6.org/type/Signature
Xliff Just for shiz and giggles, this worked.
perl6 -e 'use Inline::Perl5; my $p5 = Inline::Perl5.new; $p5.use("JSON::XS"); my $j = $p5.invoke("JSON::XS", "new"); say $j'
I've never had much luck using the :from<perl5> form. 12:39
perl6 -e 'use Inline::Perl5; use XML::Hash::XS:from<Perl5>;'
Can't load '/home/cbwood/perl5/lib/perl5/i686-linux-gnu-thread-multi-64int/auto/XML/Hash/XS/XS.so' for module XML::Hash::XS: libicudata.so.55: cannot open shared object file: No such file or directory at /usr/share/perl/5.24/XSLoader.pm line 96. 12:40
Which doesn't make much sense, since the invoke() form worked.
On the other hand, this worked: 12:41
perl6 -e 'use Inline::Perl5; use JSON::XS:from<Perl5>; my $j = JSON::XS.new; say $j' 12:42
Inline::Perl5::Perl5Object.new(ptr => NativeCall::Types::Pointer.new(-2080666168), perl5 => Inline::Perl5.new)
ufobat and I had the same issue. "perl5" vs "Perl5" and "JSON" vs "Json". LOL 12:43
Xliff goes back to lurking.
ufobat :D
12:43 Xliff is now known as Xliff_L
dalek c: 3fde48d | Altai-man++ | doc/Language/regexes.pod6:
Index missing regex adverbs.

Fixes github.com/perl6/doc/issues/1046
12:48
synopsebot6 Link: doc.perl6.org/language/regexes
babydrop AlexDaniel: it's not rocket surgery... I don't know why people have so much trouble learning to use it. There are two modes: subs and methods. Subs: give it a sub (&foo) or sub and args if you want a specific candidate. args are given with a Capture, so it'd be (&foo, \("some", "arg")). For methods, it's Object, Method name in a string, args (and args go in captures) 12:50
12:51 pyrimidi_ left, pyrimidine joined
dalek c: de5f160 | (Tom Browder)++ | doc/Type/Signature.pod6:
attempt some explanation for the preferred form
12:52
synopsebot6 Link: doc.perl6.org/type/Signature
sena_kun tbrowder++ 12:53
13:00 canopus left 13:06 canopus joined 13:16 sunnavy joined
babydrop Xliff_L: you don't need "use Inline::Perl5" for :from<Perl5> form 13:16
13:17 pmurias joined 13:20 bjz_ left 13:22 bjz joined
ufobat what is this: Missing serialize REPR function for REPR MVMContext (BOOTContext) ? 13:33
what i did was a my $db will leave { .disconnect } = connect_db(); # which is a DBIish.connect object 13:34
babydrop m: { my $db will leave { say "meows" } = "foos" }; say 42 13:36
camelia rakudo-moar ea2884: OUTPUT«meows␤42␤»
babydrop ufobat: some sort of a bug 13:37
m: multi sub foo(Int $x where 1..10) { state $bar = 42; say $bar; }; foo(3); 13:39
camelia rakudo-moar ea2884: OUTPUT«(Any)␤»
babydrop Trippy bug :)
That's RT#130257
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130257
13:41 andrzejku left 13:42 bpmedley joined 13:48 lucasb joined
dalek c: 36e737b | (Tom Browder)++ | doc/Type/Signature.pod6:
cleanup from last edit
13:50
synopsebot6 Link: doc.perl6.org/type/Signature
Xliff_L babydrop: It's that way in the docs. 13:53
However I just read that part in like a following paragraph, so. Shortcuts FTW!
tbrowder: Has anyone ever mistaken you for John Creighton? 13:55
13:55 sena_kun left
tbrowder I don't know that name so I don't think so 13:59
babydrop Xliff_L: yes, synopsis doesn't make the fact clear, those the next paragraphs do: github.com/niner/Inline-Perl5#load...l-5-module 14:05
14:08 ufobat left 14:12 MasterDukeLaptop left 14:16 khw joined
Xliff_L tbrowder: Ben Browder played John Creighton on FarScape. Just a little in-joke. 14:20
It's been that kind of morning.
zoffixBabyDroppedOnHaid: Yes. I got that. Thanks. ;) 14:21
babydrop buggable: speed 14:22
buggable babydrop, ▅▃▄▂▁▆▃▂▅▂▄▃█▃▄▄▆▄▅▃▄▃▄▄▃▄▃▃▃▃▄▆▄▄▄▆▃▄▄▃▄▃▆▄▄▅▅▁▂▂ data for 2016-11-16–2016-12-11; variance: 6.238s–7.175s
babydrop buggable: eco 14:23
buggable babydrop, Out of 754 Ecosystem dists, 137 have warnings and 0 have errors. See modules.perl6.org/update.log for details
Xliff_L Oh! Nice stats.
babydrop neat
14:23 KotH_ is now known as KotH
tbrowder Xliff_L: interesting, I almost thought BB could be the son of my cousin, who has lived in eastern Tennessee for a long time, but his birth date and place pretty much preclude that. There are a lot of Browders in Tennessee, and most are VERY distantly related if at all. 14:39
14:43 cdg joined 14:47 andrzejku joined
babydrop Is Readline supported on Windows? Wondering if we need to add Windows case to github.com/rakudo/rakudo/commit/c6...57f7196bb0 14:50
Xliff_L tbrowder++ 14:57
14:58 cognominal left 14:59 bartolin_ left 15:03 rurban joined 15:04 rurban1 joined 15:08 rurban left 15:10 zakharyas joined 15:16 cdg left
babydrop What does "intX[2;2] to intY[2;2]" mean? github.com/rakudo/rakudo/commit/79...7ce66a4512 15:26
oh, like int32, int64... nevermind
timotimo no, it's male ints vs female ints 15:29
15:29 mscha joined
mscha m: my %a = a => { p=>1, q=>2 }, b => { x=>3, y=>4 }; my %b = %a.clone; %c<b><x> = 42; say %a; 15:31
camelia rakudo-moar ea2884: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '%c' is not declared␤at <tmp>:1␤------> 3 b => { x=>3, y=>4 }; my %b = %a.clone; 7⏏5%c<b><x> = 42; say %a;␤»
mscha m: my %a = a => { p=>1, q=>2 }, b => { x=>3, y=>4 }; my %b = %a.clone; %b<b><x> = 42; say %a;
camelia rakudo-moar ea2884: OUTPUT«{a => {p => 1, q => 2}, b => {x => 42, y => 4}}␤»
mscha Is there an easy way to do a deep clone in Perl 6?
babydrop m: my %a = a => { p=>1, q=>2 }, b => { x=>3, y=>4 }; my %b = %a.deepmap: { $_ = .clone }; %b<b><x> = 42; say %a; 15:39
camelia rakudo-moar ea2884: OUTPUT«{a => {p => 1, q => 2}, b => {x => 3, y => 4}}␤»
babydrop Note that .clone currently doesn't work on Lists/Arrays (and possibly some other core types)
m: my %a = a => { p=>1, q=>2 }, b => { x=>3, y=>4 }; my %b = %a».clone; %b<b><x> = 42; say %a; 15:41
camelia rakudo-moar ea2884: OUTPUT«{a => {p => 1, q => 2}, b => {x => 3, y => 4}}␤»
babydrop
.oO( that's probably not safe... )
15:46 wisti joined 15:56 kyclark joined
tbrowder [Coke]: ref my 12 Dec Advent post, can you say whether that module behavior is expected to stay the same with the module work being done? Such behavior is described in the docs now (but not in as much detail), but I would like to add a statement to that effect in the post (and also ensure there are spectests to check for it). 15:58
[Coke] tbrowder: I can't comment on that, no. 16:00
you can check for spectests; if we have tests in the 6.c branch, then you're good. 16:01
16:02 cdg joined
tbrowder it seems reasonable that such behavior wouldn't change, but it would be nice to have it confirmed. I'll check spectests... 16:02
mscha Thanks for the tips, babydrop! 16:03
16:04 giraffe left, cdg left 16:05 cdg joined, nowan joined 16:13 kyclark left, giraffe joined 16:14 trnh joined 16:19 Kvjvjvjvkvivhch joined 16:21 Kvjvjvjvkvivhch left
babydrop 0racle bazzaar cygx dogbert17 if you wish to be credited under something other than those aliases, please add yourself to github.com/rakudo/rakudo/blob/nom/CREDITS 16:26
babydrop thought dogbert17 was already in it...
0racle is seatek I think... 16:27
16:30 kyclark joined 16:31 bartolin joined 16:33 cdg_ joined 16:35 dmaestro joined, cdg left 16:38 andrzejku left 16:41 zacts joined
dalek c: b7bbfb5 | coke++ | doc/Type/Signature.pod6:
remove trailing whitespace
16:43
synopsebot6 Link: doc.perl6.org/type/Signature
c: 056f60f | coke++ | / (3 files):
Update through 2 major versions of jquery
[Coke] ^^ I tested that with search, seems fine.
babydrop
.oO( famous last words.... )
16:44
16:46 ufobat joined 16:49 kyclark left 16:51 travis-ci joined
travis-ci Doc build failed. Will "Coke" Coleda 'Update through 2 major versions of jquery' 16:51
travis-ci.org/perl6/doc/builds/183039820 github.com/perl6/doc/compare/36e73...6f60f2c029
16:51 travis-ci left 16:54 zacts left
babydrop Weird how open-source world is commercialized these days.... Even my core hacking post garners comments about marketing and value to consumer 16:54
16:55 mohae left
babydrop Gone are the days when writing code for fun was normal? 16:55
babydrop shakes fist at the cloud
16:55 mohae joined 16:57 zacts joined 17:08 andrzejku joined 17:09 skids joined
[Coke] Is there a way to get a pre-built rakudo in place for doc so we don't have to rebuild the whole compiler each time for the docs site? 17:13
17:19 mawkish joined, travis-ci joined
travis-ci Doc build failed. Will "Coke" Coleda 'Update through 2 major versions of jquery' 17:19
travis-ci.org/perl6/doc/builds/183039820 github.com/perl6/doc/compare/36e73...6f60f2c029
17:19 travis-ci left 17:21 trnh left
babydrop What distro does it use? There's probably an `apt-get install rakudo` we could stick? 17:25
timotimo i think apt-get is available there, yeah 17:27
we could just put "apt-cache search rakudo" into the travis script and see what it outputs :D
babydrop :)
[Coke] the failure there is a moarvm panic. happened twice: MoarVM panic: Collectable 0x2b30d6aa7060 in fromspace accessed
timotimo ouch!
[Coke] having a same version each time would insulate us from issues with running at HEAD also.
timotimo mhm 17:28
[Coke] ah, crap. the styles are wonky on search (but not locally, only on the prod site) 17:30
searching puts the dropdowns in the upper left hand corner of the screen.
I'll back it out, but it woudl be nice to get a modern jquery at some point.
babydrop wait!
[Coke]: wait, there's most likely an easy fix for that. 17:31
babydrop looks
dalek c: 97271a9 | coke++ | / (3 files):
Revert "Update through 2 major versions of jquery"

This reverts commit 056f60f2c02936144f19885ef4d5199d06f57a04.
While the styles work fine locally, in prod they put the search results in the upper left hand corner of the screen.
babydrop heh
[Coke] babydrop: too slow. Please feel free to re-revert, though!
17:35 BenGoldberg joined
babydrop interesting... on a local build I also get the external link thingies displayed... i.imgur.com/tfTOTu4.png 17:37
[Coke] babydrop: yes, that's because locally we have the mojo plugins to run SASS stuff 17:38
so you now have a locally modified copy of the css style. those mods aren't in prod, I don't think.
babydrop makes a quizzical look
samcv good morning perl 6
babydrop \o
aye, that style wasn't saved in generated CSS 17:39
17:39 travis-ci joined
travis-ci Doc build failed. Will "Coke" Coleda 'Revert "Update through 2 major versions of jquery" 17:39
travis-ci.org/perl6/doc/builds/183047370 github.com/perl6/doc/compare/056f6...271a986a87
17:39 travis-ci left 17:49 zakharyas left 17:53 mscha left, Actualeyes left
[Coke] ooh, I think I figured out how to smarten the search a tad. 17:55
babydrop Wait until I push the fix for jQuery, if possible :) 17:58
17:59 Linxius joined 18:00 Linxius is now known as LX 18:01 LX is now known as forma, forma is now known as linxiu
samcv nice [Coke] 18:01
babydrop ffs 18:05
stupid web dev tools collapsing elements so I can't grab the class of a menu item that's the currently highlighted nav item ~_~
18:06 linxiu left, Linxius joined
ufobat zostay, have you made some improvements on p6w lately? :-) 18:07
18:07 Linxius left
dalek c: c598575 | (Zoffix Znet)++ | / (3 files):
Revert "Revert "Update through 2 major versions of jquery""

This reverts commit 97271a986a87a493fde266748b64f6bf7080c398.
18:08
c: 85de0d2 | (Zoffix Znet)++ | / (17 files):
Update jQuery UI + tweak our overrides for it to match old look

  - Also generate CSS from SASS, which includes
  github.com/perl6/doc/commit/e3c7aa...6eb3026a30
18:09
zostay No. Hard to find time and when I do I keep running into obscure async bugs 18:10
babydrop is done
18:12 pmurias left
[Coke] babydrop++ 18:15
timotimo [Coke]: don't forget you can activate pseudo-classes on elements via the top of the right panel thingie
18:16 travis-ci joined
travis-ci Doc build failed. Zoffix Znet 'Revert "Revert "Update through 2 major versions of jquery"" 18:16
travis-ci.org/perl6/doc/builds/183053301 github.com/perl6/doc/compare/97271...98575f65aa
18:16 travis-ci left, lluchs joined
babydrop timotimo: what right panel thingie? (what browser/web dev tool?) 18:17
18:17 travis-ci joined
travis-ci Doc build failed. Zoffix Znet 'Update jQuery UI + tweak our overrides for it to match old look 18:17
travis-ci.org/perl6/doc/builds/183053572 github.com/perl6/doc/compare/c5985...de0d278f5c
18:17 travis-ci left 18:19 pmurias joined
samcv oh now that people are awake. should I try and have Github add Perl 6 Pod as its own language or just have it do as Perl 6 18:25
i mean for now the syntax highlighting will obv be for perl 6, but do people want it labeled as Pod6 (or some other name) instead of just perl 6 18:26
i am a little bit for having Pod6, but i wanted to know what you guys think
babydrop samcv: what would it do for Pod6 intermixed in perl6 code? 18:27
samcv that would just be perl 6
atm i'm at least gonna get it to not think .pod that are perl 6 pod is actualy perl pod
babydrop, github.com/perl6/specs/blob/master...nicode.pod
babydrop How?
samcv see what happens now
for things called .pod that aren't perl 5 pod 18:28
babydrop doesn't need to click to know what happens.
There's a lengthy issue on the topic: github.com/perl6/doc/issues/167
samcv oh
well i made a pull request to github's linguist which classifies and chooses what syntax highilghter to use 18:29
babydrop We went with "screw it, let's rename stuff to .pod6"
Cool
samcv++
samcv so for some statistics
with my changes 103 repositories by 74 users. have .pod files that are perl 6 pod
that are named .pod
52 unique repositories, distributed between 28 unique users that are named .pod6 18:30
so there's double the number that are really pod6 that are called .pod
so should I make it classify as 'Pod6' language? do people want that?
and not classified as 'Perl 6'
github.com/github/linguist/pull/3366 here is where me and the Linguist people are talking 18:31
babydrop has no opinion
18:32 stmuk joined
samcv i mean 'Pod' is its own language 18:32
RabidGravy okay I'm having a weird time here
why does this code gist.github.com/jonathanstowe/925f...2e79334343 exit completely without an error message or anything when a client disconnects? 18:33
timotimo babydrop: chrome's
18:33 BenGoldberg left
RabidGravy that shouldn't happen right 18:34
18:34 stmuk_ left
RabidGravy it's the writing to the socket that does it, but surely that is just an SIGPIPE and an exception 18:35
timotimo i could imagine you're losing a few of the values from the supply by not waiting for the listeners to be set up before emitting stuff 18:36
but yeah, since you're never .done-ing the supply, it shouldn't just end
RabidGravy it is a SIGPIPE
samcv Footnote: Ze and hir are popular gender-free pronouns preferred by some transgender and/or gender non-conforming individuals
[popular] 18:37
timotimo oh?
samcv oops
sorry meant to paste to another channel
timotimo huh, i hadn't seen those yet
babydrop samcv: in what language?
samcv english?
babydrop English. never saw those before
samcv i guess
www.washingtonpost.com/news/volokh...93de4dd5c7
this was the article i was pasting to another channel but ended up here 18:38
imo you should call somebody what they want to be called, even if it's not a 'common' pronoun
babydrop Sure.
samcv: which one do you use? 18:39
samcv what pronoun? the normal one?
babydrop Well, which one?
timotimo huh, a fine? that'll surely get some people spouting vitriol all over the 'net
samcv well her
babydrop Noted. 18:40
samcv timotimo, yeah i think that was the point of the title
timotimo ah, right, clickbait and all that
samcv yeah
timotimo *sigh* such is the world of journalism that we live in today
samcv ^
timotimo goes AFK for dinner, yay
[Coke] ok. I have a local search working that if you search for 'envirt', you get 'environment variables' and 'invert' 18:43
(e.g.)
I am thinking maybe we don't turn on the levenshtein search unless you have at least 3 chars, though. 18:44
samcv [Coke], do you think Pod6 should be its own language name on github? like how Pod is?
or do you want it just to be labeled as Perl 6 code
[Coke] samcv: I'm the one that renamed all the files in perl6/doc to be .pod6
oh, I thought you mean as opposed to pod, not as opposed to perl6
samcv is pod6 indexed as perl 6? 18:45
i don't think it is
[Coke] I mean, we can follow perl5's lead there, I guess. I don't really care.
samcv because my pull release adds that github.com/github/linguist/pull/33...-266298145
so like 99% sure it doesn't. unless you set the .gitattributes
but is 'Pod6' an ok name or what?
atm there's 103 repos with 74 users with .pod's that get classified as perl 6 pod by my PR to github's linguist, which is double the number of unique repos and users that even have .pod6 files period 18:47
lucasb what? some POD5 files are recognized as Pod6 files? 18:52
yoleaux 00:34Z <babydrop> lucasb: were you going to fix that slip bug or should I take care of it? It's trivial and will let you learn the build system.
babydrop lots of Perl 5 test files get recognized as Perl 6 18:53
lucasb babydrop++ please, take care. I'm not confident right now :)
babydrop OK
mst alternative idea: lucasb should try, babydrop should review+help 19:04
then it gets fixed to 'confident' *and* lucasb learns the build system 19:05
babydrop +1
19:06 Tonik joined
lucasb +1 19:10
(I'll try when I get some time, if babydrop don't get there first) 19:11
19:11 mawkish left
babydrop lucasb: OK. Let me know when you have time and I'll give instructions on what to do 19:11
19:11 mawkish joined
lucasb babydrop: thanks 19:11
about POD, should "=end foo" emit a warn/error if no "=begin foo" was seen before it? 19:12
dalek c/coke/levenshtein: 7ebb0d7 | coke++ | / (3 files):
Allow fuzzy searching

For #999
lucasb right now, P6 thinks the "=" in =end is an infix
[Coke] github.com/perl6/doc/pull/1047 - feel free to merge if someone else gives it a thumbs up
19:12 BenGoldberg joined
lucasb sub end { 42 } \n say my $x \n =end 19:12
19:14 Vynce joined, dalek left 19:15 dalek joined, ChanServ sets mode: +v dalek 19:20 travis-ci joined
travis-ci Doc build failed. Will "Coke" Coleda 'Allow fuzzy searching 19:20
travis-ci.org/perl6/doc/builds/183063123 github.com/perl6/doc/commit/7ebb0d77b368
19:20 travis-ci left 19:21 darutoko left
ufobat is it still pretty common that using Proc::Async leads to a segfault? 19:25
timotimo shouldn't be 19:26
we do have that one thing where we double-free stuff in the work queue somehow sometimes 19:27
MasterDuke ufobat: i'd say yes 19:29
jnthn I've been working on something that uses Proc::Async quite heavily, and running it and its test suite dozens of times a day. Haven't seen it SEGV in a week plus. 19:30
Maybe more. Can't quite remember when the last batch of fixes went in.
MasterDuke hmm, thought those "no such method 'XXX' for object 'YYY'" seen when running with TEST_HARNESS=6 and such were P::A related? 19:31
jnthn No, the missing methods were grammar/match object related 19:32
babydrop Nov 30 github.com/rakudo/rakudo/commit/74...d732da2d1a
And Nov 23 github.com/rakudo/rakudo/commit/e4...8b78321c8f 19:33
jnthn So no obvious connection with Proc::Async. I think there's still some oddity in grammar/regex stuff somewhere that leads to concurrency issues (there's at least one RT still open on the matter)
babydrop and github.com/rakudo/rakudo/commit/6b...ce7ace2bda
jnthn Yeah, after the fixes of the 23rd it was a good bit better. Think it was the ones on the 30th that I've not seen it SEGV since. 19:35
MasterDuke ahh, i may be mistakenly accusing P::A then
ufobat we.. i am on 2012.11 not nom!
psch hopes that's a typo
moritz 2012.11? you've got to be kidding us 19:36
ufobat ah ah ah
well i am on 2016.11
moritz that for a time that ufobat was using RHEL 4 or something
jnthn MasterDuke: If you do get a P::A-related SEGV I'll happily look in to it, but as of the last round of fixes it's seemed a good bit better.
ufobat did to much time travelling lateley 19:37
jnthn, i am going to install nom and check if it is gone first
RabidGravy right, now with gist.github.com/jonathanstowe/925f...2e79334343
jnthn Fingers crossed :)
RabidGravy It is getting an unhandled exception despite the CATCH 19:38
second version
this is very odd
19:38 pyrimidine left
RabidGravy can't even work out where the "Cannot resolve caller postcircumfix:<[ ]>(Mu, Int);" is coming from 19:39
nine [ptc]: did you notice that Test::Builder actually works with rakudo's lexical_module_load branch? 19:40
japhb jnthn: Is there anyone other than you that can work on github.com/jnthn/oo-monitors/issues/8 ? The project I'm working on that tickles this bug (or bug cooperative, you can't trust 'em, they might just work together) is starting to get users hitting it as well, and as the project expands, the 'no precompilation' workaround gets painfully slow .... 19:42
jnthn RabidGravy: Dunno if it's relevant here, but QUIT catches exceptions from the supply you're subscribed to, while CATCH does the usual "exceptions generated by code in this dynamic scope" thing 19:43
RabidGravy: I can't guess where the postcircumfix thing is coming from either... 19:44
japhb: Didn't I fix precomp on OO::Monitors once recently? :S
japhb jnthn: The fix wasn't complete.
RabidGravy so a QUIT in the react should catch that. let me try
moritz m: say Date.new('2017-02-29') 19:45
camelia rakudo-moar 8d4dbb: OUTPUT«Day out of range. Is: 29, should be in 1..28␤ in block <unit> at <tmp> line 1␤␤»
japhb jnthn: So for some subset of uses (and I happen to be dealing with one), OO::Monitors is still broken with precomp on. : -(
moritz m: say Date.new('2016-02-29')
camelia rakudo-moar 8d4dbb: OUTPUT«2016-02-29␤»
jnthn japhb: Urgh
moritz m: say Date.new(year => 2017, month => 2, day => 29)
camelia rakudo-moar 8d4dbb: OUTPUT«2017-02-29␤»
moritz BUG
japhb jnthn: Yeah, and I'm *really* sorry to keep bugging you with this one, if there's anyone else qualified, I'll bug them instead ... 19:46
moritz m: say Date.new(year => 2017, month => 42, day => 29) 19:47
camelia rakudo-moar 8d4dbb: OUTPUT«2017-42-29␤»
19:47 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg
jnthn What a strange error... 19:49
moritz bisectable6: say Date.new(year => 2017, month => 42, day => 29)
bisectable6 moritz, Bisecting by exit code (old=2015.12 new=8d4dbb2). Old exit code: 1
moritz, bisect log: gist.github.com/7e080e976a205a729d...35428f8f6b
moritz, (2016-02-14) github.com/rakudo/rakudo/commit/58...2627389942
jnthn japhb: It does look rather like all concurrency stuff can be golfed away from it at least, so it's a plain precomp bug.
The first golf is really odd too in that INIT shouldn't even really play into precomp 19:51
moritz I'm glad I'm not imagning this. I was sure I didn't implement it that way originally 19:52
jnthn japhb: I'll have some tuits for Perl 6 stuff during the week (Wed typically is the day I set aside for Perl 6 stuff); I'll try and look at it then if nobody else beats me to it 19:54
japhb jnthn: Thank you!
[ptc] nine: no, I'd not spotted that. Thanks for pointing that out :-) 19:55
nine: I've been wanting to write up what's been collected in the ticket for Test::Builder as a rakudobug, but I've been low on tuits lately...
japhb nine: Do you have any ideas on the issue (github.com/jnthn/oo-monitors/issues/8) I've been discussing with jnthn? Just in case this turns out to be more in your wheelhouse than his ... 19:56
jnthn is relieved to notice he still has all week to come up with his advent post 19:58
babydrop huggable: advent
huggable babydrop, github.com/perl6/mu/blob/master/mi...6/schedule
19:58 kurahaupo__ joined
babydrop RabidGravy: I guess you remember about yours? :) 19:58
RabidGravy yeah though I'm struggling with what should be a trivial example here 20:00
dalek c: b7f0e9d | (Zoffix Znet)++ | template/ (2 files):
Add cache bumping thing to assets

So we could decache stuff on style/JS changes
20:02
20:07 labster joined 20:10 travis-ci joined
travis-ci Doc build failed. Zoffix Znet 'Add cache bumping thing to assets 20:10
travis-ci.org/perl6/doc/builds/183070984 github.com/perl6/doc/compare/85de0...f0e9de5929
20:10 travis-ci left 20:11 rindolf left
pmurias nqp-m: nqp::say('6x'+0) 20:11
camelia nqp-moarvm: OUTPUT«6␤»
pmurias nqp-j: nqp::say('6x'+0)
nqp-j: say("lives?")
j: say("lives") 20:12
psch nqp-j never worked
camelia rakudo-jvm 8ca367: OUTPUT«lives␤»
psch it only complained in interesting but ultimately not-really-fixable ways iirc
j: use nqp; nqp::say('6x'+0)
camelia rakudo-jvm 8ca367: OUTPUT«Cannot convert string to number: trailing characters after number in '036⏏5x' (indicated by ⏏)␤ in sub val at gen/jvm/CORE.setting line 31224␤ in method Numeric at gen/jvm/CORE.setting line 12802␤ in sub infix:<+> at gen/jvm/CORE.setting lin…»
psch well that doesn't do the nqp codepath anyway :/
pmurias m: my str $foo = '6x'; my int $bar = $foo;say($bar); 20:13
camelia rakudo-moar 8d4dbb: OUTPUT«6␤»
pmurias j: my str $foo = '6x'; my int $bar = $foo;say($bar);
camelia rakudo-jvm 8ca367: OUTPUT«0␤»
20:14 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg, rindolf joined
ufobat jnthn, it does still segfault :/ 20:18
jnthn, but i am running perl6 --profile 20:19
jnthn And...when you're not using that? 20:20
ufobat it just takes longer to segfault ^^
20:21 pyrimidine joined 20:24 lucasb left
jnthn OK. If you're able, please golf it and stick it in RT, otherwise reproduction instructions would allow someone else to do the initial bit of hunting. 20:25
ufobat jnthn, gist.github.com/ufobat/8fa1042351d...cr-pm6-L44 20:26
japhb .ask tadzik Would you mind adding a module version in your META.info for Terminal-ANSIColor? Without a version, the module installers won't upgrade it by default. (Some of Terminal-Print's users are asking us why 256-color mode doesn't work and the answer usually ends up being '--force your Terminal-ANSIColor install' to get the latest.)
yoleaux japhb: I'll pass your message to tadzik.
20:28 domidumont left
lluchs Is there an easy way to get from this: (('a', 1), ('b', 2), ('a', 2), ('a', 1)) to this: {a => set(1, 2), b => set(2)}, i.e. collect the values in sets? 20:28
babydrop m: (('a', 1), ('b', 2), ('a', 2), ('a', 1)).flat.Set.say 20:29
camelia rakudo-moar 8d4dbb: OUTPUT«set(a, b, 1, 2)␤»
babydrop hm
lluchs Not quite, I want a hash of sets. 20:30
ufobat jnthn, is this golfed enough? or doesn't it count because of --profile? perl6 --profile -e 'while True {try {say await Proc::Async.new("/usr/bin/curl", "-m", "15", "localhost:3000").start; CATCH {.gist.say}} }'
jnthn No, we already know that --profile and concurrency stuff don't get along too well. 20:31
ufobat okay
babydrop m: say (% .push: (('a', 1), ('b', 2), ('a', 2), ('a', 1)).flat)».Set 20:32
camelia rakudo-moar 8d4dbb: OUTPUT«{a => set(1, 2), b => set(2)}␤»
babydrop lluchs: ^
lluchs cool, thanks
20:33 obfusk joined
jnthn ufobat: If you seaprate out the server and the client part into separate processes, and one of them still breaks, it'd help indicate if the problem is in one, the other, or due to the two together. 20:33
Well, if it doesn't still break when you've taken them apart 20:34
(e.g. just have start_requests in a separate process)
jnthn away for a bit 20:35
20:36 labster left 20:37 mawkish left 20:39 kurahaupo__ left 20:40 rurban joined
RabidGravy okay this apparently stupidly simple example is actually doing my head in 20:41
20:41 rurban2 joined
tadzik japhb: absoluetly 20:42
yoleaux 20:26Z <japhb> tadzik: Would you mind adding a module version in your META.info for Terminal-ANSIColor? Without a version, the module installers won't upgrade it by default. (Some of Terminal-Print's users are asking us why 256-color mode doesn't work and the answer usually ends up being '--force your Terminal-ANSIColor install' to get the latest.)
20:42 mawkish joined 20:43 rurban1 left, dalek left 20:44 dalek joined, ChanServ sets mode: +v dalek 20:45 rurban left 20:46 Tonik left, nchambers is now known as god 20:48 mawkish left
ufobat jnthn, it dosnt segfault if i seperate them into 2 processes 20:51
20:53 mawkish joined
RabidGravy okay that "Unhandled exception in code scheduled on thread 18 20:59
Cannot resolve caller postcircumfix:<[ ]>(Mu, Int); none of these signatures match:
"
21:00 girafe joined
RabidGravy I cannot catch it anywhere 21:00
in the mainline, in the react, in the taps, nowhere
21:05 BenGoldberg left 21:07 espadrine left 21:10 labster joined
RabidGravy okay it's the second time it hits the signal handler 21:12
21:15 kurahaupo__ joined
RabidGravy pretty certain the offending line is src/core/signals.pm:67 21:22
babydrop m: $*KERNEL.signals.say 21:25
ugh... lag
camelia rakudo-moar 0c75e5: OUTPUT«[(Any) SIGHUP SIGINT SIGQUIT SIGILL SIGTRAP SIGABRT SIGBUS SIGFPE SIGKILL SIGUSR1 SIGSEGV SIGUSR2 SIGPIPE SIGALRM SIGTERM SIGSTKFLT SIGCHLD SIGCONT SIGSTOP SIGTSTP SIGTTIN SIGTTOU SIGURG SIGXCPU SIGXFSZ SIGVTALRM SIGPROF SIGWINCH SIGIO SIGPWR SIGSYS]␤»
RabidGravy I think I'll have to instrument this but it looks like @known_signals is getting messed up on subsequent invocations 21:31
lizmat RabidGravy: could be a race condition, have you tried replacing "state" with "my" ? 21:33
21:33 bjz left
lizmat or: 21:33
RabidGravy no, I haven't got that far yet
lizmat my @known_signales := once $*KERNEL.signals 21:34
s/les/ls/
I know once is basically also a state var,. but then it would at least not be on an array, just on a hidden scalar
MasterDuke would INIT work instead of once? 21:36
lizmat yes, but then you would run this at every start up, even when you don't need signal()
and this is quite involved, if I remember correctly
$ 6 '' 21:37
real0m0.120s
RabidGravy right moving that signal outside does fix it
lizmat $ 6 '$*KERNEL.signals'
real0m0.173s
MasterDuke: we don't want to incur a 50+ millisecond delay for each start up 21:38
MasterDuke lizmat: ha, definitely not 21:39
lizmat hmmm... actually, am quite unpleasantly surprised to see startup at 120 msecs now :-( 21:40
less than 2 weeks ago, I saw it at less than 105 msecs
babydrop :( 21:41
21:41 lukiramu joined 21:43 FROGGS left
RabidGravy okay, thar's way weird 21:44
lizmat m: my regex line { \N* \n }; "abc\ndef\nghi" ~~ / <first=line> <second=line> /; say $<first second>
camelia rakudo-moar 0c75e5: OUTPUT«(「abc␤」 「def␤」)␤»
lizmat m: my regex line { \N* \n }; "abc\ndef\nghi" ~~ / <first=line> <second=line> /; say $<first second>>>.chomp
camelia rakudo-moar 0c75e5: OUTPUT«(abc def)␤»
21:45 lukaramu left
lizmat I want to get the latter result by modifying the regex so I don't need the >>.chomp 21:45
suggestions ?
RabidGravy this works perfeectly fine gist.github.com/jonathanstowe/6918...7f5eedb8cf 21:47
only need to trap the SIGPIPE outside
psch lizmat: you need something to get Str instead of Match
RabidGravy totalyy weird
psch lizmat: unless that's the side-effect of .chomp you don't care about, then you can use )> 21:48
m: my regex line { \N* )> \n }; "abc\ndef\nghi" ~~ / <first=line> <second=line> /; say $<first second>
camelia rakudo-moar 0c75e5: OUTPUT«(「abc」 「def」)␤»
psch m: my regex line { \N* )> \n }; "abc\ndef\nghi" ~~ / <first=line> <second=line> /; say $<first second>>>.Str 21:49
camelia rakudo-moar 0c75e5: OUTPUT«(abc def)␤»
psch but yeah
lizmat )> is what I was looking for, psch++
psch: so where is that documented ? 21:51
psch lizmat: looks like it's only in rb-nutshell.pod6 currently, unless my grep skills fail me 21:52
'the "lookaround" C</foo\Kbar/> becomes C«/foo <( bar )>' 21:53
and yeah, that's definitely lacking, so i'm pretty sure a doc ticket would be appreciated
21:53 bjz joined
babydrop The code examples in this section and ones below it are really weird: docs.perl6.org/language/regexes#Re...g_literals 21:55
May give an impression that it's how you're supposed to do replacements :/
babydrop would use a .subst in there instead of the dance with $_ and s///
lizmat psch: github.com/perl6/doc/issues/1048 21:56
psch lizmat++
22:01 setty1 joined 22:03 bjz left 22:07 pmurias left 22:08 cdg_ left 22:12 andrzejku left 22:24 mawkish left, mawkish joined 22:25 cdg joined 22:29 ggoebel left
samcv lizmat, would you mind mentioning that atom/github syntax highlighter has moved changed and to download the new plugin here atom.io/packages/language-perl6/ 22:30
lizmat samcv: will do
samcv and it's now a perl6org github project, repo is here github.com/perl6/atom-language-perl6 (previous link was for atom package repo)
hah it's only been downloaded once so far :) not even i've downloaded it but then again no need to download it when you're releasing them lol 22:31
i'm sure plenty of people still have the old plugin
babydrop must be that 1 download 22:34
wooo! Do I get a prize? :)
22:34 mawkish left
samcv yes :) 22:36
22:36 kurahaupo__ left 22:37 pmurias joined, lucasb joined
MasterDuke lizmat: if you're looking for filler, maybe mention that profile output can be SQL (useful for analyzing profiles that even the Qt version can't handle)? it happened ~two weeks ago, but don't think was in a weekly 22:37
lizmat MasterDuke: good point, will do 22:38
lucasb I can do has $!foo and method foo { $!foo } to expose a private attr 22:39
is there someway I can say 'has $.foo is something' to have a reader accessor but forbid the named parameter in initialization?
babydrop lucasb: forbid or ignore?
lucasb forbid 22:40
babydrop submethod BUILD (*%_) { %_ and die 'lulz nah' }
lucasb well, ignoring would work too
babydrop then just empty submethod
That will remove all .new initialization though.
lucasb I want to forbid one specific attribute, not all 22:41
babydrop submethod BUILD (*%_) { %_<foo>:exists and die 'lulz nah' }
Umm no
Umm yes
Hmm
lucasb hmm
babydrop lucasb: well, the above would work, but it'll also fail to initialize any params you *do* want 22:42
lucasb I don't think so
babydrop method new (*%_) { %_<foo>:exists and die 'lulz nah'; self.bless: %_ }
m: class { has $.meow; submethod BUILD (*%_) { %_<foo>:exists and die 'lulz nah' } }.new(:42meow).meow.say 22:43
camelia rakudo-moar 0c75e5: OUTPUT«(Any)␤»
babydrop yup
22:43 mawkish joined
babydrop m: class { has $.meow; method new (*%_) { %_<foo>:exists and die 'lulz nah'; self.bless: %_ } }.new(:42meow).meow.say 22:43
camelia rakudo-moar 0c75e5: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤ in method new at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
lizmat method new (*%_) { %_<foo>:delete; self.bless: %_ } # just ignoring
babydrop m: class { has $.meow; method new (*%_) { %_<foo>:exists and die 'lulz nah'; self.bless: |%_ } }.new(:42meow).meow.say
camelia rakudo-moar 0c75e5: OUTPUT«42␤»
babydrop m: class { has $.meow; method new (*%_) { %_<foo>:exists and die 'lulz nah'; self.bless: |%_ } }.new(:42meow, :45foo).meow.say 22:44
camelia rakudo-moar 0c75e5: OUTPUT«lulz nah␤ in method new at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
babydrop works
22:45 labster left, AlexDaniel joined
AlexDaniel samcv: any chance of faster uninames? :) 22:45
samcv heh 22:46
that would be nice...
i will see what i can do
hmm multi sub uniname(Int:D $code) { nqp::getuniname($code) }
looks like it cannot be optimized in rakudo, would have to be in nqp 22:47
22:50 mawkish left, mawkish joined
lucasb thanks babydrop, lizmat 22:51
m: class C { has $.a; has $.b; submethod TWEAK(*%_) { die 'nope' if %_<b>; $!b = 'my own value' } }; say C.new(a=>10) 22:52
camelia rakudo-moar 0c75e5: OUTPUT«C.new(a => 10, b => "my own value")␤»
lucasb m: class C { has $.a; has $.b; submethod TWEAK(*%_) { die 'nope' if %_<b>; $!b = 'my own value' } }; say C.new(a=>10,b=>20)
camelia rakudo-moar 0c75e5: OUTPUT«nope␤ in submethod TWEAK at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
lucasb ^^ what about this, is it an acceptable way too?
22:54 mawkish left, mawkish joined
AlexDaniel m: say :10<4_x> 22:55
camelia rakudo-moar 0c75e5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Cannot convert string to number: malformed base-10 number in '034⏏5_x' (indicated by ⏏)␤at <tmp>:1␤------> 3say :10<4_x>7⏏5<EOL>␤»
AlexDaniel
.oO( … … … nnnooooooooooooooooo )
22:55 rindolf left
samcv AlexDaniel, uninames can get all from (0..0x1FFFF) in 0.67 seconds 22:57
so i think the slow part about unicodable is the searching through the text
babydrop lucasb: sort of. This version will set $.foo, and then you'd die and the default is distanced away from the attribute. So I wouldn't use it in case I ever added some logic that does something when $.foo is set to something
AlexDaniel samcv: oh. Any chance of faster searching? :D
well, I should be using index instead of a regex, I guess 22:58
ah, it's .contains
okay, should be fine
… but with a junction
samcv u: penguin 23:01
unicodable6 samcv, U+1F427 PENGUIN [So] (🐧) 23:02
23:03 rurban2 left
samcv AlexDaniel, it's slow because you're using grep 23:04
i can search through all codepoints 10 times in 1.35 seconds 23:05
with .contains, searching for a single word
grep makes it take 45 seconds...
doing the exact same thing. (no junction)
babydrop unicodable6: source 23:06
unicodable6 babydrop, github.com/perl6/whateverable
samcv for (0..0x1FFFF) { grep({ $_.uniname.contains('PENGUIN')}) # 10 times => 45 secs
for (0..0x1FFFF) {
(uniname $_).contains('PENGUIN');
}
then 1.35 secs doing that 10 times for all codepoints 23:07
babydrop that grep looks wrong.
You're doing the same contains thing in both versions, but in grep version you're calling grep 1FFFF times 23:08
0x20000 times rather 23:09
MasterDuke the actual code is: for (0..0x1FFFF).grep({ (!@words or uniname($_).contains(@words.all)) and (!@props or uniprop($_) eq @props.any) }) { 23:10
babydrop m: (^0x110000).grep(*.uniname.contains: 'PENGUIN').say; say time now - INIT now
camelia rakudo-moar 0c75e5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3iname.contains: 'PENGUIN').say; say time7⏏5 now - INIT now␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ stateme…»
babydrop m: (^0x110000).grep(*.uniname.contains: 'PENGUIN').say; say now - INIT now
camelia rakudo-moar 0c75e5: OUTPUT«(128039)␤2.5682320␤»
samcv ah that is probably true 23:13
MasterDuke m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep({ (!@words or uniname($_).contains(@words.all)) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:16
camelia rakudo-moar 0c75e5: OUTPUT«PENGUIN␤3.7370324␤»
AlexDaniel my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep({ uniname($_).contains(@words[0]) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:18
23:18 BenGoldberg joined
AlexDaniel m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep({ uniname($_).contains(@words[0]) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:18
camelia rakudo-moar 0c75e5: OUTPUT«PENGUIN␤0.30956292␤»
AlexDaniel :|
m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep({ (!@words or uniname($_).contains(@words[0])) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now
camelia rakudo-moar 0c75e5: OUTPUT«PENGUIN␤0.4982935␤»
AlexDaniel m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep({ (!@words or uniname($_).contains(@words == 1 ?? @words[0] !! @words.all)) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:19
camelia rakudo-moar 0c75e5: OUTPUT«PENGUIN␤0.69428024␤»
MasterDuke m: my @props; my @words = <GUN LAGAR>; my @a; for (0..0x1FFFF).grep({ (!@words or uniname($_).contains(@words == 1 ?? @words[0] !! @words.all)) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:20
samcv the junctions are actually making it slow
camelia rakudo-moar 0c75e5: OUTPUT«CUNEIFORM SIGN A TIMES LAGAR GUNU␤CUNEIFORM SIGN LAGAR GUNU␤CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE␤5.6568068␤»
timotimo yeah, junctions aren't very fast
samcv m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF) { !@words or uniname($_).contains(@words)) and (!@props or uniprop($_) eq @props.any) }; say now - INIT now
camelia rakudo-moar 0c75e5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 3 !@words or uniname($_).contains(@words)7⏏5) and (!@props or uniprop($_) eq @props.␤ expecting any of:␤ statement end␤ statement modifier␤…»
23:20 BenGoldberg left
samcv m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF) { say "match" if !@words or uniname($_).contains(@words) and (!@props or uniprop($_) eq @props.any) }; say now - INIT now 23:20
camelia rakudo-moar 0c75e5: OUTPUT«match␤1.18019193␤»
timotimo if you .contains(@words), you'll get a stringification of @words as the needle 23:21
AlexDaniel well, that's a bit different, isn't it?
samcv yeah
23:22 pmurias left, BenGoldberg joined
AlexDaniel m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep({ (!@words or uniname($_).match(/@words/)) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:23
camelia rakudo-moar 0c75e5: OUTPUT«(timeout)»
MasterDuke a profile shows 25% exclusive in '<anon> (gen/moar/BOOTSTRAP.nqp:2167)' and 15% exclusive in 'contains (SETTING::src/core/Cool.pm:146)'
AlexDaniel :-|
MasterDuke and the BOOTSTRAP code is: Routine.HOW.add_method(Routine, 'find_best_dispatchee', nqp::getstaticcode(sub ($self, $capture, int $many = 0) {
babydrop m: use MONKEY; for (my $b = Bag.new(<a b c>)).^attributes { next unless .name eq '$!WHICH'; say nqp::attrinited($b,Bag,'$!WHICH') } 23:24
camelia rakudo-moar 0c75e5: OUTPUT«Potential difficulties:␤ Redeclaration of symbol '$b'␤ at <tmp>:1␤ ------> 3use MONKEY; for (my $b7⏏5 = Bag.new(<a b c>)).^attributes { next ␤P6opaque: no such attribute '$!WHICH' in type Bag when trying to check if it's initialized…»
babydrop Redeclaration?
23:24 RabidGravy left
BenGoldberg m: my @p <== grep { .contains: "PENGUIN" } <== map { .uniname } <== 0..0x1FFFF; say now - INIT now; 23:24
camelia rakudo-moar 0c75e5: OUTPUT«0.4613726␤»
timotimo huh, that's weird
AlexDaniel BenGoldberg: yeah, that's great, now with an array! 23:25
timotimo i wonder if it explodes because of code we have to point out that for (my $foo), @array { } or whatever that syntax is in perl5 ... is in perl5
23:26 BenGoldberg left, BenGoldberg joined 23:28 god is now known as nchambers
babydrop for my $foo ( @array ) { ... } 23:29
23:33 Ben_Goldberg joined 23:34 BenGoldberg left 23:35 BenGoldberg joined
BenGoldberg m: my @p := grep { .contains: "PENGUIN" } <== map { .uniname } <== 0..0x1FFFF; say now - INIT now; 23:35
camelia rakudo-moar 0c75e5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Sorry, do not know how to handle this case of a feed operator yet.␤at <tmp>:1␤------> 3N" } <== map { .uniname } <== 0..0x1FFFF7⏏5; say now - INIT now;␤»
BenGoldberg m: my @p := grep { .contains: "PENGUIN" }, map { .uniname }, 0..0x1FFFF; say now - INIT now; 23:36
camelia rakudo-moar 0c75e5: OUTPUT«Type check failed in binding; expected Positional but got Seq (("PENGUIN",).Seq)␤ in block <unit> at <tmp> line 1␤␤»
23:38 Ben_Goldberg left, dmaestro left
BenGoldberg m: my @foo := grep True, ^5; 23:40
camelia rakudo-moar 0c75e5: OUTPUT«Potential difficulties:␤ Smartmatch against True always matches; if you mean to test the topic for truthiness, use :so or *.so or ?* instead␤ at <tmp>:1␤ ------> 3my @foo := grep7⏏5 True, ^5;␤Cannot use Bool as Matcher with 'grep'. …»
BenGoldberg m: my @foo := grep :so, ^5; 23:41
camelia rakudo-moar 0c75e5: OUTPUT«Unexpected adverb 'so' passed to grep on List␤ in block <unit> at <tmp> line 1␤␤»
BenGoldberg m: my @foo := grep *.so, ^5;
camelia rakudo-moar 0c75e5: OUTPUT«Type check failed in binding; expected Positional but got Seq ((1, 2, 3, 4).Seq)␤ in block <unit> at <tmp> line 1␤␤»
BenGoldberg m: say Seq ~~ PositionalBindFailover; 23:42
camelia rakudo-moar 0c75e5: OUTPUT«True␤»
BenGoldberg wonders what he's missing. 23:43
AlexDaniel m: my @props; my @words = <PENGUIN>; my $x = -> $y { my $out = False; for @words { $out = True if $x.contains($_) }; $out }; my @a; for (0..0x1FFFF).grep({ (!@words or $x(uniname($_))) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:44
camelia rakudo-moar 0c75e5: OUTPUT«No such method 'contains' for invocant of type 'Block'␤ in block at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
AlexDaniel m: my @props; my @words = <PENGUIN>; my $x = -> $y { my $out = False; for @words { $out = True if $y.contains($_) }; $out }; my @a; for (0..0x1FFFF).grep({ (!@words or $x(uniname($_))) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now
camelia rakudo-moar 0c75e5: OUTPUT«PENGUIN␤2.7838986␤»
23:44 nchambers left
AlexDaniel well, that looks faster /o\ 23:44
23:44 Vynce left
MasterDuke m: my @props; my @words = <GUN LAGAR>; my $x = -> $y { my $out = False; for @words { $out = True if $y.contains($_) }; $out }; my @a; for (0..0x1FFFF).grep({ (!@words or $x(uniname($_))) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:45
camelia rakudo-moar 0c75e5: OUTPUT«BATAK LETTER SIMALUNGUN A␤BATAK LETTER SIMALUNGUN HA␤BATAK LETTER SIMALUNGUN PA␤BATAK LETTER SIMALUNGUN WA␤BATAK LETTER SIMALUNGUN GA␤BATAK LETTER SIMALUNGUN RA␤BATAK LETTER SIMALUNGUN MA␤BATAK LETTER SIMALUNGUN SA␤BATAK LETTER SIMALUNGUN Y…»
BenGoldberg AlexDaniel, What exactly are you trying to do, anyway?
AlexDaniel BenGoldberg: not sure if I'm trying to do anything :) 23:46
BenGoldberg: basically, this line is from unicodable
MasterDuke AlexDaniel: different results for an array
AlexDaniel now there are of course better ways to do it
(like, don't search sequentially and don't search in perl 6…)
but I'm feeling kinda lazy so perhaps we can get rakudo faster? ;)
23:46 mohae left
babydrop AlexDaniel: well volunteered! 23:47
23:48 mohae joined
AlexDaniel m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep(-> $z { (!@words or @words.first({uniname($z).contains($_)})) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:49
camelia rakudo-moar 0c75e5: OUTPUT«PENGUIN␤2.17332158␤»
AlexDaniel well, that's some progress, yea?
MasterDuke different results for an array again, though 23:50
AlexDaniel hmm, what's different? 23:51
MasterDuke m: my @props; my @words = <GUN LAGAR>; my @a; for (0..0x1FFFF).grep(-> $z { (!@words or @words.first({uniname($z).contains($_)})) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now
23:51 Ben_Goldberg joined
camelia rakudo-moar 0c75e5: OUTPUT«BATAK LETTER SIMALUNGUN A␤BATAK LETTER SIMALUNGUN HA␤BATAK LETTER SIMALUNGUN PA␤BATAK LETTER SIMALUNGUN WA␤BATAK LETTER SIMALUNGUN GA␤BATAK LETTER SIMALUNGUN RA␤BATAK LETTER SIMALUNGUN MA␤BATAK LETTER SIMALUNGUN SA␤BATAK LETTER SIMALUNGUN Y…» 23:51
23:51 BenGoldberg left, Ben_Goldberg is now known as BenGoldberg
BenGoldberg m: my $props = none; my $words = any <GUN LAGAR>; my $results = (^0x20000).grep { .uniprops.contains($props) or .uninames.contains($names) }; say now - INIT now; 23:51
camelia rakudo-moar 0c75e5: OUTPUT«5===SORRY!5===␤Function "none" may not be called without arguments (please use () or whitespace to denote arguments, or &none to refer to the function as a noun, or use .none if you meant $_)␤at <tmp>:1␤------> 3my $props = none7⏏5; my $word…»
MasterDuke m: my @props; my @words = <GUN LAGAR>; my @a; for (0..0x1FFFF).grep({ (!@words or uniname($_).contains(@words == 1 ?? @words[0] !! @words.all)) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now
camelia rakudo-moar 0c75e5: OUTPUT«CUNEIFORM SIGN A TIMES LAGAR GUNU␤CUNEIFORM SIGN LAGAR GUNU␤CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE␤5.471930␤»
BenGoldberg m: my $props = none(); my $words = any <GUN LAGAR>; my $results = (^0x20000).grep { .uniprops.contains($props) or .uninames.contains($names) }; say now - INIT now;
camelia rakudo-moar 0c75e5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unexpected block in infix position (missing statement control word before the expression?)␤at <tmp>:1␤------> 3UN LAGAR>; my $results = (^0x20000).grep7⏏5 { .uniprops.contains($props) or .uninam␤…»
BenGoldberg m: my $props = none(); my $words = any <GUN LAGAR>; my $results = (^0x20000).grep: { .uniprops.contains($props) or .uninames.contains($names) }; say now - INIT now; 23:52
camelia rakudo-moar 0c75e5: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$names' is not declared␤at <tmp>:1␤------> 3.contains($props) or .uninames.contains(7⏏5$names) }; say now - INIT now;␤»
AlexDaniel MasterDuke: wait, why is there a difference?
BenGoldberg m: my $props = none(); my $words = any <GUN LAGAR>; my $results = (^0x20000).grep: { .uniprops.contains($props) or .uninames.contains($words) }; say now - INIT now;
camelia rakudo-moar 0c75e5: OUTPUT«0.0020322␤»
BenGoldberg How's that for fast!
MasterDuke different number of results
23:52 lukiramu left
AlexDaniel MasterDuke: that I see, but why? 23:52
BenGoldberg m: my $props = none(); my $words = any <GUN LAGAR>; my $results = (^0x20000).grep: { .uniprops.contains($props) or .uninames.contains($words) }; say +$results; 23:53
camelia rakudo-moar 0c75e5: OUTPUT«Cannot resolve caller uniprops(Int); none of these signatures match:␤ (Str:D $str, Stringy:D $propname = "General_Category")␤ in block <unit> at <tmp> line 1␤␤»
BenGoldberg m: my $props = none(); my $words = any <GUN LAGAR>; my $results = (^0x20000).grep: { .uniprops.contains($props) or .uninames.contains($words) }; say +@$results;
camelia rakudo-moar 0c75e5: OUTPUT«Cannot resolve caller uniprops(Int); none of these signatures match:␤ (Str:D $str, Stringy:D $propname = "General_Category")␤ in block <unit> at <tmp> line 1␤␤»
BenGoldberg m: my $props = none(); my $words = any <GUN LAGAR>; my $results = (^0x20000).grep: { .uniprops.contains($props) or .uninames.contains($words) }; say $results.elems;
camelia rakudo-moar 0c75e5: OUTPUT«Cannot resolve caller uniprops(Int); none of these signatures match:␤ (Str:D $str, Stringy:D $propname = "General_Category")␤ in block <unit> at <tmp> line 1␤␤»
MasterDuke AlexDaniel: that i don't know
AlexDaniel eval: my @props; my @words = <GUN LAGAR>; my @a; for (0..0x1FFFF).grep({ (!@words or uniname($_).contains(@words == 1 ?? @words[0] !! @words.all)) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now 23:54
evalable6 AlexDaniel, rakudo-moar 0c75e5d: OUTPUT«CUNEIFORM SIGN A TIMES LAGAR GUNU␤CUNEIFORM SIGN LAGAR GUNU␤CUNEIFORM SIGN LAGAR GUNU OVER LAGAR GUNU SHE␤4.8927714»
AlexDaniel eval: my @props; my @words = <GUN LAGAR>; my @a; for (0..0x1FFFF).grep(-> $z { (!@words or @words.first({uniname($z).contains($_)})) and (!@props or uniprop($_) eq @props.any) }) { .uniname.say }; say now - INIT now
evalable6 AlexDaniel, rakudo-moar 0c75e5d: OUTPUT«BATAK LETTER SIMALUNGUN A␤BATAK LETTER SIMALUNGUN HA␤BATAK LETTER SIMALUNGUN PA␤BATAK LETTER S…»
AlexDaniel, Full output: gist.github.com/729852f13bc9fb7081...3cbef7b9a7
AlexDaniel MasterDuke: ahhhhhhhhhhhhhhhhhhh it should be .all 23:55
so .first is out
timotimo no, you can .first({ not ... })
AlexDaniel m: my @props; my @words = <PENGUIN>; my @a; for (0..0x1FFFF).grep(-> $z { (!@words or !@words.first({ not uniname($z).contains($_)})) and (!@props or @props.first({uniprop($z) eq $_})) }) { .uniname.say }; say now - INIT now 23:56
camelia rakudo-moar 0c75e5: OUTPUT«PENGUIN␤2.366784␤»
23:56 Actualeyes joined