»ö« 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.
Xliff m: my $a = 'z'; my $content = 'abcdzf'; say $content ~~ / { $a }/ 01:37
camelia 「」
Xliff m: my $a = 'z'; my $content = 'abcdzf'; say $content ~~ / $a /
camelia 「z」
Xliff m: my $a = 'z'; my $content = 'abcdzf'; say $content ~~ /{ $a }/
camelia 「」
Xliff m: my %a<data> = 'z'; my $content = 'abcdzf'; say $content ~~ /{ $a }/ 01:38
camelia 5===SORRY!5=== Error while compiling <tmp>
Shaped variable declarations not yet implemented. Sorry.
at <tmp>:1
------> 3my %a<data>7⏏5 = 'z'; my $content = 'abcdzf'; say $con
Xliff m: my %a; %a<data> = 'z'; my $content = 'abcdzf'; say $content ~~ /{ $a }/
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$a' is not declared. Did you mean '%a'?
at <tmp>:1
------> 3$content = 'abcdzf'; say $content ~~ /{ 7⏏5$a }/
Xliff m: my %a; %a<data> = 'z'; my $content = 'abcdzf'; say $content ~~ / %a<data> /
camelia 5===SORRY!5===
The use of hash variables in regexes is reserved
at <tmp>:1
------> 3content = 'abcdzf'; say $content ~~ / %a7⏏5<data> /
Other potential difficulties:
Apparent subscript will be treated as regex
at <tmp>:1…
Xliff m: my %a; %a<data> = 'z'; my $content = 'abcdzf'; say $content ~~ / "%a<data>" /
camelia 「z」
Xliff m: my %a; %a<data> = 'z'; my $content = 'abcdzf'; say $content ~~ / %a<data> /
camelia 5===SORRY!5===
The use of hash variables in regexes is reserved
at <tmp>:1
------> 3content = 'abcdzf'; say $content ~~ / %a7⏏5<data> /
Other potential difficulties:
Apparent subscript will be treated as regex
at <tmp>:1…
Xliff m: my %a; %a<data> = 'z'; my $content = 'abcdzf'; say $content ~~ / {%a<data>} /
camelia 「」
Xliff my %p = ( actions => :shade, :hmax ); %p.gist.say 01:55
evalable6 {actions => shade => True, hmax => True}
MasterDuke m: my $a = 'z'; my $content = 'abcdzf'; say $content ~~ /<{ $a }>/ 02:05
camelia 「z」
Xliff MasterDuke: OH! I forgot to add the angle-brackets? 02:14
m: my %a; %a<data> = 'z'; my $content = 'abcdzf'; say $content ~~ / <{%a<data>}> / 02:15
camelia 「z」
MasterDuke m: my $a = 'z'; my $content = 'abcdzf'; say $content ~~ /{ say "hi"; $a >/ 02:21
camelia 5===SORRY!5===
Regex not terminated.
at <tmp>:1
------> 3dzf'; say $content ~~ /{ say "hi"; $a >/7⏏5<EOL>
Regex not terminated.
at <tmp>:1
------> 3dzf'; say $content ~~ /{ say "hi"; $a >/7⏏5<EOL>
Unable to parse regex; c…
MasterDuke m: my $a = 'z'; my $content = 'abcdzf'; say $content ~~ /{ say "hi"; $a }/
camelia hi
「」
MasterDuke Xliff: yeah, bare {} executes code, but doesn't interpolate it into the regex 02:22
Xliff m: my token dim { <[\+\-]>\d+ }; "300,-420 400x+30" ~~ / $<x=dim>,$<y=dim> \s* $<w=dim>'x'$<h=dim> /; 02:36
camelia 5===SORRY!5===
Unrecognized regex metacharacter , (must be quoted to match literally)
at <tmp>:1
------> 3>\d+ }; "300,-420 400x+30" ~~ / $<x=dim>7⏏5,$<y=dim> \s* $<w=dim>'x'$<h=dim> /;
Unable to parse regex; couldn't find final '/'…
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,-420 400x+30" ~~ / $<x=dim>,$<y=dim> \s* $<w=dim>'x'$<h=dim> /;
camelia 5===SORRY!5===
Unrecognized regex metacharacter , (must be quoted to match literally)
at <tmp>:1
------> 3 }; say "300,-420 400x+30" ~~ / $<x=dim>7⏏5,$<y=dim> \s* $<w=dim>'x'$<h=dim> /;
Unable to parse regex; couldn't find final '/'…
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,-420 400x+30" ~~ / $<x=dim>','$<y=dim> \s* $<w=dim>'x'$<h=dim> /; 02:37
camelia Nil
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,-420 ~~ / $<x=dim>','$<y=dim>/;
camelia 5===SORRY!5=== Error while compiling <tmp>
Unable to parse expression in double quotes; couldn't find final '"' (corresponding starter was at line 1)
at <tmp>:1
------> 3say "300,-420 ~~ / $<x=dim>','$<y=dim>/;7⏏5<EOL>
expecting …
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,-420" ~~ / $<x=dim>','$<y=dim>/;
camelia Nil
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,-420" ~~ / <x=dim>','<y=dim>/;
camelia Nil
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,-420" ~~ / <dim>','<dim>/; 02:38
camelia Nil
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,420" ~~ / <dim>','<dim>/;
camelia Nil
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,420" ~~ /\d+/;
camelia 「300」
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,420" ~~ /<dim>\/;
camelia 5===SORRY!5===
Unrecognized regex metacharacter ; (must be quoted to match literally)
at <tmp>:1
------> 3<[\+\-]>\d+ }; say "300,420" ~~ /<dim>\/7⏏5;
Unable to parse regex; couldn't find final '/'
at <tmp>:1
------> 3[\+\-]>\d+…
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,420" ~~ /<dim>\/;
camelia 5===SORRY!5===
Unrecognized regex metacharacter ; (must be quoted to match literally)
at <tmp>:1
------> 3<[\+\-]>\d+ }; say "300,420" ~~ /<dim>\/7⏏5;
Unable to parse regex; couldn't find final '/'
at <tmp>:1
------> 3[\+\-]>\d+…
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,420" ~~ /<dim>/;
camelia Nil
Xliff m: my token dim { <[+-]>\d+ }; say "300,420" ~~ /<dim>\/;
camelia 5===SORRY!5===
Unrecognized regex metacharacter ; (must be quoted to match literally)
at <tmp>:1
------> 3{ <[+-]>\d+ }; say "300,420" ~~ /<dim>\/7⏏5;
Unable to parse regex; couldn't find final '/'
at <tmp>:1
------> 3 <[+-]>\d+…
Xliff m: my token dim { <[+-]>\d+ }; say "300,420" ~~ /<dim>/; 02:39
camelia Nil
Xliff m: my token dim { \d+ }; say "300,420" ~~ /<dim>/;
camelia 「300」
dim => 「300」
Xliff m: my token dim { <[+-]>\d+ }; say "300,420" ~~ /<dim>/;
camelia Nil
Xliff m: my token dim { <[\+\-]>\d+ }; say "300,420" ~~ /<dim>/;
camelia Nil
Xliff m: my token dim { <[\+\-]> \d+ }; say "300,420" ~~ /<dim>/;
camelia Nil
Xliff m: my token dim { <[\+\-]> \d+ }; say "+300,420" ~~ /<dim>/;
camelia 「+300」
dim => 「+300」
Xliff m: my token dim { <[\+\-]>?\d+ }; say "300,-420 400x+30" ~~ / $<x=dim>','$<y=dim> \s* $<w=dim>'x'$<h=dim> /; 02:40
camelia Nil
Xliff m: my token dim { <[\+\-]>?\d+ }; say "300,-420 400x+30" ~~ / <x=dim>','<y=dim> \s* <w=dim>'x'\<h=dim> /;
camelia 5===SORRY!5===
Unrecognized regex metacharacter = (must be quoted to match literally)
at <tmp>:1
------> 3~~ / <x=dim>','<y=dim> \s* <w=dim>'x'\<h7⏏5=dim> /;
Unable to parse regex; couldn't find final '/'
at <tmp>:1
------> 3~ /…
Xliff m: my token dim { <[\+\-]>?\d+ }; say "300,-420 400x+30" ~~ / <x=dim>','<y=dim> \s* <w=dim>'x'<h=dim> /;
camelia 「300,-420 400x+30」
dim => 「300」
x => 「300」
dim => 「-420」
y => 「-420」
w => 「400」
dim => 「400」
h => 「+30」
dim => 「+30」
Xliff m: my token dim { <[\+\-]>?\d+ }; say "300,-420 400x+30" ~~ / <x=.dim>','<y=.dim> \s* <w=.dim>'x'<h=.dim> /; 02:40
camelia No such method 'dim' for invocant of type 'Match'
in block <unit> at <tmp> line 1
Xliff m: my token dim { <[\+\-]>?\d+ }; say "300,-420 400x+30" ~~ / <x=dim>','<y=dim> \s* <w=dim>'x'<h=dim> /; 02:41
camelia 「300,-420 400x+30」
x => 「300」
dim => 「300」
y => 「-420」
dim => 「-420」
w => 「400」
dim => 「400」
h => 「+30」
dim => 「+30」
Xliff m: $a = 'adlkjhee'; say $a.ends-with(/ee/) 02:48
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$a' is not declared
at <tmp>:1
------> 3<BOL>7⏏5$a = 'adlkjhee'; say $a.ends-with(/ee/)
Xliff m: my $a = 'adlkjhee'; say $a.ends-with(/ee/)
camelia Cannot resolve caller ends-with(Str:D: Regex:D); none of these signatures match:
(Str:D: Cool:D $suffix, *%_ --> Bool)
(Str:D: Str:D $suffix, *%_ --> Bool)
in block <unit> at <tmp> line 1
AndroidKitKat Is the best way to iterate though a string using substrs? 03:07
like m: say substr("Long string", 1..1)
err 03:08
m: say substr("Long string", 1..1)
camelia o
Geth doc: f328984196 | (JJ Merelo)++ | doc/Type/independent-routines.pod6
Moves flat to the page of independent routines

