»ö« 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 Zoffix on 25 May 2018.
Zoffix lembark: don't see a way to exclude that path with compile time options, so I filed an Issue: github.com/rakudo/rakudo/issues/1936 R#1936 00:03
synopsebot_ R#1936 [open]: github.com/rakudo/rakudo/issues/1936 Wanted configuration option to exclude home dir from repos
Zoffix jnthn++ # responding to R#1289 \o/ 00:05
synopsebot_ R#1289 [open]: github.com/rakudo/rakudo/issues/1289 [6.d][severe] [6.d BLOCKER] Implement a Way to Know Caller's Language
Zoffix Makes me think we should trim the list of 6.d changes and push anything affected by the blocker to 6.e 00:07
Zoffix .tell moritz reminder that you're listed as Stake Holder for making @/%/& sigils reject :U stuff by default: github.com/perl6/6.d-prep/blob/mas...te-objects 00:15
yoleaux Zoffix: I'll pass your message to moritz.
Zoffix .tell samcv reminder that you're listed as stake holder for brackets stuff github.com/perl6/6.d-prep/blob/mas...rsbrackets 00:16
yoleaux Zoffix: I'll pass your message to samcv.
samcv yeah that's been fixed 00:16
yoleaux 00:16Z <Zoffix> samcv: reminder that you're listed as stake holder for brackets stuff github.com/perl6/6.d-prep/blob/mas...rsbrackets
samcv should i move it from the file? i had aleady noted it was completed at the end 00:17
Zoffix oh, OK. I'll move it to the COMPLETED.md file 00:17
samcv ok thanks :)
Zoffix: is there a way to see whether we're on 6.d or not yet?
from rakudo code that is 00:18
samcv that's this issue? github.com/rakudo/rakudo/issues/1289 00:18
i'll check it out some
Zoffix samcv: yeah, that's the issue. When compiling, you can use the newly available $*W.lang-ver-before('d'), for lexicals, you can just stick them in a file in src/core.d/*, but the rest (such as finding caller's lang version), that's what the Issue is about. 00:20
samcv Zoffix: so that would wok in rakudo code or no? 00:20
*work 00:21
Zoffix samcv: yeah
samcv i need to control whether .decode is strict or lenient in the decoding same with encoding
ah ok cool
Mark04 forgot quite how long compiling rakudo takes on a raspberry pi :)
Zoffix samcv: that probably is part of the Issue, because you need to know the caller's lang to figure out how to make that method behave
Mark04: took like 25 minutes on mine 00:22
samcv ah yeah
Zoffix Mark04: using these instructions: github.com/MoarVM/MoarVM/issues/34...-395962001 with swap increased to 2GB 00:22
Mark04 Zoffix: hum good tips, I'm already at 2GB swap, but I'm using the arch user repository package for rakudo, and other than changing the architecture to support arm I haven't changed anything so I'll let you know how long it takes :) 00:25
Zoffix ok :)
My build was on B+ Pi 00:26
Mark04 (although I'm loosing already cos it's like 40 minutes already… :P ) 00:27
Zoffix :o
Mark04 Pi 3 B on my end
(fiou, and that's one hour, I'm off to bed!) Thanks again for the help, will be back if I can't figure out what was up. 00:45
Zoffix \o 00:46
Zoffix New blog post: "Perl 6 CaR TPF Grant: Monthly Report (June, 2018)": blogs.perl.org/users/zoffix_znet/20...-2018.html 00:49
Geth doc: 74902c6eb7 | (Timo Paulssen)++ | doc/Type/Real.pod6
add method Complex to Real

