»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋
Set by Zoffix on 25 July 2018.
00:03 mowcat joined 00:06 Kaiepi left 00:12 Kaiepi joined 00:15 MidCheck left 00:19 zachk left 00:34 pecastro left 00:44 lucasb left 00:45 success joined 00:46 success is now known as Guest55896 00:48 MasterDuke joined, MasterDuke left, MasterDuke joined 00:50 w_richard_w joined
guifa So long story short … using EVAL in phasers in modules is … dicey. Went about a totally different way and it’s working fine now, although I should probably learn NQP so I can better parse it 00:58
01:04 mowcat left 01:18 cpan-p6 left 01:19 cpan-p6 joined, cpan-p6 left, cpan-p6 joined, Guest55896 left, failure joined 01:20 failure is now known as Guest46214
ugexe pretty sure using MONKEY-SEE-NO-EVAL is going to disable precomp altogether, so its not surprising it acts strangely inside a BEGIN 01:23
01:35 hythm joined
guifa Aaah, that could explain a lot. 01:36
When I was poking around another error I was finding, the solution someone found for their same error message was to delete precomp, but I noticed curiously I wasn’t seeing much activity in the precomp folder 01:37
hythm hello, is there array method that alternates between array elements, for exampe: my @ = < a b >; @a.next gives 'a'; @a.next gives 'b', @a.next gives 'a', and so on? 01:38
s/my @/my @a/ 01:39
guifa p6: my @a = |<a b> xx Inf; say @a.shift for 0..10; 01:40
evalable6 a
b
a
b
a
b
a
b
a
b
a
guifa It’s not quite an alternator properly said but … if you’re not going to be doing anything else with the array it should work 01:41
hythm Thanks guifa, that works 01:42
guifa ugexe: do you think for down the road I should look towards having my modules generate their own QAST? Right now I’m basically holding onto a large tree of objects that, though lightweight, feel … excessive. 01:51
ugexe you could try removing use MONKEY-SEE-NO-EVAL, and using &EVAL(...) instead of EVAL ... 02:00
your example isn't runable because it has a dependency 02:01
anyways im suggesting this based on an assumption that precomp doesn't happen because MONKEY means augment might be used, not because of EVAL 02:03
guifa I’ll try that. I kept both Action classes just in case (and for performance tests down the road if I came up with an EVAL solution) 02:04
But first I’m going to take the number/currency formatting 02:05
MasterDuke amusing..."93% of Paint Splatters Are Valid Perl Programs" news.ycombinator.com/item?id=19576425 02:22
02:29 japh left 02:36 htc^ left 02:41 buffet joined 02:42 buffet_ left 02:53 Guest46214 left 03:01 vsss joined 03:08 success joined, success is now known as Guest67067 03:14 zanzubarf joined 03:16 Guest67067 left, zanzubarf left 03:17 MidCheck joined 03:29 kurahaupo left 03:30 kurahaupo joined 03:42 w_richard_w left 03:52 hythm left
discord6 <Tyler (Aearnus)> hey all, wrote a blog post about things I've liked while learning perl6 aearnus.github.io/2019/04/03/a-whi...t-features 03:53
<Tyler (Aearnus)> i also posted it to the subreddit 03:55
AlexDaniel hm, why not * %% 2 03:56
m: (1..2 X 1..2).map: { .grep(!(* % 2)).say }
evalable6 ()
(2)
(2)
(2 2)
AlexDaniel m: (1..2 X 1..2).map: { .grep(* %% 2).say }
evalable6 ()
(2)
(2)
(2 2)
masak loves %% 04:19
aearnus++ # blog post 04:21
guifa aearnus++ 04:31
04:33 molaf joined
discord6 <Tyler (Aearnus)> Hmm? 04:35
AlexDaniel Tyler: you're using !(* % 2) which can be written better as * %% 2 04:38
or what was your “Hmm?” about? :)
discord6 <Tyler (Aearnus)> the hmm was about the aearnus++. But I see what you're saying, let me edit the blog post real fast. Thanks 04:41
masak "aearnus++" means "good job, aearnus!" 04:45
discord6 <Tyler (Aearnus)> ah heck, thanks 😃
masak we're incrementing your karma, which is stored in the substrate of the universe 04:46
discord6 <Tyler (Aearnus)> AlexDaniel: fixed it & credited you in the post 04:48
<Tyler (Aearnus)> and I will gladly accept the cosmic karma heading my way 😃 04:49
04:51 curan joined
masak as if you have any choice in the matter... :P 04:56
05:08 sauvin joined 05:15 jmerelo joined
jmerelo squashable6: status 05:15
squashable6 jmerelo, ⚠🍕 Next SQUASHathon in ≈6 hours (2019-04-06 UTC-14⌁UTC+12). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
05:27 MidCheck left, kurahaupo_ joined 05:29 kurahaupo left 05:31 domidumont joined 05:32 kurahaupo_ left 05:47 w_richard_w joined 05:49 domidumont left 05:52 MidCheck joined
Geth doc: 615058ecab | (JJ Merelo)++ | doc/Type/Junction.pod6
Adds explanation of autothreading closes #2708
06:01
doc: 3fa8c94c42 | (JJ Merelo)++ | doc/Type/Any.pod6
Adds a simple note saying classify works with Junctions.

