»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
comborico1611 Okay. I give up. How do you chain multiple variables with a singular "my"? 00:17
b2gills m: my ($a,$b) = 1,2; say "$a;$b" 00:20
camelia 1;2
comborico1611 m: my ($a, $b, $c) = 20; 00:23
camelia ( no output )
comborico1611 (forgot a comma on the next statement, not this one. That was teh problem.) 00:24
b2gills: Thanks!
lookatme m: my ($a, $b, $c) = (20, 21); .say for $c, $a;
camelia (Any)
20
comborico1611 my ($a, $b, $c) = get.Int; # How do I get an input for each variable? 00:27
MasterDuke `get.Int xx 3` maybe? 00:29
lookatme get.split(/\s/) ?
for one line
Kaiepi did my message send before i dced? 00:40
comborico1611 lookatme: Eeek. That's fancy. 00:41
Kaiepi: Nope. I think you dced first.
Kaiepi aight
i have a class with a bunch of nativecall function pointers. is there a way i could more efficiently write wrapper methods for them? hastebin.com/tunesowaxo.pl
comborico1611 MasterDuke: I'll try that real quick. About to need to leave computer. Thanks! 00:42
Oh yeah! Seems to work. Crazy
Goodbye all.
lookatme Kaiepi, seems like I can't access your code, there was nothing in the page 00:43
Kaiepi there isn't/ 00:44
s/\/?/
gist.github.com/Kaiepi/a6ce74584ef...d5aa3debd6 00:45
lookatme :( I am on the back of Great Firewall 00:48
Kaiepi i've tried just calling the plain casted function but it complains about not knowing what library or symbol to look for
maybe there's a way to use nqp for this 00:49
seems too complex, i think i'll just cache the sub 00:55
lookatme Kaiepi, what's line 3 mean ? 00:59
Kaiepi applies the role with the signature i want to &cb 01:00
so it knows it's a native sub 01:01
lookatme I am not sure that would work 01:03
Kaiepi it works for me
but anyway i found a better solution
there's a function in the library i'm wrapping that indirectly exposes all the embedded function pointers 01:04
Herby__ \o 03:25
Kaiepi o/ 04:09
nearly done writing my Editline package, still need to write tests though 04:10
soon i may be able to get the repl to offer it alongside readline and linenoise 04:13
El_Che Kaiepi: what does it offer compared to those 2? easier installation? 05:06
Kaiepi it's the bsd equivalent of readline 05:07
readline isn't installed by default on them
El_Che nice 05:08
Kaiepi: I see it includes MacOS 05:09
Kaiepi perfect 05:12
Kaiepi i thought it was just freebsd, openbsd, netbsd that mainly used it 05:13
El_Che free audience :) 05:14
it's probably an older version, but it looks like a mature lib
jmerelo releasable6: status 05:23
releasable6 jmerelo, Next release will happen when it's ready. 0 blockers. 262 out of 263 commits logged
jmerelo, Details: gist.github.com/120b750ce1c24feeda...89f353b295
jmerelo Almost there :-)
El_Che "we're not there yet, son, I'll tell you when we arive" :) 05:27
Geth perl6-pod-to-bigpage/master: 10 commits pushed by (JJ Merelo)++, (Juan Julián Merelo Guervós)++
review: github.com/perl6/perl6-pod-to-bigp...311db8f152
05:30
perl6-pod-to-bigpage: 16b37d3453 | (JJ Merelo)++ | META6.json
Changes URLs to final one and bumps up version
05:37
Geth perl6-pod-to-bigpage: c3410958c5 | (JJ Merelo)++ | 2 files
Corrects number of tests
05:40
doc: c50bde871a | (JJ Merelo)++ | 3 files
Making changes to bigpage
05:52
doc: e80cb82542 | (JJ Merelo)++ | 2 files
Switched to html for the single page closes #1845
Geth doc: 8ecc3e5f2f | (JJ Merelo)++ | html/perl6.xhtml
Adds old xhtml with notice
06:14
doc: dbe63415bf | (JJ Merelo)++ | META6.json
Corrects syntax META6.json
masak moritz: suddenly I'm curious how github.com/moritz/json would stack up against seriot.ch/parsing_json.php (which is on HN right now, again) 09:07
moritz masak: I've read it earlier today (or tonight, can't remember), and I'm also curious 09:12
masak :) 09:13
Geth doc/master: 5 commits pushed by (Luca Ferrari)++ 09:55
doc: 7f4f764171 | (Luca Ferrari)++ | doc/Language/variables.pod6
Add a note for $*IN and friends to have a look at other documentation.