to explain how an Int, for example, becomes a Comeplex number via this coercer.
01:13
synopsebot_ Link: doc.perl6.org/type/Real
Kaiepi i'm experimenting with dynamic variables and eval in grammars and i'm a bit confused 01:27
i wrote this hastebin.com/ayutuyagut.pl, but i'm not sure what <?{}> or <!{}> are doing or why they work
Zoffix <?{}> is a successful match if the code inside the curlies returns a true value. <!{}> is the same, except false value 01:28
And in `token type` you probably meant to use just a bare block? So it's executed when that branch matches? 01:29
Xliff If a subrule in a rule has multiple matches, how do I access each individual match? 01:30
timotimo yes, that's why you have to put an ! when you have = 0 and a ? when you have a = 1
Kaiepi ohhh
Xliff I am trying $/<rule>[], but that doesn't seem to be working.
Kaiepi when would i be able to use <{}>? 01:31
Zoffix Kaiepi: when you're returning something to match 01:32
m: say "foo" ~~ /<{'f+'}>/
camelia 「f」
timotimo <{ }> uses the return value of the block and treats it as regex syntax
Zoffix uh
ah
m: say "foo" ~~ /<{'f.+'}>/
camelia 「foo」
Kaiepi oh that's perfect for the grammar i'm trying to write for net::telnet
Zoffix Kaiepi: like gist.github.com/zoffixznet/0431129...a9fdbf4f06
Xliff: FWIW, $/<rule> can be written as just $<rule> 01:33
Xliff: what's the .gist of $/ ?
timotimo Xliff: does .gist of the match object help figure out the ... yes
i can also recommend Data::Dump::Tree for dumping match objects
Zoffix I think that module still fails on newer rakudos 01:34
Xliff I am using Data::Dump::Tree
And I am using subrules that are matched via [ <s1> <s2> ]+ % [ ',' \s* ]
Zoffix Xliff: what's the .gist of $/ ? 01:35
Xliff So if I gist, I get alternating lines of s1=..., s2=...
Kaiepi this would be equivalent right? gist.github.com/Kaiepi/420265032e1...4326a6d38a
Xliff Zoffix: One second.
Zoffix m: say "foo" ~~ /<{Empty}>/ 01:36
camelia Nil
timotimo Kaiepi: depends on how the regex engine interprets the return value of a non-taken if or unless
Zoffix Kaiepi: looks like it
Kaiepi what do you mean timotimo?
timotimo m: say "Empty" ~~ /<{Empty}>/
camelia Nil
timotimo m: say "()" ~~ /<{Empty}>/
camelia Nil
timotimo m: say Empty.Str 01:37
camelia
Zoffix m: say "foo meow ber" ~~ m:g/<{<foo bar ber>}>/
camelia (「foo」 「ber」)
Xliff Zoffix - pastebin.com/yc10i6uv
timotimo well, it'll interpolate an empty string in that case, it looks like
Zoffix timotimo: I think it's treated as a list of alternatives to match, not just a plain Str
timotimo ah, an empty list, that's better
i forgot we have that feature. it's a good feature. 01:38
i'm going to bed, good luck!
Xliff Zoffix: Any ideas? 01:39
Zoffix Xliff: in $/<rule>[0] 'rule' is what? 'type' in your gist? 01:40
Xliff Yes.
OK. Is there a way to iterate? Does $/<rule>[0] do Iterator?
Because when I do $/<rule>.elems, I get 1
Zoffix I get 2 01:41
timotimo just checking, @<rule> makes no difference?
Zoffix m: say "foo 42, bar 100" ~~ /[$<type>=<[a..z]>+ \s+ $<rule>=\d+]+ % [","\s*]/; say $<type>.elems
camelia 「foo 42, bar 100」
type => 「foo」
rule => 「42」
type => 「bar」
rule => 「100」
2
Zoffix m: "foo 42, bar 100" ~~ /[$<type>=<[a..z]>+ \s+ $<rule>=\d+]+ % [","\s*]/; say $<type>.elems
camelia 2
Zoffix Xliff: so it *would* be $/<rule>[0], etc.
timotimo Xliff: do you know of GPTrixie? you might be reinventing it 01:42
Xliff timotimo: No, that gives me an error.
Zoffix m: "foo 42, bar 100" ~~ /[$<type>=<[a..z]>+ \s+ $<rule>=\d+]+ % [","\s*]/; for $<type> { say $++ ~ "th type is $_" }
camelia 0th type is foo
1th type is bar
Zoffix eco: GPTrixie
buggable Zoffix, App::GPTrixie 'Generate NativeCall code from C headers file': modules.perl6.org/dist/App::GPTrixi...ail.com%3E
Xliff Ooh! I did NOT know about $++
timotimo is it supposed to put the whole email address in there, too?
Xliff Thanks!
Zoffix timotimo: it's using `author`, but it should be using `auth`, which AFAIK currently is poorly specced. 01:43
But then, nothing stops people from putting email addresses into auth either, I guess
timotimo OK
seeya later 01:44
Zoffix \o
Xliff: it's `$` actually. An anonymous state variables. The `++` is an op.
And since you ain't got a name for the variable you can only access it up there once, so ++$, --$, $++, $-- are the most common operations to do on it 01:45
MasterDuke Xliff: fyi, i'm not sure exactly what state it's in, but nativecallable is meant to be sort of a frontend for GPTrixie 01:50
lindylex I am trying to write a script to check for palindromes. When i compare a string I flip it gives me a False even when the string is the same. pastebin.com/vKt3xwit USAGE :: ./palindrome.pl "Baby Bab" 01:59
lindylex I tried this $reverseSendHalf.fc eq $firstHalf.fc; that did not work. 02:04
MasterDuke lindylex: $reverseSendHalf has a space at the end 02:06
Xliff MasterDuke: nativecallable? Sounds interesting! :) 02:08
MasterDuke nativecallable6: help 02:09
nativecallable6 MasterDuke, Like this nativecallable6: <some C definition> # See wiki for more examples: github.com/perl6/whateverable/wiki...vecallable
AlexDaniel nativecallable6: struct s {char b[];}; 02:16
nativecallable6 AlexDaniel, /tmp/gptnc.h:4:16: error: flexible array member 'b' not allowed in otherwise empty struct␤struct s {char b[];};␤ ^␤1 error generated.␤class s is repr('CStruct') is export {␤ has NYIRP6(Array with size) $.b; # char[1] b␤} 02:17
AlexDaniel nativecallable6: struct s {char b[42];};
nativecallable6 AlexDaniel, class s is repr('CStruct') is export {␤ has NYIRP6(Array with size) $.b; # char[42] b␤}
AlexDaniel I guess it does work a bit :)
nativecallable6: struct s {char b; float c; int d}; 02:18
nativecallable6 AlexDaniel, gist.github.com/dc53310c0a50104d3e...599341b6c2
Util lindylex: When I add this code: `say [:$firstHalf, :$reverseSendHalf].perl;` , 02:28
I see: [:firstHalf("bab"), :reverseSendHalf("bab ")].
That space is your problem.
So either the answer *is* false because 'y' is not ' ',
or you need to remove embedded blanks, like `my $without_whitespace = $sring.trans(' ', '')`
lindylex Util: thanks I was trying to figure out what is wrong and how yo see that blank space. 02:29
Util Oops, that should be `.trans(' ' => '')` 02:30
When debugging, use `dd` or `say $something.perl;` , so whitespace is easy to see. 02:31
lindylex Util thanks for that tip.
Util m: my $a = " a b c d e f "; my $b = $a.trans(" " => ""); dd $a, $b; 02:32
camelia Str $a = " a b c d e f "
Str $b = "abcdef"
Util lindylex: yw
lindylex Util: I love this say $secondHalf.perl; Thanks so much, 02:38
Kaiepi evalable6, say 1 03:47
evalable6 1
Kaiepi evalable6, my $c = IO::Socket::INET.new(:host<telehack.com>, :port(23), :encoding<latin1>); my $fd = $c.native-descriptor; $c.close; say $fd
evalable6 -1
Kaiepi evalable6, my $s = IO::Socket::INET.new(:localhost<127.0.0.1>, :localport(8000), :listen); my $fd = $s.native-descriptor; $s.close; say $fd 04:01
evalable6 -1
Kaiepi i'll need to check if that's supposed to be -1 or not
araraloren_ It's -1 on my notebook too 04:09
Geth doc: Kaiepi++ created pull request #2106:
Document using dynamic variables for state in grammars
05:58
Kaiepi is there a way to configure the default flags used with Configure.pl? 06:13
typing out "./Configure.pl --gen-moar --moar-option=--has-libuv --moar-option=--has-dyncall --moar-option=--has-libtommath --moar-option=--has-libatomic_ops --moar-option=--cc=egcc --prefix=$HOME/.perl6" is ridiculous
El_Che Kaiepi: I habe never used that many flags 06:34
Kaiepi the only ones necessary for moar to build properly are --moar-option=--has-libuv, --moar-option=--has-dyncall --moar-option=--cc=egcc --prefix=$HOME/.perl6 06:37
but it's still a lot of typing 06:38
El_Che I build moar properly without any of those switches (except prefix, because I am creating packages) 06:49
Geth doc: 6a79faf129 | (JJ Merelo)++ | doc/Type/IO/Socket/Async.pod6
Fixes subtitle

Also reflows and rephrases a bit. Closes #2104
08:17
synopsebot_ Link: doc.perl6.org/type/IO::Socket::Async
Geth doc: a7dd25667d | (JJ Merelo)++ | doc/Type/IO/Socket/Async.pod6
Fixes pod error
08:37
synopsebot_ Link: doc.perl6.org/type/IO::Socket::Async
Marcool Hi all, I've been struggling with a simple script which is causing perl6 to throw "MoarVM panic: Internal error: Unwound entire stack and missed handler" 08:40
I've reinstalled rakudo, reinstalled both modules that it uses (LibCurl::HTTP and JSON::Fast) and no improvement…
Should I file a bug?
(when I say reinstalled rakudo I mean re-compiled and installed)
Marcool perl6 --version -> This is Rakudo version 2018.05 built on MoarVM version 2018.05 implementing Perl 6.c. 08:41
uname -a -> Linux hostname 4.14.49-1-ARCH #1 SMP Fri Jun 15 02:09:36 UTC 2018 armv7l GNU/Linux
Zoffix was very helpfull last night with a bunch of suggestions to try and get better output but I can't get it to fail with anything better than that message 08:42
El_Che Marcool: when in doubt, file a bug, I would say 08:43
Marcool FWIW the same script works fine on a macOS 10.13 machine :/ as it did on Ziffix's setup
El_Che: right, I just wanted to see if there was anything else could be suggested, above --ll-exception and MVM_SPESH_DISABLE=1 08:44
Marcool Filled… github.com/rakudo/rakudo/issues/1937 09:13
filed*, even
Geth doc: 1b14b3b7cf | (Ben Davies)++ | doc/Language/grammars.pod6
Document using dynamic variables for state in grammars
10:24
doc: a83202bf54 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | doc/Language/grammars.pod6
Merge pull request #2106 from Kaiepi/grammars

Document using dynamic variables for state in grammars
synopsebot_ Link: doc.perl6.org/language/grammars
hankache hello #perl6 11:23
jmerelo Hi naoum!
hankache hi jj
Anyone interested in translating perl6intro to Russian? 11:25
jmerelo hankache: I know a few Russian users; I don't know how often they hang around here.
.seen shitov
yoleaux I haven't seen shitov around.
jmerelo hankache: maybe create an issue in perl6/marketing? 11:26
hankache jmerelo: I just had someone on GitHub request a Russian translation.
github.com/hankache/perl6intro/issues/184
jmerelo: no need to put it in perl6/marketing since there's already an issue open for it in perl6intro 11:28
jmerelo Besides Andrei Shitov, there's Andrei Melezhik... To reach them, the best might be either issue or contacting them via Twitter (or the Perl 6 facebook group)
hankache: The only thing with perl6/marketing is that quite a bunch of people get notifications. But of course, do whatever you think it's best. 11:29
hankache jmerelo: Gracias! 11:30
jmerelo jmerelo: un placer. Buena suerte :-) 11:31
frankjh Hi I am trying to get a native module of mine installing again. I am 11:40
using 'panda' and I think I have to support 'zef' now.
Currently I can compile the native code, but the perl6 code does not
pick up the shared library object.
jmerelo frankjh: right. Panda is deprecated. 11:41
frankjh: did you setup all paths as indicated?
frankjh jmerelo: Probably not, but I do not find the issue. pastebin.com/raw/zPrx51K9 11:42
jmerelo frankjh: you can use the whole path to the library: docs.perl6.org/language/nativecall..._and_Names 11:44
frankjh jmerelo: Yes, but how would that then work for people not on my machine? I thought zef should pull from github 11:46
jmerelo frankjh: when you say native, you mean as in NativeCall or simply native as in written totally in Perl 6? 11:47
frankjh: right, I see. It's not finding the .so. 11:48
frankjh jmerelo: Sorry I meant NativeCall. It is this module github.com/soundart/perl6-tweetnacl
hankache frankjh: maybe this can help: github.com/retupmoca/P6-LibraryMake 11:49
jmerelo frankjh: not sure zef is ready for installing .so files... Or to keep track of them.
jmerelo goes AFK for now and thanks hankache for following up on this...
hankache frankjh: LibraryMake is being used in such cases 11:51
frankjh hankache: Thank you, I followed this example basically. However in Makefile.in the target for the shared object did not work 100% 11:51
frankjh hankache: The line "%DESTDIR%/resources/libraries/%chelper%:" from the example produced a file called %chelper% so. I changed it to "%DESTDIR%/resources/libraries/libtweetnacl%SO%" 11:53
hackache: in the pm6 file the line "constant CHELPER = %?RESOURCES<libraries/chelper>.absolute;" Does not seem to include the full %DESTDIR% part. 11:55
It was compiled to /home/user/projects/perl6-tweetnacl/resources/libraries/libtweetnacl.so and loaded from: /home/user/projects/resources/libraries/libtweetnacl.so
Somewhere there is the disconnect.... 11:56
hankache frankjh: I am not really sure what's going on. 12:01
frankjh hankache: thanks you. Me neither. Currently I am searching for another nativecall based library which compiles its own lib and which works with zef. 12:10
hankache frankjh: There's this github.com/hoelzro/p6-linenoise 12:11
frankjh hankache: ah very good. Thank you! 12:18
Util docs.perl6.org/type/Promise#sub_await says: 13:19
multi sub await(Promise:D --> Promise)
But this code:
m: my $p = start { 1 + 2 }; my $a = await $p; say .WHAT.perl for $a, $p;
camelia Int
Promise
Util indicates that `await` is operating as `await(Promise:D --> whatever_the_result_type_of_the_threaded_op_was)`
, as I would expect (and have relied on in some of my code)
Is this a doc problem, or something I am mis-understanding? 13:20
jmerelo my $p = start { 1 + 2 }; my $a := await $p; say .WHAT.perl for $a, $p; 13:20
evalable6 Int
Promise
jmerelo Util: might be a doc problem. Also automatic coercion. At any rate, it does not work as expected, so maybe it's the best to create an issue 13:21
jnthn Util: Doc problem
MasterDuke .tell Mark04 if you edit the AUR package for MoarVM to add the `--debug=3` flag to Configure.pl, then perl6-gdb-m and perl6-valgrind-m will give you some useful info when trying to run your script
yoleaux MasterDuke: I'll pass your message to Mark04.
jnthn There's no return type constraint on await
Util jmerelo, jnthn : Thanks! 13:22
jmerelo Util: you're welcome. Good luck. 13:23
MasterDuke .tell Marcool if you edit the AUR package for MoarVM to add the `--debug=3` flag to Configure.pl, then perl6-gdb-m and perl6-valgrind-m will give you some useful info when trying to run your script
yoleaux MasterDuke: I'll pass your message to Marcool.
Kaiepi m: grammar ASCII { token TOP { <ascii> }; proto token ascii { * }; multi token ascii { <-[\x[80]..\x[FF]]>+ }; token ascii:sym<foo> { <sym> } }; dd ASCII.parse('foo') 13:52
camelia Match.new(list => (), pos => 3, made => Any, hash => Map.new((:ascii(Match.new(list => (), pos => 3, made => Any, hash => Map.new((:sym(Match.new(list => (), pos => 3, made => Any, hash => Map.new(()), orig => "foo", from => 0)))), orig => "foo", from…
Kaiepi m: grammar ASCII { token TOP { <ascii> }; proto token ascii { * }; multi token ascii { <-[\x[80]..\x[FF]]>+ }; token ascii:sym<foo> { <sym> } }; say ASCII.parse('foo') 13:53
camelia 「foo」
ascii => 「foo」
sym => 「foo」
Kaiepi neat
m: grammar ASCII { token TOP { <ascii> }; proto token ascii { * }; multi token ascii { <-[\x[80]..\x[FF]]>+ }; token ascii:sym<foo> { <sym> } }; say ASCII.parse("\xFF")
camelia Nil
MasterDuke Kaiepi: btw, i don't think any flags are actually required for MoarVM's build 13:57
Kaiepi some are on my system 14:02
libuv's broken with ipv6, dyncall's broken with nativecall callbacks, gcc's too old iirc 14:03
MasterDuke some sort of BSD, correct? 14:04
Kaiepi yeah, openbsd
MasterDuke doesn't Configure.pl have autodetection of OS and then do some things differently? 14:05
Kaiepi it does, but the issues are in the libraries, not the build script 14:06
MasterDuke Kaiepi: btw, changing topics, it's probably good to get in the habit of using '{*}' (i.e., no spaces) for your protos 14:07
ah
Kaiepi github.com/MoarVM/dyncall/commit/a...716d0b4c5a fixes the issues i was having with dyncall
why {*}?
MasterDuke if you ever want to change the proto to put some actual code in it, you'll need to add a '{*}' 14:08
so it's easier to just use that from the beginning, then you can just put some other braces around it if/when you're adding other code 14:09
Kaiepi you can put code in protos?
MasterDuke yeah
m: m: proto sub doIt(|) { say "doing it"; {*} }; multi sub doIt(Str) { say "string" }; multi sub doIt(Int) { say "int" }; doIt("hi"); doIt(99) # example from timotimo yesterday 14:11
camelia doing it
string
doing it
int
MasterDuke m: m: proto sub doIt(|) { say "doing it"; { * } }; multi sub doIt(Str) { say "string" }; multi sub doIt(Int) { say "int" }; doIt("hi"); doIt(99) # see the difference? 14:12
camelia doing it
doing it
Kaiepi ah 14:13
b2gills Kaiepi: I have an example where I used `proto sub MAIN (|) { try { say +{*} } or say $!.message }` gist.github.com/b2gills/93d1e2aa6583b95315b2 14:29
Basically all of the `multi MAIN` subroutines return something that will numify into the number of bytes. 14:30
Kaiepi looks like it could be useful for some nativecall stuff 14:36
[Coke] tries to figure if the guy in the cowboy hat is timtoady or a lookalike. :)
Kaiepi wait that's just in proto, never mind 14:38
jmerelo [Coke]: Maybe he's cosplaying
robertle does anyone know what DBIish does in terms of concurrency and connection pooling? or do I need to build my connection pool on top of DBIish? 14:55
moritz last time I looked, it did some things to make it a bit thread safer 14:57
yoleaux 00:15Z <Zoffix> moritz: reminder that you're listed as Stake Holder for making @/%/& sigils reject :U stuff by default: github.com/perl6/6.d-prep/blob/mas...te-objects
mr_ron Kaiepi: FWIW install US-ASCII module and - use US-ASCII; grammar ASCII does US-ASCII-UC { proto token TOP {*}; token TOP:sym<foo> { <sym> }; token TOP:sym<any> { (<.CHAR>+) } }; say ASCII.parse("foo"); say ASCII.parse("bar"); say ASCII.parse("\xFF") 15:13
yoleaux 14 Jun 2018 01:15Z <Zoffix> mr_ron: I fixed all the modules.perl6.org issues with your dist that I saw. Repo URL is already fixed and CPAN tarball URL will get fixed on next update (~2hr)
mr_ron also
m: say so "foo" ~~ /<:ascii>+/; say so "\xFF" ~~ /<:ascii>+/
camelia True
False
[Coke] btw: it was not larry. Much easier to tell side by side. :) 15:27
rindolf mr_ron: docs.perl6.org/routine/so - i see 15:31
timotimo so it has come to this 15:34
[Coke] m: .so.WHAT 15:45
camelia ( no output )
rindolf [Coke]: heh 16:34
[Coke]: so what? ;)
masak so WHAT!? 16:53
m: so .flat 16:54
camelia WARNINGS for <tmp>:
Useless use of "so " in expression "so .flat" in sink context (line 1)
masak m: .so.flat
camelia ( no output )
lucs Dunno about you guys, but I've got the Miles Davis tune stuck in my head now. 16:55
Geth doc: zoffixznet++ created pull request #2108:
[CaR Grant] Rewrite section on constants
17:01
doc: 086d7c11bd | (Zoffix Znet)++ | doc/Language/terms.pod6
[CaR Grant] Rewrite section on constants

  - Document newly-available auto-coercion
  - Document newly-enforceable type constraints
  - Document ability to use := op and backslashed sigilless names
  - Document anonymous constants
  - Get rid of overly elaborate scoping prose. That belongs to
   the section on scoping.
synopsebot_ Link: doc.perl6.org/language/terms
doc: 7f82b6669a | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/terms.pod6
Merge pull request #2108 from perl6/post-release-2018.06

  [CaR Grant] Rewrite section on constants
lembark Q: is there any way to configure NativeCall to prefer /lib64 instead of /usr/lib64? 17:12
Problem installing readline: it finds /usr/lib64/libreadline.so, which is an ld script on my system. Leaves me without a working readline. 17:13
hoelzro whoa, that's interesting 17:15
MasterDuke isn't there some sort of LD_LIBRARY_PATH env variable that might be useful? 17:28
El_Che lembark: zef install github.com/nxadm/perl6-readline.git 17:32
lembark: in the meanwhile
lembark: ticket is here: github.com/drforr/perl6-readline/issues/22
Geth doc: bec29a87c0 | (JJ Merelo)++ | doc/Language/terms.pod6
Some corrections
17:38
doc: 53c33f585e | (JJ Merelo)++ | doc/Language/terms.pod6
Adds skip test
synopsebot_ Link: doc.perl6.org/language/terms
Geth doc: cda9a8296d | (JJ Merelo)++ | doc/Language/terms.pod6
Fixed compilation errors
doc: 51fe16cca9 | (JJ Merelo)++ | doc/Language/terms.pod6
Some typos in comments
Geth doc: 43a6a2b1f7 | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/traps.pod6
Fix example error

  `my $list = ('b' => 2);` is not a List but a Pair, which makes the
shown example behave differently
18:18
synopsebot_ Link: doc.perl6.org/language/traps
Geth doc: 036ab4c56a | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/traps.pod6
Be more precise in description of `|` in arglists

Not all the time would it mean to slip in *named* argms
18:20
perlpilot Is TPC streaming any talks?
[Coke] yawns. 18:21
Streaming? I don't think so
They are still trying to get video volunteers for straight recording, I think.
Geth doc: d1c110bfe6 | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/traps.pod6
Add example of converting a list to a Capture right in arg list
perlpilot gotcha 18:22
Zoffix m: sub meow (:list( @ ( $, $second, |) )) { say $second }; meow :list<a b c>; 19:24
camelia 5===SORRY!5=== Error while compiling <tmp>
Unable to parse named parameter; couldn't find right parenthesis
at <tmp>:1
------> 3sub meow (:list( @7⏏5 ( $, $second, |) )) { say $second }; me
Zoffix How to make it happy?
m: sub meow ( :@list ($z, $second, |) ) { say $second }; meow :list<a b c>; 19:25
camelia b
Zoffix This does the trick, but is there any way to do the same without having to declare @list? 19:26
s/declare.+/have @list available/;
moritz a sigiled, named anonymous parameter?
i don't think so :)
Zoffix No, it would have the sigil 19:27
Like, how to make my first example work, where it's just `:list` and `@list` is not available in the bodyt
s/would/would NOT/;
I guess that's impossible. 19:31
Perl 6 clearly isn't advanced enough for the high demands on the modern day programmers!
:) 19:32
m: sub meow (:list(:@ ($, $second, |)) { say $second }; meow :list<a b c>;
camelia 5===SORRY!5=== Error while compiling <tmp>
Unable to parse named parameter; couldn't find right parenthesis
at <tmp>:1
------> 3sub meow (:list(:@7⏏5 ($, $second, |)) { say $second }; meow
Zoffix kinda would've thought this syntax would've worked... :list is an alias :@ is the name, which is then unpacked 19:33
m: sub meow (Positional :list( ($, $second, |))) { say $second }; meow :list<a b c>;
camelia b
Zoffix win :)
moritz Zoffix++ 19:42
lizmat and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2018/06/18/...lake-city/ 19:56
Zoffix wooo 19:57
moritz lizmat++ 19:59
Zoffix lizmat++ # good weekly and very big for a "quick one" :) 20:01
lindylex I would like to understand why I can not output the value of the class variable pastebin.com/xwiP2Fea 20:04
[Coke] the class isn't constructed at that point. 20:06
at compile time, you're in the middle of constructing the object; are you trying to find that value out when the object is instantiated?
lindylex [Coke] I see. 20:07
I would need to do it in initme
jmerelo [Coke]: When would that code be actually run? Theoretically any code in class scope will be run in compile time?
Zoffix lindylex: you can just stick that linto into `submethod BUILD` to do so: submethod BUILD { say $!halfLength.perl }
That's also a pretty huge way to write a pallindrome checker 20:08
[Coke] jmerelo: I believe it's getting run when the class is being constructed. not sure which phase, but "early".
Zoffix m: subset Pallindrome of Str where .flip eq $_; say $_ ~~ Pallindrome for <foo []][ moom> 20:09
camelia False
True
True
jmerelo [Coke]: but it would be a place to do stuff with class variables or class-scoped variables.
Zoffix m: say "starting"; class Foo { say "meows"; INIT say "init"; BEGIN say "begin" }; say "ending"; Foo.new; Foo.new 20:11
camelia begin
init
starting
meows
ending
jmerelo say "starting"; class Foo { say "meows"; INIT say "init"; BEGIN say "begin" }; say 20:23
say "starting"; class Foo { say "meows"; INIT say "init"; BEGIN say "begin"; BUILD { say "Build"} }; Foo.new; Foo.new
m: say "starting"; class Foo { say "meows"; INIT say "init"; BEGIN say "begin"; BUILD { say "Build"} }; Foo.new; Foo.new
camelia begin
5===SORRY!5=== Error while compiling <tmp>
Undeclared name:
BUILD used at line 1
jmerelo m: say "starting"; class Foo { say "meows"; INIT say "init"; BEGIN say "begin"; submethod BUILD { say "Build"} }; Foo.new; Foo.new 20:24
camelia begin
init
starting
meows
Build
Build
jmerelo Of course.
Zoffix New blog post: "Perl 6 Colonpairoscopy": rakudo.party/post/Perl-6-Colonpairoscopy 20:39
raschipi Anyone else getting TLS errors when connecting to perlmonks.org ? 20:49
MasterDuke yep 20:50
raschipi u: 🙼 21:20
unicodable6 raschipi, U+1F67C VERY HEAVY SOLIDUS [So] (🙼)
geekosaur "hack and slash"? 21:22
ilmari bah, no "very very" characters 21:23
raschipi According to Zoffiz, FatRat constructor
ilmari m: (3🙼7).WHAT.say 21:24
camelia 5===SORRY!5=== Error while compiling <tmp>
Bogus postfix
at <tmp>:1
------> 3(37⏏5🙼7).WHAT.say
expecting any of:
infix
infix stopper
statement end
statement modifier
statement …
raschipi docs.perl6.org/language/numerics#FatRat 21:25
[Coke] m: say ([1..100].race.map({ $_ +1 }).list); 21:28
camelia (2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 …
[Coke] ^^ that example from the docs seems to always output in the same order.
m: say ([1..Inf].race.map({ $_ +1 }).list);
camelia (2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 …
lizmat [Coke] thats probably the result of a rather large batch size, with not a lot to do, so that a job is already done before another thread gets started 21:30
[Coke] should I be able to influence it with batch or degree? doesn't look like it. :| 21:32
raschipi m: say ([^100].race.map({sleep .5; $_ +1 }).list[^100]); 21:34
camelia (timeout)
raschipi m: say ([^100].race.map({sleep .1; $_ +1 }).list); 21:35
camelia (65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 …
raschipi m: say ([^100].race.map({sleep .1; $_ +1 }).list); 21:36
camelia (65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 …
[Coke] I can't seem to force anything with degree or batch. wondering if race is just being smarter than I am. 21:39
so, with :1batch, with one of these, I can see some variance at element 99. I feel better, now 21:41
Geth doc: 6a417e7c24 | (Rafael Schipiura)++ (committed using GitHub Web editor) | doc/Language/numerics.pod6
Correct output
21:56
synopsebot_ Link: doc.perl6.org/language/numerics
Zoffix AlexDaniel: I got a user who emailed me an email with something that worked on earlier release but not anymore. Is there an address I can forward it to so it gets to you? 22:03
The user said they couldn't find a way to post on RT
AlexDaniel Zoffix: sure, [email@hidden.address] will do 22:04
Zoffix AlexDaniel: done
AlexDaniel got it
thanks 22:05
gah, Crypt::TweetNacl module has Build.pm so bisectable is probably not an option 22:08
although, hmm…
why not 22:09
AlexDaniel does some magic
AlexDaniel oh wow that works 22:15
Zoffix: alright, so 22:17
gist.github.com/Whateverable/0b1c2...231ac677ad
it definitely “worked” on 2017.07
before that maybe there's another issue with the setup
c: 2017.07 gist.github.com/AlexDaniel/1a3628c...60c371047f
committable6 AlexDaniel, ¦2017.07: «»
AlexDaniel c: 2017.07 gist.github.com/AlexDaniel/1a3628c...60c371047f 22:18
committable6 AlexDaniel, ¦2017.07: «04===SORRY!04=== Error while compiling /home/bisectable/git/whateverable/sandbox/x.pm6␤Undeclared routine:␤ is-deeply used at line 131␤␤ «exit code = 1»»
AlexDaniel c: 2017.07 gist.github.com/AlexDaniel/1a3628c...60c371047f
committable6 AlexDaniel, ¦2017.07: «ok 1 - CryptoSecretBox.encrypt ␤»
AlexDaniel yeah, that looks correct
bisect: old=2017.07 gist.github.com/AlexDaniel/1a3628c...60c371047f
bisectable6 AlexDaniel, Bisecting by exit code (old=2017.07 new=ff2bc11). Old exit code: 0
AlexDaniel that will take some time because of module precomp
bisectable6 AlexDaniel, bisect log: gist.github.com/47ec7d3860f27b3c7f...464480376e 22:19
AlexDaniel, (2017-08-07) github.com/rakudo/rakudo/commit/46...ea9779a104
AlexDaniel Zoffix: should I create a ticket on github with this info? FWIW even if it's a regression, I don't consider it to be a blocker for that release 22:20
just because it was there for so long
Zoffix yeah, github's better than RT 22:22
AlexDaniel Zoffix: alright, R#1939 22:32
synopsebot_ R#1939 [open]: github.com/rakudo/rakudo/issues/1939 [nativecall][regression] Possible regression after NativeCall speedups
Zoffix cool. AlexDaniel++ 22:33
AlexDaniel Zoffix: will you let them know that there's a ticket?
Zoffix Yeah 22:34
Done.
AlexDaniel Zoffix: thanks
Xliff m: ('1, 2, 3, 4' ~~ / (\d)+ % ','/).gist.say 23:39
camelia 「1」
0 => 「1」
Xliff m: ("1, 2, 3, 4" ~~ / (\d)+ % ','/).gist.say
camelia 「1」
0 => 「1」
Xliff m: ("a, b, c, d" ~~ / (\w*) % ', '/).gist.say 23:40
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing quantifier on the left argument of %
at <tmp>:1
------> 3("a, b, c, d" ~~ / (\w*) %7⏏5 ', '/).gist.say
Xliff m: ("a, b, c, d" ~~ / (\w)* % ', '/).gist.say
camelia 「a, b, c, d」
0 => 「a」
0 => 「b」
0 => 「c」
0 => 「d」
Xliff m: ("a,b,c,d" ~~ / (\w)* % ', '/).gist.say 23:41
camelia 「a」
0 => 「a」
Xliff m: ("a,b,c,d" ~~ / (\w)* % [ ',' \s* ]/).gist.say
camelia 「a,b,c,d」
0 => 「a」
0 => 「b」
0 => 「c」
0 => 「d」