Maybe add an example under request or when the Rakudo issue is clarified.
synopsebot_ Link: doc.perl6.org/type/Junction
Link: doc.perl6.org/type/Any
06:10 domidumont joined 06:31 mack[m] left, Demos[m] left, Matthew[m] left, MitarashiDango[m left, tyil[m] left, AlexDaniel` left, Garland_g[m] left, Seance[m] left, tyil[m]1 left, lance_w[m] left, irdr left
tony-o jmerelo: #2814, that output seems sane to me 06:33
06:34 success joined
tony-o added an explanation to it 06:34
06:34 vsss left, success is now known as Guest79393 06:35 vsss joined, vsss left, cgfbee left, vsss joined, vsss left 06:36 vsss joined, vsss left, vsss joined, irdr joined, netrino joined 06:39 AlexDaniel` joined 06:41 cgfbee joined
jmerelo tony-o: There seems to be two layers of autothreading going on 06:42
tony-o: and they don't seem to be working well with each other. For instance, why is the first element in the list only repeated once, while the rest are repeated either the junction cardinality of that minus one if it does not match? 06:43
06:43 pistacchio left, pistacchio joined
jmerelo tony-o: the difference with ~~ is that maybe it does not autothread, or works differently with Junctions 06:43
jmerelo has to leave for $work
06:43 jmerelo left
tony-o it produces differently from junctions 06:44
it returns the result of any(True, False, False) rather than (True, False, False) itself 06:45
06:45 Matthew[m] joined, lance_w[m] joined, Demos[m] joined, MatrixTravelerbo joined, tyil[m]1 joined, tyil[m] joined, Garland_g[m] joined, MitarashiDango[m joined, Seance[m] joined, mack[m] joined 06:57 rindolf joined 07:01 rtw_ joined
discord6 <timotimo> cool post @Tyler (Aearnus) 07:04
<timotimo> may i ask what you like more about the ~~~ operator compared to heredocs? i happen to love heredocs
07:05 rtw_ left 07:18 guifa left 07:19 guifa joined
discord6 <Tyler (Aearnus)> @timotimo what I ran into was that the indentation on the heredoc went kind of wonky -- I wanted to keep the indentation aligned with the indentation level of my function 07:24
<Tyler (Aearnus)> just looked prettier in the code imo
<timotimo> heredocs will de-indent based on the indentation of the end marker, or at least they're supposed to 07:25
<timotimo> can always have bugs 07:26
masak aearnus: strangelyconsistent.org/blog/here-be-heredocs -- might be a helpful read 07:27
(that's my favorite use of the Whatever star `*`, by the way) :) 07:30
discord6 <Tyler (Aearnus)> ah, that's a nice article. Thanks! 07:31
<Vendethiel> .oO( we should invent a *** ) 07:32
<Tyler (Aearnus)> hyper-hyper-whatever
timotimo m: (** % 2)((1..2) X (1..2)).say
evalable6 (1 1 1 0 0 1 0 0)
discord6 <Vendethiel> Well, it’s currently valid, so...
07:41 Sgeo_ left, Sgeo_ joined 07:46 rtw_ joined 07:53 netrino left 07:57 maettu left 07:58 rtw_ left, rtw_ joined 08:00 aindilis joined 08:06 rtw_ left 08:10 andrzejku joined, zakharyas joined 08:11 rtw_ joined 08:14 rtw_ left 08:17 robertle_ joined
masak is playing with NFAs today 08:29
08:30 rindolf left
masak when people are writing grammars, do you usually establish a whitespace convention, like "every rule expects whitespace to have been parsed before itself, and commits to always handle whitespace at its end (either directly or through tailcalls)" 08:33
...?
timotimo what kind of play are we talking about here? :) 08:35
oh, i think i might never actually have merged nqp::nfatostatelist
tadzik masak: off the top of my head, "each rule handles whitespace between its children" seems natural to me 08:37
08:37 rindolf joined
masak timotimo: github.com/masak/007/issues/485 08:39
timotimo oooh, "is parsed"!
masak timotimo: my fairly immediate goal is to have a parser that can be (lexically) extended at parse-time
NFAs enter the picture, because when you mutate your parser as you parse, you need something flexible to dispatch into the rules, new and old 08:40
tadzik: hm, I need to think about that. :) in my grammar right now it looks more like "after children" 08:42
masak wrote a grammar for grammars, to translate into the NFA
heh. 15 years with Perl 6, and I'm still all "what the heck is a Seq?" :P 08:43
it's an immutable... somethingsomething of, um, and containers, no, of elements. yeah. 08:44
Chaz6 it reminds me a bit of rust 08:45
08:45 w_richard_w left
Chaz6 i'm too dumb for rust :( 08:45
Woodi hi #perl6 :)
08:46 aborazmeh joined
masak Chaz6: Rust isn't the language we're smart enough for, but it's the language we deserve :D 08:46
Woodi where to buy moritz++ book in paper form ? apress is somewhere in Europe ? :)
masak Woodi: ahoj
Woodi *book about grammars :)
I realy need to learn this... 08:47
tyil trying to install LibUUID fails during testing phase: "Cannot locate native library 'libuuid.so': /usr/lib64/libuuid.so: invalid ELF header", if I install with --/test that error comes up when I want to use it 08:49
(I'm trying to use DB::Pg) 08:50
08:50 aborazmeh left
timotimo tyil: cat that file, it's probably a so script 08:50
we don't have support for those yet
tyil :< 08:51
is there a way to work around it?
timotimo yeah, replace it with a symlink or put an explicit version into th "is native", or at least i think that'd do it 08:52
i don't remember where i last encountered those 08:54
in theory we can put a parser for them into NativeCall
tyil they appear on Gentoo it seems
(with a comment in the file, and a reference to a bug number)
timotimo: that seems to work around the issue for now 08:57
thanks :>
timotimo what's that gentoo bug about?
tyil bugs.gentoo.org/4411, sys-devel/gcc uses static libs in /usr/lib before it will use a dynamic lib in /lib 08:58
timotimo i wonder if that's still necessary?
Bug 290974 - linker scripts and dlopening direct library names - bugs.gentoo.org/290974 08:59
this is surely also relevant
(Note: for ghc I have a patch that reads the linker script and uses a regular expression to find the GROUP ( ... ) command. Is this generalizable? Is it the right way to go?) 09:00
tyil I am not familiar with Gentoo internals on a level to give a valuable reply here, sorry
timotimo ^- if we make something that's bug-compatible with ghc, surely we will run into less problems with existing libraries and less resistance from distro maintainers to making stuff work
tyil I can test things if you want to, though 09:01
timotimo i don't have a good idea yet, though it ought to be easy for me to set up my own gentoo; the installation procedure hasn't changed in the last 5 years, has it? :)
i still remember when "modular x.org" was the "hot new thing" 09:02
moritz Woodi: apress is part of springer, which is US. You can also buy it from amazon
tyil installing Gentoo isn't the hardest part, and afaik not much has changed 09:03
if it'd help you, I have a binhost available on home.tyil.nl/packages/, it may contain some things
timotimo oh, binhost is actually not a thing i've tried yet 09:04
is eix still the search tool of choice?
tyil it is to me :)
Woodi moritz: oki, thanx
09:05 pradip joined 09:08 pradip left
moritz also, author's rant here: I feel much better about my regexes + grammar book than about fundamentals, but fundamentals sells much better 09:10
tyil possibly because fundamentals touches upon more aspects, whereas regex/grammar is a more specific aspect of the language not everyone needs to know in-depth? 09:11
moritz regexes + grammars have a much clearer defined scope, and that makes it possible to go much more in depth and cover it well
tyil: exactly
I feel I could write a 500 pages "Perl 6 Fundamentals" book :/
tyil I haven't read the fundamentals book, but I like the regex/grammar book so far :>
moritz tyil: you're not in the target audience for fundamentals, I believe :D 09:12
tyil I wonder if someone's working on a Perl 6 book outlining all the ways to do multi-process stuff, with examples, pros/cons etc...
I don't think I am in that target audience anymore, but I generally like to work through beginner stuff on Perl 6 to get a feel of how to best explain things to non-perlers 09:13
09:14 aborazmeh joined, aborazmeh left 09:15 aborazmeh joined
tyil then again, reading books is time-consuming 09:15
and I have plenty of bugs to resolve in my own code :'D
Woodi if someone wants idea for book: learn basic programming in 90% of languages at once. variables/types/if/for/while/functions/classes :)
why limit reader to one language only ??? 09:16
09:18 aborazmeh left
discord6 <Tyler (Aearnus)> huh, that blog post is on the front page of /r/programming 09:25
<Tyler (Aearnus)> I'd have never thought
<timotimo> oh, congrats!
09:30 Sgeo__ joined 09:33 rindolf left, Sgeo_ left
discord6 <Vendethiel> masak: I always get confused and let tests help me (with regards to whitespace) 09:38
timotimo you know ...
perlbot Patrickwoump pasted a new file at perlbot.pl/p/nj8vvg -
timotimo there should be a test module especially for dealing with grammars to make sure a given character was parsed by a particular rule
that could be a cool thing
or maybe just using xliff's gtk grammar visualization tool 09:39
09:46 japh joined 09:49 aborazmeh joined, aborazmeh left, aborazmeh joined 09:52 domidumont left
masak Vendethiel: yeah, you don't say. I don't know any other way to develop grammars and get the whitespace *right*, except to use tests ;) 09:52
09:53 cpan-p6 left, Demos[m] left, tyil[m] left, MatrixTravelerbo left, mack[m] left, lance_w[m] left, Garland_g[m] left, Matthew[m] left
masak I mean, that goes for most things that are even moderately complex. but especially for whitespace in grammars. 09:53
09:53 irdr left, cpan-p6 joined, cpan-p6 left, cpan-p6 joined 09:54 sena_kun joined 09:56 vsss left
jnthn Having the places that rules match sigspace marked by the editor is also kinda helpful :) 09:56
09:56 irdr joined, AlexDaniel` left 09:57 MitarashiDango[m left, vsss joined, vsss left, rindolf joined, vsss joined, vsss left, Seance[m] left, tyil[m]1 left, vsss joined 09:58 vsss left, vsss joined
masak jnthn: conversely, _not_ having any feedback about that is kinda insane :P 09:58
jnthn Well, one can know the rules also :) 09:59
10:00 AlexDaniel` joined
jnthn But yeah, it's much nicer :) 10:00
10:00 aindilis left 10:01 aindilis joined
discord6 <Vendethiel> masak: I think it's the thing I'm most excited about in Comma :) 10:01
<Vendethiel> having a visual cue for whitespace-ness
10:23 aborazmeh left 10:28 Black_Ribbon left
masak jnthn: every time I hear an argument that's a variation of "it's sufficient for the programmer simply to not commit the mistakes", my brain goes "yeah... no" :) 10:39
10:40 Demos[m] joined, Matthew[m] joined, lance_w[m] joined
masak (and now someone is going to chew me over for my split infinitive, and we can have a nice discussion about vestigial rules from Latin) :P 10:40
10:40 Garland_g[m] joined, tyil[m] joined, tyil[m]1 joined, MitarashiDango[m joined 10:41 Seance[m] joined, mack[m] joined, pistacchio left, pistacchio joined 10:42 pecastro joined 10:50 kensanata joined
discord6 <Tyler (Aearnus)> it's very late here and I ought to sleep, but I finished up another thing that I've been writing and I want to share it with you all aearnus.github.io/2019/04/05/perl6...s-worst-ml 10:53
10:56 sftp left 10:58 psm joined 10:59 irco joined 11:00 zakharyas left
sjn After reading that, I'm left thinking "This Apple is the World's Worst Orange!" 11:00
lizmat sjn: and your right thinking says? 11:01
sjn I don't think right :)
masak "Thinking right is left as an exercise for the reader."
sena_kun well, a "good" programmer in FORTRAN can write a FORTRAN program in any... you get the idea. 11:02
masak sena_kun: ah, "Real Programmers Don't Use Pascal". been a while since I read it. 11:03
hahainternet masak: i'm going to chew you out for "that's" instead of "which" :)
masak haha 11:04
hahainternet also, are there really 'good' programmers?
what does that even mean?
there are knowledgable programmers, and highly skilled programmers
masak hahainternet: they taste good
hahainternet but the closest to good i think we come is having good days
masak: lots of fat and a hint of cheeto? :p
sjn There are also programmers that are aware of the True Scotsman fallacy
discord6 <Tyler (Aearnus)> only the ones who can redirect solar waves using butterfly wings really qualify as good
masak sjn: being aware of the True Scotsman fallacy is indicative of being a Real Programmer :P 11:05
sjn There are No True Scotsmen :)
lizmat I thought there only could be one ? 11:06
masak that's an approximation
sjn possible off-by-one error
masak .oO( Real Programmers only make off-by-two errors ) 11:10
hahainternet real programmers have programmed subordinates to do the work for them
lizmat which explains why real programmers make bad real managers: programming real subordinates is not logical 11:14
masak oh, like Agatha in Girl Genius -- who is such a strong Spark (inventive, Mad Scientist-style person) that even her mechanical inventions are Sparks 11:15
hahainternet alternately: the best programmers are those who can deal with illogical programming languages
ultimately my point here is that there's no generic attribute 'programming skill'
it's a composite
and a big factor is how are you feeling that day, get enough sleep? got too much stress?
masak that's why I like to write tests. I never know what kind of day I'm having. 11:16
hahainternet so it's silly to talk as if there's an inherent attribute that makes people 'good'
in reality there is only well written code, or non well written code
and what that means is fully contextual
11:21 Sgeo_ joined 11:24 Sgeo__ left 11:34 jmerelo joined
jmerelo squashable6: status 11:34
squashable6 jmerelo, ⚠🍕 Next SQUASHathon is in 25 minutes (2019-04-06 UTC-14⌁UTC+12). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
jmerelo I have created instructions for this squashathon: github.com/rakudo/rakudo/wiki/Squa...ed-modules
Basically is: work on the community modules, tell everyone via an issue which module you'll be focusing in, let someone else add the hook 11:35
masak right. Alan Turing wrote awful code, for example. all the code in his paper is made up of state machines; computed gotos and emulation.
hahainternet masak: totally agree, so we can use words like 'visionary' and 'paradigm shifting'
but not 'good programmer' :p
jmerelo I think I know how to do that... But if I fail, please ask AlexDaniel to add the hook to that particular repo
hahainternet (i'm aware babbage and lovelace predated turing)
jmerelo Everyone's invited! 11:36
11:37 jmerelo left 11:40 vrurg left 11:44 domidumont joined, agentzh left 11:45 sftp joined 11:46 agentzh joined, pistacchio left, pistacchio joined 11:50 Sgeo__ joined 11:53 Sgeo_ left, psm left, aborazmeh joined, aborazmeh left, aborazmeh joined 11:57 mowcat joined, MidCheck left 11:58 jhill left 12:00 jhill joined 12:10 jhill left 12:12 SergiusUA joined, jhill joined, araraloren joined 12:16 __jrjsmr_ joined
kawaii is there anywhere selling those Camelia plushies? 12:16
12:20 pmurias joined
discord6 <timotimo> @Tyler (Aearnus) you don't have to given $maybe.WHAT when you're when-ing types, as types will already do typechecks as their smart match behaviour 😃 12:20
12:27 aborazmeh left
pmurias masak: is code by alan turing available somewhere? 12:34
Juerd kawaii: lizmat and woolfy know everything about the stuffed camelias :) 12:35
kawaii lizmat: ... :) 12:36
12:42 Actualeyes joined 12:44 Sgeo_ joined 12:47 Sgeo__ left 12:50 zakharyas joined
SmokeMachine I think I proposed some time ago new named args to `classify`... I don't remember if someone has given any opinion... the suggestion was to add: `:&reduce`, `:&produce`and `:$initial-value`, so, `^10.classify: * %% 2, :reduce(&[+])` would return `{True => 25, False => 20}` 12:52
and `^10.classify: * %% 2, :produce(&[+])` would return `({}, {True => 0}, {True => 0, False => 1}, {True => 2, False => 1}, {True => 2, False => 4}, {True => 6, False => 4}, {True => 6, False => 9}, {True => 12, False => 9}, {True => 12, False => 16}, {True => 20, False => 16}, {True => 20, False => 25}).Seq` 12:56
sena_kun SmokeMachine, maybe github.com/perl6/problem-solving/b.../README.md can help? 12:57
SmokeMachine sena_kun: yes, maybe... 12:58
sena_kun: thanks!
tadzik I thought 00000001 is the commit hash 12:59
now I'm super disappointed :(
timotimo there's a nice tool that'll bruteforce commit hashes 13:03
13:07 SergiusUA left 13:09 robertle_ left 13:10 ufobat_ joined 13:14 ufobat__ left, abraxxa left 13:15 vrurg joined
SmokeMachine sena_kun: github.com/perl6/problem-solving/issues/6 13:16
13:16 __jrjsmr_ left
lizmat kawaii: become the winner of the Squashathon this weekend, and we'll send you one for free! 13:18
13:18 lelf joined
SmokeMachine m: say given 42 {} 13:19
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/d9n57jmzv7
Unsuppo…
SmokeMachine, Full output: gist.github.com/7e5769aaf7227a5842...3194430a17
SmokeMachine m: given 42 { .say }
evalable6 42
SmokeMachine m: say given 42 { .say } 13:20
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/ONDn3BESBI
Unsuppo…
SmokeMachine, Full output: gist.github.com/e75122bfff4ea7d546...9bfb3b1f3b
SmokeMachine m: say do given 42 { .say }
evalable6 42
True
lelf Hi. There is no built-in way to do (unicode) segmentation, is it?
timotimo lelf: by segmentation you mean going from utf8 to codepoints? 13:21
13:21 curan left
lelf timotimo: No. Word segmentation for example 13:21
SmokeMachine I don't know why, but in my mind, I would expect the `do given 42 { "bla" }` (that is correct) and `given 42 { "bla" }` to return 42...
13:22 skids joined
timotimo huh, like .words? 13:22
tadzik yeah, after seeing more statements being expressions in other languages I always miss them when they aren't there
SmokeMachine m: sub bla(Int $bla is copy) { given $copy { $copy++ } }; bla 41 # it would be great if it return 42... 13:23
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/xlwREfqr4d
Variabl…
SmokeMachine, Full output: gist.github.com/eb798b02010aaa855a...8c95ad88b5
lelf timotimo: No. Like unicode.org/reports/tr29 :) 13:25
timotimo ah, ok; i think we only have built-in grapheme cluster segmentation?
masak pmurias: I was thinking of his en.wikipedia.org/wiki/Turing%27s_proof paper ("On Computable Numbers, with an Application to the Entscheidungsproblem") 13:26
timotimo but you can use the word_break property in reegxes
13:27 Guest16965 joined
timotimo lelf: some parts of the word break algo are already forced by how perl6 does NFG, like "do not break within CRLF" or "do not break within emoji zwj sequences" 13:27
i believe also "do not break within emoji flag sequences" 13:28
lelf timotimo: that's not enough
SmokeMachine correcting my sentence: I don't know why, but in my mind, I would expect the `do given 42 { "bla" }` return "bla" (that is correct) and `given 42 { "bla" }` to return 42... 13:29
lelf timotimo: would be great to have something like icu. but seems there are no perl6 libs yet
timotimo unicodable6: 는
unicodable6 timotimo, U+B294 HANGUL SYLLABLE NEUN [Lo] (는)
timotimo unicodable6: help 13:30
unicodable6 timotimo, Just type any Unicode character or part of a character name. Alternatively, you can also provide a code snippet. # See wiki for more examples: github.com/perl6/whateverable/wiki/Unicodable
lelf timotimo: like icu = ability segment chinese (using dictionary)
timotimo unidump: 는
unicodable6 timotimo, gist.github.com/f9daaedbf2c122bcc9...c102d33b8e
timotimo ^- what info is missing from there?
masak SmokeMachine: the former is immediate to me, but the latter is not. it's not even clear to me that statements need to have a value at all. 13:31
13:31 mowcat left
lelf m: say '函数的调用使用空格符而不是括号'.uniprops('word_break') 13:33
SmokeMachine masak: I think a `given` (if without a `do`) would make more sense if return what's being given...
evalable6 (Other Other Other Other Other Other Other Other Other Other Other Other Other Other Other)
lelf timotimo: ^^ yet there are 9 words 13:34
timotimo OK, so without an actual dictionary we can't get this right?
SmokeMachine masak: I am repeating my self doing `sub bla($obj) { given $obj { ... }; $obj }` every time... 13:35
pmurias masak: Turing didn't live to see the creation of high level programming languages, so comparing how good he was at something that didn't really exist is a bit of philosophical discussion 13:36
lelf timotimo: yep. but look at icu, it can do it (although it'd be a lot to write). But even just TR29 would be great to have. I mean just 「.segment(:words)」 13:37
13:39 kensanata left, SergiusUA joined 13:40 molaf left
SmokeMachine masak: Id like to be able to use `given` as this: kotlinlang.org/api/latest/jvm/stdl.../also.html 13:41
13:44 __jrjsmrtn__ joined 13:45 __jrjsmrtn__ left
masak SmokeMachine: I hear you, about the intuition. not sure I share that intuition, though. for one, I'd be terribly confused if `do given` and `given` started giving back different values. 13:48
SmokeMachine masak: yes... that would be confuse... 13:49
masak: that way Kotlin can attach methods to another classes without changing it is something I miss in perl6... 13:50
13:50 __jrjsmrtn__ joined
jnthn SmokeMachine: .&foo lets you call something much as if it was a method, though 13:52
13:52 __jrjsmrtn__ left
masak loves .&foo 13:53
SmokeMachine jnthn: yes... but that's not declared like that... I mean this: kotlinlang.org/docs/reference/func...x-notation
masak I love how .&foo is essentially a *discovered* feature, because it wasn't designed with the & sigil specifically in mind
SmokeMachine: I've been looking at generic functions today, like CLOS and Dylan have. been musing whether to switch 007 over to them, instead of methods. 13:54
13:55 __jrjsmrtn__ joined, ctilmes joined
pmurias in the Kernel docs it would be good to have proper descriptions of what .arch and other uname using methods really return 13:58
masak .oO( it returns a vaulted doorway ) 14:00
jnthn SmokeMachine: Isn't that just `sub infix:<shl>($a, $b) { $a.shl($b) }`? 14:01
SmokeMachine jnthn: it wouldn't change the self... 14:02
jnthn: no... it wouldn't call a method on $a... the method do not exist in $a... 14:04
14:06 ravenousmoose_ left 14:07 lucasb joined
cpan-p6 New module released to CPAN! LibUUID (0.3) by 03CTILMES 14:08
skids
.oO( maybe sub bla ($_--> $_) { } could be made towork (currently "malformed retuen value") )
ctilmes tyil: I uploaded a new LibUUID that explicitly uses libuuid v1 instead of relying on the link from libuuid.so to it 14:09
kawaii ctilmes: unrelated but thank you for making Redis::Async :) 14:10
ctilmes kawaii: ty -- I've learned a lot since I did that -- I may need to revisit it at some point. I used it to dump a bunch of data into redis much faster than the Perlish Redis module though.. 14:11
SmokeMachine jnthn: sorry, that was the wrong anchor...
I was meaning this: glot.io/snippets/fb0j9x5ujq 14:12
jnthn: it's not an augment... its not changing the Int...
14:14 ravenousmoose joined
ugexe ctilmes: that broke libuuid on my system 14:16
ctilmes ugexe: Do you have libuuid.so.1? or just libuuid.so? 14:17
ugexe just libuuid.so
really libuuid.dynlib
ctilmes Oh... Mac... Any hints how I should handle it?
SmokeMachine AlexDaniel: Have I used the repo for the wrong propose? 14:18
ugexe i dont think it'll be only broken on osx, and am willing to bet many linuxes also don't create the .1 etc
AlexDaniel SmokeMachine: no, it's the right repo
SmokeMachine: but you're proposing a solution without stating a problem
ugexe im not sure there is a good solution for determining if you need mylib.so.1 vs mylib.so 14:19
ctilmes Some people have libuuid.so, some have libuuid.so.1, some have both
ugexe right
ctilmes or .dylib, or .dll
ugexe its probably a problem NativeCall should be solving, but im not sure how it would do it 14:20
SmokeMachine AlexDaniel: I have to do that by hand some times before, and ended up not using classify because it would be worst to write and have to loop throw each key and reduce each value (on reduce case)... 14:21
ugexe m: use NativeCall; my $throwaway-sub = sub { }; $throwaway-sub does NativeCall::Native[$throwaway-sub, sub { "libuuid.dylib" } ]; $throwaway-sub()
evalable6 (exit code 1) WARNING: unhandled Failure detected in DESTROY. If you meant to ignore it, y…
ugexe, Full output: gist.github.com/e819f3133144484f65...1f7ac9d9a7
AlexDaniel SmokeMachine: in the ticket, please
ugexe you can use that to determine if they have specifically "libuuid.dylib"
if the error says "Cannot locate symbol '' in native library 'libuuid.dylib'" then they have that lib
ctilmes ugexe: Should I make LibUUID use github.com/salortiz/NativeLibs 14:22
AlexDaniel SmokeMachine: also maybe it'd be nice to see the code that does looping and stuff, so that's it's easier to see that there's actually an issue
ctilmes ugexe: I think it just does what you described
ugexe yeah then that might be an ok interm solution 14:23
SmokeMachine AlexDaniel: Im answering... Ill try to find the example when I get home...
ugexe im not sure that module is doing what i did though... i think its actually looking for files whereas mine was seeing if known variants work 14:24
either way it seems to try to solve that problem 14:25
SmokeMachine jnthn: Now I've found it: kotlinlang.org/docs/reference/extensions.html 14:28
AlexDaniel squashable6: status 14:29
squashable6 AlexDaniel, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈23 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
ctilmes ugexe: NativeLibs lets me specify a list of versions to try, but not 'no version' 14:30
14:31 squashable6 left 14:33 squashable6 joined, ChanServ sets mode: +v squashable6
ctilmes ugexe: github.com/salortiz/NativeLibs/issues/4 14:34
squashable6 Webhook for perl6/ecosystem is now active! Responsive is better than fast. 14:35
cpan-p6 New module released to CPAN! LibUUID (0.4) by 03CTILMES 14:53
ctilmes ugexe -- Try LibUUID now -- should support both version 1 and no version
ugexe: -- Try LibUUID now -- should support both version 1 and no version 14:54
Now I have to re-release all my modules using NativeLibs to find their libraries
14:55 pmurias left
SmokeMachine jnthn: this kind of extension would be great to define cast on core types for custom ones... 14:56
15:05 jmerelo joined, abraxxa joined
jmerelo squashable6: status 15:06
squashable6 jmerelo, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈22 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
jmerelo, Log and stats: gist.github.com/70131c2fe466cecf5a...84bff79736
jmerelo Not unexpected...
sena_kun I am planning to write a LDIF module for some time already, just need some free time, which is a big no-no. It is on most wanted list, so will be removed later. 15:08
ugexe ctilmes: actually that way is broken as well
jmerelo sena_kun: that would be great. During this weekend?
ugexe beacuse DBIish includes its own NativeLibs module
sena_kun jmerelo, also note that it is still Friday for a lot of people, not Saturday.
ugexe and gets chosen over the standalone lib
sena_kun jmerelo, well, I can try to get it after work, yes. 15:09
ugexe you can see via `zef info DBIish`
15:10 abraxxa left
ctilmes Ah. I see -- If I 'use NativeLibs:auth<github:salortiz>' would that do it? 15:10
ugexe yeah
and `depends : ["NativeLibs:auth<github:salortiz>"]` 15:11
15:11 pmurias joined 15:12 ravenousmoose left 15:20 kurahaupo joined
cpan-p6 New module released to CPAN! LibUUID (0.5) by 03CTILMES 15:23
15:23 abraxxa joined 15:27 __jrjsmrtn__ left 15:30 hythm_ joined
jmerelo sena_kun: including me... thanks! 15:30
hythm_ p6: $*IN.put: 'test'; # how to properly write text to STDIN? 15:31
evalable6 (exit code 1) Failed to write bytes to filehandle: Bad file descriptor
in block <unit> at /tmp/1vbjR1l2av line 1
ugexe ctilmes: bad news -- NativeLibs doesn't pass its tests (on osx at least) 15:32
hythm_ the above works in repl, but it adds 'True' to the end of text
ctilmes ugexe: Argh.. 15:33
ugexe it might just be a poorly written test though 15:34
github.com/salortiz/NativeLibs/blo....t#L30-L31
they never adjust the test count 15:35
15:35 andrzejku left
ugexe based on the system and differing number of tests 15:35
ctilmes needs a 'skip "no test for darwin", 4;' in there?
ugexe i think it needs to remove the plan altogether, because windows doesn't have the same test count as linux either 15:36
ctilmes ah
should be refactored with subtest maybe?
ugexe that or remove `plan` in favor of just 'done-testing()' 15:37
15:45 lookatme_q left, lookatme_q joined 15:47 pmurias left
lucs How do I declare a MAIN that can handle 0 or more of the same named argument, like 'foo.p6 -a=42 -b=abc -a=66 -b=def'? 15:49
15:52 zakharyas left
araraloren maybe using :@b ? 15:52
maybe using :@a ?
El_Che named parameters are optional, yes 15:54
lucs r: @*ARGS = <-a=42 -a=66>; sub MAIN ( :@a ) { .say for @a } 15:59
perlbot lucs: 42␤66␤
lucs r: @*ARGS = <-a=42>; sub MAIN ( :@a ) { .say for @a }
perlbot lucs: Usage:␤ /tmp/xXPOVxGlZi [-a=<Positional>]␤[Exited 2]
lucs :(
16:00 __jrjsmrtn__ joined
lucs (not sure how to test for 0) 16:00
r: @*ARGS = (); sub MAIN ( :@a ) { .say for @a }
perlbot lucs: No output.
araraloren bisectable6: @*ARGS = <-a=42>; sub MAIN ( :@a ) { .say for @a } 16:01
bisectable6 araraloren, Bisecting by exit code (old=2015.12 new=7b4dd30). Old exit code: 2
araraloren, bisect log: gist.github.com/e261abca6d91d0fea8...161eb4a89e
araraloren, (2019-03-26) github.com/rakudo/rakudo/commit/87...8106ce7dfa
lucs Holy moly, there's a neat tool. 16:02
16:03 jdv79 left
araraloren lucs seems like it fixed in new version 16:04
github.com/rakudo/rakudo/commit/87...8106ce7dfa
AlexDaniel github.com/rakudo/rakudo/issues/2797
lucs This language is too cool. Things get fixed so quickly :) 16:05
lucs goes to rebuild his perl6 16:06
The language is cool, and so are all the great people who make it happen! 16:07
araraloren yeah, and if you want you will find replacement :)
16:07 pistacchio left 16:08 pistacchio joined
Woodi sena_kun: about ldif: there is something like this: github.com/slunski/perl6-text-ldif but it dormant for some time. and what features your planned module need to have ? 16:08
16:09 Possum left
sena_kun Woodi, oh-oh... then we don't need one, I guess. Still have to check how much it's rotten. Its item in wanted modules list can be removed then. 16:10
>No candidates found matching identity: Text::LDIF 16:11
seems like it isn't added to the ecosystem though
16:11 cpan-p6 left
Geth perl6-most-wanted: 494970ef80 | Altai-man++ (committed using GitHub Web editor) | most-wanted/modules.md
Remove LDIF module

