»ö« 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
reportable6 left,
pamplemousse joined
00:01
reportable6 joined,
[particle]1 left
00:02
nepugia left
00:03
[particle] joined
00:06
[particle]1 joined
00:08
[particle] left
00:09
aborazmeh joined,
aborazmeh left,
aborazmeh joined
00:10
[particle]1 left
00:11
dolmen left
00:13
[particle] joined
00:16
dolmen joined,
[particle]1 joined
00:18
[particle] left
00:20
dolmen left
00:21
[particle] joined
00:23
[particle]1 left
00:24
[particle]1 joined
00:25
[particle] left
00:27
[particle] joined
00:29
[particle]1 left
00:36
[particle] left
00:37
[particle] joined
00:40
[particle]1 joined
00:41
[particle] left
00:45
[particle]1 left,
pamplemousse left
00:46
[particle] joined
|
|||
cpan-p6 | New module released to CPAN! Console::Blackjack (1.0.1) by 03GDONALD | 01:02 | |
01:19
Ven`` joined
01:24
Ven`` left
01:37
mowotter left
01:39
pamplemousse joined
01:44
noisegul_ joined,
pamplemousse_ joined
01:47
noisegul left
01:49
pamplemousse left
01:50
Xliff_ joined
01:51
Xliff_ left
01:53
Xliff left
02:04
Manifest0 left,
Manifest0 joined
02:14
pamplemousse_ left
02:20
[particle] left,
[particle] joined
02:21
Cabanossi left
02:22
pilne left
02:25
molaf joined
02:27
Cabanoss- joined
02:35
cpup joined
02:37
dustinm` left
02:46
dustinm` joined
02:54
aborazmeh left
02:57
dustinm` left
02:58
dustinm` joined
03:27
jaldhar_ joined
03:52
jaldhar joined,
jaldhar_ left
04:34
aeruder left
04:35
aeruder joined
04:43
curan joined
04:56
jaldhar left,
jaldhar joined
04:58
jaldhar left
04:59
jaldhar joined
05:24
jaldhar left,
jaldhar joined
05:32
sena_kun joined
05:35
sena_kun left
05:43
[particle]1 joined
05:45
[particle] left
05:51
rindolf joined
06:00
reportable6 left
06:02
reportable6 joined,
ChanServ sets mode: +v reportable6
|
|||
Geth | ¦ problem-solving: AlexDaniel assigned to jnthn Issue "Perl" in the name "Perl 6" is confusing and irritating github.com/perl6/problem-solving/issues/81 | 06:03 | |
06:04
[particle] joined
06:05
[particle]1 left
06:10
[particle]1 joined
06:11
[particle] left
06:12
Woodi joined
06:17
lizmat left
|
|||
SmokeMachine | Is there the Riga’s opening TimToady’s vídeo available anywhere I could watch? | 06:28 | |
06:35
[particle] joined,
[particle]1 left
06:37
integfred joined
|
|||
integfred | Hi, does anyone know if automake, openssl, and the linux kernel is able to build with rakudo perl? | 06:38 | |
i'm currently including perl5, but it uses cmd.exe to build using mingw, perhaps perl 6 is different in that it may be able to cross compile somewhat better, assuming it can build the above | 06:41 | ||
06:42
uid9164 joined
06:44
AlexDaniel left
06:45
[Sno] left
|
|||
uid9164 | <code>perl5 -e "my @a = split(',', 'a,b,c,d'); print @a[0];" <output> a | 06:46 | |
<code>perl -e "my @a = split('\s', 'a b c d'); print @a[1];" <output> b | 06:49 | ||
sorry | |||
<code> perl5 -e "my @a = split('\s', 'a b c d'); print @a[1];" <output> b | 06:50 | ||
<code> p6 -e "my @b = split('\s', 'a b c d'); say @b[1];" <output> (Any) | |||
How should I write the split pattern to get @b[1] = 'b' in perl6? | 06:51 | ||
It works in perl6 by typing "my @b = split(' ', 'a b c d'); say @b[1];" | 06:53 | ||
OK, I just felt confusing. | 06:55 | ||
tadzik | SmokeMachine: it was a part of day1's '$' room livestream, but I think that video is down now for some reason | 06:59 | |
I assume it was live while it was... live, and now we'll have to wait for it to be uploaded as a separate video | 07:00 | ||
otoh, room @ seems to be up | |||
Geth | whateverable: 3bba6abff0 | (Aleks-Daniel Jakimenko-Aleksejev)++ | xbin/Tellable.p6 Use :!g as a workaround for sub s issue |
07:01 | |
07:03
AlexDaniel joined,
cpage left
|
|||
tobs | integfred: Perl 6 is not a drop-in replacement for Perl 5. It won't be able to run these build scripts correctly. | 07:07 | |
07:07
ttobioetiker joined
07:08
Black_Ribbon joined
|
|||
ttobioetiker | good morning all. I am preparing a docker image for a large perl6 project ... and I would like for it to be precompiled ... is there a way to just get everything precompiled, short of runnig the actuall application ? | 07:08 | |
07:19
cygx joined
07:20
lgtaube left
|
|||
cygx | Hey, I'm famous: just got quoted in lizmat's keynote for calling Perl6 abysmally slow ;) | 07:21 | |
SmokeMachine | tadzik: thanks! | 07:22 | |
AlexDaniel`: What mean "being involved on the project"? | |||
07:28
cpan-p6 left,
cpan-p6 joined,
cpan-p6 left,
cpan-p6 joined
07:29
cygx left
07:30
cygx joined
|
|||
cygx | ttobioetiker: gist.github.com/cygx/9b2b8add4b8ce...f597b68999 | 07:30 | |
it's not yet particularly user-friendly, but there's some related Google Summer of Code work being done right now | 07:31 | ||
07:35
chloekek joined
07:47
Doc_Holliwood joined,
zakharyas joined
07:50
AlexDaniel left
|
|||
SmokeMachine | m: say "a\n\tb\n\t\tc\n".subst: /\s+/, " " | 08:05 | |
camelia | a b c |
||
SmokeMachine | is that expected? | ||
m: say "a\n\tb\n\t\tc\n".subst: /\s+/, " ", :g # Im too dumb... | 08:08 | ||
camelia | a b c | ||
08:14
irdr left
08:19
dolmen joined
|
|||
kawaii | Is there anyone in the community doing Perl 6 streams at all? I haven't seen anyone doing it but figured it might have some interest. | 08:20 | |
As in like, livestream working on a project or module. | |||
08:21
[Sno] joined
08:30
[Sno] left
|
|||
tadzik | SmokeMachine: quoting the #yapc: That's a Google thing. Long streams take longer to process and move to viewable after stream stops. Give them time to churn the data | 08:32 | |
08:33
[Sno] joined
08:42
AlexDaniel joined
08:45
rindolf left
08:52
[Sno] left
08:55
lizmat joined
08:58
veesh1 joined
08:59
rindolf joined
|
|||
discord6 | <Aearnus> kawaii: that could be a lot of fun | 08:59 | |
<Aearnus> I'd be down | 09:00 | ||
09:02
ravenousmoose left,
rindolf left,
ravenousmoose joined,
rindolf joined
|
|||
kawaii | Aearnus: well, I recently started using my Twitch channel, and had the idea of code-reviewing an old unfinished P6 project, and working on refactoring it on stream, could be interesting :) | 09:03 | |
discord6 | <Aearnus> Yes! It's late here and I might not stick around tonight, but I'll shoot you a follow | 09:04 | |
AlexDaniel | SmokeMachine: well, being on that list means that you'd have to give your opinion on every such issue | 09:05 | |
SmokeMachine: so if you're doing perl6 stuff and want to be involved in that, you qualify :) | |||
kawaii: right, well, I haven't seen anybody doing perl 6 streams yet | 09:06 | ||
eiro | hello people. the download page of rakudo.org is probably outdated and i would like to add the guix package in the 3rd party. any repo for pull requests ? | ||
kawaii | I don't think the rakudo.org site is public. | 09:07 | |
AlexDaniel | kawaii: I personally livestream sport events using pan-tilt-zoom cameras that are operated by perl6, but that's not what you were asking for :) | ||
kawaii | At least, I've never seen a repo for it | ||
eiro | neither did i | ||
AlexDaniel | github.com/perl6/rakudo.org | ||
eiro | AlexDaniel: thanks | ||
i checked the rakudo namespace | 09:08 | ||
09:08
lgtaube joined
|
|||
SmokeMachine | AlexDaniel: is that list alphabetically ordered | 09:08 | |
AlexDaniel | yeah, it's also weird becase moarvm website is in moarvm org github.com/MoarVM/moarvm.org | 09:09 | |
kawaii | AlexDaniel: haha, not quite but I think I'll schedule a date and time for doing a trial stream just to see how it works out, then I can thinly veil my requests for help without annoying the IRC too much ;) | ||
AlexDaniel | but that inconsistency is known and we'll probably move it soon | ||
kawaii: sounds great | |||
SmokeMachine: | |||
SmokeMachine: yeat | |||
yeah* | 09:10 | ||
:) | |||
SmokeMachine | PRed | ||
chloekek | Oh cool, Rakudo in Guix. | 09:12 | |
eiro | chloekek: yeah :) but i spot a bug in it: NativeCall don't find the .so files | ||
very frustrating | |||
AlexDaniel | SmokeMachine: hmm, I can't see it yet? | 09:13 | |
Geth | problem-solving: FCO++ created pull request #82: Add my name to the list |
||
chloekek | eiro: That's a feature if the .so is not an input to the build description of the Perl 6 program in question. | ||
eiro | (there was the same on debian package and it's fixed now) | ||
SmokeMachine | sorry... I should have clicked on that button... :) | 09:14 | |
09:14
Black_Ribbon left
|
|||
eiro | a feature ? how so? my code just doesn't work anymore ... | 09:14 | |
kawaii | all bugs are features | 09:15 | |
eiro | (so i have 2 rakudo on my machine: the debian one (outdated) and the guix one (without NativeCall)) | ||
chloekek | Depending on files being there without them being mentioned in the build script makes the build unreproducible. :) | ||
But if NativeCall doesn't work at all then that's bad. | 09:16 | ||
eiro | kawaii: protecting myself from my own sins... like a big brother | ||
chloekek | I maintain a Nix package for Rakudo and NativeCall works just fine, what does the Guix one look like? | ||
eiro | well ... i just made guix edit rakudo to see it. i'm waiting for the source | 09:17 | |
please let me some seconds | 09:18 | ||
chloekek | eiro.seconds++ | ||
tadzik | :P | ||
09:19
Geth left,
Geth joined
|
|||
Geth | problem-solving: kawaii++ created pull request #83: Adding kawaii to the reviewers list |
09:19 | |
Doc_Holliwood | where do i find the sourcecode of the Promise module= | 09:20 | |
? | |||
eiro | chloekek: i'm talking with the maintainer right now on #guix | ||
tadzik | Doc_Holliwood: github.com/rakudo/rakudo/blob/mast...romise.pm6 I think | ||
chloekek | Doc_Holliwood: github.com/rakudo/rakudo/blob/mast...romise.pm6 | ||
09:22
lizmat left
09:24
efraim joined
|
|||
AlexDaniel | SmokeMachine++ kawaii++ | 09:24 | |
efraim | hello everyone! | 09:25 | |
eiro | chloekek: finally please give me some minutes :) | ||
09:25
pat_js joined
|
|||
eiro | people: efraim is the maintainer of the guix package | 09:26 | |
efraim: thanks for your work and thanks for joining | |||
efraim | no problem, I figured I should take a look at it | ||
SmokeMachine | \o/ | 09:27 | |
efraim | here's the package I created from SDL2::Raw dpaste.com/1Z31KW1 | ||
and this is the build-system it uses git.savannah.gnu.org/cgit/guix.git...system.scm | 09:28 | ||
Geth | problem-solving: 6a52fafa65 | (Fernando Correa de Oliveira)++ (committed using GitHub Web editor) | README.md Add my name to the list |
||
problem-solving: 1b4a81e0c3 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | README.md Merge pull request #82 from FCO/patch-1 Add my name to the list Welcome! |
|||
problem-solving/revert-82-patch-1: 10b7c14384 | (Aleks-Daniel Jakimenko-Aleksejev)++ (committed using GitHub Web editor) | README.md Revert "Add my name to the list" |
09:30 | ||
09:30
Ven`` joined
|
|||
cygx | masak's live... | 09:31 | |
09:31
pilne joined
|
|||
efraim | for completeness our rakudo package is here: git.savannah.gnu.org/cgit/guix.git...6.scm#n166 | 09:32 | |
09:33
Ven`` left
|
|||
efraim | and the bug report with my notes debbugs.gnu.org/cgi/bugreport.cgi?bug=36973 | 09:33 | |
tadzik | "Perl 6 Userspace Explorer" reminds me of the good old Perl 6 mmorpg | 09:35 | |
which of course is masak's: strangelyconsistent.org/blog/perl-6-is-my-mmorpg | |||
Geth | problem-solving: 4c72730d38 | (Aleks-Daniel Jakimenko-Aleksejev)++ | README.md Revert "Merge pull request #82 from FCO/patch-1" This reverts commit 1b4a81e0c31f3bb458347b3feab834bbca8d5ad5, reversing changes made to 164f37f841186a4b678ad2fbc524ea42b4cdae5b. |
09:37 | |
eiro | meeting. have to leave | ||
cya | |||
Geth | problem-solving/merge-mishap: 7af1dfc3f9 | (Fernando Correa de Oliveira)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | README.md Add my name to the list |
09:40 | |
09:40
[Sno] joined
|
|||
Geth | problem-solving: AlexDaniel++ created pull request #84: Add FCO to the list |
09:44 | |
AlexDaniel | SmokeMachine: sorry for the noise :) | ||
09:45
dolmen left
|
|||
Doc_Holliwood | I struggled all morning trying to find out how to add a timeout to my code from yesterday. But now the penny dropped. | 09:52 | |
pastebin.com/B3WpFfrg | |||
I expected Promise.anyof( PromiseIn( $timeout ), $promise ) to return whatever Promise is kept first, which is bollocks of course | 09:56 | ||
09:56
dolmen joined
09:58
Ven`` joined
10:01
Ven`` left
10:12
Ven`` joined,
Ven`` left
10:18
veesh1 left
10:19
pilne left
10:21
AlexDaniel left
10:23
chloekek left,
chloekek joined
10:24
AlexDaniel joined
10:33
[Sno] left
10:34
AlexDaniel is now known as `|AlexDaniel
10:35
`|AlexDaniel is now known as AlexDaniel
10:36
noisegul_ is now known as noisegul
10:38
integfred left
10:44
dolmen left
10:45
Ven`` joined
10:51
Ven`` left
10:54
Ven`` joined
|
|||
ugexe | of course! | 10:58 | |
10:58
AlexDaniel left,
sena_kun joined
11:00
marcel_ joined,
sena_kun left
11:04
Ven`` left
|
|||
SmokeMachine | AlexDaniel`: np! | 11:05 | |
11:16
Ven`` joined
11:22
uid9164 left
|
|||
Kaiepi | how do you handle code examples that need to throw in the docs? | 11:24 | |
11:24
lizmat joined
11:28
zakharyas left
|
|||
Kaiepi | nvm, checked the exceptions page | 11:29 | |
11:29
Ven`` left
11:31
_jrjsmrtn left
11:32
__jrjsmrtn__ joined,
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
Geth | whateverable: dec2b50901 | (Aleks-Daniel Jakimenko-Aleksejev)++ | xt/tellable.t Add normalization tests |
11:34 | |
11:34
AlexDaniel joined
11:41
dolmen joined
11:42
[Sno] joined
11:49
mowcat joined,
dolmen left
11:52
dolmen joined
11:57
dolmen left
12:00
reportable6 left,
reportable6 joined,
ChanServ sets mode: +v reportable6
12:08
lizmat left
12:10
Guest73 joined
12:11
dolmen joined
12:19
dolmen left
|
|||
El_Che | hopefully yesterday video will be up soon. Saw half of jnthn's talk and want to see the rest :) | 12:24 | |
(there was a copyright complain so google took it offline. it will be up after shadowcat van chop the videos) | |||
timotimo | damn | 12:25 | |
tadzik | ugh | ||
timotimo | i hope there will be a big shitstorm against google for this | ||
El_Che | tadzik's one is still hope | 12:26 | |
tadzik | how many people can we rally up to make a peertube for this? | ||
El_Che | also saw half last night | ||
tadzik | because frankly, fuck google | ||
El_Che | some ranting about OO :) | ||
timotimo | i'm just now watching tadzik's talk about moose | ||
www.youtube.com/watch?v=u12t4PiM7pQ&t=65s | |||
El_Che | at 1 am I decided that tadzik would forgive me if I watched the rest today and went to bed :) | ||
(now starting liz talk) | 12:27 | ||
tadzik | El_Che: I will :) | ||
in fact I already have! :P | |||
El_Che | :) | ||
tadzik | feel free to poke me about the details or whatnot | ||
El_Che | it was interesting so far | ||
sound was sometimes less when your shirt touched the mic :) | 12:28 | ||
next time use a mic like madonna or lady gaga :) | |||
12:29
dolmen joined
|
|||
tadzik | hehe | 12:29 | |
I heard some complaints about the audio, yeah | |||
from what I've heard the provided microphones weren't stellar | 12:30 | ||
12:32
dolmen left
12:33
pat_js left
|
|||
timotimo | there's some microphone-rubs-against-fabric noise, or maybe it's radio trouble | 12:34 | |
timotimo briefly rolls a "takes" syntax for perl6 around in his head | |||
hmm, immootability | 12:35 | ||
12:37
[Sno] left
|
|||
chloekek | timotimo: What is takes? | 12:37 | |
timotimo | one point in tadzik's talk is that people tend to abuse "has" to specify arguments to the constructor, even when the things that go there are not actually needed to be stored in the object | 12:38 | |
in a later slide he shows a "needs" syntax which is much like what i would have imagined "takes" to do | 12:39 | ||
but in perl6, that's probably better done with multi submethod BUILD | |||
damn | |||
12:40
pat_js joined
|
|||
timotimo | when tadzik says "i look like this, meet me in the hallway track if you have questions", he's outside the camera's view at that moment | 12:40 | |
so how do i know if tadzik looked any different in that moment | |||
like, does tadzik have a physical manifestation for giving talks and one for haunting the hallways? | |||
there's no way to know | 12:41 | ||
chloekek | I think a solution to this would be to better document new, bless, and BUILD. | 12:42 | |
12:43
[Sno] joined
|
|||
chloekek | I think the current design is ok but hard to grasp. It's not clear how to write custom constructors. | 12:43 | |
timotimo | yeah, the difference between "how easy is it to use" and "how easy it is to understand" is surprisingly vast for this | 12:44 | |
chloekek | Took me a long time to realize BUILD is called on each class in the hierarchy, with the fitting keyword arguments from bless. | 12:45 | |
timotimo | right | 12:49 | |
12:50
sena_kun joined
|
|||
sena_kun | El_Che, o/ | 12:50 | |
12:51
zakharyas joined
|
|||
sena_kun | your wish was granted! (with some grammar mistakes alas) | 12:51 | |
El_Che | sena_kun: how was it? looking forward to see it | ||
(watching liz's talk) | |||
sena_kun | El_Che, dunno, but some people have said to me it was pretty fine for the first time for someone without much experience, I didn't run out of time (wow), and I hope the mistakes were not fatal to express things. :) | 12:53 | |
El_Che | I am exited about your work, so I am sure it will be fine! | 12:54 | |
and not being a native english speaker I get the extra trouble | |||
12:55
marcel_ left
|
|||
sena_kun | El_Che, enjoy. :) | 12:55 | |
timotimo | not everybody can have learned an excellent english like me did | ||
12:56
nepugia joined
|
|||
El_Che | ttps://www.youtube.com/watch?v=5035TY5RSpg <-- loved this scene | 12:56 | |
www.youtube.com/watch?v=5035TY5RSpg <-- loved this scene | |||
timotimo | ahaha | ||
yes, that was fantastic | |||
sena_kun | timotimo, well, by now my written one is mostly fine or fine enough, but when it coems to speaking, it is like once in a year, lol, so my mouth just doesn't do right things. :S | 12:57 | |
timotimo | that actor was actually german, wasn't he? | ||
sena_kun | s/coems/comes/ | ||
timotimo | i used to spend time on voice chat regularly with english speakers, i haven't done that in a long while | 12:58 | |
tadzik | tadzik.net/talks/perlcon-moose/ the last two slides show this | 13:02 | |
13:02
AlexDaniel left
|
|||
tadzik | needs vs has | 13:02 | |
chloekek | timotimo: what was this talk called? About needs. | ||
tadzik | I don't like publishing slides in general; I feel like if they're useful without the talk itself then I've become a writer, not a speaker and I should've just stayed home | ||
chloekek: How Moose Made me a Bad Programmer, room @, day 1, first talk | 13:03 | ||
jast | well, the published slides might help those who attended the talk recall the key points more easily | ||
I do agree with the general sentiment though | |||
chloekek | tadzik: Thanks! | 13:04 | |
tadzik | good point; fair enough | ||
chloekek never used moose, only bless and hashes | |||
tadzik | chloekek: re documenting things better: absolutely. But I'd also like for the better thing to be easier to write in general, even if you know what you want to do :) | 13:05 | |
so that you have to fight the tool if you want to do things wrong – not to do things right :) | |||
13:10
lucasb joined
|
|||
tadzik | timotimo: right; Perl 6 has way more resources to do this right, mostly by having really powerful subroutine signatures | 13:13 | |
perhaps in our case this is indeed a documentation/education problem :) | |||
timotimo | we need a formal docucation | 13:14 | |
cygx | tadzik: not entirely | ||
you still have to jump through hoops to make Point.new(3,4) work | |||
tadzik | cygx: well, you have to do more than with named arguments, yes | 13:15 | |
whether that's jumping through hoops? Not sure | 13:16 | ||
timotimo | but really you want special syntax for that: sub infix:<·>($x, $y) { Point.new(:$x, :$y) } | ||
tadzik | :> | ||
El_Che | lizmat++ | 13:17 | |
tadzik | but from the top of my head, I'm not sure: should I write `method new(Int $x, Int $y) { self.bless(:$x, :$y) }` or `submethod BUILD(Int $!x, Int $!y) { }` | 13:18 | |
I'd rather write the first one because I think I actually got it right | |||
timotimo | correct, BUILD doesn't get positional args | ||
tadzik | wait, at all? | 13:19 | |
timotimo | that's right | ||
13:19
AlexDaniel joined
|
|||
tadzik | then I truly don't get it :P | 13:19 | |
timotimo | positionals don't work well with the "call every BUILD in the object's hierarchy" thing | 13:20 | |
tadzik | ah right | ||
chloekek | Also, kwargs that are not taken by any of the BUILDs are silently ignored, no error. | ||
tadzik | but yeah, default .new accepts slurpies anyway | ||
slurpy nameds I mean | |||
13:20
Ven`` joined
|
|||
timotimo | chloekek: there's actually a module in the ecosystem for that! \o/ | 13:21 | |
tadzik | and when you rewrite it to handle positionals you don't need your own BUILD anymore | ||
or two :P | |||
github.com/tadzik/ClassX-StrictConstructor that's mine | |||
Class Constrictor | |||
chloekek | coolio | 13:22 | |
13:23
AlexDaniel left
|
|||
jnthn | .oO( ClassX::StructConstrictor - disallows declaration of methods, so it's really a struct :) ) |
13:23 | |
tadzik | :D | ||
chloekek | BoaConstrictor | 13:27 | |
tadzik | Imagine a `use Boa` that just puts more constraints on your code | 13:29 | |
timotimo | "use Boa" is the new "use strict" | 13:30 | |
Geth | doc: Kaiepi++ created pull request #2941: Document missing Enumeration and Metamodel::EnumHOW methods |
13:31 | |
chloekek | community service officer is written boa in Dutch | ||
tadzik | apt | ||
chloekek | use boa; for warnings and use police; for strict | 13:32 | |
13:32
FieldsaBB joined
|
|||
timotimo | "use bastards;" | 13:32 | |
"use pigs"? "use hogs"? | |||
m: use hogs :amount(20..50); | 13:33 | ||
camelia | ===SORRY!=== Could not find hogs at line 1 in: inst#/home/camelia/.perl6 inst#/home/camelia/rakudo-m-inst-1/share/perl6/site inst#/home/camelia/rakudo-m-inst-1/share/perl6/vendor inst#/home/camelia/rakudo-m-inst-1/share/perl6… |
||
13:36
mahafyi joined,
Ven`` left
|
|||
timotimo | Raku Roll Musak | 13:39 | |
13:40
cpage joined,
Ven`` joined
13:41
Ven`` left,
harmil joined,
[Sno] left
|
|||
timotimo | timezones be blessed. i thought i wouldn't get to see the game programming thing, but it's actually now | 13:42 | |
Kaiepi | tadzik, ClassX::StrictConstructor doesn't check for attributes in any roles the class mixes in in .new when it probably should | ||
harmil | Okay, I really am going to TRY to stop tinkering with ajs.github.io/tools/your-regex-here/ -- I've already posted it to r/programming and I've cleaned up quite a bit. If anyone finds problems, though, please let me know. | ||
13:43
nepugia is now known as nephele
|
|||
Geth | doc: cc6e4c820f | (Ben Davies)++ | doc/Type/Enumeration.pod6 Document missing Enumeration methods |
13:43 | |
synopsebot | Link: doc.perl6.org/type/Enumeration | ||
doc: b14a563aba | (Ben Davies)++ | doc/Type/Metamodel/EnumHOW.pod6 Document missing Metamodel::EnumHOW methods |
|||
doc: 52e20d5986 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | 2 files Merge pull request #2941 from Kaiepi/enum Document missing Enumeration and Metamodel::EnumHOW methods |
|||
synopsebot | Link: doc.perl6.org/type/Metamodel::EnumHOW | ||
13:43
dolmen joined
|
|||
tadzik | Kaiepi: huh, really? I thought it'd do that | 13:45 | |
can you send me a testcase that fails, if it's not too much of a bother? | |||
Kaiepi | m: role Foo {}; class Bar does Foo {}; say Foo.^parents | ||
camelia | No such method 'parents' for invocant of type 'Perl6::Metamodel::ParametricRoleGroupHOW' in block <unit> at <tmp> line 1 |
||
Kaiepi | er | ||
m: role Foo {}; class Bar does Foo {}; say Bar.^parents | 13:46 | ||
camelia | () | ||
Kaiepi | m: role Foo {}; class Bar does Foo {}; say Bar.^roles | ||
camelia | ((Foo)) | ||
timotimo | tadzik: any interest in perl6 gamedev recently? :) | ||
tadzik | timotimo: I'm now on a talk from someone who writes a clone of Invisible Inc. to Perl | ||
so: yes | |||
I'm excited :) | 13:47 | ||
timotimo | is it josé joaquín atria's talk? | ||
tadzik | yes | ||
timotimo | i've just started watching at 1.25x | ||
13:47
dolmen left
|
|||
cygx | m: role Constructor[*@params] { method CALL-ME(::?CLASS:U: *@args) { self.bless(|%(@params Z=> @args)) } }; class Point does Constructor[<x y>] { has $.x; has $.y }; say Point(1, 2) | 13:47 | |
camelia | Point.new(x => 1, y => 2) | ||
13:48
zingzhang joined
|
|||
tadzik | oooh | 13:48 | |
neato :) | |||
Kaiepi | m: use NativeCall; EXPORT::<long> := long; say EXPORT::<long> | 13:50 | |
camelia | (long) | ||
tadzik | Kaiepi: aha, I see | ||
Kaiepi | can't believe i didn't think of a way to export symbols from other modules like that until now | ||
13:51
Ven`` joined
13:52
AlexDaniel joined
|
|||
tadzik | Kaiepi: hmm github.com/tadzik/ClassX-StrictCon...02-roles.t | 13:55 | |
so this doesn't cover something? | |||
ah, of course not. The attrs from roles are composed into the class so you don't need to check mro or whatever | |||
Geth | ¦ problem-solving: AlexDaniel self-assigned Update Travis configuration so that it does not compile Rakudo every single time. github.com/perl6/problem-solving/issues/85 | 13:56 | |
tadzik | so I think it is all good | ||
Geth | ¦ problem-solving: AlexDaniel assigned to jnthn Issue Core class version syntax github.com/perl6/problem-solving/issues/80 | ||
13:58
pamplemousse joined
|
|||
timotimo | tadzik: bitbucket.org/gtkshooter/p6-gtk-sh...croller.p6 - did you see this? :) | 13:59 | |
13:59
Ven`` left
|
|||
tadzik | I remember the name | 13:59 | |
timotimo | it's a new thing basically | ||
tadzik | oh! | ||
then no, I have not | |||
timotimo | now based on clutter, which has a scene graph | ||
tadzik | Clutter, huh | ||
timotimo | that file only has a starfield that uses clutter's easing features to scroll a background with depth layers | ||
13:59
[Sno] joined
|
|||
tadzik | I'm not sure what Clutter is. Is it The New Gtk? | 14:00 | |
or is the QML of GTK | |||
timotimo | slightly, vaguely similar to "the QML of GTK" | 14:01 | |
but really a bit more like QSceneView i guess? | |||
QGraphicsScene i think | |||
tadzik | nod nod | ||
I'll need to read this :) | 14:02 | ||
The Gaming JJ suggested a new Perl SDL Game Contest | |||
timotimo | oh, cool | ||
tadzik | perhaps there should be a perl 6 representation :) | ||
timotimo | i didn't see that, was it not in the presentation itself? | ||
maybe i was a little too distracted by @stuff | 14:03 | ||
tadzik | there was a suggestion at the end | ||
timotimo | would it be only for SDL1? | ||
Kaiepi | tadzik, you could also write it as a subclass of Metamodel::ClassHOW and throw the code for attribute checking in its compose method before calling self.Metamodel::ClassHOW::compose, then throw it in EXPORTHOW::DECLARE::<strict-class> or something if you want it to have its own package declarator or EXPORTHOW::SUPERCEDE::<class> if you want it to override how regular classes work | 14:04 | |
since it's entirely dealing with the MOP | |||
timotimo | ah, it's the "community participation and events for visibility" | 14:05 | |
oh is that a samcv | 14:06 | ||
14:07
AlexDaniel left
|
|||
timotimo | ah, lightning talks, of course | 14:07 | |
14:08
lizmat joined
14:12
[Sno] left
|
|||
timotimo | ooh jesus the sound | 14:12 | |
that kind of sounds hella expensive | 14:14 | ||
cygx | role Constructor, a bit more polished: gist.github.com/cygx/23638f780f77b...00d8f7d2cd | 14:18 | |
is there a built-in way to dynamically deconstruct a capture based on a signature? | |||
timotimo | the %room stream starts in the middle of masak's talk =o | ||
m: given \(1, 2, 3, :foo, :bar) { when -> $a, $b, $c, :$bar, :$foo { say "$a, $b, $c and $foo and $bar" } } | 14:19 | ||
camelia | 5===SORRY!5=== Expression needs parens to avoid gobbling block at <tmp>:1 ------> 3o { say "$a, $b, $c and $foo and $bar" }7⏏5 } Missing block (apparently claimed by expression) at <tmp>:1 ------> 3o { say "$a, $b, $c and $foo a… |
||
timotimo | m: given \(1, 2, 3, :foo, :bar) { when (-> $a, $b, $c, :$bar, :$foo { say "$a, $b, $c and $foo and $bar" }) } | 14:20 | |
not quite | |||
camelia | 5===SORRY!5=== Expression needs parens to avoid gobbling block at <tmp>:1 ------> 3o { say "$a, $b, $c and $foo and $bar" }7⏏5) } Missing block (apparently claimed by expression) at <tmp>:1 ------> 3 { say "$a, $b, $c and $foo a… |
||
timotimo | m: given \(1, 2, 3, :foo, :bar) { when :($a, $b, $c, :$bar, :$foo) { say "$a, $b, $c and $foo and $bar" } } | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '$a' is not declared at <tmp>:1 ------> 3hen :($a, $b, $c, :$bar, :$foo) { say "7⏏5$a, $b, $c and $foo and $bar" } } |
||
timotimo | m: given \(1, 2, 3, :foo, :bar) { when :($a, $b, $c, :$bar, :$foo) -> $a, $b, $c, :$bar, :$foo { say "$a, $b, $c and $foo and $bar" } } | ||
camelia | Too few positionals passed; expected 3 arguments but got 0 in block at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
14:20
curan left
|
|||
timotimo | *shrug* | 14:20 | |
14:25
FieldsaBB left
|
|||
timotimo | m: given \(1, 2, 3, :foo, :bar) { $_ ~~ -> $a, $b, $c, :$bar, :$foo { say "$a, $b, $c and $foo and $bar" } } | 14:25 | |
camelia | Too few positionals passed; expected 3 arguments but got 1 in block at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
timotimo | the important bit is that the variables have to be declared so they become usable | ||
a signature literal by itself doesn't do that, i believe? | 14:26 | ||
cygx | there's nqp::p6bindcaptosig | ||
I'll see if that leads anywhere | |||
14:27
nephele left
|
|||
vrurg | timotimo: when doesn't pass arguments to a pointy block. | 14:27 | |
cygx | that requires lexicals with appropriate names being present :( | ||
vrurg | m: given \\(1, 2, 3, :foo, :bar) { when :($a, $b, $c, :$bar, :$foo) -> |c { say c.perl } } | ||
camelia | ( no output ) | ||
El_Che | sena_kun: half of the day seems to be missing on the second room | 14:28 | |
% I mean | |||
missing your talk for now :( | |||
sena_kun | El_Che, how so? I watched it just after Masak's talk. :o | 14:29 | |
El_Che, oh goodness... well, something was certainly removed. :( I have a feeling they'll edit and re-upload it then. | 14:31 | ||
El_Che | they certainly will | 14:32 | |
see this twitter chat between mdk and me: twitter.com/nxadm/status/1159193860070944769 | |||
(about the removal of the room 1 videos of the first day) | 14:33 | ||
vrurg | m: given \\(1, 2, 3, :foo, :bar) { when :($a, $b, $c, :$bar, :$foo) { -> |c { say c.perl }(|$_) }} | ||
camelia | ( no output ) | ||
vrurg | m: given \(1, 2, 3, :foo, :bar) { when :($a, $b, $c, :$bar, :$foo) { -> |c { say c.perl }(|$_) }} | ||
camelia | \(1, 2, 3, :bar, :foo) | ||
cygx | what I need is a hash mapping parameter names to argument values so I can pass that to bless | 14:35 | |
the relevant logic can be found in Perl6/Metamodel/BOOTSTRAP.nqp, class Binder | 14:38 | ||
14:55
aborazmeh left,
lizmat left
15:04
dolmen joined
15:07
lizmat joined,
lizmat left
15:08
[Sno] joined
15:22
[Sno] left
|
|||
cpan-p6 | New module released to CPAN! Tomtit (0.1.1) by 03MELEZHIK | 15:25 | |
SmokeMachine | there is no sound on Riga stream... | 15:26 | |
15:53
nepugia joined
15:54
lizmat joined
15:56
ambs joined
15:57
lizmat left
16:01
chloekek left
16:07
pat_js left
|
|||
sena_kun | El_Che, the stream is back, so you can laugh at auto-clapping all you want. ;) | 16:08 | |
sena_kun goes off | |||
16:08
sena_kun left
|
|||
El_Che | sena_kun++ | 16:11 | |
16:25
Itaipu left
16:30
cpan-p6 left
16:31
cpan-p6 joined,
cpan-p6 left,
cpan-p6 joined,
mensvaga joined
16:38
mowcat left
16:40
dolmen left
16:46
nepugia left
|
|||
jdv79 | looks like liz's keynote is not on the live video | 17:16 | |
anyone know if its available anywhere else? slides or other video?... | |||
17:17
Itaipu joined
17:25
wildtrees joined
17:26
wildtrees left,
wildtrees joined
17:27
wildtrees left
17:28
wildtrees joined
17:29
chloekek joined
|
|||
El_Che | it was this morning | 17:29 | |
Google is being an ass it seems | |||
chloekek | Hmm | 17:30 | |
El_Che | jnthn's talk is back, though | ||
17:31
wildtrees left
17:40
|oLa| joined
17:52
pamplemousse left,
zakharyas left
18:00
reportable6 left,
pamplemousse joined
18:04
reportable6 joined,
ChanServ sets mode: +v reportable6
18:09
cygx left
18:10
MasterDuke joined
|
|||
MasterDuke | Elronnd: did you get rakudo-js to build in arch linux? | 18:11 | |
18:12
mowcat joined,
sjm_uk joined
18:15
pamplemousse left
18:16
molaf left
18:23
efraim left
18:26
marcel_ joined
18:31
|oLa| left
18:44
jaldhar left
18:48
sena_kun joined
18:52
Black_Ribbon joined
19:10
pamplemousse joined
19:15
molaf joined,
zakharyas joined
|
|||
Elronnd | MasterDuke: nope | 19:16 | |
I was told to ask pmurias about it, but they never seem to be on | 19:17 | ||
19:30
zingzhang left
19:33
mowcat left
19:47
molaf left
19:48
MARTIMM joined
19:49
marcel_ left
20:03
pilne joined
20:11
leont joined
20:27
zakharyas left
20:31
[Sno] joined
20:35
sjm_uk left
20:37
pamplemousse left
20:42
irced joined
20:45
Guest73 left
20:52
veesh joined
20:53
Kaiepi left
20:54
Kaiepi joined
|
|||
veesh | why is the name change getting pushed through now? | 20:54 | |
moritz | is it? | 20:56 | |
veesh | i asked the wrong question | ||
i meant to say what did Larry say that started this discussion again | 20:57 | ||
20:58
chloekek left
20:59
MARTIMM left
21:00
mensvaga left
21:02
Xliff joined
21:09
netrino joined
21:10
mowcat joined
21:19
Doc_Holliwood left
|
|||
irced | so, Oracle is changing its java license to commercial only? java is one of the few major langauges i know nothing about. does this affect the vm in which perl6 runs at all? | 21:25 | |
21:26
zingzhang joined
|
|||
moritz | irced: there's still an Open Source version of that JVM (OpenJDK), so we're good | 21:28 | |
this mainly affects enterprises that want commercial support | |||
irced | moritz: thank you for your input! | 21:29 | |
21:32
zingzhang left
|
|||
Xliff | vrurg: How is 3075 looking? :) | 21:34 | |
21:36
lizmat joined
|
|||
vrurg | Xliff: sorry, but 3113 is the priority for now. Though one problem is almost fixed. | 21:40 | |
Xliff | OK. | 21:49 | |
Yeek! Good luck! Let me know if you need extra hands or something. | 21:50 | ||
21:58
leont left
|
|||
vrurg | Xliff: thanks! | 22:03 | |
22:03
mowcat left
|
|||
Xliff | How would you do a conditional enum? | 22:13 | |
Say... so that the contents vary due to OS? | |||
sena_kun | Xliff, BEGIN { } or sub EXPORT a-a-a-and EnumHOW module. :) | 22:14 | |
Xliff | LOL! Thought so. | ||
sena_kun | ;) | ||
Xliff | sena_kun++ | ||
I take it you've tried tackling this monster as well? | |||
sena_kun tweaks slides for MOP talk rn | 22:15 | ||
Xliff, erm, moster to be...? | |||
Xliff | Conditional enums... | 22:16 | |
sena_kun | ah, nope | ||
no usecase for me | |||
Xliff | I mean, C just uses an enum definition and constants. | ||
sena_kun | but I think it is _very_ doable in Perl 6 | ||
Xliff | I just canme up with one. | ||
sena_kun | I mean, I don't see how it can _not_ work... | ||
Xliff | Enum with constants that vary due to OS | ||
sena_kun | and if it's not, that'd be a bug | ||
Xliff | Think low level IO. | ||
And flags. | |||
sena_kun | I think the problem will be how can you use them conditionally | 22:17 | |
because afaik they are checked at compile time and must be present | |||
Xliff | I want to define them once... at compile time... based on OS. | ||
So it looks like I'll have to create them in MAIN using the MOP. Yes? | 22:18 | ||
That can get problematic really quickly. | |||
sena_kun | so you can't just write, e.g., "if $*OS is Foo { $a = FooParam } else { $a = BarParam }", the compiler won't listen to your "But this branch will never be executed at the place where it is not defined! Ignore it!" | ||
it will say to you that either FooParam or BarParam is an unknown thing. :( | |||
Xliff | The problem with that is that it's not just $a. | 22:19 | |
sena_kun | I think you can workaround that defining every possible enum value, leaving the meaningless ones without a value, say just -1 or something | ||
Xliff | Enums have ALL of its values exported to MAIN. | ||
The enum names are the same, though. It's their value that changes. | |||
sena_kun | Xliff, why MAIN? `sub EXPORT`(just look it up in the docs) is executed at compile time, MAIN is not | ||
Xliff | I may just use Linux as a default and if OS changes, reassign via MOP. | ||
sena_kun | ah, if they are the same, just values are different, then you have no such issue. :) | 22:20 | |
give me a second... | |||
Xliff | I would rather NOT have to use sub EXPORT for just this one thing. In a file where I am exporting a LOT through the normal method. | ||
If I can use EXPORT to help me special case stuff, then fine. | 22:21 | ||
timotimo | did you see that cute EXPORT<bleh> := Bloop::<bleh> trick? | ||
sena_kun | Xliff, then BEGIN block somewhere in this method if you have enough data there | ||
Xliff | timotimo: No. Where? | ||
timotimo | EXPORT::<bleh> i should have said | ||
154915* Kaiepi ? m: use NativeCall; EXPORT::<long> := long; say EXPORT::<long> | 22:22 | ||
sena_kun | github.com/Altai-man/ASN-META/blob...TA.pm6#L75 <- EnumHOW is very neat, Kaiepi++ | ||
Kaiepi | :) | 22:23 | |
Xliff | Kaiepi: Have you been reading? | ||
sena_kun returns to slides, there are 73 of them for 20 minutes | |||
o/ | |||
Xliff | Thanks, sena_kun++ | 22:24 | |
Kaiepi | wdym | ||
Xliff | Say I have "our enum TheseChangeByOS ( a => 1, b => 2, c => 3, d => 4 ) # Linux" | ||
But the values for a, b, c, and d change for Windows. | 22:25 | ||
How would I do that in Perl6? | |||
No matter what OS, I still want "a ~~ TheseChangeByOS" to be True | |||
Kaiepi | gimme a sec | 22:26 | |
Xliff | 'k thanks! | ||
22:26
lizmat_ joined
|
|||
Kaiepi | something like this Xliff fpaste.scsys.co.uk/585646?tx=on | 22:28 | |
Xliff | Ooooh! | 22:29 | |
Kaiepi++ | |||
Kaiepi | er, add_value should be whatever the name for the meta-method for adding enum values is, it's in the docs for Metamodel::EnumHOW | 22:30 | |
22:30
lizmat left
|
|||
Xliff | add_enum_value. | 22:32 | |
Kaiepi | yeah that | ||
Xliff | :) | ||
22:33
epony left
|
|||
Kaiepi | i updated the docs earlier today to show an example of that and document the methods that were missing from Metamodel::EnumHOW's documentation | 22:34 | |
22:38
zingzhang joined
|
|||
sena_kun | folks, is e.g. "BEGIN block" a "(language) construction" or "(language) construct"? | 22:44 | |
22:45
rindolf left
|
|||
sena_kun goes for "language construct" | 22:47 | ||
22:57
wildtrees joined
23:05
sena_kun left
|
|||
japhb | 'construct' sounds more natural to me, but it's a pretty fine difference between those two words, I think. | 23:23 | |
23:29
Possum joined
23:42
netrino left
23:47
lucasb left
|
|||
Kaiepi | so you may have seen javascript code like this that's the stuff of nightmares: +((!![]+!![]+!!!![]+!!!![])+(!![]+!![]+![]+[])) | 23:49 | |
naturally i ported it | 23:50 | ||
m: say (! ! !() + ! ! !() + ! ! ! ! !() + ! ! ! ! !()) ~ (! ! !() + ! ! !() + ! !() + ()) | |||
camelia | 42 |