»ö« 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:00 lizmat joined, p6bannerbot sets mode: +v lizmat
holyghost basically you have a 16-bit system at the minimum then so you char array is doubled 00:00
timotimo i remember some of that code! :)
holyghost :-)
timotimo so, where does the issue arise? from the decode method? or decode-part? 00:01
holyghost 0xff = 16*15+15 I meant to say 00:03
00:03 leont left
holyghost 0xffff = 15*16^3 + 15*16^2 + 15*16^1 + 15 00:03
00:04 ryn1x joined
Kaiepi both encode and decode 00:04
timotimo maybe store the original length and just cut it off after doing the calculations?
00:05 p6bannerbot sets mode: +v ryn1x
Kaiepi ohh 00:07
yeah i could do that
holyghost my system does not use a length, to be honest
you just encode a string as as number 00:08
timotimo if you explicitly transport the length, your code will also accept things like null bytes in the middle
holyghost right 00:09
00:10 w_richard_w joined 00:11 p6bannerbot sets mode: +v w_richard_w 00:12 leont joined
Kaiepi yeah that works! 00:12
thanks guys
00:13 p6bannerbot sets mode: +v leont
holyghost np 00:13
00:18 hythm_ joined, p6bannerbot sets mode: +v hythm_
hythm_ Hello, I only know how to write cli scripts, what would be the way to go (module/framework) if I want to learn to write a desktop app, where i can align squares together, flip, reverse positions, swap, etc... may be this picture will explain better what I have in my mind goo.gl/images/wTZygK 00:28
The squares will have unicode characters 00:29
timotimo depending very much on how you want the input to go, it could be rather complicated 00:30
hythm_ The input will be set of symbols,,, basically i want to write a program to create the Zodiac cipher,, and be able to change, displace these symbols 00:31
timotimo the easiest is perhaps GTK, like with GTK::Simple; GTK::Plus is a new module that's in development since not too long and i'm not sure what percentage of it already works; i think a lot? 00:32
i don't know anything about that cypher 00:33
hythm_ This is a picture of the cipher www.zodiacciphers.com/uploads/4/9/7...r_orig.gif 00:35
timotimo you'd want to offer a bunch of pieces that the user could add to each character?
00:37 leont left
hythm_ Im not sure, what im thinking (for now) is for example to select a subset of the symbols say 4x4,, or 6x8,, the flip or reverse this dubset,,, then draw the whole tjing again with the new position 00:38
timotimo i know you can do this with SDL2, but then you'll have to roll your own UI stuff 00:39
hythm_ So i need to learn both GTK and SDL2 ? 00:40
timotimo no, it'd be one or the other
hythm_ Im sorry if the quetion does not make sense, this all new to me
timotimo theoretically they combine, but not quite easily 00:41
what does combine fine is GTK and Cairo
cairo gives you drawing functions like "draw a line from here to there" or "draw an arc" or "fill this circle" 00:42
and GTK gives you "put a row of buttons here" or "give me an input field" and "a menu bar at the top please"
and to combine them you can tell GTK "put a big rectangular space here" and then Cairo "draw some stuff on this space" 00:44
00:45 hythm_ left 00:46 Actualeyes left, hythm- joined, p6bannerbot sets mode: +v hythm-
hythm- Sounds good, i will check both and see what works best for me 00:46
Thank you timo
timotimo good luck! 00:47
the SDL2 stuff is ... pretty raw. not very well documented on the perl6 side, but the SDL2 wiki translates very straight-forwardly if you know how NativeCall calls things from the C world 00:48
hythm- Looks like I will need to learn a lot, but i don't mind, as learning with perl6 is ofun 00:51
timotimo :) :) 00:55
holyghost hythm-: look at github.com/theholyghost, search for PaganVisions2 directory and look at the SDL2::Raw stuff, I've made a window with drawing loop there 00:59
inside one of the repos, Holly6Game I think 01:00
MasterDuke i would love a good Perl6QT binding...
timotimo wouldn't we all
holyghost That's a monster to work on
hythm- Thanks holyghost, will do 01:01
timotimo hythm-: there's also examples in the SDL2::Raw repository
01:01 Ven` joined
buggable New CPAN upload: AI-Agent-0.1.8.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST 01:01
01:02 p6bannerbot sets mode: +v Ven`
hythm- Great. I also remember few days a go someone posted in the channel a spiral done with SDL2::Raw, it looked awesome 01:03
holyghost ^-- I've beautified it with some comments and get and ask methods for the MusicAgent, NESMusicAgent
you can lookup e.g. "Rock&Roll", with a db inside some agents 01:04
then it gives you something or nothing :-)
hythm- Sweet :)
holyghost :-) 01:05
01:06 Ven` left 01:12 jbotz left 01:14 Kaiepi left 01:15 Kaiepi joined, p6bannerbot sets mode: +v Kaiepi 01:19 lizmat left 01:20 hythm- left
holyghost If I need to use super.BUILD() on a multiple inherited class which method should I call then ? 01:24
I guess it'll be a mess of Class redirection for multiple BUILD method 01:27
never mind, I found it online 01:32
01:32 hythm_ joined, p6bannerbot sets mode: +v hythm_, Guest13389 left
hythm_ Iirc BUILD is a submethod, it won't be inherited. And you don't need to call it as its called during object construction. 01:37
01:39 capt_dan joined 01:40 p6bannerbot sets mode: +v capt_dan 01:44 capt_dan left, ryn1x left 01:45 Guest13389 joined 01:46 p6bannerbot sets mode: +v Guest13389 01:48 cognominal-p6 joined 01:49 p6bannerbot sets mode: +v cognominal-p6 01:51 Actualeyes joined, p6bannerbot sets mode: +v Actualeyes 01:52 cognominal-p6 left, cognominal-p6 joined 01:53 p6bannerbot sets mode: +v cognominal-p6 01:55 molaf left 01:58 w_richard_w left 01:59 hythm_ left 02:02 w_richard_w joined 02:03 p6bannerbot sets mode: +v w_richard_w 02:07 molaf joined 02:08 p6bannerbot sets mode: +v molaf
buggable New CPAN upload: AI-Agent-0.1.9.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST 02:11
02:12 ufobat_ joined, p6bannerbot sets mode: +v ufobat_ 02:13 cognominal-p6 left 02:16 ufobat left
buggable New CPAN upload: AI-Agent-0.1.10.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST 02:32
holyghost ^-- there's ask and get routines now which should make you any Agent except for agent-to-agent dispatching 02:33
that's for parsing parsers and shouldn't be too difficult 02:34
although agents have a default "agent" message where you double dispatch them and do your own code (parsing) on them 02:35
Agent is just an Actor with a dispatch routine for sending it messages (sync or async, depending on your further code on them 02:36
Now I need an agent network system, I'll do that later on 02:42
I can use a port such as 6969 :-)
I also need a binary string in a variable, IIRC from the 2nd edition perl book that should use pack 02:44
s/perl/camel
02:54 Actualey` joined, Praise left, p6bannerbot sets mode: +v Actualey`, Actualeyes left 02:57 Praise joined, Praise left, Praise joined, p6bannerbot sets mode: +v Praise 02:58 p6bannerbot sets mode: +v Praise 02:59 w_richard_w left 03:04 aindilis left 03:09 aindilis joined 03:10 p6bannerbot sets mode: +v aindilis
buggable New CPAN upload: AI-Agent-0.1.11.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST 03:11
03:12 Praise left 03:13 aindilis left 03:14 aindilis joined 03:15 p6bannerbot sets mode: +v aindilis, Praise joined, Praise left, Praise joined, p6bannerbot sets mode: +v Praise 03:16 p6bannerbot sets mode: +v Praise, zacts joined, p6bannerbot sets mode: +v zacts 03:19 aindilis left 03:20 aindilis joined 03:21 p6bannerbot sets mode: +v aindilis 03:23 Actualey` left 03:24 aindilis left 03:25 aindilis joined 03:26 p6bannerbot sets mode: +v aindilis 03:32 aindilis left 03:37 aindilis joined, aindilis left 03:38 aindilis joined, p6bannerbot sets mode: +v aindilis 03:45 fake_space_whale left 03:47 aindilis left 03:49 aindilis joined 03:50 p6bannerbot sets mode: +v aindilis 03:59 aindilis left
moony > die 03:59
hm
what's the thing again
03:59 aindilis joined
moony p6: die; 03:59
camelia Died
in block <unit> at <tmp> line 1
04:00 p6bannerbot sets mode: +v aindilis 04:02 d3b joined, abraxxa joined
moony p6: «iczero is a potato» 04:02
camelia WARNINGS for <tmp>:
Useless use of constant value iczero is a potato in sink context (lines 1, 1, 1, 1, 1, 1, 1, 1)
moony p6: say «iczero is a potato»; 04:03
camelia (iczero is a potato)
04:03 p6bannerbot sets mode: +v d3b, aindilis left, p6bannerbot sets mode: +v abraxxa 04:04 aindilis joined, p6bannerbot sets mode: +v aindilis, Sgeo_ joined 04:05 p6bannerbot sets mode: +v Sgeo_ 04:07 Xliff left, Sgeo left, abraxxa left 04:11 aindilis left
buggable New CPAN upload: AI-Agent-0.1.12.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST 04:11
04:12 aindilis joined, p6bannerbot sets mode: +v aindilis
holyghost I've added 2 agents' databases with a microcode database (a hash of {"add.l" => opcode hex } for M68000 assembler and an empty one for NES assembler), if you parse with this inside an agent you can transform binaries with it e.g. automatic programming/genetic programming should write a binary file or another example you translate the game language inside the ROM's machine code, you can also dump rom offsets for e.g. ripping gra 04:13
phics from rom files
I still need to write the parsing methods for them, which takes a bit longer ;-) 04:15
Which is where my Bayes::Learn, Game::Markov and Mathx::Stat comes into play, if you want to make the agent learn something, needs an hidden markov model though 04:18
04:19 Ven` joined 04:20 p6bannerbot sets mode: +v Ven` 04:21 abraxxa joined 04:22 aindilis left, p6bannerbot sets mode: +v abraxxa 04:23 cjkinni left, cjkinni joined 04:24 Ven` left, p6bannerbot sets mode: +v cjkinni 04:26 abraxxa left 04:31 bga57 left 04:47 abraxxa joined 04:48 p6bannerbot sets mode: +v abraxxa
holyghost You can now deploy binaries and texts in several agents, it'll upload in a minute 04:52
04:56 Guest10 joined 04:57 p6bannerbot sets mode: +v Guest10 04:58 Guest10 left
buggable New CPAN upload: AI-Agent-0.1.13.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST 05:01
holyghost Later on, I'll probably write a NES ROM graphics or Music ripper, with an Agent that searches for such offsets, not much learning in it I think, but it should be ok 05:03
now I am going to get a drink, sante!
05:04 aindilis joined, p6bannerbot sets mode: +v aindilis 05:05 Guest10 joined 05:06 p6bannerbot sets mode: +v Guest10 05:08 cognominal-p6 joined 05:09 p6bannerbot sets mode: +v cognominal-p6 05:11 aindilis left 05:12 curan joined, p6bannerbot sets mode: +v curan 05:17 Guest10 left 05:19 Guest10 joined 05:20 p6bannerbot sets mode: +v Guest10
Guest10 p6: say 3 05:22
camelia 3
05:24 Guest10 left 05:25 cognominal-p6 left 05:26 cognominal-p6 joined, p6bannerbot sets mode: +v cognominal-p6 05:28 HaraldJoerg joined 05:29 p6bannerbot sets mode: +v HaraldJoerg 05:33 cognominal-p6 left, ufobat_ is now known as ufobat 05:34 troys left 05:48 pr0d1gy joined 05:49 p6bannerbot sets mode: +v pr0d1gy
pr0d1gy p6: say "Hello, World!" 05:49
camelia Hello, World!
06:01 kensanata joined, p6bannerbot sets mode: +v kensanata 06:02 jmerelo joined 06:03 p6bannerbot sets mode: +v jmerelo 06:05 pr0d1gy left 06:28 jmerelo left 06:31 abraxxa left 06:32 protium left 06:34 domidumont joined 06:35 p6bannerbot sets mode: +v domidumont 06:38 protium joined 06:39 p6bannerbot sets mode: +v protium, robertle joined 06:40 p6bannerbot sets mode: +v robertle 06:45 pr0d1gy joined, p6bannerbot sets mode: +v pr0d1gy 06:58 pr0d1gy left 07:05 isBEKaml joined, p6bannerbot sets mode: +v isBEKaml
holyghost I had to put in some legalese for the Perl6 crew and Perl6 users, you can ask Agent (derived) classes anything, but you have to know what you are deploying/disking. So always use the "ask" message on your Agent's dispatch method to see if you would deploy illegally. 07:06
"ask about *text*" and "ask" just list Agent's databases 07:07
So deploying "Faxanadu" Nintendo ROMs would be illegal unless you change it e.g. to support Nintendo 07:08
you can translate it to Spanish for example, which hepls everyone
Then send the agent to Nintendo ;-)
It's in the README.md now 07:10
Note that you can make your own NES game with tools on nesdev.com 07:11
you can distribute that freely
upload'll show in a minute, 0.1.14 versiob
s/versiob/version
buggable New CPAN upload: AI-Agent-0.1.14.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST
holyghost NES roms are abandonware by Nintendo, SFY, they are a pain in the ass for emulator software not, but for current disk ROMs 07:14
07:14 isBEKaml left 07:30 lizmat joined, p6bannerbot sets mode: +v lizmat
holyghost Basically you have to watch out wat you "deploy" on your disk, as you can dissasemble M68000 code such as a Amiga kernel 07:38
with the M69kasmDB.pm6 07:39
s/M69/M68
08:04 Ven` joined, cjkinni left 08:05 cjkinni joined, p6bannerbot sets mode: +v Ven` 08:06 p6bannerbot sets mode: +v cjkinni 08:07 rindolf joined 08:08 p6bannerbot sets mode: +v rindolf 08:11 xiaoyafeng joined, p6bannerbot sets mode: +v xiaoyafeng
xiaoyafeng hello, Could you tell me what type $in of Proc is? 08:12
08:12 dakkar joined
xiaoyafeng my $p1 = run 'echo', 'Hello, world', :out; 08:12
does it mean assign True to $out? 08:13
08:13 p6bannerbot sets mode: +v dakkar
xiaoyafeng but I also see codes like :in($fh) and :in('_'); 08:14
it confuse me.
so what type $in is? bool, Str or IO? 08:15
08:17 HaraldJoerg1 joined, p6bannerbot sets mode: +v HaraldJoerg1 08:19 HaraldJoerg left
lookatme_q xiaoyafeng, Anything can coerces to IO 08:19
maybe help => docs.perl6.org/type/IO
08:28 cognominal-p6 joined, cognominal-p6 left 08:29 cognominal-p6 joined, p6bannerbot sets mode: +v cognominal-p6 08:38 zakharyas joined 08:39 p6bannerbot sets mode: +v zakharyas 08:49 lichtkind left 08:52 cognominal-p6 left
CIAvash xiaoyafeng: Have you read docs.perl6.org/type/Proc ? The second paragraph of docs.perl6.org/type/Proc#method_new explains the differences when in, out, err are set to '-', Bool or IO::Handle. 08:59
09:02 lichtkind joined 09:03 p6bannerbot sets mode: +v lichtkind
lookatme_q m: say Nil.xxxxxxxxxxxxxxxxxxxxxxxxxxx; 09:08
camelia Nil
lookatme_q It occurred to me that, why this not report any syntax error ? 09:10
09:14 dogbert2_ left 09:15 andrzejku joined 09:16 p6bannerbot sets mode: +v andrzejku
andrzejku Hi!:) 09:17
xiaoyafeng Thanks! 09:18
"Anything can coerces to IO" is very helpful
09:25 jbotz joined 09:26 p6bannerbot sets mode: +v jbotz 09:32 donaldh joined, p6bannerbot sets mode: +v donaldh, holyghost left 09:33 holyghost joined, p6bannerbot sets mode: +v holyghost 09:35 xiaoyafeng left 09:37 w_richard_w joined 09:38 w_richard_w left
holyghost I've put NES sound enable, sound disable search methods for a NES rom in AI::Agent, upload'll show in a minute 09:42
buggable New CPAN upload: AI-Agent-0.1.15.tar.gz by HOLYGHOST modules.perl6.org/dist/AI::Agent:cpan:HOLYGHOST 09:51
09:53 cognominal-p6 joined 09:54 p6bannerbot sets mode: +v cognominal-p6 10:07 cognominal-p6 left, cognominal-p6 joined 10:08 p6bannerbot sets mode: +v cognominal-p6 10:10 dogbert2_ joined 10:11 p6bannerbot sets mode: +v dogbert2_ 10:23 leont joined 10:24 p6bannerbot sets mode: +v leont 10:31 [particle] left 10:32 [particle] joined 10:33 p6bannerbot sets mode: +v [particle]
lizmat weekly: www.tyil.nl/post/2018/10/11/hacker...l6-part-2/ 10:35
notable6 lizmat, Noted!
lizmat .tell tyil do you know about docs.perl6.org/routine/substr-rw#(..._substr-rw ? 10:36
yoleaux lizmat: I'll pass your message to tyil.
tyil I believe I did consider that, yes 10:39
yoleaux 10:36Z <lizmat> tyil: do you know about docs.perl6.org/routine/substr-rw#(..._substr-rw ?
lizmat ok
tyil: also, re count-substring: $string.indices($substring,:overlap).elems 10:40
tyil so many ways to solve things!
lizmat hehe
tyil I presume .indices is faster as it doesnt do a regex?
lizmat indeed... probably orders of magnitude faster
tyil I like regexes, too bad they're still relatively slow in Perl 6 10:41
but good to know about .indices :)
lizmat sure.. ok if I mention them in comments on reddit ?
tyil I'll use that next time I need to solve something like this ^_^
of course!
my main reason to write these posts is to learn more about the languages 10:42
lizmat tyil: will do
10:53 jameslenz joined, jameslenz left 10:54 leont left 11:05 pmurias joined, p6bannerbot sets mode: +v pmurias 11:32 zakharyas left 11:34 Ven` left 11:43 jeek left 11:44 jeek joined, p6bannerbot sets mode: +v jeek 11:51 Ven` joined 11:52 p6bannerbot sets mode: +v Ven`
Zoffix lookatme_q: because that's a valid syntax for a method call and Nil has FALLBACK defined, so any non-existent methods still exist and return a Nil 11:52
11:54 sftp left, sftp joined, p6bannerbot sets mode: +v sftp 11:57 pmurias left, pmurias joined, p6bannerbot sets mode: +v pmurias, pmurias left 12:02 pmurias joined, p6bannerbot sets mode: +v pmurias 12:09 pmurias left 12:10 pmurias joined, p6bannerbot sets mode: +v pmurias
Geth doc: 8d1061c4c0 | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Type/Nil.pod6
Document Nil.FALLBACK

