Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
Set by Zoffix on 27 July 2018.
Geth rakudo/master: 8 commits pushed by (Patrick Böker)++, (Nick Logan)++ 00:24
MasterDuke some of our math methods (e.g., log, sqrt) don't really work for large integers because they convert to num and then use floating point calculations 02:07
m: say log(10**400); say sqrt(10*400) 02:08
camelia Inf
63.245553203367585
MasterDuke whoops
m: say log(10**400); say sqrt(10**400)
camelia Inf
Inf
02:09
MasterDuke but there exist some algorithms that do a decent job of calculating those for large integers. should we implement them in rakudo? in MoarVM and add some nqp::*_I ops? 02:12
my $v = 10**400; my $b = $v.msb - 977; if $b > 0 { $v +>= $b }; my $r = $v.log; say $b > 0 ?? $r + $b * 2.log !! $rm:
m: my $v = 10**400; my $b = $v.msb - 977; if $b > 0 { $v +>= $b }; my $r = $v.log; say $b > 0 ?? $r + $b * 2.log !! $r
camelia 921.0340371976183
MasterDuke wolfram alpha gives 921.0340371976182736071965818737456830404405954515091904133... 02:13
DrForr Mathematica's been released (Not open source, just shipped for free) for Raspbian. 03:01
MasterDuke m: sub (:$a) { say $a }(:2b) # this works (i.e., throws the expected error) 04:06
camelia Unexpected named argument 'b' passed
in sub at <tmp> line 1
in block <unit> at <tmp> line 1
MasterDuke m: -> (:$a) { say $a }(:2b) # but this throws what seems to be the wrong error 04:07
camelia Too few positionals passed to '<anon>'; expected 1 argument but got 0
in block <unit> at <tmp> line 1
MasterDuke jnthn, timotimo, lizmat: is ^^^ correct?
timotimo MasterDuke: yeah, you're giving it a signature with an anonymous positional arg that gets destructured into one named 07:53
lizmat m: -> :$a { say $a }(:2b) # throws expected error 08:42
camelia Unexpected named argument 'b' passed
in block <unit> at <tmp> line 1
lizmat m: -> :$a { say $a }(:2a) # does not
camelia 2
lizmat m: use Telemetry # this works 09:45
camelia ( no output )
lizmat m: dd $*REPO.candidates("Telemetry") # then why does this give me the Empty list ?
camelia Empty
lizmat m: my $repo = $*REPO; dd gather while $repo { dd $repo.?candidates("Telemetry"); $repo .= next-repo } # I guess we need something like this 10:03
camelia Empty
Empty
Empty
(CompUnit::Repository::Installation::LazyDistribution.new(dist-id => "E14CAA5C7DE5B1A1BAC1ED1155377A9AF4962C18", read-dist => -> $_ { #`(Block|58287176) ... }, meta => ${:api(v0), :auth("perl"), :checksum("F21F63A1682C5435D99B3…
lizmat .ask ugexe am I correct in the assessment that it is currently not possible to find out which "List::*" modules you have installed ? 10:10
:-(
.ask ugexe because you cannot specify a name matcher ? 10:11
jnthn lizmat: I believe there's a repo-chain that saves your while loop there 10:17
lizmat m: dd $*REPO.repo-chain.grep: { .?candidates("Telemetry") } # indeed, jnthn++ 10:18
camelia (CompUnit::Repository::Installation.new(prefix => "/home/camelia/rakudo-m-inst-1/bin/../share/perl6"),).Seq
lizmat m: dd $*REPO.repo-chain.grep: { .?candidates( /"List::"/ ) } # sadly, no :-( 10:21
camelia Cannot resolve caller candidates(CompUnit::Repository::Installation:D: Regex:D); none of these signatures match:
(CompUnit::Repository::Installation: Str:D $name, :$auth, :$ver, :$api, *%_)
(CompUnit::Repository::Installation: CompUnit::De
timotimo how does "zef list" do its thing? 10:22
zef list --installed, in particular
lizmat good pointer, timotimo++ 10:24
lizmat I guess that's going to be something for the PTS 11:32
meanwhile, do we have an official way to install a script when installing a module with zef? 11:33
timotimo just putting it into bin/ should do it, doesn't that already work? 11:46
lizmat tries 11:48
lizmat timotimo: and no mention in the META6.json ? 11:49
timotimo yeah, i don't think it goes in there 11:51
at least i wouldn't know what to call it in the provides section
and i also don't think it needs to go in the resources part 11:52
ugexe Yeah you don’t list them in the META6, although they should be 12:03
Needs planning on how to include perl6 vs non perl6 scripts since right now Rakudo creates wrappers for anything that try to launch things as perl6 code 12:05
creates wrappers for anything; they launch everything as perl6 code ^
timotimo right
let's give it something very fragile, like parsing shebang lines 12:06
ugexe That’s what some tools actually do
I imagine we’ll end up with a bin/ and a script/ or something 12:07
as for .candidates yeah eventually (whenever) we planned on allowing name matcher to work with a regex 12:08
that PR was already big enough at the time though 12:09
lizmat ugexe: will you be at the PTS ? 12:12
ugexe Yeah 12:13
lizmat cool, /me too 12:14
so perhaps we could work on that ?
ugexe Yeah that one should be fairly easy 12:16
lizmat cool... I will make sure I will be more familiar with that part of the setting beforehand :-) 12:20
ugexe also im talking about the regex name match thing only 12:27
not doing .next-repo
getting rid of that was part of the reason .candidates needed to be implemented 12:28
because if i have an e.g. plugin repo i do not want .candidates from any other repo (like .resolve would end up going if the initial repo had no matches)
for instance if i do CompUnit::RepositoryRegistry.repository-for-spec("inst#/home/.zef/plugins").candidates("Test") i'm 0% interested in Test installed in CORE 12:31
lizmat indeed... 12:32
going to be afk for most of the rest of the day&
Geth nqp: 0e5f3d0b26 | usev6++ | src/QRegex/P6Regex/Actions.nqp
[JVM] Tweak test for range endpoint in regex

Unbust the build for Rakudo on the JVM backend.
  (Fixes github.com/rakudo/rakudo/issues/2748)
20:24
rakudo: b5bf7cd4f7 | (Nick Logan)++ (committed using GitHub Web editor) | tools/build/NQP_REVISION
Bump NQP_REVISION
20:50
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2019....3-g0e5f3d0
travis-ci NQP build failed. usev6 '[JVM] Tweak test for range endpoint in regex 20:57
travis-ci.org/perl6/nqp/builds/512693204 github.com/perl6/nqp/compare/5b2e7...5f3d0b268a
bartolin ^^ that's a newly added test in t/nqp/044-try-catch.t failing on the jvm backend. (it did fail before my commit) 21:03
MasterDuke .ask pmurias have you looked at github.com/perl6/nqp/pull/518 and github.com/rakudo/rakudo/pull/2670 ? will they cause any problems for the js backend? i tried to build it to test, but still haven't been able to 22:55
yoleaux MasterDuke: I'll pass your message to pmurias.