Adds another definition, and also eliminates implementation details. Refs #2823, #1518
06:29
synopsebot Link: doc.perl6.org/type/independent-routines
SyrupThinker m: 07:15
m: .say for "A long string".comb 07:16
camelia A

l
o
n
g

s
t
r
i
n
g
SyrupThinker AndroidKitKat: Like this^ ?
holyghost I've put docs in Game::AI::Messaging 07:34
release 0.1.9 07:35
cpan-p6 New module released to CPAN! Game::AI::Messaging (0.1.9) by 03HOLYGHOST
holyghost I'm out for a coffee 07:39
jmerelo holyghost: the tests do not do anything. The actual use is commented out. I don't really think you should keep doing this. 08:16
holyghost: commenting is not documenting. Some methods are simply empty. I don't really think this is ready to be published, yet this seems to be version whatever number. 08:17
holyghost: uploading incorrect modules to Perl6 does not benefit anyone. It does not benefit the community, it does not benefit whoever finds it, even more so when you don't even have a repo for reporting issues. 08:18
jmerelo holyghost: so I would please ask you to stop doing that. If you want us to review your code or help you with that, upload them to a public repo and request reviews or comments. 08:19
holyghost: so until a person or persons say they are ready for publication in CPAN or anywhere else, I would kindly ask you to retire your modules from the ecosystem and refrain from uploading them again. 08:20
holyghost: you're very welcome to upload your code to a GitHub repo and learn #perl6 while doing so, and you're very welcome to request comments from us and we'll be happy to provide it 08:22
holyghost: unfortunately, CPAN is not your private repo and uploading it there has consequences, like these modules showing up in searches, and people actually downloading them and trying to do something.
holyghost: I'm sorry to be so harsh, but we have told you this several times already yet you keep doing the same. So again I would kindly ask you to not do it any more. 08:24
masak jmerelo: how come when I search for Game::AI::Messaging on metacpan, I get an empty search result? 08:35
timotimo masak: metacpan doesn't show any perl6 i think 08:55
lizmat masak: modules.perl6.org 09:12
masak: also github.com/perl6/problem-solving/issues/26 09:13
fwiw, I agree with jmerelo
jmerelo thanks, lizmat 09:28
jmerelo I thought that roles in the way we use them, by mixing them in runtime, was more common. I don't think they are. Any idea if there's any other language that supports this? 09:51
m: my $foo = 3 but set(3,4); say $foo.Set
camelia Unexpected named argument 'value' passed
in block <unit> at <tmp> line 1
jmerelo m: my $foo = 3 but 3.0; say $foo.Num 09:52
camelia 3
masak fwiw, I agree with jmerelo too.
jmerelo masak: thanks.
m: my $foo = 3 but "bar"; say $foo.Str
camelia bar
jmerelo masak: you're the language expert here. One of them, anyway. Any idea if there's any language that does that thing above like Perl6 09:53
masak the README of Game::AI::Messaging tells me nothing. there's _one_ test file, and it has zero tests. I don't see why this module should be published at all. it's ridiculous that it has v0.1.8
masak jmerelo: depends what you mean by "that thing". I know of no other language with the `but` operator. but Python, for example, allows you to shove a method into an object. 09:54
jnthn jmerelo: en.wikipedia.org/wiki/Mixin#Examples
jmerelo jnthn: yep, I'm seeing that, but most of them only allow mixing at compile time, not mixing into containers.
masak I think the Smalltalk languages allows you to change the type of an object at runtime. there's also an operator for _swapping_ two objects in memory at runtime.
I forget its name 09:55
jmerelo jnthn: my actual question is anything like "but" in other languages? Or is that (also) unique?
jnthn masak: become, maybe? 09:56
masak yeah, something of that ilk
holyghost: seconding jmerelo's plea -- please don't pollute module-space with untested, undocumented code that only you can use
jnthn jmerelo: The JavaScript one kinda is, though it's prototype OO so maybe not direclty comparable 09:57
jmerelo jnthn: you add it to all instances of that class, right? 09:58
jnthn There are no classes in JavaScript
Object.assign(...) is adding to a particular object for sure 09:59
jmerelo jnthn: right. Whatever looks like a class in JS. Functions with self. Whatever.
jnthn I'm not aware of any other language that's exposed this kind of functionality as infix operators does/but, at least. :) 10:00
So probably Perl 6 is interesting in how comparatively easy it makes this
jmerelo jnthn: hum.
jnthn Unfortunately, it's an implementation/performance nightmare :) 10:01
jmerelo jnthn: point is. I'm giving a talk about perl6 next Saturday. I've made a list of 10 cool features of modern programming languages, all of which are in Perl6
jnthn: and that's the last one...
jnthn: adding a trait with but allows us to do "type tunnelling". We have a function that returns A, we can make it return A but B. We can check for B on reception. That's kinda cool, and also typesafe 10:02
jnthn *nod* 10:03
Yeah, it's a nice way to sneak in extra "ad-hoc" data/functionality to an object
Though of course comes with risks if over-done :)
jmerelo jnthn: with great power comes great responsability 10:04
timotimo great power, great composability 10:05
jmerelo timotimo: lol 10:06
masak I might be an outlier, but I can't recall using the `but` and `does` operators at all in production code...
jnthn I use them relatively occasionally 10:08
jmerelo masak: from time to time. We still have to produce programming patterns for most features in perl6
jnthn Just don't put it in any hot-path code :) 10:11
sena_kun speaking of `but`, I am still in awe of github.com/Altai-man/cro-ldap/blob...nt.pm6#L74 which is just _so_ elegantly fits there. 10:24
jnthn :D
That's cute
sena_kun s/which is/which/
antoniogamiz |%_ is the same as %_.list ? 10:38
timotimo antoniogamiz: | corresponds to .Slip 10:50
jmerelo sena_kun: absolutely. 10:51
jmerelo Anyone has tried to apply for GitHub sponsors? help.github.com/en/articles/about-...b-sponsors 11:13
It might be a good idea to get some of us supported by anonymous donor + matching donation by GitHub
masak sena_kun: nice usage! 12:09
unfortunately, me saying "I never use that feature" keeps bringing up nice/cool usages of a feature, so it's not really encouraging me to stop doing that, is it? :P 12:10
timotimo haha 12:12
sena_kun well, to be honest, when I firstly saw people doing stuff like `1 but Bool`, I was suprised to "Who on Earth would do that?" extent, but once I thought of "Oh, so you can mix in some roles into the type" it turned out to be pretty nice. I mean, you can always write a wrapper, and it is not a daily feature, but still can be useful. 12:13
masak aye 12:15
I'm curious how it would mix/blend with static typing
Geth ecosystem: allsopp++ created pull request #455:
Add Operator::dB
12:21
Geth ecosystem: 725313b14c | (Owen Allsopp)++ | META.list
Add Operator::dB

  github.com/allsopp/p6-Operator-dB