Spec: github.com/perl6/roast/blob/2fa2ad.../nil.t#L29
12:10
synopsebot Link: doc.perl6.org/type/Nil
12:12 Ven` left 12:13 pmurias left 12:15 pmurias joined, p6bannerbot sets mode: +v pmurias 12:16 Ven` joined 12:17 p6bannerbot sets mode: +v Ven` 12:19 isBEKaml joined, p6bannerbot sets mode: +v isBEKaml
Zoffix "Perl 6 version 6.d" looks really weird. "Perl 6 6.d" even more so 12:20
Why do people use "ANNOUNCE" instead of "ANNOUNCEMENT" as subject in announcement emails? 12:21
12:22 haukex joined
Zoffix or ANNOUNCING 12:22
12:23 p6bannerbot sets mode: +v haukex
moritz because that's what pmichaud wrote years ago 12:23
masak wasn't there an email group perl6-announce ? 12:26
moritz there was
masak then that wordage probably predates pmichaud's use, even 12:27
maybe the names of the groups (which I think were formed around the time of the RFC process) were inspired by some other language community 12:29
m: my &MAIN = -> {}; say "alive" 12:32
camelia alive
No such method 'cando' for invocant of type 'Callable'
in block <unit> at <tmp> line 1
masak I'd like to better understand this error message.
isBEKaml masak: wordage, heh
Zoffix masak: the MAIN handler tries to figure out whether the defined MAIN can be called with the given arguments, but Block ain't got a .cando method 12:33
masak: and the handling of MAIN commences after the mainline has run, hence why alive is printed
masak isBEKaml: hi! long time 不见了! 12:34
12:34 pmurias left
Zoffix Should be here: github.com/rakudo/rakudo/blob/mast...n.pm6#L268 12:34
masak Zoffix: thanks for the explanation
12:34 pmurias joined, p6bannerbot sets mode: +v pmurias
masak Zoffix: why don't Block instances have a .cando method? 12:34
isBEKaml masak: hi! Been a long time, yes. Unfortunately, I can't read Chinese anymore. How are things?
holyghost needs to transform 8bit strings to 16bit hexes in AI::Agent::NESMusicAgent 12:35
masak isBEKaml: the Chinese just said "no see" :)
isBEKaml: thinks are perpetually interesting, thanks. and you?
things*
12:36 donaldh left
isBEKaml masak: ah, been away for a while. Boredom likes to keep coming back, right? 12:36
masak isBEKaml: hey, don't undersell yourself like that! :P
isBEKaml Haha 12:37
Zoffix masak: no idea. R#2420 12:38
synopsebot R#2420 [open]: github.com/rakudo/rakudo/issues/2420 [RFC] Block can't do .cando
masak Zoffix: thank you kindly.
this happens to be a case where, 'cept for the lack of a .cando attitude on the part of the Block, that &MAIN would actually work since I passed in 0 arguments
I'm pretty sure I know how blocks differ from routines, and I don't see any of those differences being in the way of giving blocks a .cando 12:40
also, the method name "cando" is very silly in a way that feels almost compulsively Perl 6ish at this point, and by the way it looks like two words without a separator, like a hyphen or something 12:41
but I'm not really out to clamor for changing it; making light fun of it is enough for my purposes ;) 12:42
Zoffix That's karmic reparations for making fun of PHP's method naming a decade ago.
.isNaN vs .is-prime too 12:43
12:43 pmurias left
masak .oO( Q: Could Perl 6 naming go any more overboard at this point, silly-wise? A: Mu ) 12:43
12:43 haukex left
moritz cando reminds me of the CANDU nuclear reactor 12:43
masak like CANDU from a baby 12:44
masak .oO( cantspell )
lizmat masak Zoffix now testing a Code.cando method 12:45
Zoffix \o/
12:45 haukex joined
masak yay, lizmat++ for doing stuff instead of joining in the hot air about naming 12:45
12:46 p6bannerbot sets mode: +v haukex
masak .oO( Q: Why did Perl 6 adoption fail? A: No idea, but at my company we had a policy against languages whose top type was the sound of cattle ) 12:46
tadzik . o O ( Q: Any idea to improve the startup time of our app? A: We tried this tiny replacement for Moose, but it failed our policy ) 12:48
12:49 pmurias joined, p6bannerbot sets mode: +v pmurias 12:50 haukex left 12:51 ZofBot joined, ChanServ sets mode: +v ZofBot, p6bannerbot sets mode: +v ZofBot 12:52 Zoffix left 12:55 zakharyas joined 12:56 p6bannerbot sets mode: +v zakharyas
masak tadzik: it's a harsh policy, but nobody ever got fired for calling their top type "Object" 12:57
"it's a Mu" -- "it's a *what*" -- "a Mu, a Most Undefined" -- *slams door* 12:58
"but why didn't you just call it Object" -- "what's so hilarious about that? I don't get it" 12:59
I mean, what's even the point of making a whole language if I can't express my undying love for bovines through the naming of the least derived type 13:00
(heh, it's been years since I last vented about this one) 13:01
chalk it up to an unusual degree of constraint. also, I've been busy
Ven`: by the way, did you manage to catch github.com/masak/007/issues/410 ? 13:04
Ven` I read it, but it's written there you'll publish it as a blogpost :P 13:05
Geth doc: f28da97a01 | (Elizabeth Mattijsen)++ | doc/Type/Parameter.pod6
Document Parameter.coerce_type
synopsebot Link: doc.perl6.org/type/Parameter
13:06 imcsk8 left
Geth doc: 7af9d67f04 | (Elizabeth Mattijsen)++ | doc/Type/Code.pod6
Document Code.cando
13:19
synopsebot Link: doc.perl6.org/type/Code
13:21 zxcvz joined, p6bannerbot sets mode: +v zxcvz 13:25 aindilis joined 13:26 p6bannerbot sets mode: +v aindilis
masak I think I might publish it as a blog post when I have it actually working in 007 13:29
basically, having that working also means having the infix:<ff> macro working
tadzik "nobody ever got fired for calling their top type "Object"", eh?
masak tadzik: it's true
tadzik you may obey, but I Object!
masak ok, I had that one coming 13:30
masak .oO( no need to sound so biernik ) 13:31
tadzik :D
I didn't want to just biernie accept it
pmurias masak: I wouldn't be so sure, I can imagine some poor sod getting into trouble for calling the top of their (user level) class hierarchy Object 13:35
tadzik someone not knowing what we're talking about may think it's about a certain Passive US Senator
pmurias masak: do you still have doubts about the loading time/compile time destinction? 13:40
13:42 zacts left 13:44 isBEKaml left
kurahaupo tadzik: cf Senators, perhaps the topmost (bottommost?) class should be "Sand" and the instances should be "Grains" 13:45
13:52 Ven` left 13:53 Ven` joined 13:54 p6bannerbot sets mode: +v Ven` 13:58 pmurias left 13:59 pmurias joined, p6bannerbot sets mode: +v pmurias 14:02 xinming left 14:03 xinming joined, p6bannerbot sets mode: +v xinming 14:08 renormalist left, renormalist joined, [ptc] left, tinita left, [ptc] joined, tinita joined, p6bannerbot sets mode: +v renormalist 14:09 p6bannerbot sets mode: +v [ptc], p6bannerbot sets mode: +v tinita 14:33 Zoffix joined, p6bannerbot sets mode: +v Zoffix 14:34 pmurias left 14:35 pmurias joined, p6bannerbot sets mode: +v pmurias 14:36 pmurias left 14:40 pmurias joined, p6bannerbot sets mode: +v pmurias 14:50 xinming_ joined 14:51 p6bannerbot sets mode: +v xinming_ 14:54 xinming left 14:55 uzl joined, p6bannerbot sets mode: +v uzl
uzl .tell tyil Great Hackerrank (part 2) write-up! BTW, in What's your name? - "... it's .Str value..." -> "... its .Str value..." 14:57
yoleaux uzl: I'll pass your message to tyil.
uzl .tell tyil in Designer Door Mat - "A thing I learned is that the .. operator that generates a sequence...". I think the ... operator could've done the job but I'm not sure if it'd have some downside. 14:58
yoleaux uzl: I'll pass your message to tyil.
14:59 troys joined, p6bannerbot sets mode: +v troys
jdv79 how many perl offshoots are there now? 15:01
today is the first time i've heard of perl11 15:02
Zoffix there's also cperl
tadzik the hacker news effect, eh
Zoffix and perl7 :)
github.com/perl7/perl7/
15:03 curan left
moritz don't forget perlito, and fanlang 15:05
jdv79 yeah, saw it on hn. cperl, rperl, perl11, etc...
Zoffix Also, Your™ :)
15:05 wbn left
Zoffix The minimal compiler able to pass 6.d roast 15:06
15:07 wbn joined
uzl any link to Your^{TM}? 15:07
15:08 p6bannerbot sets mode: +v wbn, uzl left
Zoffix I think it exists only in head ATM 15:08
Ah, there's a repo with two lines of code: github.com/zoffixznet/your 15:09
It was harder than a couple of lines of code to make and I had more urgent things to take care of first.
15:21 fake_space_whale joined 15:22 p6bannerbot sets mode: +v fake_space_whale
jdv79 how will Your be different from Rakudo? 15:23
15:24 domidumont left
SmokeMachine m: sub postcircumfix:<.times( )>($on, [Int $times, &func]) { my $a = $on; $a = func($a) for ^$times; $a }; say "".times(3, * ~ ++$) # why does this warns? 15:25
camelia WARNINGS for <tmp>:
123
Useless use of "~" in expression "* ~ ++" in sink context (line 1)
15:26
SmokeMachine m: sub postcircumfix:<.times( )>($on, [Int $times, &func]) { }; say "".times(3, * ~ ++$)
camelia WARNINGS for <tmp>:
Nil
Useless use of "~" in expression "* ~ ++" in sink context (line 1)
15:33 jmerelo joined 15:34 p6bannerbot sets mode: +v jmerelo
Zoffix jdv79: rakudo isn't a minimally passing compiler. It's also used by users. So Your™ will basically demonstrate how well the Roast specs a usable language 15:44
15:45 cognominal-p6 left
Zoffix SmokeMachine: looks like a bug to me. R#2422 R#1571 15:47
synopsebot R#2422 [open]: github.com/rakudo/rakudo/issues/2422 [useless useless] Useless useless use in WhateverCode given as arg to postcircumfix.
R#1571 [open]: github.com/rakudo/rakudo/issues/1571 Flaws in implied sinkage / `&unwanted` helper
15:50 domidumont joined, cognominal-p6 joined 15:51 p6bannerbot sets mode: +v domidumont, p6bannerbot sets mode: +v cognominal-p6
SmokeMachine Zoffix: thanks 15:52
15:58 andrzejku left 15:59 cognominal-p6 left, cognominal-p6 joined 16:00 p6bannerbot sets mode: +v cognominal-p6 16:13 robertle left 16:25 kensanata left 16:28 Zoffix left 16:30 molaf left 16:31 dakkar left 16:40 atroxaper joined, p6bannerbot sets mode: +v atroxaper
atroxaper Hello, #perl6 ! 16:41
Please help me to understand why wrapped sub has strange signature? :)
p6: sub wr(:$a) {say $a}; say %(:a(3)) ~~ &wr.signature; &wr.wrap(-> |c {callsame(c)}); say %(:a(3)) ~~ &wr.signature; 16:42
camelia True
False
atroxaper p6: sub wr(:$a) {say $a}; say &wr.signature; &wr.wrap(-> |c {callsame(c)}); say &wr.signature; 16:43
camelia (:$a)
(:$a)
atroxaper As I see, the signature is the same after wrapping the sub. But ACCEPTS works differently. Why?
Moreover, signatures has the same WHICH... 16:47
p6: sub wr(:$a) {say $a}; say &wr.signature.WHICH; &wr.wrap(-> |c {callsame(c)}); say &wr.signature.WHICH;
camelia Signature|58354488
Signature|58354488
Geth marketing: 207506fbfe | (Zoffix Znet)++ | 17 files
Add "Set Ops" 6.d Teaser Flyer / ID#1540393287
16:54
16:56 Zoffix joined, p6bannerbot sets mode: +v Zoffix
Zoffix Perl 6 'Diwali' 6.d major language release will see much more well-defined Set Operators, which in Rakudo compiler are now also a lot faster than they were when 6.c was released: marketing.perl6.org/id/1540393287/pdf_digital 16:58
16:59 jmerelo left 17:02 Ven` left
atroxaper Zoffix: nice! 17:02
Zoffix :)
17:06 Zoffix left 17:17 noganex left 17:18 noganex joined, p6bannerbot sets mode: +v noganex 17:22 sauvin left
jdv79 so "Your" will be a forked rakudo that's pared down? 17:43
17:45 zakharyas left
AlexDaniel jdv79: ? 18:13
18:19 MasterDuke left, domidumont left 18:20 noganex_ joined 18:21 cognominal-p6 left, Zoffix joined, p6bannerbot sets mode: +v Zoffix, p6bannerbot sets mode: +v noganex_
Zoffix jdv79: no, rakudo is not involved in any part of the You™ process. 18:21
*Your™
18:24 noganex left 18:27 pecastro joined
jdv79 good luck 18:28
18:28 p6bannerbot sets mode: +v pecastro
jdv79 sounds insane 18:29
Zoffix Thanks?
I doubt it's gonna be more than 500 lines of code.
jdv79 of p5?
Zoffix nqp 18:30
But doesn't really matter of what.
jdv79 but then what runs the nqp
Zoffix MoarVM
JS
JVM... anything
Oh and Truffle 18:31
jdv79 ah, so it is uding parts of the existing stuff
what is the line length of these 500 lines?
Zoffix I think you're misunderstanding what's being built. 18:32
jdv79 isnt it a "perl6 compiler"? 18:33
Zoffix The premise of Roast is anything that can pass it can claim to be a Perl 6 compiler. That begs the question: how little can that compiler do in order to pass the test. Ignoring the most nonsensical answers (just output a single `1 - ok`), the base requirement is it must be capable of producing valid TAP output and for that TAP output to contain the correct number of tests present in roast. The rest is all 18:34
optional
So—presumably—and all it needs to do is able to figure out sub calls for a select number of subs and print " - ok" for all of them, with a test counter. 18:35
And the further that is from the truth, the stronger is the spec.
18:35 zakharyas joined
lichtkind lizmat, what i have to do so you recognize math::matraix udates in your posts? 18:36
18:36 p6bannerbot sets mode: +v zakharyas
lizmat lichtkind: did you upload your module to CPAN? 18:36
if not, that would help a lot
lichtkind lizmat, not yet
18:36 donaldh joined
lizmat otherwise you will have to ping me "manually" e.g. by adding a "weekly: " notice on the channel 18:37
18:37 p6bannerbot sets mode: +v donaldh 18:41 chrom joined, nightfro` joined 18:42 p6bannerbot sets mode: +v chrom
chrom hello, anyone here succesfully running perl6 through openbsds httpd/slowcgi and has written a short howto on that? :) 18:42
18:42 p6bannerbot sets mode: +v nightfro`
Zoffix \o 18:42
Never heard of openbsds httpd/slowcgi. Sounds like a web thing and "Cro" is what the cool kids use for Web in Perl 6. Maybe its docs mention that slowcgi stuff: cro.services/ 18:43
18:43 cxreg2 joined, hahainte1net joined 18:44 pecastro_ joined, ilbelkyr_ joined, p6bannerbot sets mode: +v ilbelkyr_, broquain1 joined, p6bannerbot sets mode: +v cxreg2, p6bannerbot sets mode: +v hahainte1net, p6bannerbot sets mode: +v pecastro_ 18:45 p6bannerbot sets mode: +v broquain1 18:46 dct joined, p6bannerbot sets mode: +v dct 18:47 molaf joined 18:48 p6bannerbot sets mode: +v molaf, simcop2387_ joined, pecastro left, pmurias left, cjkinni left, ufobat left, Guest13389 left, sunnavy left, b2gills left, nightfrog left, erdic left, simcop2387 left, hahainternet left, cxreg left, lgtaube left, broquaint left, ilbelkyr left, marcusr left, phogg left, nightfro` is now known as nightfrog, pmurias joined, p6bannerbot sets mode: +v pmurias
chrom mhm..thats not the question but its worth a try to get an answer 18:48
18:49 erdic joined, p6bannerbot sets mode: +v erdic, p6bannerbot sets mode: +v simcop2387_, lgtaube joined 18:50 Guest13389 joined
jdv79 Zoffix: oh. thats boring. 18:50
18:50 marcusr joined, marcusr left, marcusr joined, p6bannerbot sets mode: +v marcusr, p6bannerbot sets mode: +v lgtaube, p6bannerbot sets mode: +v Guest13389 18:51 cjkinni joined
AlexDaniel chrom: sure! What's the statement? :) 18:51
18:51 p6bannerbot sets mode: +v marcusr
AlexDaniel ahhh I just noticed your previous messages 18:51
whoops! :)
Zoffix jdv79: it's just a small part of testing our system plays well with multi-compiler paradigm. And it's hardly high on priorities list :)
18:51 p6bannerbot sets mode: +v cjkinni 18:52 b2gills joined, chrom left, p6bannerbot sets mode: +v b2gills 18:53 hahainte1net is now known as hahainternet
jdv79 cool 18:53
18:54 phogg joined, sunnavy joined, ufobat joined, Zoffix left, phogg left 18:55 p6bannerbot sets mode: +v sunnavy, p6bannerbot sets mode: +v ufobat, phogg joined, p6bannerbot sets mode: +v phogg 19:00 chrom joined, p6bannerbot sets mode: +v chrom 19:01 imcsk8 joined
buggable New CPAN upload: Algorithm-SkewHeap-0.0.1.tar.gz by JEFFOBER cpan.metacpan.org/authors/id/J/JE/...0.1.tar.gz 19:02
19:02 fake_space_whale left, p6bannerbot sets mode: +v imcsk8
chrom p6: say 5; 19:02
camelia 5
19:04 silug left 19:07 Kaiepi left 19:08 Kaiepi joined 19:09 p6bannerbot sets mode: +v Kaiepi
lizmat twitter.com/tipjar/status/1055174718326620160 # perhaps someone needs to tell him about Failures in Perl 6 19:12
19:16 silug joined, p6bannerbot sets mode: +v silug
El_Che lizmat: done 19:19
lizmat El_Che++ 19:20
19:23 dct left 19:24 chrom left
jdv79 what's an easy way to say "string exists in a key of hash" 19:29
kinda like $str ~~ any(%h.keys) ?
19:29 AlexDaniel left
jdv79 is htat right? 19:29
but that's whole matches. i want substring. 19:30
19:30 AlexDaniel joined, p6bannerbot sets mode: +v AlexDaniel
jnthn I'd probably so something like ?%h.keys.grep(*.contains($str)) 19:31
*do
19:31 pmurias left
jnthn heh, `so` woulda worked there :) 19:31
19:32 ilbelkyr_ is now known as ilbelkyr
jdv79 jnthn: thanks 19:33
lizmat m: my %h = a => 42; dd "a" (elem) %h; dd "b" (elem) %h 19:34
camelia Bool::True
Bool::False
lizmat jdv79: ^^^
19:37 pmurias joined, p6bannerbot sets mode: +v pmurias
timotimo no, that's whole matches again 19:39
lizmat ah, I misinterpreted "$str ~~ any(%h.keys)" 19:43
jdv79: then probably something like "with %h.keys.first(*.contains($str))" 19:46
so it will short-circuit on the first match
19:48 pmurias left, zxcvz left 19:50 cognominal-p6 joined, p6bannerbot sets mode: +v cognominal-p6 19:53 pmurias joined, p6bannerbot sets mode: +v pmurias
jnthn lizmat: grep in boolean context also will, no? :) 19:53
jdv79 actually its the opposite. its the keys that are the substrings 19:56
lizmat m: say so ^10 .grep: *.say # jnthn, looks like :) 19:57
camelia 0
True
jdv79 "The use of hash variables in regexes is preserved." 20:01
smells like a typo in the docs
jnthn likes pickles :)
Should be reserved :) 20:02
m: my %h; "foo" ~~ /%h/
camelia 5===SORRY!5=== Error while compiling <tmp>
The use of hash variables in regexes is reserved
at <tmp>:1
------> 3my %h; "foo" ~~ /%h7⏏5/
jnthn At least it's correct there
jdv79 pickle reserves?
so the var in the regex has to be explictily be an array (starts with @) to be interpolated as a alternation?
jnthn Yes, but note that you can do @(%h.keys) 20:03
jdv79 ah. i tried @{}. been doing a lot of p5 lately. 20:04
thakns
lizmat twitter.com/petdance/status/1055188193698570240 # lack of taint is now at #1 20:05
moritz would be nice to know how much Andy has used Perl 6 20:06
20:07 zakharyas left
El_Che I was under the impression he wasn't impressed 20:07
(and do people of taint on perl5?)
moritz I don't use taint in p5 myself 20:08
El_Che I did when I was learning it :) 20:09
AlexDaniel hmmm repology.org/metapackage/rakudo/versions 20:13
hah there's a Debian-based distro called Parrot 20:14
and it has rakudo 2018.09 FP 20:15
:P
20:16 kurahaupo left 20:20 dct joined, p6bannerbot sets mode: +v dct 20:23 cognominal-p6 left 20:24 cognominal-p6 joined, p6bannerbot sets mode: +v cognominal-p6 20:37 ryn1x joined 20:38 p6bannerbot sets mode: +v ryn1x 20:47 dct left 20:55 leont joined 20:56 p6bannerbot sets mode: +v leont, ryn1x left 21:00 xinming_ is now known as xinming 21:04 cognominal-p6 left 21:05 cognominal-p6 joined 21:06 p6bannerbot sets mode: +v cognominal-p6 21:15 lichtkind left 21:17 tbrowder___ left 21:18 tbrowder___ joined, p6bannerbot sets mode: +v tbrowder___ 21:29 ryn1x joined 21:30 p6bannerbot sets mode: +v ryn1x, pmurias left 21:32 pmurias joined, p6bannerbot sets mode: +v pmurias 21:36 vike1 joined
Geth doc: 5c5815699f | (Zoffix Znet)++ | doc/Language/regexes.pod6
🥝🥝🥝 Eat the preserves