See issue #1955
09:59
synopsebot Link: doc.perl6.org/language/variables
Geth doc/master: 10 commits pushed by (Luca Ferrari)++
review: github.com/perl6/doc/compare/7f4f7...3e57a3cd62
11:02
AlexDaniel oh wow, facebook is trying to trick me to enable “Ads Based on Data From Partners” :D 11:24
after a pagefull of explanations on what it is, they have a shiny blue button “Accept and Continue” and a grey option “Manage Data Setting” 11:25
AlexDaniel when you click “Manage Data Setting” they give you an extra screen trying to convince you not to do what you clearly want to do :D 11:26
masak AlexDaniel: I'll try to say this without sounding like a raging conspiracy theorist: Facebook is free for its users, because its users are not its customers. those parters with the ads are its customers. 11:27
as a user, you are mainly juicy, profitable data.
AlexDaniel by the way I wonder if the same option is available to people outside EU 11:28
“Thanks for taking the time to review this setting. We won't show you ads based on data we receive from partners. Keep in mind we'll still use this data to provide, personalize and improve our products, to promote safety, security and integrity, … … … …” 11:29
oh so that makes no difference whatsoever, I don't see ads anyway 11:30
masak I wonder how best one can take a stand and safeguard/encourage the web of blogs and podcasts and feeds rather than silo'd communities
AlexDaniel masak: something built on top of Matrix maybe? 11:31
btw there's a Perl 6 community on Matrix with 8 (!!!) people in it 11:32
masak url? 11:33
stmuk_ use the blockchain! ;)
AlexDaniel masak: riot.im/app/#/group/+perl6:matrix.org 11:34
masak looks vaguely Slack-like...? 11:38
I like initiatives like medium.com/message/tilde-club-i-ha...904f0a2ebf
I wish the web/Internet could be more like that 11:39
small, quirky, grassroots initiatives
AlexDaniel masak: yeah pretty much, and freenode is bridged so you can access #perl6 channel from there without really using an IRC client
AlexDaniel` waves 11:42
masak ;) 11:48
real-time chat is fine, but I'm not looking to replace irssi right now
what I'm talking about is something more lasting, on the scale of blogs 11:49
masak my strangelyconsistent setup -- markdown files and a build system -- is looking really antiquated in the 2010s. I think I would be better off basing it on something like Gatsby 11:50
AlexDaniel well matrix communities already give you a way to create html pages (dunno how limited though), all you need is the ability to add posts and that would be it… 11:53
masak I already have ways to create html pages, though ;)
doing it within someone else's silo (no matter how benign) is what I'm trying to avoid 11:54
timotimo p6c.org is our own very trendy tilde.club rip-off, except nobody's using it like that yet i don't think
AlexDaniel sure you can always start your own matrix homeserver
masak timotimo: that is a really good point, actually 11:55
timotimo: maybe all I need is a public_html/ directory on there?
AlexDaniel 11:56
timotimo that is correct
i have one, it works without hassle
it does not have good content yet
oh
i'm apparently wrong about that
masak timotimo: I tried p6c.org/~timo and a few other variations -- didn't work ;? 11:57
:/
timotimo let me briefly investigate
i've got sudo privs on that server, after all
masak how handy ;)
timotimo oh, it's on hack, isn't it 11:58
masak hack.p6c.org/~timo/
whee!
timotimo it doesn't do https ;( 11:59
moritz timotimo: getting let's encrypt to run on that box shouldn't be too hard 12:02
so far, nobody has bothered 12:03
timotimo would it be a bad idea to offer public_html for the p6c.org domain itself? or should it remain on hack.p6c.org? 12:04
Zoffix With possible approval of CaR Grant on the horizon. Reminder to look over the Work Proposals for Constants and Rationals: github.com/rakudo/rakudo/blob/mast...8-02-10.md and github.com/rakudo/rakudo/blob/mast...tionals.md Speak now or forever hold your silence :) 12:04
timotimo oh, is the comment period still open? i haven't written! :o 12:04
Zoffix (trying to avoid people objecting to the changes AFTER they're made :)) 12:05
timotimo: no idea if it's still open, but there are 4 comments: news.perlfoundation.org/2018/04/gra...fixin.html
But comments on the actual work are yeah, still open.
moritz timotimo: currently p6c.org resolves to the same IP as www.perl6.org
timotimo ah, mhm 12:06
moritz timotimo: I don't know what I'd break if I changed that
timotimo it'd probably be fine if we use VirtualHost config blocks to only serve public_html folders of our users if the host is p6c.org, not perl6.org? 12:08
moritz timotimo: those are different VMs 12:09
the home dirs of hack.p6c.org are not available on www.p6c.org
timotimo i know. we'd have to offer access to www.p6c.org
moritz no
Juerd breinbaas: Are you Tim Kuik? :P
moritz we keep that separate for a reason
timotimo or reverse proxy ~foo to p6c.org 12:10
moritz so that perl6.org has a better uptime than hack :-)
perlpunks.de/paste/show/5addccda.3a86.59 fwiw this is the p6c.org zone
Zoffix timotimo: that's how alerts.perl6.org does it. It's hosted on hack, but reverse proxied to p6c.org
moritz timotimo: if it's worth the effort to you, by all means, configure it this way
masak moritz++ # zoning
AlexDaniel stmuk_: by the way, is there a combined rss feed from pl6anet? 12:11
timotimo Zoffix: for web apps, that is totally normal and boring, i'm not sure how often people do exactly what i was proposing, though 12:12
Zoffix AlexDaniel: pl6anet.org/atom.xml
AlexDaniel ah there it is, thanks
jmerelo docs.perl6.org/ has not been regenerated for 18 hours. Is there any problem? 12:49
Zoffix jmerelo: you can look in the build logs: docs.perl6.org/build-log/ 12:52
Looks like pig-page fails build
jmerelo Zoffix: that kinda makes sense, since it's the single thing that's been changed. 12:53
jmerelo The problem is there's a new version of Pod::To::BigPage. It's specified in META6.json. Is there some way to upgrade it? 12:53
Zoffix Yeah, I can update 12:55
jmerelo Zoffix: thanks!
Zoffix It doesn't look into meta file. It uses a system-wide install of Perl 6
Geth doc: 6a1b47871b | (Zoffix Znet)++ (committed using GitHub Web editor) | util/trigger-rebuild.txt
trigger-rebuild
12:58
Geth doc: 5620d9b942 | (JJ Merelo)++ | doc/Language/variables.pod6
Adds additional link to examples of $*IN

And fixes some typos and other errors. I think this closes #1955
  >Most of the work has been done by @fluca1978, anyway
Unless you decide otherwise.
13:01
synopsebot Link: doc.perl6.org/language/variables
doc: cb63b8b8ae | (JJ Merelo)++ | util/trigger-rebuild.txt
Merge branch 'master' of github.com:perl6/doc
jmerelo Zoffix: OK; I see now how it can be done. Thanks anyway.
Zoffix "Merge branch 'master' of github.com:perl6/doc" <--- FWIW those can be avoided if you `git pull --rebase` to pull in the latest commits. 13:02
jmerelo Zoffix: will do. Yep, they are annoying.
comborico1611 Does (6) in error message mean Line 6? Cannot modify an immutable Int (6) in block <unit> at degenerate_triangle.p6 line 6 13:58
yoleaux 01:01Z <Zoffix> comborico1611: You can also write is as `my ($a, $b, $c) = get.words`
moritz comborico1611: no, it's the value
comborico1611 Thanks! 13:59
moritz m: 6 = 42
camelia Cannot modify an immutable Int (6)
in block <unit> at <tmp> line 1
comborico1611 Oh
I see.
moritz it also says "line 6" in your error message, though :-) 14:00
comborico1611 Yes, I didn't know if it was a repetitive thing.
There were three values, 4 2 2. I'm not sure where the 6 is coming from. 14:01
Program: hastebin.com/idarelideh.pl
moritz ($a + $b) = $c 14:02
you are trying to assign to the return value
comborico1611 4 + 2= 6.. I see.. I'm still waking up. 14:03
I see.
Thanks!
I had already put a bunch of "is copy"s everywhere. That was my next question. 14:04
Zoffix comborico1611: you can write my ($a, $b, $c) = $*IN.get xx 3; as `my ($a, $b, $c) = $*IN.lines: 3` 14:04
comborico1611: and you need to use `==` to do the numeric equality test; right now you're assigning 14:05
comborico1611 Heh. Thanks. I must be still sleeping. 14:05
What is this : 3 business? 14:06
Zoffix comborico1611: same as $*IN.lines(3)
comborico1611 Link in Docs?
Zoffix Calling lines with argument 3, which is the limit of lines to read
comborico1611 Thanks! I'll put these into my notes in my Perl6 book! 14:07
But I'm left wondering why so many ways to say the same thing.
Zoffix comborico1611: "y so much ways to code the same, dawg?" 14:08
moritz just like human language
Zoffix comborico1611: it's the same way in human languages. Perl mirrors that in some way (the creator of the language is a linguist). And the language's motto is "There Is More Than One Way To Do It"
moritz even python, which has the "there should be one way to do things" mantra, has like 4 ways to format strings 14:09
moritz ... and counting 14:09
timotimo moritz: "and that one way should be obvious" ;) ;) ;) 14:09
comborico1611 Will one syntax be optimal in one condition compared to another, and that is why both exist? Or is it simply a matter of personal perference?
timotimo actually the mantra is
There should be one-- and preferably only one --obvious way to do it.
Zoffix comborico1611: though the .get xx 3 vs .lines: 3 isn't exactly-exactly the same. I'd expect the .lines version to be slightly faster, since it doesn't need to look up the dynvar three times, for one 14:10
comborico1611: some things are a matter of preference.
you could've written `lines $*IN, 3`
or `lines $*IN: 3` 14:11
moritz timotimo: I know, just too lazy to type it all out :-)
rindolf Zoffix: hi, thanks again 14:14
Zoffix m: my @sides := <1 2 3>; say "Degenerate" if @sides.combinations(2).grep: { ([+] $_)/2 == @sides.any }
camelia Degenerate
Zoffix m: my @sides := <1 2 4>; say "Degenerate" if @sides.combinations(2).grep: { ([+] $_)/2 == @sides.any }
camelia ( no output )
rindolf Zoffix: the final co
Zoffix: the final code worked nicely
Zoffix m: my @sides := <3 2 5>; say "Degenerate" if @sides.combinations(2).grep: { ([+] $_)/2 == @sides.any }
camelia ( no output )
Zoffix m: my @sides := <3 2 5>; say "Degenerate" if @sides.combinations(2).grep: { @sides.any == [+] $_ } 14:16
camelia Degenerate
Zoffix :)
m: say "Degenerate triangle" if $*IN.lines(3).combinations(2).grep: { @sides.any == [+] $_ }
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '@sides' is not declared
at <tmp>:1
------> 3f $*IN.lines(3).combinations(2).grep: { 7⏏5@sides.any == [+] $_ }
Zoffix ah, right. oh well
El_Che releasable6: status 14:17
releasable6 El_Che, Next release will happen when it's ready. 1 blocker. 262 out of 263 commits logged
El_Che, Details: gist.github.com/22b83d64a389a04d6d...66893b5bf8
comborico1611 I see. I understand that multiple ways of doing the same thign is simply a matter of understanding the language, and not a bad thing -- to a point.
Zoffix .combinations(2).grep({ .any == [+] $^a }) and say "Degenerate" with $*IN.lines(3).cache 14:19
There. 1 statement :)
.sum/2 == .any and say "Degenerate" with $*IN.lines(3).cache even shorter 14:20
avrono Anyone know anything about IO::Socket::SSL ? 14:24
Zoffix Like what? 14:25
avrono Zoffix : using HTTP::UserAgent .... keep getting error ... Please install IO::Socket::SSL in order to fetch https sites in method get-connection at /opt/rakudo-star-2018.01/share/perl6/site/sources/FD28A8E22DFE16B70B757D9981C7B6C25543060C (HTTP::UserAgent) line 350 in method get-connection at /opt/rakudo-star-2018.01/share/perl6/site/sources/FD28A8E22DFE16B70B757D9981C7B6C25543060C (HTTP::UserAgent) line 343 in method request at / 14:26
have installed IO::Socket::SSL
El_Che avrono: windows?
avrono it's in local dir called auto ....
Ubuntu 17.10
Zoffix avrono: did you add that path? To auto? 14:27
avrono doh
Zoffix Also, why local dir and not just `zef install IO::Socket::SSL` ?
El_Che avrono: just tested the distro on Ubuntu 17.10 and it works
(using rakudo-pkg, but I think rakudo star will do the same) 14:28
avrono Well when I did zef install ... it keeps throwing an error about unable to locate target
there was an error about ./auto ... so I created an auto dir 14:29
and then it worked
Zoffix avrono: are you still using rakudo you built into ~/rakudo? How come you got /opt/rakudo-star-2018.01/* in your module path?
avrono: do you have libssl-dev installed?
avrono libssl-dev yes 14:30
but /opt/rakudo ... I need to look into
Zoffix What's the full error about unable to locate target?
avrono one sec
CompUnit::Repository install target is not writeable/installable: /home/avrono/workspace/deedee1/auto Need a valid installation target to continue 14:31
Zoffix :S 14:32
weird. never seen that before.
avrono but you are right about the /opt/rakudo ... I wonder if I should just nuke all and start again ..,.
Zoffix But I suspect it might be risidual issues from when you tried to install star as root. I'd try to get rid of all the /opt/rakudo-star-2018.01 stuff
Here's all I got in my module path and I've installed same way as you did (the install into ~/rakudo stuff): gist.github.com/zoffixznet/b33176c...4cfe91ff76 14:33
Yeah, you could nuke. The instructions I gave you the other day were from here, basically: github.com/zoffixznet/r 14:34
avrono Zoffix : cheers I think I need to nuke and reinstall
Zoffix Oh we even have them all pretty on the rakudo.org site too now: rakudo.org/files/rakudo/source
avrono Zoffix : cheers again ... I'm good now ... 14:41
buggable New CPAN upload: List-UtilsBy-0.0.1.tar.gz by ELIZABETH cpan.metacpan.org/authors/id/E/EL/...0.1.tar.gz 15:19
Geth doc: JJ self-assigned infix:<does> and infix:<but> not indexed github.com/perl6/doc/issues/1953
JJ self-assigned why is html/perl6.xhtml checked in? github.com/perl6/doc/issues/1956

Adds indexes for but and does refs #1953 (also #1303)
15:40
synopsebot Link: doc.perl6.org/language/objects
Geth doc: JJ self-assigned `but` precedence trap is no longer a trap github.com/perl6/doc/issues/1950
f14b8a223e | (JJ Merelo)++ | 2 files

Since a warning is issued right now, it's not a trap; but some clarification is needed about precedence of the `but` operator. This closes #1950 and closes #1953, which was changed before.
15:54
buggable New CPAN upload: List-SomeUtils-0.0.3.tar.gz by ELIZABETH modules.perl6.org/dist/List::SomeUt...:ELIZABETH 15:59
jmerelo p6: role R1 { method m {} }; role R2 { method n {} }; my $just-one-role = 1 but R1,R2; say $just-one-role.^name; my $all-roles = 1 but (R1,R2); say $all-roles.^name; 16:00
camelia WARNINGS for <tmp>:
Int+{R1}
Int+{R1,R2}
Useless use of constant value R2 in sink context (line 1)
buggable New CPAN upload: List-AllUtils-0.0.1.tar.gz by ELIZABETH cpan.metacpan.org/authors/id/E/EL/...0.1.tar.gz 16:09
jkramer How can I get around "Illegally post-declared type" errors? I have to classes that need to know about each other 16:21
Zoffix m: class A is B {}; class B {}
camelia 5===SORRY!5=== Error while compiling <tmp>
'A' cannot inherit from 'B' because it is unknown.
at <tmp>:1
Zoffix m: class A { has B $.x}; class B {}
camelia 5===SORRY!5===
Type 'B' is not declared
at <tmp>:1
------> 3class A { has B7⏏5 $.x}; class B {}
Malformed has
at <tmp>:1
------> 3class A { has7⏏5 B $.x}; class B {}
Zoffix m: class { … }; class A { has B $.x}; class B {}
camelia 5===SORRY!5===
Type 'B' is not declared
at <tmp>:1
------> 3class { … }; class A { has B7⏏5 $.x}; class B {}
Malformed has
at <tmp>:1
------> 3class { … }; class A { has7⏏5 B $.x}; class B {}
Geth doc: d19fa10305 | (JJ Merelo)++ | 2 files
Removes old single page perl6.xhtml, adds redirect, closes #1956
Zoffix m: class B { … }; class A { has B $.x}; class B {}
camelia ( no output )
Zoffix jkramer: I forget what exactly causes that error. What's your code look like? 16:22
m: A.new; class A {}
camelia 5===SORRY!5=== Error while compiling <tmp>
Illegally post-declared type:
A used at line 1
Zoffix ah
jkramer Zoffix: I got two classes, but of which have a method that converts to an object of the other class
Zoffix m: class A { … }; A.new; class A {}
camelia ( no output )
Zoffix jkramer: ^ use a stub 16:23
jkramer Cool, thanks :)
mcmillhj_ So I notice that 1 <=> 2 returns Less (as opposed to -1) but it numifies to -1. Is the Order Enum that <=> returns just for readability ? 16:30
Zoffix Well, you could typecheck against that enum 16:31
m: multi z(Less) { say "Order" }; multi z(-1) { say "just an Int" }; z 1 <=> 2; z -1
camelia Order
just an Int
mcmillhj_ Interesting. Is there a common use-case for passing an Order to a function? 16:33
I could see there being one if something like .sort expected an Ordering, but that doesn't seem to be the case here. I'm new to Perl6 so just trying to wrap my head around some things 16:36
jmerelo Well, sorting functions should return Order, for instance. 16:37
El_Che jmerelo: testing the repo cretion for regular rakudo for debian and ubuntu
jmerelo You might thing about some map functions doing different things on Pair depending on the Order they receive.
El_Che++ 16:38
Juerd mcmillhj_: In general, magic values are detrimental to readability and understandability of code because they require you to look up, externally, why something is -1 and what that means. An enum is an elegant solution.
mcmillhj_: Yesterday I used github.com/google/diff-match-patch (in Python, because unfortunately there is no Perl version available) and it uses -1, 0, and 1, and I looked them up just to be sure I wouldn't encounter -2 or +42. 16:39
jmerelo El_Che: we might have to use that instead of the current binary option, which is failing too often.
Juerd mcmillhj_: So I'm quite fond of those little enums that make my life a tiny bit easier. 16:40
jmerelo releasable6: status
mcmillhj_ Juerd: sure, I wasn't arguing against using an enumeration. I was asking what other purpose Order serves. It sounds like you can pass an Order to something to alter it's behavior. Which is kind of what I expected.
releasable6 jmerelo, Next release will happen when it's ready. 1 blocker. 263 out of 263 commits logged
jmerelo, Details: gist.github.com/1c625e7f88e02b949e...176bf27c63
jmerelo The blocker just says "JVM build is busted
Juerd mcmillhj_: I don't see a use case for passing an Order yet, because it is the outcome of something, not an instruction. 16:41
AlexDaniel jmerelo: there's a link to the ticket with a bit more info 16:43
jmerelo: we're working on it
mcmillhj_ right, I assume jmerelo meant something like <1 2 3 4 5>.sort versus <1 2 3 4 5>.sort({$^b <=> $^a})
jmerelo AlexDaniel: Yep, I've seen that. Best of luck. Wish I could help. I was just impressed by the message, so laconic, but so true.
mcmillhj_: for instance, yes. 16:46
Kaiepi the only thing i really miss from javascript is being able to mutate globals for horrible things 17:13
m: All does role is repr('Uninstantiable') { }
camelia 5===SORRY!5=== Error while compiling <tmp>
Unable to parse role definition
at <tmp>:1
------> 3All does role is7⏏5 repr('Uninstantiable') { }
expecting any of:
generic role
Kaiepi m: All does role :: is repr('Uninstantiable') { }
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared name:
All used at line 1
Undeclared routine:
does used at line 1
Kaiepi shit i forget how i did it 17:14
m: Any bt role :: is repr('Uninstantiable') { } 17:15
camelia 5===SORRY!5=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> 3Any7⏏5 bt role :: is repr('Uninstantiable') {
expecting any of:
infix
infix stopper
statement end
statemen…
Kaiepi m: Any but role :: is repr('Uninstantiable') { }
camelia ( no output )
Kaiepi there we go
idk why i thought Any was called All for a minute
Zoffix m: Any.^lookup("new").wrap: -> | { say "Thou shall not instantiate" }; class Foo {}.new 17:17
camelia Thou shall not instantiate
Kaiepi perfect
Zoffix rakudo.party/post/Anguish--Invisib...Data-Theft 17:18
rakudo.party/post/Exploiting-Perl-...ency-Chain
perl6advent.wordpress.com/2017/12/...christmas/
Kaiepi i've read the last one but i'll check out the first two 17:24
Kaiepi m: use MONKEY-TYPING; augment class Any { multi method new() is default { X::AdHoc(:payload(':)')).throw } }; Any.new 17:25
camelia Cannot coerce to X::AdHoc with named arguments
in method new at <tmp> line 1
in block <unit> at <tmp> line 1
Zoffix Last one sorta covers the first two already
Kaiepi m: use MONKEY-TYPING; augment class Any { multi method new(|) is default { X::AdHoc(:payload(':)')).throw } }; Any.new
camelia Cannot coerce to X::AdHoc with named arguments
in method new at <tmp> line 1
in block <unit> at <tmp> line 1
Kaiepi hm
Zoffix You're missing .new after X::AdHoc 17:26
Kaiepi wait maybe it only works with classes that already use multi for new
ohhh
m: use MONKEY-TYPING; augment class Any { multi method new(|) is default { X::AdHoc(:payload(':)')).new.throw } }; Any.new
camelia Cannot coerce to X::AdHoc with named arguments
in method new at <tmp> line 1
in block <unit> at <tmp> line 1
Kaiepi m: use MONKEY-TYPING; augment class Str { multi method new(|) is default { X::AdHoc(:payload(':)')).new.throw } }; Any.new
camelia ( no output )
Zoffix But even if you augment it, you'll need to recompose all the descendants
I said after X::AdHoc, not after the parens :) 17:27
Foo() is the coercer syntax.
Kaiepi right
i didn't get much sleep lol
m: use MONKEY-TYPING; augment class Str { multi method new(|) is default { X::AdHoc.new(:payload(':)')).throw } }; Str.new 17:28
camelia :)
in method new at <tmp> line 1
in block <unit> at <tmp> line 1
Kaiepi there we go
Zoffix m: use MONKEY-TYPING; augment class Str { multi method new(|) is default { X::AdHoc.new(:payload(':)')).throw } }; say IntStr.new: 42, "x" 17:29
camelia x
Zoffix m: use MONKEY-TYPING; augment class Str { multi method new(|) is default { X::AdHoc.new(:payload(':)')).throw } }; IntStr.^compose; say IntStr.new: 42, "x"
camelia x
Zoffix right, it's got its own new
Kaiepi BUILD/BUILDALL/TWEAK are involved in inheritance right? 17:33
masak Kaiepi: I know BUILD isn't; it's a submethod 17:35
Kaiepi oh
masak ("submethod"; gets a `self`, like methods, but doesn't inherit, like subs) 17:36
not sure offhand what submethods give you over private methods ;)
but the intent is that submethods be "infrastructural" -- so BUILD is a perfect example
Kaiepi ahhhh i figured out something :) 17:43
Kaiepi m: Mu.^lookup('new').wrap: my method (|) { die ':)' }; Mu.new 17:43
camelia MoarVM panic: Memory allocation failed; could not allocate 95232 bytes 17:44
Kaiepi wait what
it works in the repl
m: Mu.^lookup('new').wrap: my method (|) { die ':)' }; Str.new
camelia MoarVM panic: Memory allocation failed; could not allocate 131072 bytes
Kaiepi oh wait
m: Mu.^lookup('BUILDALL').wrap: my method (|) { die ':)' }; Str.new 17:45
camelia ( no output )
Kaiepi m: Mu.^lookup('BUILDALL').wrap: my method (|) { die ':)' }; Mu.new
camelia :)
in method <anon> at <tmp> line 1
in block <unit> at <tmp> line 1
Kaiepi m: Mu.^lookup('BUILDALL').wrap: my method (|) { die ':)' }; Any.new
camelia :)
in method <anon> at <tmp> line 1
in block <unit> at <tmp> line 1
Kaiepi i wonder why it wasn't working for Str though 17:46
buggable New CPAN upload: List-AllUtils-0.0.2.tar.gz by ELIZABETH modules.perl6.org/dist/List::AllUti...:ELIZABETH 18:59
Ulti hah :D 19:05
oh I was a day behind in the logs
is Zoffix attempting to port Tau Station? 19:06
or just the levels :D
jdoege Hi all. Question: is it expected that ref install inline::perl5 will spend a lot of time on the Testing phase. Like, hours?
jdoege Not ref, zef 19:06
Ulti hours doing something or hours and you've seen no output?
but no, hours for almost anything is usually a bad sign 19:07
if you literally mean hours
jdoege hours seeing no output.
It is chewing up 100% of one CPU.
El_Che got rakudo debian+ubuntu repos up and running. Should be there together with the new rakudo release 19:23
raynold ahh it's a wonderful day 19:29
Zoffix jdoege: no, it installs fairly fast. You can run it with `zef --debug install Inline::Perl5` and zef will give you more info on what it's doing 19:47
Zoffix jdoege: just installed it on my box 19:49
took ~1 minute
jdoege: what version of perl6 you got? perl6 -v
jdoege Hi! 2018.01 19:55
Thanks for the response.
It seems to get stuck (maybe) on modify_array.t 19:56
re-running with --debug... 19:57
OK, running with --debug it stops right after "t/invoke_p6_method_from_p5.t .. ok" 19:59
El_Che f* hell, got rpms repos working too 20:27
AlexDaniel \o/ 20:33
Kaiepi sweet 20:34
El_Che ok, code is sleeping in branch until 2018.04 is out. It will will generate deb repos for Debian and Ubuntu and rpm repos for Centos, Fedora and openSUSE. Alas, no repos for alpine (but that's more of a docker distro) 21:05
jdoege Zoffix: I removed modify_array.t from the test suite and install completes normally. With it included the install process hangs on modify_array.t. 21:11
robertle El_Che: if you want, you can help with the packaging effort in debian itself, rather than create out-of-distro package repos...
the first/current issue is to get it to build reliably on all architectures, after that the main question will be how to suport precompilation during package building or installation and the management of dependencies between the precomp files and moar/rakudo 21:13
El_Che robertle: the scope is different and meant to be complementary. Debian == well integrated OS packages, rakudo-pkg == self contained in /opt/rakudo-pkg, released monthly as Rakudo
robertle: github.com/nxadm/rakudo-pkg/tree/p...ng-systems
robertle right, but how does that work with perl6 libraries? which one would a library package pick? 21:14
I guess you are also hitting similar problems, so I am quite interested!
El_Che I don't think a lib picks a runtime, but the runtime picks a lib
root rakudo-pkg zef installs its libs in /opt/rakudo-pkg, so no problem there 21:15
robertle so your zef would install libs into /opt/ as well?
El_Che user rakudo-pkg zef installs to ~/.perl6
robertle cool
El_Che so if the users uses both runtimes, he'll end up rerunning precomp 21:16
no installation in /usr or /usr/local as debian would
that's for the OS
robertle do you do anything special about precompilation? what if the rakudo package gets updated? Ahow do you re-run precomp?
El_Che perl6 will do the precomp if something changes 21:17
robertle anyway, I should be in bed. but I'll check it out tomorrow
El_Che :)
robertle right, but it might do it as a different user. so suddenly your precomp ends in ~/.perl6 ...
bed now, really! 21:18
Kaiepi do files in resources/ get symlinked to wherever CompUnit installs them to?
for local installs
i'm trying to figure out a way to not have to run zef install . --force-install or delete precomp each time i edit a config file 21:23
Kaiepi maybe this is more suited for stack overflow 21:26
lizmat and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2018/04/23/...u-station/
jdoege Zoffix: in particular, after doing some printf style debugging, modify_array.t hangs at the statement: $array.splice: 0, 0, [1, 2, 3, 4]; 21:27
Zoffix jdoege: you should file a bug report, so nine could take a look at it: github.com/niner/Inline-Perl5/issues 21:41
El_Che lizmat++ 21:42
jdoege Zoffix: will do. 21:44
Zoffix Thanks. 21:45
Zoffix lizmat++ great weekly. Huge too! 21:54
El_Che ovid shall be pleased :) 21:59
lizmat he deserves it!
El_Che true
timotimo i see there's bar graphs, but is there also foo graphs … 22:01
comborico1611 Newb question: hastebin.com/winofosuke.pl 22:16
timotimo comborico1611: you're saying the return value of the fibonacci sub, but you're not returning something interesting, so just remove the say in the upper part of the code 22:18
comborico1611 timotimo: But I want to print up the numbers as they are calculated.
timotimo that's what the say in your for loop does 22:19
comborico1611 But it misses the first two numbers (1, 1)
Ohh! 22:20
The very first say
timotimo yes, the one above the function definitions section
comborico1611 Yay!
Thanks! I was thinking in Lisp code again.
timotimo i'm sure you already know about the sequence operator, though? 22:21
comborico1611 And that first say must have been a left-over from the previous version of the program.
timotimo that's likely
comborico1611 I may, but I don't recognize the name.
timotimo it's the ... operator
either ... or …
comborico1611 Mmm. Nope, haven't gotten to it yet. Just the range operator ..
timotimo OK
the functionality of the sequence operator makes fibonacci and friends trivial to write down 22:22
rindolf timotimo: hi 22:23
hi all
timotimo you give it a list with starting values, then a function that takes any number of values from the end that it wants, then comes the ... and then some end condition
rindolf timotimo: i imported my proggy to perl6-examples
timotimo so for fibonacci, you'll take 1, 1 as the starting values, a sub that takes two arguments and adds them, like -> $a, $b { $a + $b }, and the end can be * to say you want all of them 22:24
rindolf timotimo: it runs fairly quickly but the cpython one seems faster
timotimo how much faster is it?
rindolf timotimo: let me see 22:25
comborico1611 my ($a, $b) = 1, 2; #What is this called? Multiple binding? 22:27
Zoffix list assignment, I believe 22:28
comborico1611 Thanks!
timotimo i'd call it list assignment, too
rindolf timotimo: paste.debian.net/1021719/ 22:29
timotimo can you check what --stagestats has to say about compile time? 22:31
rindolf timotimo: yes 22:35
rindolf timotimo: paste.debian.net/1021720/ 22:37
timotimo ok, so out of the 0.97s we're spending 0.325s compiling already, plus a little bit of startup time 22:38
bare startup on my machine is like 0.1s 22:39
timotimo what's "time perl6 -e ''" for you? 22:46
rindolf timotimo: real 0m0.141s 22:47
Geth doc: 3bbad9ee8c | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6
Fix up IO::Handle docs

It's not an IO role, but an IO::Path object.
23:03
synopsebot Link: doc.perl6.org/type/IO::Handle
comborico1611 I can't get the code from this book to do anything: hastebin.com/kojorasuga.pl 23:23
Zoffix What book are you reading?
comborico1611 Think Perl 6
Zoffix comborico1611: well, you're just returning letters and aren't printing anyuthing 23:24
Geth doc: 936dd070df | (Zoffix Znet)++ | 6 files
Make xtest pass

  (I think it passes; after fixing all errors I saw the next
run appears to have hung on aspell...)
doc/post-release-2018.04: 32 commits pushed by (JJ Merelo)++, (Tobias Leich)++, (Luca Ferrari)++, (Zoffix Znet)++
review: github.com/perl6/doc/compare/83bbb...f8a659c448
23:25
comborico1611 Eh. I'll skip it. The author states not to worry about how the code works because strings are covered in Ch. 7. But he says to test out teh code, and I don't get anything to work. 23:26
Zoffix comborico1611: how do you know it doesn't work? You didn't print anything 23:32
comborico1611 I called the functions with the string "hello" and nothing prints out.
timotimo your code isn't printing anything because there's nothing in it that would print anything 23:33
tobs comborico1611: I would just use the REPL instead of script file as the book suggests.
Zoffix m: gist.github.com/zoffixznet/c3931e9...bd9290ffa1
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
sya used at line 3. Did you mean 'say'?
Zoffix m: gist.github.com/zoffixznet/c3931e9...bd9290ffa1
camelia h
Start argument to substr out of range. Is: -1, should be in 0..5; use *-1 if you want to index relative to the end
in sub middle-letters at <tmp> line 13
in block <unit> at <tmp> line 3

o
tobs m: sub middle_letter (Str $word) { return substr $word, 1, *-1 }; say middle_letter('ab'); say middle_letter('a')
camelia
Number of characters argument to substr out of range. Is: -1, should be in 0..^Inf; use *-1 if you want to index relative to the end
in sub middle_letter at <tmp> line 1
in block <unit> at <tmp> line 1
Zoffix Weird it gives that error instead of telling me the comma's missing 23:34
m: gist.github.com/zoffixznet/c3931e9...bd9290ffa1
camelia h
o
ell
comborico1611 tobs: p.93 "Type these subroutines into a file named palindrome.pl6"
Zoffix Ah, 1 *-1 ain't no missing comma :P 23:35
We need a Unicode whateverstar :P 23:36
comborico1611 Good eye. Thanks!
AlexDaniel yeah…
tobs comborico1611: if you type them into a script, you have to "say" the return values. The REPl takes care of that. It's slightly easier to play around with.
timotimo the P in REPL stands for Print 23:38
rindolf night all
timotimo: thanks
comborico1611 tobs: Ahh! Very good. Thanks!
G-night rindolf. 23:42
Geth doc: ac4fe91e6f | (Zoffix Znet)++ | 3 files
More xtest fixes
23:49
doc/post-release-2018.04: ac4fe91e6f | (Zoffix Znet)++ | 3 files
More xtest fixes
23:50
doc/post-release-2018.04: 7fbfd3e6c6 | (Zoffix Znet)++ | 3 files
Merge branch 'master' into post-release-2018.04
Zoffix man wtf... make xtest shows 3 typos. I fix em. Run it again, it shows more of the other ones :S 23:54
comborico1611 I'm going to enjoy the evening sunset. Sorry to hear that Zoffix.
Geth doc: 2e96dd3894 | (Zoffix Znet)++ | doc/Language/variables.pod6
Fix articles
23:55
synopsebot Link: doc.perl6.org/language/variables