We already have one.
16:12
16:12 pistacchio left, cpan-p6 joined, cpan-p6 left, cpan-p6 joined 16:13 pistacchio joined, Kaiepi left, pistacchio left, Kaiepi joined 16:14 pistacchio joined
sena_kun pushed a PR that fixes tests 16:15
Woodi++
tony-o Woodi sena_kun maybe just needs a maintainer, slunski is active but hasn't shipped since sep 2016 16:16
shipped p6*
sena_kun tony-o, I'll gladly be a maintainer, just opening an issue would be fine? 16:17
Geth doc: 9dabfb67d1 | Coke++ | xt/words.pws
learn new variant
doc: 06c05be73b | Coke++ | xt/words.pws
T is typically used as a placeholder for a Type.

TT used in recent addition to refer to a second Type in the same context.
Woodi I am autor of that ldif stuff, just never had energy to desipher adding to ecosystem... and if it looks usefull just fork it and use properly 16:18
tony-o sena_kun: i would think so, if you don't get a response you could fork and redistribute/update with some restriction 16:19
Woodi ah, hah. i can add to ecosystem
sena_kun but tests are failing 16:20
Woodi tony-o: pleas, if you can ! I will be wery glad for that :)
16:21 pistacchio left
Woodi 2 of them ? :) 16:21
sena_kun Woodi, can you check github.com/slunski/perl6-text-ldif/pull/1 ?
tony-o send me a link to the other meta
Geth ecosystem: ed1b86457c | Altai-man++ (committed using GitHub Web editor) | META.list
Add Text::LDIF
16:22
squashable6 🍕🍕🍕 First contribution by Altai-man++! ♥
sena_kun added the module
Woodi sena_kun: checked ! what to do now ?
sena_kun Woodi, just accept it, there should be a button for that if you have admin/writer rights for the repo. 16:23
\o/ 16:25
Woodi++, thanks. Sooner or later I'll use it and we'll see if it is good enough or something should be tweaked.
tony-o ++
Woodi clicked merge, ok now ? 16:26
sena_kun Woodi, yes.
Woodi sena_kun: when I was writing this it parsed all OpenLDAP test ldif files except few entries with binary attributes and empty dn. never saw such entries in real life but it's not complete... 16:27
tony-o lizmat: thoughts on the behavior for 2814 ? 16:28
guifa lelf and timotimo: if you’re needing a smarter word breaker, that’s in the plans for Intl::CLDR 16:44
Woodi any chance that 'samewith' do tail call optimization ?
16:46 jdv79 joined
araraloren Rakudo don't have that optimization 16:49
16:50 pistacchio joined 16:53 vrurg left, khisanth_ left 16:55 abraxxa left, abraxxa joined
discord6 <Tyler (Aearnus)> would be nice if it did 16:56
16:57 vrurg joined
choiboi Hey guys, I know I haven't been on for a while but I wrote a little toy language in Perl6 and documented how I made it and put the code on Github, if anyone wants to check out the post its xikuuky.insomnia247.nl/3.html 16:58
17:00 abraxxa left
araraloren so it's non-readable language :/ 17:04
tony-o dutch isn't _that_ bad araraloren (hah) 17:06
17:07 khisanth_ joined 17:10 domidumont left 17:11 daemon is now known as pingu2 17:12 pingu2 is now known as tnViking 17:13 tnViking is now known as cortana 17:20 domidumont joined 17:30 domidumont left
tony-o m: say <a b c>.classify({ [True, False] }) 17:32
evalable6 {True => {False => [a b c]}}
tony-o not what i'd expect
ugexe thats a bit contrived 17:36
conceptually that is categorize 17:39
m: say <a b c>.categorize({ [True, False] })
evalable6 {False => [a b c], True => [a b c]}
17:50 Kaiepi left 17:51 Kaiepi joined 17:52 Kaiepi left 17:53 Kaiepi joined 17:55 kurahaupo left, kurahaupo joined, araraloren left 18:00 agentzh left 18:02 agentzh joined, agentzh left, agentzh joined 18:07 Possum joined 18:13 mowcat joined 18:19 natrys joined
tyil ctilmes: awesome! thanks! 18:29
tony-o boils down to 18:30
m: my %x; %x{any(True, False, False)}.push: 5; %x{any(True, False, False)}.push: 15; %x.say
evalable6 {False => [5 15 15], True => [5 15]}
18:31 sauvin left 18:43 jmerelo left 18:48 netrino joined
lucs Hmm... How can I tell if zef is being (unusually?) quiet or whether it's hung? 18:53
It's been stuck at ===> Searching for: p6doc for over 12 minutes now. 18:54
18:56 zachk joined 18:58 zachk left, zachk joined
ugexe you can always run with --verbose or --debug to get more output 19:02
19:03 zachk left, zachk joined
lucs Ok, will start again (still stuck). 19:04
19:06 kurahaupo left, kurahaupo joined 19:07 __jrjsmr_ joined 19:08 __jrjsmr_ left 19:10 andrzejku joined 19:17 Black_Ribbon joined 19:18 Xliff joined
Xliff \o 19:18
lucs Hiya
Xliff I have the first part of a substitution regex that looks like this: s!'<template class='<quoted>' parent='<quoted>! 19:19
How do I refer to the first and second <quoted> values in the second part?
s!'<template class='<quoted>' parent='<quoted>!<object class="$/<quoted>[1]" id="$/<quoted>[0]"! ?? 19:20
m: my regex quoted { \" ~~ \" <-[\"]>+ }; my $a = '"This is a test"'; say $a ~~ /<quoted>/ 19:22
evalable6 (exit code 1) 04===SORRY!04===
Unrecognized regex metacharacter ~ (must be q…
Xliff, Full output: gist.github.com/6a3e951ad4d69413d0...38ca492f10
Xliff m: my regex quoted { \" ~ \" <-[\"]>+ }; my $a = '"This is a test"'; say $a ~~ /<quoted>/
evalable6 「"This is a test"」
quoted => 「"This is a test"」
Xliff m: my regex quoted { \" ~ \" (<-[\"]>+) }; my $a = '"This is a test"'; say $a ~~ /<quoted>/
evalable6 「"This is a test"」
quoted => 「"This is a test"」
0 => 「This is a test」
19:23
Xliff So...
s!'<template class='<quoted>' parent='<quoted>!<object class=$/<quoted>[1] id=$/<quoted>[0]! ??
tony-o m: my $x = "abcdef"; $x ~~ s:x/ { token quote { "d"|"f" } } <quote> \w+ <quote> /{ $/<quote>[0] }{ $/<quote>[0] }/; $x.say; 19:24
evalable6 abcdd
Xliff m: my regex quoted { \" ~ \" (<-[\"]>+) }; my $a = '<template class="A" parent="B" the rest>'; $a ~~ s!'<template class='<quoted>' parent='<quoted>!<object class=$/<quoted>[1] id=$/<quoted>[0]!; say $a 19:26
evalable6 <object class="B" id="A" the rest>
Xliff \o/
tony-o++ 19:27
19:29 pistacchio left, pistacchio joined 19:30 epony joined 19:34 kurahaupo left, kurahaupo_ joined 19:35 cortana is now known as daemon
Kaiepi what is $¢ ? 19:42
ugexe cursor 19:45
19:48 vrurg left 19:49 vrurg joined
tony-o m: my $x = any("a", "f"); say $x.Str.WHAT 19:49
evalable6 (Junction)
tony-o conjunction junction 19:50
Kaiepi m: say defined my $ 19:51
evalable6 False
Kaiepi m: say defined my @
evalable6 True
Kaiepi m: say defined my %
evalable6 True
Kaiepi m: say defined my &
evalable6 False
Kaiepi should this be documented as a trap? 19:52
same with this:
m: class Foo { has Str $.bar; submethod BUILD(:$!bar = 'baz') {} }; my Foo $foo .= new; say $foo.bar
evalable6 baz
Kaiepi oh wait what
ugexe that containers are defined?
Kaiepi that unassigned @ and % variables are still defined 19:53
i ran into a bug in my code that confused the hell out of me because i assumed they weren't like variables that use $
s/weren't/were/ 19:54
er
i was right originally
ugexe m: say {}.defined; # im not sure its surprising when put this way
evalable6 True
Kaiepi put that way, yeah 19:56
discord6 <Tyler (Aearnus)> hey, is there a list of good beginner's bugs in rakudo anywhere? I want to do some bug squashing
Kaiepi m: class Foo { has Str $.bar; submethod BUILD(:$!bar = 'baz') {}; method new(:$bar) { self.bless: :$bar } }; my Foo $foo .= new; say $foo.bar 19:57
evalable6 (exit code 1) Type check failed in assignment to $!bar; expected Str but got Any (Any)
in submethod BUILD at /tmp/5tA907HR4J line 1
in method new at /tmp/5tA907HR4J line 1
in block <unit> at /tmp/5tA907HR4J line 1
Kaiepi m: class Foo { has $.bar; submethod BUILD(:$!bar = 'baz') {}; method new(:$bar) { self.bless: :$bar } }; my Foo $foo .= new; say $foo.bar
evalable6 (Any)
Kaiepi could this be a trap or is it just a dumb mistake on my part
19:59 pmurias joined 20:02 SergiusUA left 20:03 andrzejku left
tony-o you're not assigning anything $bar in the `new` 20:04
m: class Foo { has $.bar; submethod BUILD(:$!bar = 'baz') {}; method new(:$bar = 'dang it') { self.bless: :$bar } }; my Foo $foo .= new; say $foo.bar
evalable6 dang it
tony-o and BUILD is reflecting the passed value of Any 20:05
ugexe its because parameters use binding, not assignment
m: my $foo is default(42) = Nil; say $foo;
evalable6 42
ugexe m: my $foo is default(42) := Nil; say $foo;
evalable6 Nil
Kaiepi i know tony-o 20:07
but is it likely that other people will try to do that and run into the same issue? 20:08
Xliff Kaiepi: I know that looks like a trap. I would think that if a parameter is passed and hits a sig with a default value it should take that value.
But technically, Any is a value.
So without the default on method new... Any gets through and BUILD ignores the default.
It's not a trap, but probably should be documented.
Kaiepi i assumed $bar would be Nil, not Any
Xliff Kaiepi: Even if its Nil, that would pass through as a value to BUILD 20:09
I have been caught by same.
tony-o what definition of trap are you using?
Xliff "Something new users would run into"
Kaiepi a mistake that people could make based off assumptions on how the language works 20:10
Xliff ^ or that
tony-o ah, doesn't the doc for `.new` say you shouldn't be using that unless you know what you're doing?
Xliff tony-o: How do you "know what you are doing" if the docs don't explain things like this? 20:11
tony-o because you are willing to do stuff you know you probably shouldn't and know the reasons why it's required for your purpose 20:12
Xliff method new(:$bar) { } is the equivalent of saying method new (:$bar = Any) { }
^^ THAT would be sufficient notice.
tony-o the docs do discourage use of `method new` with preference to `BUILD|TWEAK` 20:13
and say not to use `method`, preferring `multi method`
Xliff Discouraging is not enough, though.
Kaiepi in my case i was using BUILD because i was assigning to private attributes
Xliff Most people are familiar with C++ or C# and those use new as the constructor. Not BUILD.
Until people understand WHY it is discouraged, just saying "we prefer you do this" really isn't good enough. 20:14
tony-o it explains why in the docs
Declaring new as a method and not a multi method prevents us from using the default constructor; this implicit constructor uses the attributes as named parameters. That is one of the reasons why using new is discouraged. 20:15
which, ironically, is related to that ^ `.new`
Xliff Yes, but sometimes using the default constructor in complex inheritance chains, is also a trap. 20:16
Never the less, that wording is a lot better than I remember, so....
tony-o i'd like to know more about the inheritance chain trap
ugexe using .new makes inheritance more difficult
tony-o do you have a bug or example i can look at Xliff ? 20:17
20:17 redhands joined
ugexe but does make some advanced cases possible 20:17
the obvious one: having an api with positionals
also s/using .new/defining your own .new/ 20:18
Xliff m: class A { has $.a; submethod BUILD (:$!a($a)) { }; multi method new (Int $a) { self.bless(:$a) }; }; my $a = A.new('aa');
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/BSVefKAlJ7
Shape d…
Xliff, Full output: gist.github.com/01601cdf61d92dcec5...0d8467b365
Xliff m: class A { has $.a; submethod BUILD (:$!a:($a)) { }; multi method new (Int $a) { self.bless(:$a) }; }; my $a = A.new('aa');
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/rCZD2xzmbG
Attribu…
Xliff, Full output: gist.github.com/6516fd3ecfb1e6c778...77c8a9eee9
Xliff m: class A { has $.a; submethod BUILD (:$a)) { $!a = $a }; multi method new (Int $a) { self.bless(:$a) }; }; my $a = A.new('aa'); 20:19
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/6fiYmj3ihj
Missing…
Xliff, Full output: gist.github.com/763a72003ce751f9c6...7775ed6dd4
Xliff Grrrr....
AlexDaniel Tyler (Aearnus): maybe try github.com/rakudo/rakudo/issues?q=...t+issue%22
20:19 clarkema_ joined 20:20 clarkema joined, clarkema left, clarkema_ is now known as clarkema
Xliff m: class A { has $.a; submethod BUILD (:$a) { $!a = $a }; multi method new (Int $a) { self.bless(:$a) }; }; my $a = A.new('aa'); 20:20
evalable6 (exit code 1) Default constructor for 'A' only takes named arguments
in block <unit> at /tmp/X9Lq_J81tY line 1
Xliff There.
timotimo aye, needs a proto in there 20:21
Xliff Yes.
Was just about to make that point.
Going by the docs though, that error message would be confusing because class A doesn't defined a constructor that takes named arguments.
timotimo you think it should perhaps inspect the class that had "new" called on it? 20:22
to generate a better error message?
Xliff Something like that.
ugexe the constructor is defined through declarative syntax of the class itself
Xliff Or maybe add "did you forget to add a proto new" method to class A?
timotimo kind of like when we have "candidates that would match if there were a writable argument" one
Xliff m: class A { has $.a; submethod BUILD (:$a) { $!a = $a }; method new (Int $a) { self.bless(:$a) }; }; my $a = A.new('aa'); 20:23
evalable6 (exit code 1) Type check failed in binding to parameter '$a'; expected Int but got Str ("aa")
in method new at /tmp/9vQrcSkS2C line 1
in block <unit> at /tmp/9vQrcSkS2C line 1
kybr do we have a regex/grammar explorer like regexr.com or pegjs.org/online yet? i find myself craving the immediacy of these tools.
Xliff ^^ That's good, but it goes against the docs when they say use "multi method"
kybr: What do you mean? 20:24
I've done this: github.com/Xliff/p6-VisualGrammar/
But it's a bear of an install.
tony-o oh that's cool
20:24 redhands left
Xliff tony-o: Thanks! :) 20:25
kybr Xliff: i'd call that a qualified yes.
tony-o seems like introspecting and saying doesn't match signatures (like other methods do) would make that error clearer
Xliff kybr: Experimental and work in progress. I haven't touched it in a bit, so changes may have introduced bitrot. 20:26
kybr: If you run into ANY problems, or have suggestions, please create issues and notify me here via PM or .tell
Please note, I have not tested it with large grammars, so that may be sketchy. 20:27
20:38 molaf joined
cpan-p6 New module released to CPAN! FindBin (0.2.4) by 03LEMBARK 20:40
20:46 domidumont joined
lizmat weekly: aearnus.github.io/2019/04/03/a-whi...t-features 20:50
notable6 lizmat, Noted!
lizmat weekly: aearnus.github.io/2019/04/05/perl6...s-worst-ml
notable6 lizmat, Noted!
discord6 <Tyler (Aearnus)> :o 20:51
ctilmes ugexe: FYI: salortiz patched the failing test: github.com/salortiz/NativeLibs/issues/5 20:52
20:53 domidumont left 21:01 skids left, pecastro left 21:10 releasable6 left 21:14 releasable6 joined
squashable6 🍕 lembark++ wrote a comment on a review for “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...r272746792 21:17
🍕🍕🍕 First contribution by lembark++! ♥
🍕 lembark++ submitted a review on pull request “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...-223483191
🍕 AlexDaniel++ wrote a comment on a review for “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...r272747208 21:19
🍕🍕🍕 First contribution by AlexDaniel++! ♥
🍕 AlexDaniel++ submitted a review on pull request “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...-223483718
🍕 timo++ submitted a review on pull request “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...-223484104 21:20
🍕🍕🍕 First contribution by timo++! ♥
🍕 timo++ wrote a comment on a review for “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...r272747504
🍕 AlexDaniel++ submitted a review on pull request “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...-223484231 21:21
🍕 AlexDaniel++ wrote a comment on a review for “Add FindBin to ecosystem”: github.com/perl6/ecosystem/pull/44...r272747609
Kaiepi squashable6, help 21:32
squashable6 Kaiepi, Available commands: status, log, quiet, loud # See wiki for more examples: github.com/perl6/whateverable/wiki/Squashable
Kaiepi squashable6, status
squashable6 Kaiepi, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈16 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
Kaiepi, Log and stats: gist.github.com/f1364de041785813e4...42a4c4965e
Kaiepi oh sweet 21:33
anyone up for working on my Net::Telnet package? i'll throw up some issues on features i want added before i can upload it to cpan 21:35
i'll work on other people's modules in exchange 21:40
timotimo what kind of programming stuff do you enjoy? :) 21:46
21:51 mowcat left, clarkema left 21:56 pochi joined, ctilmes1 joined, pistacch_ joined, Kaypie joined 21:58 tobs` joined, aindilis` joined
Xliff Ooh! Kaiepi! If you can look at the twisted example in p6-Pango, I'll be your huckleberry! :D 21:58
21:58 buffet_ joined 21:59 kaare__ joined
Xliff github.com/Xliff/p6-Pango/blob/mas...-twisted.t <-- Text don't twist. 21:59
22:00 irdr_ joined, Praise- joined, Praise- left, Praise- joined
Kaypie timotimo, networking mainly 22:00
22:00 namibj_ joined, samcv_ joined, breinbaa1 joined, choiboi_ joined, telex left, MilkmanD1n joined, kybr_ joined, telex joined, smash_ joined, pmurias_ joined
Kaypie Xliff, i'll see if i can install pango on openbsd or not 22:00
timotimo i can't actually tell if i can help you at all for Net::Telnet, but ... any interest in HTTP3 for cro? :D 22:01
22:01 natrys_ joined, benjikun_ joined, irdr left, MilkmanDan left, choiboi left, Ekho left, kybr left, pistacchio left, khisanth_ left, irco left, aindilis left, Voldenet left, stux|RC-only left, samcv left, benjikun left, APic left, smash left, Praise left, renormalist left, Ulti_ joined, buffet left, natrys left, namibj left, breinbaas left, pmurias left, dylanwh left, woolfy left, Ulti left, Kaiepi left, ctilmes left, rindolf left, pochi_ left, jeek left, kaare_ left, tobs left, lookatme_q left, ambs left, jeek joined, tobs` is now known as tobs
Kaypie you mean http2 right? 22:01
22:01 renormalist joined, ambs_ joined
Kaypie timotimo, here's the list of issues i wrote up github.com/Kaiepi/p6-Net-Telnet/issues 22:01
22:01 APic joined
Xliff Ooh! And the net decides to do a banana and split! :P 22:01
Kaypie some of them require no knowledge on telnet
22:01 cpan-p6 left 22:02 lookatme_q joined, rindolf joined, cpan-p6 joined, cpan-p6 left, cpan-p6 joined, woolfy joined
Kaypie perfect, i can install pango-1.42.4p1 22:02
22:02 khisanth_ joined 22:03 Praise- is now known as Praise 22:04 Voldenet joined, Voldenet left, Voldenet joined, Ekho joined 22:05 stux|RC-only joined
Kaypie timotimo, idk much about http2 but i could skim through the rfc for it and see what i can do 22:08
Xliff, i'll be a while since i need to update all the packages on my system before i can get pango installed
22:09 natrys_ left
timotimo don't feel obligated; after all, cro is a product of edument after all ;) 22:09
Xliff Kaypie: No worries. 22:10
ugexe cro already is http2 capable
its not http3
timotimo yeah 22:11
oh
Kaypie wait http3 exists?
timotimo Kaypie: i didn't see when you wrote "you mean http2"
yeah, it's pretty fresh out of the oven
Kaypie huh
timotimo it's based on QUIC 22:12
Kaypie what's QUIC?
timotimo "like SPDY, but UDP"
(i don't know enough about it to give an adequate explanation)
ugexe the better to serve you ads with my dear
timotimo :D
22:13 dylanwh joined
Xliff ugexe++ # LOL 22:13
Kaypie ...what's spdy 22:15
i know i've heard of it before
timotimo it was what HTTP2 was based on 22:16
ugexe but it didnt serve ads fast enough because it still suffers from head-of-line TCP shit 22:17
22:23 sena_kun left 22:28 hythm_ left 22:36 skyscout joined
skyscout waves 22:36
22:37 MilkmanD1n is now known as MilkmanDan
skyscout (don't mind me, just playing fly on the wall while I dig out my tutorials and try some more p6) 22:37
23:02 aindilis` left 23:03 netrino left 23:19 ctilmes1 left 23:21 ctilmes joined, ctilmes left 23:22 ctilmes joined 23:25 AlexDaniel left
cpan-p6 New module released to CPAN! FindBin (0.2.5) by 03LEMBARK 23:27
23:28 ExtraCrispy left 23:29 AlexDaniel joined 23:35 rindolf left 23:41 aindilis joined
Xliff Kaypie: I have a doc making script for you. 23:42
It's not perfect, but...
23:42 kurahaupo_ left, kurahaupo joined
Xliff Kaypie: pastebin.com/bJCqJCRz 23:43
23:59 greppable6 left