Also, the restriction isn't restricted to variables, rather just hashes, even if they're given via a $-sigiled var.
21:36
synopsebot Link: doc.perl6.org/language/regexes
21:36 p6bannerbot sets mode: +v vike1 21:37 vike left, jeek left 21:38 simcop2387_ left, simcop2387_ joined, livingstone.freenode.net sets mode: +v simcop2387_, p6bannerbot sets mode: +v simcop2387_ 21:39 simcop2387_ is now known as simcop2387 21:52 HaraldJoerg joined 21:53 p6bannerbot sets mode: +v HaraldJoerg, HaraldJoerg1 left 22:05 Xliff joined 22:06 p6bannerbot sets mode: +v Xliff
Xliff Can someone tell me why I am getting the following error message: "Cannot assign to a readonly variable or value" from this line: github.com/Xliff/p6-GtkPlus/blob/m...or.pl6#L49 22:07
Is that due to a fact that the action class method is using ($/) as a parameter? What's the best way to work around that?
22:24 ryn1x left
TimToady ($/ is copy) is one way 22:24
leont Yeah 22:25
TimToady or pick a different var, and then $var<foo> rather than $<foo> 22:27
22:34 pecastro_ left 22:38 kybr joined, p6bannerbot sets mode: +v kybr 22:46 dct joined, p6bannerbot sets mode: +v dct
Geth doc: chsanch++ created pull request #2417:
Fix 2412
22:47
22:48 [particle]1 joined 22:49 p6bannerbot sets mode: +v [particle]1, [particle] left 22:50 HaraldJoerg left 22:53 rindolf left
timotimo you can also use $_ and then .<foo> instead of $<foo> 23:00
23:10 kurahaupo joined 23:11 p6bannerbot sets mode: +v kurahaupo 23:16 dct left 23:31 Bucciarati left 23:37 Bucciarati joined, p6bannerbot sets mode: +v Bucciarati 23:41 uzl joined, p6bannerbot sets mode: +v uzl 23:52 uzl left 23:54 leont left
Xliff Is this noted in the docs? 23:55
23:57 jbotz left
geekosaur it's just a method call wit implied topic, should be documented with $_ 23:57
and use of "indexing" is implied by postcircumfixes being methods 23:58