🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Logs available at irclogs.raku.org/raku-dev/live.html | For MoarVM see #moarvm
Set by lizmat on 8 June 2022.
09:11 sena_kun joined
Geth rakudo/main: 1a18183a4c | (Elizabeth Mattijsen)++ | src/core.c/RakuAST/Deparse.rakumod
Fix deparsing of subset FOO where * > 666

In localizations other than English
10:57
rakudo/main: 1410e712ec | (Elizabeth Mattijsen)++ | 8 files
Add more basic localization tests
11:02
rakudo/main: 5a51c6f279 | (Elizabeth Mattijsen)++ | 8 files
Some localization tweaks in NL and DE
11:10
HTTP-Roles/main: 94cf3cf4b0 | (Márton Polgár)++ (committed using GitHub Web editor) | .github/workflows/test.yml
More precise workflow
11:28 donaldh left
nemokosch m: use v6.e.PREVIEW; use nqp; nqp::say(so 1..0); nqp::say(nqp::istrue(1..0)); 11:39
evalable6 (exit code 1) This type cannot unbox to a native string: P6opaque, Bool
in block <unit> at /tmp/pDLAr8est_ line 1
Raku eval Exit code: 1 This type cannot unbox to a native string: P6opaque, Bool in block <unit> at main.raku line 1
nemokosch come on
m: use v6.e.PREVIEW; use nqp; say so 1..0; nqp::say(nqp::istrue(1..0)); 11:40
Raku eval True 1
evalable6 False
1
nemokosch the problem is the "False 1" part
lizmat nqp::say only takes Str:D and str
nemokosch any opinion about this issue?
lizmat nqp::istrue isn't smart enough for HLL objects 11:41
*maybe
nemokosch this has quite serious consequences for mere if's that don't use HLL coercions 11:42
lizmat such as?
nemokosch such as if 1..0
lizmat m: use v6.*; say "foo" if 1..0 11:43
camelia foo
nemokosch m: use v6.e.PREVIEW; if 1..0 { say "I told you this is {so 1..0}"; }
Raku eval I told you this is True
evalable6 I told you this is False
lizmat m: use v6.*; say (1..0).Bool
camelia False
lizmat ok, that qualifies as a bug
please report
nemokosch it really doesn't use HLL coercions, it's all the if opcode that tries to do something about it
Geth rakudo/main: 689275350e | (Elizabeth Mattijsen)++ | 8 files
RakuAST: add localization tests for enum / subset
11:50
ab5tract filed R#5490 12:33
linkable6 R#5490 [open]: github.com/rakudo/rakudo/issues/5490 `1..0` erroroneously passes `if` statements
15:19 vrurg left 15:20 vrurg joined 15:28 vrurg left, vrurg joined
nemokosch thank you 19:02
Geth rakudo/main: 4e75ae14ab | (Elizabeth Mattijsen)++ | 2 files
Make sure if 1..0 { } does NOT fire in 6.e

By adding a 6.c Range.Bool, and making the 6.e Range.Bool the default.
Not exactly sure *why* this fixes #5490 but this also apparently makes `say nqp::istrue(1..0)` output 0 in 6.e, which appeared to be the underlying issue.
20:37
lizmat nemokosch ^^ 20:38
nemokosch hmmm 21:27
thank you 😄
21:36 codesections1 joined
Geth rakudo: vrurg++ created pull request #5491:
Move close to complete generic instantiation, iteration 3: the non-parametric generic support in expressions
21:52
22:41 codesections1 left 23:56 sena_kun left