12:37
ecosystem: c1f08fb9fe | Altai-man++ (committed using GitHub Web editor) | META.list
Merge pull request #455 from allsopp/master

Add Operator::dB
kawaii I'm probably being a bit ambitious in this next project but are there any good guides for using NativeCall? I'd like to create a Perl 6 port of Crypt::Argon2 using the C lib (github.com/P-H-C/phc-winner-argon2) 13:04
sena_kun kawaii, have you seen github.com/skinkade/p6-crypt-argon2 ? 13:05
kawaii problem solved - thanks sena_kun! 13:06
sena_kun : )
holyghost vrurg : I might test out openbsd stuff for you, next week preferably, I saw you mention it in a post here 13:10
just .tell me stuff if I don;t answer
I'm on a amd64 openbsd 13:12
holyghost It's a macbook running 5.7 FWIW 13:23
vrurg .tell holyghost Thanks! Any help with any platform is welcome for sure. I would most likely close the existing openbsd ticket. So, feel free to open a new one. 13:50
yoleaux vrurg: I'll pass your message to holyghost.
jmerelo squashable6: status 15:31
squashable6 jmerelo, Next SQUASHathon in 7 days and ≈12 hours (2019-06-01 UTC-14⌁UTC+20). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
jmerelo Next question in StackOverflow will be the 1100 stackoverflow.com/questions/tagged/perl6 15:53
Not a incredibly beautiful number, but still.
timotimo squashathon will be right during gpn hmm 16:06
jmerelo gpn?
timotimo gulaschprogrammiernacht 16:07
moritz Gulashprogrammiernacht
a hacking event in Germany
jmerelo that sounds... German
timotimo it's a very cozy event
lukasv weekly: blogs.perl.org/users/damian_conway/...erl-6.html 16:08
notable6 lukasv, Noted!
ugexe how does one use race with functional map? 16:58
it isn't `ace map { sleep 0.5; print $_ }, 1..10;`
no matter where i put the `race` it seems to run sequentially 16:59
jnthn m: race map { say $*THREAD.id }, 1..100 17:06
camelia 4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4…
jnthn m: race map { sleep rand; say $*THREAD.id }, 1..100 17:07
ugexe: I think it is, just the default minimum batch size is too large for it to be visible there
(And the only way to set that is with the method)
camelia (timeout)4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4…
tadzik curious that it takes so much more than 1 second for it to run thouhg 17:08
jnthn oh, hang on...I'm not sure that's going to work out at all, since you need to be in race mode before starting 17:09
Hmm
lizmat weekly: blogs.perl.org/users/damian_conway/...erl-6.html 17:15
notable6 lizmat, Noted!
tadzik m: say Date.today.truncated-to('day')
camelia 2019-05-01
tadzik ^ LTA? 17:16
lizmat that feels wrong ?
tadzik very much so :)
lizmat could you make an issue ?
tadzik should be a no-op imho
sure
do we still use [email@hidden.address]
tadzik is out of the loop 17:17
lizmat nope, that's dead
tadzik [`] Github then, I assume?
lizmat indeed
tadzik alrighty, will do :) 17:17
actually, I could probably just fix it myself...
lizmat yeah, only needs an elsif, by the looks of it 17:18
in Dateish
in !truncate-ymd
nadim_ m: dd [1..2] ;
camelia Array element = [1, 2]
tadzik while filing the report I noticed that I'm on rakudo 2017.10. Wow 17:19
lizmat yes, looks like you're missing out on a lot of goodies / performance
nadim_ hi all, why is 'element' returned by .VAR.?name when there's no variable? 17:20
tadzik just on my desktop though, interestingly
nadim_ m: dd [1..2] ; 17:21
camelia Array element = [1, 2]
nadim_ like in this example
lizmat nadim_: actually am not sure why that is 17:22
nadim_ I don't think it used to do that before, before like the last time I paid attention 17:23
ugexe I thought `map { sleep rand; print $*THREAD.id }, race 1..100;` might work since it creates a RaceSeq for 1..100, but its sequential too 17:32
nadim_ m: [1, 2, 3].VAR.^name.say 17:38
camelia Array
nadim_ m: [1, 2, 3].VAR.?name.say
camelia element
nadim_ lizmat: does the above seem logical to you?
nadim_ m: [1, 2, 3][0].VAR.^name.say 17:40
camelia Scalar
nadim_ m: [1, 2, 3][0].VAR.?name.say
camelia Nil
lizmat yes, because .?name and .^name are two different things
timotimo m: [1, 2, 3].name.say
camelia element
timotimo .VAR on this just gives the same thing as without VAR
nadim_ I though ?methos was like cam().method 17:41
can
timotimo yeah, if the method exists it's called, otherwise Nil is returned
nadim_ ? calls the method on the object and ^ on the class, right? 17:43
timotimo no, ^ calls on the metaobject
which is often an instance of ClassHOW
nadim_ that's what I meant
timotimo OK. it's a big difference, at least in how i understand what calling a method "on the class" means 17:44
nadim_ I agree, bad vocabulary frommy part
timotimo OK, that's cleared up, then :)
nadim_ that yes but the "element" not yet
m: dd [1..2] ; 17:45
camelia Array element = [1, 2]
nadim_ it's even "element =" ! 17:48
timotimo method name() { nqp::isnull($!descriptor) ?? Nil !! $!descriptor.name } 17:50
github.com/rakudo/rakudo/blob/mast....pm6#L1352
nadim_ nopaste.linux-dev.org/?1203161 17:51
timotimo m: say $_ === $_.VAR given [1, 2, 3] 17:53
camelia True
timotimo .VAR is a no-op on the arra
so comparing it to how the scalar behaves is, IMO, wrong 17:54
m: say Array[int8].new(1, 2, 3).name
camelia Type check failed in assignment to ; expected int8 but got Int (1)
in block <unit> at <tmp> line 1
nadim_ more than a comparison it was meant to show the different results, and it's a bit unexpected
timotimo m: say Array[int8].new().name
camelia
timotimo m: say Array[Routine].new().name 17:55
camelia
lizmat weekly: www.reddit.com/r/perl6/comments/bs...ss_report/ 21:10
notable6 lizmat, Noted!
melezhik Hi, just wrote some update on Sparrow to Perl6 migration progress to, feel free to message me if someone is interested in Sparrow6/Perl6 automation - www.reddit.com/r/perl6/comments/bs...ss_report/ 21:13
lizmat melezhik++
melezhik I actually would like to test the water if it could be applicable for any Perl6 related projects / Perl6 development, now when Sparrow is pure Perl6, so I am open for ideas/discussions ((=; 21:16
sadly my current employer does not allow to use any Perl6 ... I have to put up with using Sparrow6 limited to my laptop/Sandbox environment 21:18
lizmat :-( 21:20
rba are there any subdomains on either rakudo.org or moarvm.org with a website? 21:54
lizmat rba: not to my knowledge, jnthn might be able to tell wrt moarvm.org 22:01
try doing an axfr on the DNS ? :-)
nadim_ m: my $s = <1 2 3>.slip ; dd $s 22:02
camelia No such method 'slip' for invocant of type 'List'. Did you mean any of these?
Slip
flip
sin
skip

in block <unit> at <tmp> line 1
lizmat m: my $s = <1 2 3>.Slip ; dd $s
camelia Slip $s = $(slip(IntStr.new(1, "1"), IntStr.new(2, "2"), IntStr.new(3, "3")))
nadim_ m: my $s = (1, 2, 3).slip ; dd $s
camelia No such method 'slip' for invocant of type 'List'. Did you mean any of these?
Slip
flip
sin
skip

in block <unit> at <tmp> line 1
nadim_ m: my $s = (1, 2, 3).Slip ; dd $s 22:03
camelia Slip $s = $(slip(1, 2, 3))
nadim_ m: my $s = (1, 2, 3).Slip ; dd $s ; sub s(Mu $s) { dd $s} ; s($s)
camelia Slip $s = $(slip(1, 2, 3))
$(slip(1, 2, 3))
nadim_ m: my $s = (1, 2, 3).Slip ; dd $s ; sub s(Mu $s, 'Begin', $s, 'end') { dd $s} ; dd s($s) ; 22:05
camelia 5===SORRY!5=== Error while compiling <tmp>
Redeclaration of symbol '$s'
at <tmp>:1
------> 3.Slip ; dd $s ; sub s(Mu $s, 'Begin', $s7⏏5, 'end') { dd $s} ; dd s($s) ;
expecting any of:
shape declaration
nadim_ m: my $s = (1, 2, 3).Slip ; dd $s ; sub s(Mu $s){ 'Begin', $s, 'end') { dd $s} ; dd s($s) ;
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3dd $s ; sub s(Mu $s){ 'Begin', $s, 'end'7⏏5) { dd $s} ; dd s($s) ;
expecting any of:
statement end
statement modifier
stat…
jnthn rba: Just checked; no 22:07
nadim_ m: my $s = (1, 2, 3).Slip ; dd $s ; sub s(Mu $s){ 'Begin', $s, 'end'} ; dd s($s)
camelia Slip $s = $(slip(1, 2, 3))
("Begin", 1, 2, 3, "end")
nadim_ m: my $s = (1, 2, 3).Slip ; dd $s ; sub s(Mu $s){ 'Begin', $s, 'end'} ; my ($b, Mu $s2, $e) = s($s) ; dd $s2 22:08
camelia Slip $s = $(slip(1, 2, 3))
Int $s2 = 1
nadim_ is it even possible to return a Slip? 22:09
m: my $s = (1, 2, 3).Slip ; dd $s ; sub s(Mu $s){ 'Begin', $s, 'end'} ; my ($b, \s2, $e) = s($s) ; dd s2
camelia Slip $s = $(slip(1, 2, 3))
1
nadim_ m: my $s = (1, 2, 3).Slip ; sub s(Mu $s){ 'Begin', $s, 'end'} ; my ($b, \s2, $e) = s($s) ; dd s2
camelia 1
nadim_ m: my $s = (1, 2, 3).Slip ; sub s(Mu $s){ $s} ; my ($b, \s2, $e) = s($s) ; dd s2 22:11
camelia 2
nadim_ jnthn, lizmat: is it possible to return a Slip? or does it get flattened when used (returned) 22:12
lizmat yes, you can return a Slip, and it gets flattened when returned 22:12
timotimo you're really multi-value-assigning there, so that'll invoke flattening 22:13
lizmat m: dd (1,2,3).map: { |(42,$_,666) } 22:13
camelia (42, 1, 666, 42, 2, 666, 42, 3, 666).Seq
timotimo if you want to keep the Slip, you'd just assign or perhaps even bind the return value
lizmat sleep&
timotimo gnite lizmat 22:14
nadim_ but it has to be returned on its own, returned with other values will always flatten it, right? 22:15
jnthn Yes, a Slip disappears into any list it is placed in 22:17
ugexe jnthn: seems like map { }, race (1..10000) should technically work (although ugly), but doesnt because `sub map(&code, +values)` the +values turns RaceSeq into a List. is it worth making this DWIM? 22:19
jnthn ugexe: I've thought about that one before, and can argue it both ways. 22:21
rba jnthn: thanks. 22:27
Made a temporary setup of the examples websites here: examples.p6c.dev/ 22:28
ugexe does that mean somehow making `race map { }, (1..100)` work would be desirable? 22:29
jnthn That'd be preferable. Thing is, `race` is something you opt into at a source 22:30
race for foo() { } is actually sugar for `do for foo().race { }`
ugexe preferable but impossible then heh
jnthn So the question is, can be find something useful for it to `.race` that isn't going to cause an utter WAT too often. 22:31
MasterDuke .ask pmurias wasn't bigint support a blocker for rakudo.js in firefox? if so, looks like it will be good soon wingolog.org/archives/2019/05/23/b...in-firefox 23:38
yoleaux MasterDuke: I'll pass your message to pmurias.
MasterDuke and if anybody who has a HN account wants to comment, there's some discussion about big integers and floating point and decimals, etc and how differen langs implement them news.ycombinator.com/item?id=19991405 23:40