»ö« 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.
00:03 buggable joined, ChanServ sets mode: +v buggable
buggable New CPAN upload: App-Platform-0.3.tar.gz by KAJI cpan.metacpan.org/authors/id/K/KA/...0.3.tar.gz 00:03
New CPAN upload: Net-LibIDN2-0.0.1.tar.gz by KAIEPI cpan.metacpan.org/authors/id/K/KA/...0.1.tar.gz 00:04
New CPAN upload: Concurrent-Stack-1.0.tar.gz by JNTHN cpan.metacpan.org/authors/id/J/JN/...1.0.tar.gz
New CPAN upload: JSON-Fast-0.9.11.tar.gz by TIMOTIMO cpan.metacpan.org/authors/id/T/TI/....11.tar.gz
00:04 evalable6 left, evalable6 joined, ChanServ sets mode: +v evalable6, cog__ left, shinobi-cl joined 00:09 pharv joined 00:14 pharv left 00:27 rouking joined
rouking Is there any nice way of grouping the elements of a list? i.e. I have a list of 100 elements and I want to take 10 at a time to create a 2D array 00:28
s/i.e./e.g.
MasterDuke rouking: look into rotor 00:29
rouking Ah, thanks
MasterDuke m: .say for (^10).rotor(3) 00:30
camelia (0 1 2)
(3 4 5)
(6 7 8)
rouking I knew there was an easy way
I totally glossed over rotor
01:09 skids joined 01:18 konsolebox left 01:20 konsolebox joined 01:22 unicodable6 left, unicodable6 joined, ChanServ sets mode: +v unicodable6 01:34 martinp2 joined 01:37 vike left
gfldex m: sub s(*@a){}; say &s.arity 01:38
camelia 0
01:52 pharv joined 01:53 konsolebox left, konsolebox joined 01:57 pharv left 01:58 konsolebox left 01:59 konsolebox joined 02:01 dct_ joined
shinobi-cl hi all.... so, the idea of the perl method is to have an EVALuable expression, representing the object so it can be serialized... right? 02:03
yoleaux 27 Feb 2018 10:59Z <timotimo> shinobi-cl: pause is the favoured way to get them up on modules.perl6.org, but the old way remains: to put an URL that points to your META6.json into the META.list on github.com/perl6/ecosystem - that will mean installing your module will pull whatever commit is current on the master branch, though. cpan lets you have proper versions instead
27 Feb 2018 11:05Z <Zoffix> shinobi-cl: You can use App::Mi6 module instead to upload
02:14 Zoffix joined
Zoffix shinobi-cl: right. With the exception of non-serializable objects (like, code blocks, or IO::Handles) 02:14
shinobi-cl i happen to have an class which objects can not actually be serializable. it's functionality depends on other object, so the only way to serialize it properly is to include the other object in it. 02:18
so, in thhat case, should i have a perl method retutning Nil? no perl method at all? 02:19
Zoffix All types inherit a .perl from Mu. Why not serialize the other object too?
m: class Foo { has $.meow }; class Bar { has $.foo = Foo.new: :42meow }; say Bar.new.perl 02:20
camelia Bar.new(foo => Foo.new(meow => 42))
Zoffix You could die if your object isn't serializeable
m: (1…*).perl
camelia Cannot .elems a lazy list
in block <unit> at <tmp> line 1
shinobi-cl mmmm i guess it makes sense to serialize the external object too. Since the idea in serializing is to be able to recreate the object completely. 02:23
even if the external object might be many times bigger than the actual object being serialized 02:24
02:44 cfa joined
cfa evening all 02:45
02:45 ilbot3 left
Zoffix \o 02:46
cfa a couple of questions: (i) is tilde expansion still not provided in a builtin function or IO::Path method?
and (ii) is .path missing from the Cool docs intentionally, or is that just an oversight?
Zoffix cfa: (i) tilde expansion won't be provided ever. (ii) wasn't even aware that was implemented. If it's not part of 6.c spec, it'll be removed 02:47
s: 42, 'path', \() 02:48
SourceBaby Zoffix, Sauce is at github.com/rakudo/rakudo/blob/440f...l.pm6#L212
cfa Zoffix: i typo'd that in the repl and was surprised to get a path back
re: tilde expansion, what's the reasoning? it's not very dwimmy to omit it
i understand not wanting to implement whole slew of globbing functionality but this seems fairly common to the point of being an expectation 02:49
Zoffix C:\Users\zoffi>cd ~
The system cannot find the path specified.
02:50 pharv joined
cfa what does p5 do with: perl -E 'say glob "~/"' 02:50
(on windows)
Zoffix C:\Temp>perl -E "say glob '~/'" 02:51
C:\Users\zoffi/
cfa ah, so ~ is hardcoded to mean $*HOME?
er, sorry to mix languages there
Zoffix Probably. But also filenames with tildes work and "~" doesn't mean "home" on Windows, so that's the reasoning for not doing any magical shell expansion; just as "-".IO will lose its special meaning in 6.d 02:52
C:\Temp>perl6 -e "say '~.txt'.IO.slurp" 02:53
testing
cfa that much makes sense
but hopefully you take my point re: dwim
i'm sure this has been discussed to death already though
02:54 dct_ left
Zoffix Well yeah, and if you want expansion, juse use $*HOME 02:54
C:\Temp>perl6 -e "$*HOME andthen .add('.perl6').dir.elems.say"
3
cfa yeah
the trouble is: ./foo.p6 --param=~/bar 02:55
then needs to be processed in my script
02:55 pharv left
cfa and by processed i mean with a user defined sub rather than a simple builtin like p5's glob 02:56
02:57 ilbot3 joined, ChanServ sets mode: +v ilbot3, cdg joined
Zoffix You can't really use glob for that. 02:58
$ perl -E 'say glob shift' "~/foo bar"
/home/zoffix/foobar
$ perl -E 'use File::Glob qw/bsd_glob/; say bsd_glob shift' "~/foo bar"
/home/zoffix/foo bar
Too bad `--param ~/bar` isn't accepted by `sub MAIN`. Otherwise, the shell would've just expanded it 02:59
02:59 epony left
cfa yeah, it's the = that's making this problematic 02:59
and i take your point re: lazy (!) use of glob
03:00 cog__ joined 03:01 mcmillhj joined 03:02 cdg left 03:04 natrys joined 03:06 mcmillhj left
Zoffix .tell AlexDaniel tossed unspecced/undocumented/unloved Cool.path. I'm assuming no one's using it, but your call on whether we should push it through deprecation period: github.com/rakudo/rakudo/commit/b212fc5e20 (same goes for Range.clone-with-op that was nuked earlier today, I guess) 03:11
yoleaux Zoffix: I'll pass your message to AlexDaniel.
03:12 martinp2 left 03:18 epony joined
Zoffix gd 03:37
oops. This ain't my terminal 03:38
03:38 mcmillhj joined 03:42 mcmillhj left 03:46 ufobat___ joined 03:47 Rawriful left 03:49 ufobat_ left 03:53 ZzZombo joined 04:03 mcmillhj joined
ZzZombo How can I make a parametrizable class declarator, like `custom-declarator A[foo=123] {...}`? 04:07
cfa Zoffix: hey, just did a fresh install of zef
ZzZombo What does make roles parametrizable?
cfa ===> Testing: zef:ver<0.2.3>:auth<github:ugexe>
No such method 'path' for invocant of type 'Str'. Did you mean any of these?
so, it's relying on Cool.path
04:08 mcmillhj left
Zoffix cfa: are you sure you're fresh-installing on latest Rakudo? 04:14
===> Testing [OK] for zef:ver<0.2.3>:auth<github:ugexe>
===> Installing: zef:ver<0.2.3>:auth<github:ugexe>
cfa hmm, i thought i was installing against HEAD, yeah
Zoffix cfa: ok, lemme check if I am
(I'm using zscript, but I think it uses my build, not system perl6)
cfa pretty sure i'm on the latest as zef's trying to take the .path of Str 04:15
which is now missing
Zoffix m: $*PERL6.compiler.version.say; Str.^lookup("path").say 04:17
camelia Dynamic variable $*PERL6 not found
in block <unit> at <tmp> line 1
Zoffix m: $*PERL.compiler.version.say; Str.^lookup("path").say
camelia v2018.02.1.105.gb.212.fc.5.e.2
(Mu)
04:20 wamba joined
Zoffix right, reproed 04:21
cfa github.com/ugexe/zef/blob/master/l...t.pm6#L362 for example 04:23
04:23 mcmillhj joined, [particle] joined, [particle]1 left
Zoffix .dist has $.path attribute tho 04:24
cfa ah okay
Zoffix looks to be this: lib/Zef/Service/Shell/git.pm6:151: my $checkout = ($uri.path // '').match(/\@(.*)[\/|\@|\?|\#]?/)[0];
04:28 mcmillhj left
cfa and 146 04:29
04:37 natrys left
Geth doc: 4fbafe2578 | (Zoffix Znet)++ | doc/Type/Cool.pod6
Document unspecced Cool.path

It's unspecced and never will be, but there's some use of it in the
  wild, so document it together with message that it's deprecated and users
should use .IO instead (.IO has slightly different behaviour in that Cool:U returns an IO::Path:U, rather than stringifying and then blowing up when trying to make an empty IO::Path).
Listed for deprecation in 6.d-prep in
  github.com/perl6/6.d-prep/commit/87d4fbacde
04:38
synopsebot Link: doc.perl6.org/type/Cool
Zoffix cfa: thanks. Reverted in github.com/rakudo/rakudo/commit/76eff07dd6 and marked a TODO for deprecation of it in in 6.d in github.com/perl6/6.d-prep/commit/87d4fbacde 04:39
04:39 galactus6x joined
Zoffix .tell AlexDaniel nm, turned out zef was using Cool.path. Gonna do deprecation in 6.d and removal in 6.e instead; even though it ain't in any spec. irclog.perlgeek.de/perl6/2018-03-03#i_15879089 04:39
yoleaux Zoffix: I'll pass your message to AlexDaniel.
04:40 Mithaldu left, mcmillhj joined
galactus6x Hi folks! 04:40
Zoffix \o
04:40 bhm left, bhm joined
galactus6x I have a question that may sound dumb but I tried to google it and got nowhere. 04:40
04:40 Mithaldu joined
Zoffix Cool. We love dumb questions. 04:40
galactus6x Okee Dokee... 04:41
Zoffix :)
galactus6x Well, I have both Rakudo Perl6 and Perl 5.24 on my computers. When I try to use the line use V6; it gives an error that I have Perl 5.24 and this is perl6 or something like that. I want to know how to be sure I am coding with perl6. 04:42
When I start the REPL in perl6 it uses perl6. But when I write a script I am not so sure then. I use Geany. 04:43
cfa Zoffix: ta 04:44
04:44 mcmillhj left
Zoffix galactus6x: yeah, that's what `use v6` line is for, to show the error like "Perl v6.0.0 required--this is only v5.26.1, stopped at -e line 1"; so that gets you covered if you accidentally run Perl 6 code with `perl`. Going the other way, you should use `use strict; use warnings;` (or `use strictures 2`) all your Perl 5 scripts and neither `warnings` no `strictures` pragmas exists (and I'm unaware of the 04:45
modules with those names), so you'd get an error there too
you could also alias perl6 to something different. like just `6` or `rakudo` and run scripts with `6 -e 'say 42'` for example. Will be less likely you'll confuse the names and type the wrong one by accident 04:46
galactus6x Wow. Thanks. I think I just don't need that v6 line if I am sure I want perl6. 04:48
Zoffix Correct.
04:50 konsolebox left, mcmillhj joined 04:51 pharv joined
galactus6x You guys are great. Glad I stuck with Perl. 04:51
have a great weekend!
Zoffix You too! 04:52
04:52 konsolebox joined 04:55 mcmillhj left, pharv left
shinobi-cl hi all 04:55
how can i make this work? 04:56
m: subset Pos of Int where * >= 1; sub test(Array[Pos] @list) { @list.perl }; say test( [1,2,3] );
camelia Type check failed in binding to parameter '@list'; expected Positional[Array[Pos]] but got Array ($[1, 2, 3])
in sub test at <tmp> line 1
in block <unit> at <tmp> line 1
04:56 galactus6x left
shinobi-cl m: subset Pos of Int where * >= 1; sub test(Pos $x) { $x.perl }; say test(1); 04:56
camelia 1
Zoffix m: subset Pos of Int where * ≥ 1; sub test(Array[Pos] @list) { @list.perl }; say test Array[Pos].new: 1,2,3;
camelia Type check failed in binding to parameter '@list'; expected Positional[Array[Pos]] but got Array[Pos] (Array[Pos].new(1, 2, 3))
in sub test at <tmp> line 1
in block <unit> at <tmp> line 1
Zoffix m: subset Pos of Int where * ≥ 1; sub test(Array[Pos] @list) { @list.perl }; say test Array[Array[Pos]].new: 1,2,3; 04:57
camelia Type check failed in assignment to ; expected Array[Pos] but got Int (1)
in block <unit> at <tmp> line 1
Zoffix m: subset Pos of Int where * ≥ 1; sub test(Array[Pos] @list) { @list.perl }; say test Array[Array[Pos]].new: Array[Pos].new: 1,2,3;
camelia Type check failed in assignment to ; expected Array[Pos] but got Int (1)
in block <unit> at <tmp> line 1
Zoffix beh
shinobi-cl the idea is not using this part :) -> Array[Pos].new:
Zoffix shinobi-cl: well, let's step back. What are you trying to accept as a parameter?
shinobi-cl m: subset Pos of Int where * >= 1; sub test(Pos $x) { $x.perl }; say test(1);
camelia 1
shinobi-cl this works, because 1 is accepted by the type Pos 04:58
m: subset Pos of Int where * >= 1; sub test(Array[Pos] @list) { @list.perl }; say test( [1,2,3] );
camelia Type check failed in binding to parameter '@list'; expected Positional[Array[Pos]] but got Array ($[1, 2, 3])
in sub test at <tmp> line 1
in block <unit> at <tmp> line 1
Zoffix m: subset Pos of Int where * ≥ 1; sub test(@list where .all ~~ Pos) { @list.perl }; say test [1, 2, 3]
camelia [1, 2, 3]
shinobi-cl the elements here all comply with type Pos
04:58 travis-ci joined
travis-ci Doc build passed. Zoffix Znet 'Document unspecced Cool.path 04:58
travis-ci.org/perl6/doc/builds/348543882 github.com/perl6/doc/compare/2edc0...bafe2578aa
04:58 travis-ci left
shinobi-cl ahh that was the syntax i was looking for... thanks Zoffix++ :) 04:59
Zoffix shinobi-cl: ^ that then. `Array[Pos] @list` means "Array parameterized with Array parametarized with Pos" and there's some bugs with that IIRC
(well, probably, there's something about subsets)
04:59 skids left
shinobi-cl m: subset Pos of Int where * ≥ 1; sub test(@list where {all(*) ~~ Pos}) { @list.perl }; say test [1, 2, 3] 05:00
camelia Constraint type check failed in binding to parameter '@list'; expected anonymous constraint to be met but got Array ($[1, 2, 3])
in sub test at <tmp> line 1
in block <unit> at <tmp> line 1
shinobi-cl that was the syntax i was trying...
Zoffix m: subset Pos of Int where * ≥ 1; sub test(@list where *.all ~~ Pos) { @list.perl }; say test [1, 2, 3] 05:01
camelia Constraint type check failed in binding to parameter '@list'; expected anonymous constraint to be met but got Array ($[1, 2, 3])
in sub test at <tmp> line 1
in block <unit> at <tmp> line 1
Zoffix uh-oh
m: say *.all ~~ Int 05:02
camelia False
Zoffix Ah, ok, it doesn't close over it
But if it did, that'd be the syntax. You don't use the whatever star and a block together, as the whatever star make a closure already. Also, you can't just pass it alone as args `all(*)`; when it's by itself, that's just a Whatever object, not a WhateverCode closure. 05:03
And lastly, `where` thunks, so you can often (but not always) omit both the WhateverStar and the block. 05:04
05:04 mcmillhj joined
Zoffix (the "Tip" section at the bottom of this section shows the subtle difference in the thunks: docs.perl6.org/type/Signature#Type_Constraints ) 05:04
Don't see the Issue for the bug in constraints of iterables in variables vs. params.. Forget what it was called 05:08
05:09 mcmillhj left
Zoffix Probably R#1414 05:09
synopsebot R#1414 [open]: github.com/rakudo/rakudo/issues/1414 Class attribute constraints applied on elements of array attribute, not the attribute itself
ZzZombo Zoffix, can you help me too, the question was posted above? 05:13
05:13 cdg joined
Zoffix ZzZombo: I don't know the answer. I think one of the meta classes handles parameterization github.com/rakudo/rakudo/tree/mast.../Metamodel maybe ParametricRoleHOW.nqp github.com/rakudo/rakudo/blob/mast...oupHOW.nqp or ParametricRoleHOW.nqp github.com/rakudo/rakudo/blob/mast...oleHOW.nqp I think the way it 05:15
works is when you define a role you get a ParametricGroupHOW which functions like a dispatcher for specific roles (like a dispatcher for routines dispatches for multies)
m: my role Foo {}; Foo.HOW.^name.say
camelia Perl6::Metamodel::ParametricRoleGroupHOW
Zoffix m: my role Foo {}; Foo.^candidates.map(*.^name).say 05:16
camelia (Foo)
Zoffix m: my role Foo {}; Foo.^candidates.map(*.HOW.^name).say
camelia Cannot resolve caller map(List: Str); none of these signatures match:
($: Hash \h, *%_)
(\SELF: &block;; :$label, :$item, *%_)
in block <unit> at <tmp> line 1
ZzZombo Okay, I'll take a look.
Zoffix m: my role Foo {}; Foo.^candidates.map({.HOW.^name}).say
camelia (Perl6::Metamodel::ParametricRoleHOW)
05:17 konsolebox left 05:18 cdg left, konsolebox joined 05:19 chakli joined, khw left 05:21 mcmillhj joined 05:24 chakli left
shinobi-cl m: subset Pos of Int where * >= 1; sub test1(Array[Pos] $list) { say "test1"; }; sub test2(@list where .all ~~ Pos) { say "test2"; }; my Pos @list = (1..1000).eager; { test1(@list); say "== test1 : $(now - ENTER now) secs. =="; }; { test2(@list); say "== test1 : $(now - ENTER now) secs. =="; } 05:26
ZzZombo What is an "archetype" in the metaclasses?
camelia test1
== test1 : 0.00176882 secs. ==
test2
== test1 : 0.02749649 secs. ==
05:26 mcmillhj left
shinobi-cl m: subset Pos of Int where * >= 1; sub test1(Array[Pos] $list) { say "test1"; }; sub test2(@list where .all ~~ Pos) { say "test2"; }; my Pos @list = (1,2,3).eager; { test1(@list); say "== test1 : $(now - ENTER now) secs. =="; }; { test2(@list); say "== test1 : $(now - ENTER now) secs. =="; } 05:27
camelia test1
== test1 : 0.0015581 secs. ==
test2
== test1 : 0.00063560 secs. ==
shinobi-cl i guess that is better to be more "rigid" in the types when using large sets. test2 seems more convenient to write but it has to check every element each time. 05:28
05:28 eliasr left
ZzZombo Well, the first one does that too, actually. 05:29
Zoffix shinobi-cl: no point in `.eager` call there. Assignment to @ sigils is "mostly-eager"; so it'll be eager, unless the thing is marked as .is-lazy (which mostly happens on infinite things). 05:30
ZzZombo m: dd role {}.^body_block() 05:32
camelia sub (::$?CLASS ::::?CLASS Mu $) { #`(Sub|54740296) ... }
ZzZombo what's this?
05:33 mcmillhj joined 05:35 shinobi-cl left 05:36 chakli joined
chakli what would the equivalent of gist.github.com/willurd/5720255 in perl6? 05:37
05:37 mcmillhj left
Zoffix heh, good question 05:39
The listed commands there are hardly equivalent to each other :)
chakli ok *similar :) 05:41
i hardly know any of those languages to notice they are not equivalent
Zoffix chakli: I don't have Bailador installed so it's untested, but based on docs, it'd be something like `perl6 -MBailador -e 'static-dir /(.+)/ => "."; baile;'` 05:44
It's this module: github.com/Bailador/Bailador
05:45 mcmillhj joined
Zoffix Also, I'm not familiar with it, but there might be some Cro one-liner as well ( project's website: mi.cro.services/ ) 05:45
chakli ok, nothing built in like python i suppose 05:47
btw is there a list of core modules like perl had?
05:49 mcmillhj left
Zoffix chakli: right, nothing built in; only plain async and non-async sockets. Depends on what you define as "core". Our end-user facing releases are shipped as Rakudo Star distribution and those modules are these: github.com/rakudo/star/tree/master/modules I see it includes "HTTP::Easy" module; there's no shiny one-liner, but some server is available: 05:50
05:50 shinobi-cl joined
Zoffix github.com/supernovus/perl6-http-e...d1#example but many users use the compiler releases directly, in which case the "core" has only a couple of modules, like Test and NativeCall (full list: modules.perl6.org/search/?q=from%3Acore ) 05:50
chakli: installed Bailador and tested that one-liner. It serves on port 3000 by default and doesn't offer a listing (but files do get served, if you type the names to them) 05:52
This one-liner does show a non-navigable root-dir file listing: perl6 -MBailador -e 'get "/" => { join "<br>", dir.map: {“<a href="/$_">$_\</a>”} }; static-dir /(.+)/ => "."; baile' 05:54
I don't use that stuff.... for all I know there might be a plugin you just load and get a browseable listing 05:55
chakli ok :) thanks 05:59
06:04 kaare_ left
chakli Does anyone know if there a https server by any chance? I cant figure out if HTTP::Easy supports it. 06:24
Zoffix It probably doesn't, seeing as it doesn't have neither blocking nor async IO::Socket::SSL in prereqs. Cro does list HTTPS server in the list of its features tho (last sliding panel on the home page): mi.cro.services/ 06:26
chakli yeah 2 slides do say https 06:32
06:33 mcmillhj joined 06:37 chakli left
ZzZombo m: Proxy.new(:FETCH(method(){},method($value){$value.say}))=123; 06:37
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$value' is not declared. Did you mean '&values'?
at <tmp>:1
------> 3Proxy.new(:FETCH(method(){},method(7⏏5$value){$value.say}))=123;
06:37 mcmillhj left
ZzZombo what??? 06:38
06:38 kaare_ joined
timotimo ZzZombo: put a space after method 06:40
yoleaux 02:06Z <MasterDuke> timotimo: my perf report shows 80% spent in MVM_profile_instrumented_mark_data
timotimo ZzZombo: you're spelling out a call to a sub called method 06:41
m: sub method { say "ohai" }; method($_){}
camelia 5===SORRY!5=== Error while compiling <tmp>
Calling method(Mu) will never work with declared signature ()
at <tmp>:1
------> 3sub method { say "ohai" }; 7⏏5method($_){}
timotimo m: sub method(|) { say "ohai" }; method($_){}
camelia ohai
ZzZombo Well, shouldn't it first complain about undeclared identifier? 06:42
'method' I mean
timotimo no, you can post-declare subs 06:43
m: method(1234); sub method($_) { say "hi $_" }
camelia hi 1234
06:43 troys left 06:46 kaare__ joined 06:48 kaare_ left 06:49 mcmillhj joined
Zoffix Also, you don't have to use methods 06:51
m: Proxy.new(:FETCH{;},:STORE(->$,$v {$v.say}))=123;
camelia 123
Zoffix eco: Proxee
buggable Zoffix, Proxee 'A more usable Proxy with bells': github.com/zoffixznet/perl6-Proxee
timotimo using a method for proxies can lead to trouble 06:52
Zoffix Like what?
timotimo m: class Test { has $.x; has $.y; has $.z; has $.xx; has $.xy; has $.xz; has $.a; method proxit is rw { Proxy.new(fetch => method ($) { say $!a; $!a }, store => method ($, $) { say "stored" }) } }; Test.new(a => 99).proxit.say 06:53
camelia Required named parameter 'FETCH' not passed
in method proxit at <tmp> line 1
in block <unit> at <tmp> line 1
timotimo m: class Test { has $.x; has $.y; has $.z; has $.xx; has $.xy; has $.xz; has $.a; method proxit is rw { Proxy.new(FETCH => method ($) { say $!a; $!a }, STORE => method ($, $) { say "stored" }) } }; Test.new(a => 99).proxit.say
camelia Too few positionals passed; expected 2 arguments but got 1
in method <anon> at <tmp> line 1
in block <unit> at <tmp> line 1
06:53 mcmillhj left
timotimo m: class Test { has $.x; has $.y; has $.z; has $.xx; has $.xy; has $.xz; has $.a; method proxit is rw { Proxy.new(FETCH => method (|) { say $!a; $!a }, STORE => method (|) { say "stored" }) } }; Test.new(a => 99).proxit.say 06:54
camelia P6opaque: no such attribute '$!a' on type Test in a Proxy when trying to get a value
in method <anon> at <tmp> line 1
in block <unit> at <tmp> line 1
Zoffix Ah. OK :)
timotimo the code inside believes it's compiling for a Test, but it's being invoked with a self of type Test 06:55
er
of type Proxy
so it's trying to get Proxy's $!a, which doesn't exist
at some point i think this segfaulted?
committable: releases class Test { has $.x; has $.y; has $.z; has $.xx; has $.xy; has $.xz; has $.a; method proxit is rw { Proxy.new(FETCH => method (|) { say $!a; $!a }, STORE => method (|) { say "stored" }) } }; Test.new(a => 99).proxit.say 06:56
committable6 timotimo, gist.github.com/3ec1c51f33b5794776...a682c86292
06:57 wamba left
timotimo yeah, from 2015.12 through 2016.08.1 it segfaulted 06:57
07:03 AlexDaniel joined 07:07 mcmillhj joined 07:11 mcmillhj left 07:23 mcmillhj joined 07:25 darutoko joined 07:29 mcmillhj left 07:33 aindilis left 07:34 dct_ joined 07:39 Actualeyes left 07:42 mcmillhj joined 07:47 mcmillhj left 07:55 dct_ left, mcmillhj joined 07:57 greppable6 left 07:59 mcmillhj left 08:03 dct_ joined 08:04 wamba joined
ZzZombo I'm confused, do I need `is raw` on sigilles parameter? 08:09
timotimo no, sigilless implies "is raw" 08:10
ZzZombo Well, Zoffix's code at github.com/zoffixznet/perl6-Proxee...ee.pm6#L43 has that combination. 08:13
timotimo could be documentational 08:14
08:17 robertle joined
buggable New CPAN upload: JSON-Hjson-0.0.1.tar.gz by AKIYM cpan.metacpan.org/authors/id/A/AK/...0.1.tar.gz 08:23
08:25 rindolf joined 08:26 mcmillhj joined 08:28 dct_ left 08:31 mcmillhj left 08:32 sena_kun joined 08:40 mcmillhj joined 08:41 wamba left 08:44 mcmillhj left 08:46 wamba joined 08:47 wamba1 joined 08:50 wamba left 08:52 pharv joined 08:56 pharv left 09:04 wamba1 left 09:09 aindilis joined 09:13 cdg joined 09:18 cdg left 09:20 espadrine left 09:24 mcmillhj joined 09:28 |oLa| joined
ZzZombo When will zef's "No such method 'subst' for invocant of type 'Any'" be fixed? 09:29
09:29 mcmillhj left
moritz ZzZombo: which issue is that, on github? 09:34
ZzZombo github.com/ugexe/zef/issues/213 09:35
timotimo well, someone seems to think it's fixed already
moritz right, so nobody will work on it
if the problem resurfaced again, with a current version of zef, you should open a new issue, possibly referencing the old one 09:36
09:40 shinobi-cl left
ZzZombo huh, why is it so? Does not it just fall into the `\(Mu:U,Mu:U)` candidate, does it? Or an Attribute-specific one is needed perhaps, like there is one for Variable. 09:49
m: role R {};class A {has $.a is R}
camelia 5===SORRY!5=== Error while compiling <tmp>
is trait on $-sigil variable not yet implemented. Sorry.
Did you mean: my R $a?
at <tmp>:1
------> 3role R {};class A {has $.a is R7⏏5}
expecting any of:
constraint
ZzZombo Either way, seems like a strange omission.
timotimo i feel like i missed a line or two in between that? 09:50
ZzZombo No?
timotimo oh, the sentence refered to the next line
ZzZombo Ah, yea.
timotimo it wouldn't use Mu:U because Attribute objects used there are instances, not type objects
ZzZombo Good catch. 09:51
timotimo s: &trait_mod:<is>, \(Attribute.new, Rational)
SourceBaby timotimo, Something's wrong: ␤ERR: Required named parameter 'name' not passed␤ in block <unit> at -e line 6␤␤
timotimo s: '&trait_mod:<is>', \(Attribute.new, Rational) 09:52
SourceBaby timotimo, Something's wrong: ␤ERR: Required named parameter 'name' not passed␤ in block <unit> at -e line 6␤␤
timotimo oh, the constructor for the attribute
s: '&trait_mod:<is>', \(Rat.^attributes[0], Rational)
SourceBaby timotimo, Something's wrong: ␤ERR: Cannot resolve caller sourcery(Str, Capture); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
timotimo s: &trait_mod:<is>, \(Rat.^attributes[0], Rational)
SourceBaby timotimo, Sauce is at github.com/rakudo/rakudo/blob/a918...ts.pm6#L76
timotimo looks like it actually gets its exception thrown right in the parser before trait_mod:<is> is even called to figure out if it's implemented or not 09:53
09:56 dct_ joined 10:01 travis-ci joined
travis-ci Doc build passed. Aleks-Daniel Jakimenko-Aleksejev 'Mention fancy unicode variables in STYLEGUIDE 10:01
travis-ci.org/perl6/doc/builds/348396073 github.com/perl6/doc/compare/71829...dc06200129
10:01 travis-ci left
ZzZombo Can that be changed? Why block something like that this hard? On the grammar level even. 10:02
10:03 travis-ci joined
travis-ci Doc build passed. Zoffix Znet 'Use prettier ASCII art for file trees 10:03
travis-ci.org/perl6/doc/builds/348376519 github.com/perl6/doc/compare/990ad...451bd3cedd
10:03 travis-ci left
timotimo do you expect it to be the same as putting the typen ame in front? 10:03
ZzZombo Sorry, what? 10:04
timotimo do you expect "has Foo $.a" to mean the same thing as "has $.a is Foo"?
ZzZombo no
timotimo OK
ZzZombo is should be applied straight to the Attribute, like everywhere else.
timotimo well, it's trivial to unblock it from the grammar once the underlying feature is implemented 10:05
though we probably do want to check if the user has maybe defined or imported a custom trait_mod:<is> for this feature
and not explode in that case
and fwiw since trait mods are already run at parse time anyway, we could implement the throwing in a multi candidate for that as well 10:06
ZzZombo Yea, it surprised me it doesn't do that already. 10:07
And decided to explode even. 10:08
Oh well, a blocker in sight until that is out of the way.
10:09 wamba joined 10:15 wamba left
timotimo what are you going to use it for? 10:19
10:21 clkao left, chansen_ left, chansen_ joined, clkao joined, timeless left 10:22 timeless joined 10:23 pierre_ joined 10:24 aindilis left
ZzZombo To apply a role to attributes, as there is no any other easy way to modify them. 10:28
timotimo oh! 10:29
but "is Typename" already means something else
at least i believe so
ZzZombo What?
timotimo i think it works a lot like "my @foo is CustomArrayClass = 1, 2, 3" 10:30
"is supposed to", that is
i don't find anything in the spec tests nor in the design docs, though 10:31
10:32 epony left 10:33 mirlur[m]1 joined 10:34 Mithaldu` joined
timotimo the tests in S02-types/of-type.t are only for % and @ sigiled attributes, and the design doc verbiage seems to only refer to "my" variables 10:36
10:37 Mithaldu left, Mithaldu` is now known as Mithaldu, mirlur[m] left
timotimo anyway, i'd expect that to generalize to attributes as well 10:37
10:38 ilmari[m] left 10:39 ilmari[m] joined, yoleaux left 10:40 yoleaux joined, ChanServ sets mode: +v yoleaux 10:53 wamba joined, pharv joined
timotimo cd ~/perl6/rakudo/; echo "rakudo commit"; git show -s; echo; cd ../nqp/; echo "nqp commits since last bump"; git lg (cat ../rakudo/tools/build/NQP_REVISION)..; echo; cd ../moarvm/; echo "moar commits since last bump"; git lg (cat ../nqp/tools/build/MOAR_REVISION)..; 10:57
10:58 pharv left
timotimo ^- (fish syntax) shows the current commit in rakudo and all commits since last bump in both nqp and moar 10:58
squashable6 🍕 AlexDaniel++ wrote a comment on “「StrDistance」 not documented”: github.com/perl6/doc/issues/691#is...-370139130 11:05
11:06 SHODAN left 11:08 SHODAN joined 11:18 SHODAN left 11:20 SHODAN joined 11:28 SHODAN left
ZzZombo I can still work around that by defining my own `trait_mod:<is>` to mix the role into the attribute. I just need that block to be removed. 11:29
11:36 SHODAN joined
squashable6 🍕 ZzZombo++ wrote a comment on “Is the matching magic really nondeterministic?”: github.com/perl6/doc/issues/1790#i...-370141332 11:44
🍕🍕🍕 First contribution by ZzZombo++! ♥
ZzZombo Shhh
11:53 xtreak joined
timotimo restarts more travis builds 12:03
nobody must know of my JSON::Fast ~bug 12:04
squashable6 🍕 AlexDaniel++ edited issue “Lots of broken links, in…”: github.com/perl6/doc/issues/561 12:15
12:17 kaare__ is now known as kaare_
squashable6 🍕 AlexDaniel++ wrote a comment on “Lots of broken links, in…”: github.com/perl6/doc/issues/561#is...-370143442 12:18
12:19 epony joined 12:23 travis-ci joined
travis-ci Doc build passed. Aleks-Daniel Jakimenko-Aleksejev '.pm → .pm6 12:23
travis-ci.org/perl6/doc/builds/348353896 github.com/perl6/doc/compare/51585...68b66bd01e
12:23 travis-ci left, travis-ci joined
travis-ci Doc build passed. Zoffix Znet 'Revert "Document Range.clone-with-op." 12:23
travis-ci.org/perl6/doc/builds/348356336 github.com/perl6/doc/compare/d468b...0adfde1ec4
12:23 travis-ci left 12:25 buggable left 12:28 espadrine joined 12:33 SyrupThinker joined 12:59 telex left 13:00 telex joined 13:09 yqt joined 13:29 shinobi-cl joined 13:38 greppable6 joined 13:47 vike joined 14:05 shinobi-cl left 14:26 khisanth_ left 14:27 |oLa|1 joined 14:28 |oLa|2 joined, |oLa| left 14:29 shinobi-cl joined 14:30 JJ_ joined 14:31 |oLa|1 left
JJ_ Hi there. Just checking in to see if I can be of help in the monthly SQUASHathon. I'm in Bogotá right now, and flying this evening in the redeye to Madrid, but I can work on something on the flight or tomorrow at home :-) Do assign me some issue if 14:33
14:34 wamba left 14:39 khisanth_ joined 14:44 xtreak left 14:51 vike left 14:57 skids joined, shinobi-cl left 14:59 shinobi-cl joined 15:00 natrys joined
timotimo JJ_: your message got cut off after "do assign me some issue if" 15:02
ZzZombo what a cliffhanger, I'm all intrigued 15:03
15:04 shinobi-cl left
Geth doc: 1b723a26bc | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/objects.pod6
reference an example of use at the point TWEAK is referenced in a search
15:04
synopsebot Link: doc.perl6.org/language/objects
squashable6 🍕🍕🍕 First contribution by tbrowder++! ♥
ZzZombo ===> Building: Inline::Perl5:ver<0.31>:auth<github:niner> 15:08
The spawned command 'make' exited unsuccessfully (exit code: 127)
in method build at /home/boss/.zef/store/Inline-Perl5-0.31.tar.gz/Inline-Perl5-0.31/Build.pm line 21
in block <unit> at -e line 1
===> Building [OK] for Inline::Perl5:ver<0.31>:auth<github:niner>
huh, why it completed successfully?
squashable6 🍕 tbrowder++ wrote a comment on “add an example of TWEAK”: github.com/perl6/doc/issues/1796#i...-370154207
🍕 tbrowder++ closed issue “add an example of TWEAK”: github.com/perl6/doc/issues/1796
ZzZombo ...aaaand it failed down the line in a dependency, for this same reason. 15:09
15:11 konsolebox left
JJ_ @timotimo not much after that. Assign me some issue if you think I can be of help. 15:12
timotimo there's a crapton to choose from :| 15:15
any specific kind you're interested in?
15:15 ufobat_ joined
squashable6 🍕 JJ++ wrote a comment on “「StrDistance」 not documented”: github.com/perl6/doc/issues/691#is...-370154763 15:16
ZzZombo Playing around with Perl and Ubuntu in general under WSL. Thinking about switching over to Unix in near future.
timotimo for the time being, VM is probably good enough? 15:17
MasterDuke random thought. we have a couple 'Perl 6 from *' documents, would a 'from Javascript' be useful?
Geth ecosystem: 6537451d9d | (Bahtiar `kalkin-` Gadimov)++ | META.list
Update Ddt to v0.4.3

  - [X] I **agree** to the usage of the META file as listed [here](github.com/perl6/ecosystem#legal).
  - [X] I have a license field listed in my META file that is one of spdx.org/licenses
ecosystem: 55aa68264c | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | META.list
Merge pull request #387 from kalkin/master

Update Ddt to v0.4.3
15:17 ufobat___ left
15:18 konsolebox joined
MasterDuke i feel like there might be a lot of people who have a lot of experience with JS, but not so much with other languages 15:19
squashable6 🍕 JJ++ wrote a comment on “Lots of broken links, in…”: github.com/perl6/doc/issues/561#is...-370154995
15:21 shinobi-cl joined 15:25 ufobat___ joined 15:26 JJ_ left 15:27 ufobat_ left, shinobi-cl left 15:30 konsolebox left 15:37 konsolebox joined
squashable6 🍕 AlexDaniel++ edited issue “Lots of broken links, in…”: github.com/perl6/doc/issues/561 15:46
🍕 AlexDaniel++ wrote a comment on “Lots of broken links, in…”: github.com/perl6/doc/issues/561#is...-370157120
15:50 trnh joined 15:52 shinobi-cl joined, ufobat_ joined
ZzZombo Can I run some code without any messages leaking into the console? 15:53
timotimo what comment systems for websites (blogs in particular) can people tolerate? 15:54
ZzZombo: there's "quietly" for warnings, there's reassignign $*OUT and $*ERR for anything else
15:54 dct_ left, ufobat___ left
ZzZombo Disqus. Everything else I have blocked in my anti-ad-tracker-etc-and-so-ons 15:54
That's disregarding something built-in into the site rather than reusing thirdparty solutions, like Youtube comments, etc. 15:56
15:58 thowe joined, aindilis joined
ZzZombo Uh, was that a success? A failure? 15:59
===> Installing: Inline::Perl5:ver<0.31>:auth<github:niner> Use of Nil in string context 16:00
in block at home#sources/31AF5F9B0A3AD1CDE64740B73E8F2B3B03FB2380 (Inline::Perl5) line 25"
moritz I blocked Disqus
way too many 3rd-party scripts
shinobi-cl m: my @a =<hola como te va>; say grep {rx/a/}, @a, :k:v; 16:03
camelia (0 3)
shinobi-cl m: my @a =<hola como te va>; say grep {rx/a/}, @a, :v:k;
camelia (hola va)
shinobi-cl how does this magic work? how can grep knows that :v or :k was the first one to be defined in the parameter list? 16:04
m: my @a =<hola como te va>; say grep {rx/a/}, @a, :v:kv:p:k;
camelia (hola va)
16:05 skids left
ZzZombo `grep` certainly doesn't, but the multi dispatcher do. 16:06
16:06 kaare_ left, kaare_ joined
timotimo m: sub test(*%f) { .say for %f }; test :k:v; test :v:k; 16:08
camelia k => True
v => True
k => True
v => True
AlexDaniel
.oO( Disqust )
16:09
yoleaux 03:11Z <Zoffix> AlexDaniel: tossed unspecced/undocumented/unloved Cool.path. I'm assuming no one's using it, but your call on whether we should push it through deprecation period: github.com/rakudo/rakudo/commit/b212fc5e20 (same goes for Range.clone-with-op that was nuked earlier today, I guess)
04:39Z <Zoffix> AlexDaniel: nm, turned out zef was using Cool.path. Gonna do deprecation in 6.d and removal in 6.e instead; even though it ain't in any spec. irclog.perlgeek.de/perl6/2018-03-03#i_15879089
AlexDaniel Zoffix++, thanks 16:10
shinobi-cl m: my @a =<hola como te va>; say grep {rx/a/}, @a, :fake-flag;
camelia Unexpected adverb 'fake-flag' passed to grep on List
in block <unit> at <tmp> line 1
16:10 pierre_ left 16:13 kaare_ left
Zoffix eco: IO::MiddleMan 16:13
Buggable is really unhappy with the updated rakudo
Just keeps looping on "Attempting to connect to server; connection closed"
16:14 buggable joined, ChanServ sets mode: +v buggable
Zoffix and maybe updated modules; updated since 2017.09 or so 16:14
eco: IO::MiddleMan
buggable Zoffix, IO::MiddleMan 'hijack, capture, or mute writes to an IO::Handle': github.com/zoffixznet/perl6-IO-MiddleMan
Zoffix ZzZombo: ^ you could use that module to prevent messages. And that `is raw` in Proxee might've just been a leftover from when a non-sigiless param was first used
16:15 kaare_ joined 16:20 pmurias joined, kaare_ left 16:25 giraffe joined
Zoffix m: use nqp; my int $a = 10; dd nqp::isint($a) 16:27
camelia 0
Zoffix how come it ain't?
16:28 kaare_ joined
jnthn Because Perl 6 int boxes into P6opaque 16:28
yoleaux 06:24Z <Zoffix> jnthn: a proposal for some tweaks to Rationals to fix a number of bugs and the race condition, if you wanted to review: github.com/rakudo/rakudo/blob/mast...tionals.md
Zoffix Ah. Thanks.
jnthn Well, into Int, which as the P6opaque repr
And that op looks if the repr is P6int, which NQP's rather simpler object mode uses
Zoffix ^ I'm also adding "Fix bugs with uint64 denominators and Make Rat denominators uint64 for minor perf gain and try to maximize gain with some nqp::p6div ops that'd compile down to nqp::div_i if both operands are native ints, or to nqp::div_I otherwise) 16:29
"
to the proposal I mean
jnthn Hm, interesting
I'd have not entirely expected it to be a win 16:30
MasterDuke wouldn't uints have to be fixed in MoarVM first?
jnthn In that to use the _I ops we'd need to box it 16:31
Zoffix Yeah, that was my first assumption too, but bench I just evaled in #perl6-dev shows a minor gain
16:31 pmurias left
Zoffix MasterDuke: s/Fix bugs with uint64 denominators/Fix bugs with uint64 attributes/ 16:31
16:33 Sgeo left
MasterDuke heh, a significantly harder task... 16:33
16:34 Sgeo joined, trnh left 16:35 kaare__ joined
Zoffix ZofBot: We choose to fix uint64 attributes in this decade and do the other things, not because they are easy, but because they are hard; 16:35
ZofBot Zoffix, There’s a British Rail sign on the other end
16:36 kaare_ left
jnthn Heh, so ZofBot thinks it'll be expensive to fix and probably delayed? :) 16:44
Zoffix :) 16:46
16:46 domidumont joined
tbrowder anyone want to talk about Test::is-deeply? i need some advice 16:53
Zoffix tbrowder: Sure.
tbrowder Bailador uses lots of is-deeply tests for http responses and we get a lot of failures due to whitespace differences. a :ws adverb to is-deeply to compare string values more loosely would be very handy. 16:55
the main culprit is see is pairs where the value is a string; html canonicalization would help, too, but i'm not sure that would be so easy for the test author. 16:57
Zoffix You mean adding that to Test.pm6? is-deeply has little to do with strings, so adding that adverb to core routine would make little sense.
tbrowder s/is see/i see/
Zoffix Just write a helper test module for Bailador and use its routines. Why is it `is-deeply` and not `is-request` or something along those lines? 16:58
tbrowder well, i see is-deeply comparing strings
Zoffix It compares equivalence of objects. It's basically `cmp-ok $foo, &[eqv], $bar` with the exception that it caches Seqs and treats them as Lists 16:59
16:59 domidumont left
tbrowder i don't know, i'm just trying to sort out failures. not aware of is-response, that may be the answer. 16:59
Zoffix tbrowder: "not aware of is-response". I'm not saying that it exists, I'm saying that it's often useful to write helper test routines to perform tests. So if you're testing so many HTTP responses that you want to add any adverbs, just write a helper `is-response` routine for testing those responses instead 17:00
tbrowder gotcha 17:01
17:01 pmurias joined
Zoffix tbrowder: for example, here's the use of a custom "test-iter-opt" routine that tests optimizations on iterators: github.com/perl6/roast/blob/master...rage.t#L14 and here's its definition: github.com/perl6/roast/blob/master...pm#L23-L54 17:01
tbrowder maybe looking at jnthn's Cro tests will be helpful, too
Zoffix Notice how you can wrap a bunch of tests into a single `subtest`. So in the interface you have just 1 test routine that adds 1 test to the plan, but it can actually perform as many tests as needed. 17:02
Write anough useful test routines like that and you could also release them as a test module to the ecosystem 17:03
17:03 xtreak joined, Rawriful joined
Zoffix This is a handy P5 module; would be nice to have an equivalent in P6: metacpan.org/pod/Test::Deep 17:03
tbrowder thanks, good ideas, as usual 17:04
17:04 BenGoldberg joined
Zoffix (like a routine for testing only some keys/values in hashes, letting others match regexes or be arbitrary data) 17:04
17:06 TEttinger left 17:07 TEttinger joined 17:11 pmurias left
buggable New CPAN upload: Concurrent-Queue-1.0.tar.gz by JNTHN cpan.metacpan.org/authors/id/J/JN/...1.0.tar.gz 17:14
squashable6 🍕 AlexDaniel++ closed issue “Document how to use 「run…”: github.com/perl6/doc/issues/1745 17:16
Geth doc: 28a9f13261 | (Aleks-Daniel Jakimenko-Aleksejev)++ | 2 files
Document how to use run with <>

Also slightly discourage «», and add a separate section to traps about
  «». It is somewhat copypasted but that's ok, as having a separate
section in traps raises awareness without requiring to read all of the docs.
Resolves #1745 and makes me happy.
17:19 vike joined
Zoffix "Note that C<--> is required to make it work for…" makes me think I always have to include `--` when using `run` with filenames. 17:20
Geth doc: 069a3c1478 | (Jan-Olof Hendig)++ | doc/Type/Any.pod6
Fixed broken link
synopsebot Link: doc.perl6.org/type/Any
squashable6 🍕🍕🍕 First contribution by dogbert17++! ♥
AlexDaniel Zoffix: that's correct
Zoffix AlexDaniel: why is it correct? 17:21
timotimo Zoffix: there's a validation format that has a perl6 impl
LIVR 17:22
AlexDaniel you don't see it that often because most shell scripts are written using stackoverflow-driven development
Zoffix: well because filenames sometimes do start with dashes, and in most cases you do intend your software to work with any valid file or path 17:23
you can get away with it sometimes, and maybe even practically every time, but yes you'll have to always include -- to make your code fully correct 17:24
and for me it took quite some time to accept it, yeah… 17:25
Zoffix AlexDaniel: but you're making an assumption about "your software". The `--` is part of how that software processes its arguments, not part of &run, so implying that &run always needs it is incorrect. 17:26
$ echo -e "foo\nbar\nber" > --my-file
$ perl6 -e 'run «./my-app --my-file»'
File --my-file has 3 lines of content
AlexDaniel Zoffix: that's correct, yes, in fact some software does not support it
Zoffix my software above would've crashed if it followed your advice. 17:27
$ perl6 -e 'run «./my-app -- --my-file»'
AlexDaniel Zoffix: so how can we clarify it?
Zoffix Failed to open file /tmp/tmp.SPsvjwwGph/--: No such file or directory
AlexDaniel Zoffix: it already links to BashPitfalls page where it is explained in more detail
Zoffix: I now see your point that it makes it feel like it's related to `run`, okay 17:28
Zoffix Dunno, "Note: many common programs expect C<--> passed to disambiguate between command-line arguments and filenames that begin with hyphens. L<link to bashpitfalls>
"
rouking Quotes might work?
AlexDaniel rouking: no 17:29
not for leading - at least
rouking hmm
Zoffix Dunno, "Note: many common programs, like C<touch> above, expect C<--> passed to disambiguate between command-line arguments and filenames that begin with hyphens. L<link to bashpitfalls>"
C:\Temp>notepad --my-file.txt # works just fine too 17:30
hah, and "notepad -- --my-file.txt" creates a file called "-- --my-file.txt" 17:31
17:31 xtreak left
rouking The only way I can see is for the flag parser to have knowledge of where a file is expected 17:31
Zoffix Even if you pass it as `perl6 -e "run <<notepad -- --bar.txt>>"` 17:32
Geth doc: eaa9f77514 | (Aleks-Daniel Jakimenko-Aleksejev)++ | 2 files
Make a note about -- more clear

See irclog.perlgeek.de/perl6/2018-03-03#i_15880599
Zoffix AlexDaniel++
AlexDaniel Zoffix: you think it helped? It feels like it can be expanded a bit more 17:33
Zoffix vOv
rouking In an ideal world, people wouldn't be naming files starting with dashes 17:35
Zoffix :D
rouking (waiting for someone to come up with a surprisingly compelling reason to start a filename with a dash) 17:36
AlexDaniel in an ideal world people would be naming files in all kinds of ways so that bugs were fixed faster :)
cfa ufobat_: ping 17:37
AlexDaniel rouking: well if you don't like files starting with a dash, then you probably also wouldn't like “*” as a filename! :) 17:38
rouking That's at least a bit easier to deal with, since * is just a shell thing 17:39
Geth doc: 2e90e913e6 | (Jan-Olof Hendig)++ | doc/Type/Any.pod6
Fix a number of broken/incorrect links
synopsebot Link: doc.perl6.org/type/Any
AlexDaniel rouking: but `run` is complicated and `shell` just works! github.com/perl6/doc/issues/1745#i...-360052326 17:40
17:41 wamba joined
AlexDaniel rouking: I mean, well… that's the reality until we implement julia-like things for running stuff 17:42
rouking Not familiar with Julia. What does it do? 17:43
AlexDaniel docs.julialang.org/en/stable/manua...ipelines-1
Zoffix That looks fairly trivial to implement, innit? Like you already can bind-stdout from one Proc::Async to another or whatever 17:44
17:44 cdg joined
rouking Yeah, seems like we can almost do that now 17:44
ZzZombo "I ran into a problem while trying to set up Linenoise: Must specify something as a path: did you mean '.' for the current directory?"
Any help? 17:45
That's from the REPL.
Zoffix That error is from this:
m: "".IO
camelia Must specify something as a path: did you mean '.' for the current directory?
in block <unit> at <tmp> line 1
Zoffix So something is empty and it's trying to use it as a path. Maybe your $HOME isn't set?
ZzZombo: also, what version of perl6 are you on? 17:46
AlexDaniel Zoffix: that's not too difficult, but maybe some things should be thought through (like what if one of the commands in the pipeline fails?)
Zoffix I faintly recall fixing a problem like that
(the repl crash I mean)
ZzZombo `$HOME` is set. "This is Rakudo version 2018.02.1 built on MoarVM version 2018.02 implementing Perl 6.c." 17:47
AlexDaniel Zoffix: and there are other things like `sort $file` doing quoting correctly in Julia 17:48
timotimo maybe $*HOME isn't set for some reason?
ZzZombo it's set
AlexDaniel well there's no quoting actually, it's just splitting it correctly
rouking In that case, I personally would like a Failure that has information about which command failed, the exit code, and any STDERR output
Zoffix ZzZombo: add --ll-exception command line flag. What's the output?
$ perl6 --ll-exception 17:49
timotimo "any stderr output" is not so simple, by default the file descriptor that gets passed to the child program is the same your script has
ZzZombo What do you mean? It's REPL, there is no exception.
timotimo you can't reliably capture the output unless you want to manually pass-through data, which can mess up ordering and timing and all that fun stuff
rouking Hmm, perhaps just the former two, then :) 17:50
Zoffix ZzZombo: just run perl6 --ll-exception
ZzZombo well, I did, nothing new.
Zoffix OK 17:51
(I'm reproing it locally now; 1 sec) 17:52
AlexDaniel Zoffix: GH#1586 17:53
synopsebot GH#1586 [open]: github.com/rakudo/rakudo/issues/1586 [RFC] Easy way to pipe Procs
Zoffix ZzZombo: what about RAKUDO_HIST=foo.txt perl6 17:54
Does that still show the same message?
ZzZombo What do you mean? 17:55
Zoffix I mean try setting RAKUDO_HIST env var to a filename in some writable location 17:56
ZzZombo Still the same. 17:57
Zoffix No idea then. The message is comming from here: github.com/rakudo/rakudo/blob/mast...L.pm6#L185 18:01
If I could repro it, recompile rakudo and make that message show full backtrace to where the error came from and look in there
*I'd recompile...
Zoffix & 18:02
18:02 Zoffix left, comborico1611 joined 18:03 kaare_ joined 18:04 kaare__ left, pochi left 18:25 vcv joined 18:30 cdg left, cdg joined 18:35 cdg left, pmurias joined 18:41 pmurias left 18:42 zakharyas joined, cfa left
squashable6 🍕 AlexDaniel++ closed issue “What is a trap and what isn't?”: github.com/perl6/doc/issues/1523 18:43
🍕 AlexDaniel++ wrote a comment on “What is a trap and what isn't?”: github.com/perl6/doc/issues/1523#i...-370170188
18:45 vcv left 18:46 zakharyas left 18:47 zakharyas joined 18:51 zakharyas left 18:52 zakharyas joined 18:55 zakharyas left, zakharyas joined 18:58 darutoko left 19:03 zakharyas1 joined 19:04 zakharyas left, zakharyas1 left 19:05 wamba left 19:07 zakharyas joined 19:10 zakharyas left 19:17 zakharyas joined
Geth doc: b6a4f58396 | (Steve Mynott)++ | doc/Type/Cool.pod6
correct typo and grammar
19:30
synopsebot Link: doc.perl6.org/type/Cool
squashable6 🍕🍕🍕 First contribution by stmuk++! ♥
19:33 khw joined 19:34 vcv joined
Geth ecosystem: shinobi++ created pull request #388:
Data::StaticTable added.
20:02
ecosystem: da05119a59 | shinobi++ (committed by Zoffix Znet) | META.list
Update META.list (#388)

Data::StaticTable class: github.com/shinobi/Data-StaticTable.git
20:06
20:10 vcv left
squashable6 🍕 JJ++ wrote a comment on “Lots of broken links, in…”: github.com/perl6/doc/issues/561#is...-370176424 20:13
🍕 AlexDaniel++ wrote a comment on “doc $¢”: github.com/perl6/doc/issues/1262#i...-370177384 20:29
🍕 AlexDaniel++ closed issue “doc $¢”: github.com/perl6/doc/issues/1262
AlexDaniel any Ruby programmers here?
APic Is that a Trick-Question? 20:31
AlexDaniel no 20:34
there's a Ruby-related issue that can be tackled: github.com/perl6/doc/issues/1247
APic Good. 20:35
20:39 Zoffix joined
Zoffix I plan to submit a TPF grant proposal "Perl 6: Performance and Bugfixing of Rationals and Constraints on Constants". The draft is available at temp.perl6.party/Constant-Rat-TPF-Grant.html Let me know your comments. 20:40
squashable6 🍕 AlexDaniel++ wrote a comment on “internet searches are un…”: github.com/perl6/doc/issues/1205#i...-370178345 20:43
AlexDaniel “Amount Requested: USD 1,499” what a bargain 20:44
20:58 rindolf left
squashable6 🍕 AlexDaniel++ wrote a comment on “use File::Temp, not .pick”: github.com/perl6/doc/issues/1062#i...-370179910 21:07
🍕 AlexDaniel++ wrote a comment on “(call|next)(with”: github.com/perl6/doc/issues/976#is...-370180258 21:13
🍕 AlexDaniel++ closed issue “(call|next)(with”: github.com/perl6/doc/issues/976
🍕 AlexDaniel++ wrote a comment on “xt/aspell.t - aspell issue”: github.com/perl6/doc/issues/975#is...-370180342 21:14
21:21 natrys left
squashable6 🍕 AlexDaniel++ closed issue “internet searches are un…”: github.com/perl6/doc/issues/1205 21:22
🍕 AlexDaniel++ wrote a comment on “internet searches are un…”: github.com/perl6/doc/issues/1205#i...-370180819
21:25 SyrupThinker left 21:26 jimav joined
jimav Hi, I'm trying to figure out the significance of the examples of list vs. item assignment in docs.perl6.org/language/variables#...Assignment ... 21:30
It has these examples: my $num; my @array = $num = 42,"str"; # item assignment: uses expression my ($num, @array); @array = $num = 42,"str"; # list assignment But the results are exactly the same. Are the docs talking about the inner "$num= 42" or the outer "@array = ..." when they say "list" or "item" assignment? 21:31
oops, paste didn't work very well there...
my $num; my @array = $num = 42,"str"; # item assignment: uses expression
my ($num, @array); @array = $num = 42,"str"; # list assignment
The results are exactly identical. Hos is "item assignment" being used in the first example?
Which assignment are the comments referring to (assignment to @array or $num)? 21:32
Geth doc: c9537ba848 | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Language/glossary.pod6
Fix the link to “Backtracking”

Resolves #628.
21:36
synopsebot Link: doc.perl6.org/language/glossary
squashable6 🍕 AlexDaniel++ closed issue ““Backtracking” is not defined in the glossary”: github.com/perl6/doc/issues/628
🍕 AlexDaniel++ wrote a comment on ““Backtracking” is not defined in the glossary”: github.com/perl6/doc/issues/628#is...-370181772
21:39 TreyHarris left 21:41 jimav left
squashable6 🍕 AlexDaniel++ wrote a comment on “Partial Build [Possibly due to parallelization]”: github.com/perl6/doc/issues/664#is...-370182018 21:41
🍕 AlexDaniel++ wrote a comment on “Vow not documented”: github.com/perl6/doc/issues/588#is...-370182191 21:43
🍕 AlexDaniel++ closed issue “Vow not documented”: github.com/perl6/doc/issues/588
21:44 jimav joined, greppable6 left
squashable6 🍕 AlexDaniel++ wrote a comment on “lazy, eager, hyper, race…”: github.com/perl6/doc/issues/534#is...-370182298 21:45
jimav Is there a way to paste multiple lines into chat without folding (either keeping the newlines as newlines, or with each line appearing as a separate row)?
AlexDaniel jimav: yes, you can use gist.github.com/ or any other paste service really 21:47
and the bot will even run the snippet when provided with a link
jimav Thanks. I've never used a paste service. How does it work? Having typed something into gist.github.com/ how can I get it pasted into a particular chat? (sorry for newbie q) 21:50
AlexDaniel just click "create public gist" and paste the URL here 21:51
jimav gist.github.com/jimav/727c5c30aa52...624b815587 21:52
Hmm. That didn't paste the content, just the url...
21:53 TreyHarris joined
timotimo yes, we have to click the url 21:55
squashable6 🍕 AlexDaniel++ closed issue “A PDF version of the documentation”: github.com/perl6/doc/issues/722
21:55 zakharyas left
timotimo this is normal :) 21:55
squashable6 🍕 AlexDaniel++ wrote a comment on “A PDF version of the documentation”: github.com/perl6/doc/issues/722#is...-370182905
AlexDaniel goes for a little nap 21:56
jimav AlexDaniel: Ok, thanks 21:57
Sorry, meant timotimo 21:58
22:01 AlexDaniel left 22:19 jimav_ joined
jimav docs.perl6.org/language/packages#Names mentions "numeric names" giving $42 as an example ... 22:21
Where are numeric names allowed? 22:22
Zoffix jimav: regex captures 22:23
m: "foo" ~~ /(.)(.)/; say [$0, $1]
camelia [「f」 「o」]
jimav_ Ah, okay. 22:27
Zoffix jimav: that "Item and List Assignment" section is making my head spin. Feels like it's trying to answer all the questions no one asked. I'd suggest ignoring it. 22:28
jimav_ Zoffix: How did you cause your response (to my $42 question) to appear? I often see the "m:" prefix before code, and +camelia is a bot, I assume 22:30
timotimo correct 22:31
we have multiple eval bots for perl 6 code, one of them is camelia, who reacts to "m:" among other things 22:32
camelia can also grab source code from some paste service websites
jimav_ m: say 42;
camelia 42
jimav_ Nice.
squashable6 🍕 zoffixznet++ opened issue “"Item and List Assignment" section is dense”: github.com/perl6/doc/issues/1810
jimav_ How to make camelia grab source from a paste service? (I'll RTFM if you you point to the M) 22:34
timotimo just m: blah blah/
Zoffix m: sub term:<¯\_(ツ)_/¯> { say '¯\_(ツ)_/¯' }; ¯\_(ツ)_/¯
camelia ¯\_(ツ)_/¯
timotimo you made that line up on purpose? :)
Zoffix m: gist.github.com/zoffixznet/edfff3c...17c096e1da
camelia ¯\_(ツ)_/¯
squashable6 🍕 coke++ wrote a comment on “xt/aspell.t - aspell issue”: github.com/perl6/doc/issues/975#is...-370185460 22:35
22:40 Kaiepi joined, yqt left
Geth doc: 362b4cf1a6 | (JJ Merelo)++ | doc/Language/faq.pod6
.perl → perl refs #561
22:50
synopsebot Link: doc.perl6.org/language/faq
doc: 5a8cf251e3 | (JJ Merelo)++ | doc/Language/faq.pod6
classtut → /language/classtut refs #561
22:51 mingdao left 22:57 Zoffix left 23:05 cfa joined
Geth doc: 9ee2a4c75c | (JJ Merelo)++ | 4 files
Fixing links to $*CWD

Paragraphs seem to be copied from each other. Refs #561
23:11
doc: 9e5d8e6bb5 | (JJ Merelo)++ | doc/Language/variables.pod6
Fixes link to Sub

And gets ready to board and stuff. Refs #561
synopsebot Link: doc.perl6.org/language/variables
cfa hm, i think commit [207313] has borked the repl (.specification.contains)
===SORRY!=== 23:12
No such method 'contains' for invocant of type 'CompUnit::DependencySpecification'
23:12 konsolebox left
timotimo hm, i'd say it needs a .Str in the middle 23:13
the ~~ against regex would have coerced it to Str before
23:13 konsolebox joined
squashable6 🍕 jimav++ wrote a comment on “"Item and List Assignment" section is dense”: github.com/perl6/doc/issues/1810#i...-370187559 23:15
🍕🍕🍕 First contribution by jimav++! ♥
cfa jimav: seen perl6advent.wordpress.com/2011/12/...nces-gone/ ? 23:16
squashable6 🍕 jimav++ wrote a comment on “"Item and List Assignment" section is dense”: github.com/perl6/doc/issues/1810#i...-370187731 23:18
23:21 sena_kun left 23:35 cog__ left, cognominal joined 23:40 mingdao joined 23:45 mingdao left 23:46 cognominal left 23:53 espadrine left