🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku Set by ChanServ on 14 October 2019. |
|||
00:01
MasterDuke left
00:12
oddp left
00:15
sena_kun joined,
aborazmeh joined,
aborazmeh left,
aborazmeh joined
00:17
Altai-man_ left,
sena_kun left,
sena_kun joined
00:26
xelxebar_ left,
xelxebar joined
00:38
xelxebar left
00:45
aborazmeh left,
xelxebar joined
00:48
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
guifa2 | How does one make an native array of arrays? | 01:21 | |
m: my array @a = (my int @ = 0,1,2); say @a.WHAT | 01:22 | ||
camelia | Type check failed in assignment to @a; expected array but got Int (0) in block <unit> at <tmp> line 1 |
||
guifa2 | m: my int @foo = my int @ = 1,2,3; | ||
camelia | ( no output ) | ||
guifa2 | m: my int @a = my int @ = 1,2,3; say @a.WHAT | 01:23 | |
camelia | (array[int]) | ||
guifa2 | so that creates a single item native array of native arrays of ints, but with only one item | 01:24 | |
m: my int @a = (my int @ = 1,2,3), (my int @ = 1,2,3); say @a.WHAT | |||
camelia | This representation (VMArray) cannot unbox to a native int (for type array[int]) in block <unit> at <tmp> line 1 |
||
guifa2 | err | 01:26 | |
my array @a = (my int @ = 1,2,3), (my int @ = 1,2,3); say @a.WHAT | |||
evalable6 | (Array[array]) | ||
guifa2 | the array gets upgraded to an Array, because of the comma operator | ||
01:28
yuplushi joined
01:58
molaf left
02:04
yuplushi left
02:05
ManifestO left
02:06
ManifestO joined
02:10
molaf joined
02:14
Altai-man_ joined
02:17
sena_kun left
02:30
aindilis left
02:34
Zero_Dogg left
02:45
aborazmeh left
02:47
Zero_Dogg joined
03:16
molaf left
03:23
mistersir left
03:34
skids left
03:42
Kaiepi left
03:44
Kaiepi joined
03:45
Kaiepi left,
Kaiepi joined
04:14
Kaiepi left
04:15
sena_kun joined
04:16
Altai-man_ left
04:18
Kaiepi joined
04:43
reach_satori_ joined
04:45
reach_satori left
05:03
wamba joined
05:18
yuplushi joined
06:02
kensanata joined
06:06
xinming left
06:08
xinming joined
06:14
xelxebar left,
Altai-man_ joined,
xelxebar joined
06:17
sena_kun left
06:31
abraxxa joined
06:38
abraxxa left
06:40
abraxxa joined
06:45
abraxxa left
06:48
abraxxa joined
06:49
leont joined
07:06
gnufr33dom left
07:13
JJMerelo joined
07:22
agentzh left,
agentzh joined,
agentzh left,
agentzh joined
07:34
Petr37 left
07:38
dakkar joined
07:47
pecastro joined
08:02
MasterDuke joined
08:08
wamba left
08:10
ab5tract joined
|
|||
ab5tract | o/ * | 08:10 | |
anyone know whether it is possible to pass a "combined metaop" as a reference? (something like `&Z[&<+>]` or the like) | 08:12 | ||
08:13
wamba joined
08:15
sena_kun joined
08:16
luk_v joined,
Altai-man_ left
|
|||
luk_v | .tell Petr37 use Cro::HTTP::Client; my $resp = await Cro::HTTP::Client.get('google.com', :!follow); say "$resp.request.uri()"; | 08:18 | |
tellable6 | luk_v, I'll pass your message to Petr37 | ||
luk_v | .tell Petr37 cro.services/docs/reference/cro-http-client | 08:19 | |
tellable6 | luk_v, I'll pass your message to Petr37 | ||
08:20
luk_v left
|
|||
JJMerelo | m: token alt-alnum { <alnum> | <alnum>.+ }; say "þ," ~~ &alt-alnum | 08:23 | |
camelia | 5===SORRY!5=== Undeclared routine: alt-alnum used at line 1 Other potential difficulties: Useless declaration of a has-scoped method in mainline (did you mean 'my token alt-alnum'?) at <tmp>:1 ------> 3token 7⏏5… |
||
JJMerelo | m: token alt-alnum { <alnum> | <alnum>.+ }; say "þ," ~~ /<alt-alnum>/ | 08:24 | |
camelia | Potential difficulties: Useless declaration of a has-scoped method in mainline (did you mean 'my token alt-alnum'?) at <tmp>:1 ------> 3token 7⏏5alt-alnum { <alnum> | <alnum>.+ }; say " No such method 'alt-alnum' for invocant… |
||
JJMerelo | m: my token alt-alnum { <alnum> | <alnum>.+ }; say "þ," ~~ &alt-alnum; | ||
camelia | 「þ」 alnum => 「þ」 |
||
JJMerelo | m: my token alt-alnum { <alpha> |<alpha>.+ }; say "þ," ~~ &alt-alnum; | 08:25 | |
camelia | 「þ,」 alpha => 「þ」 |
||
JJMerelo | m: my token alt-alnum {^^ <alpha> |<alpha>.+ $$}; say "þ," ~~ &alt-alnum; | 08:26 | |
camelia | 「þ,」 alpha => 「þ」 |
||
JJMerelo | m: my token alt-alnum {^^ <alnum> |<alnum>.+ $$}; say "þ," ~~ &alt-alnum; | ||
camelia | 「þ」 alnum => 「þ」 |
||
JJMerelo | ^^^ Not good, I guess. | 08:27 | |
committable6: releases my token alt-alnum {^^ <alnum> |<alnum>.+ $$}; say "þ," ~~ &alt-alnum; | 08:29 | ||
committable6 | JJMerelo, ¦releases (45 commits): «「þ」 alnum => 「þ」» | 08:30 | |
JJMerelo | committable6: releases my token alt-alnum {^^ <graph> |<graph>.+ $$}; say "þ," ~~ &alt-alnum; | 08:31 | |
committable6 | JJMerelo, ¦releases (45 commits): «「þ」 graph => 「þ」» | ||
JJMerelo | committable6: releases my token alt-alnum {^^ <alpha> |<alpha>.+ $$}; say "þ," ~~ &alt-alnum; | ||
committable6 | JJMerelo, ¦releases (45 commits): «「þ,」 alpha => 「þ」» | 08:32 | |
JJMerelo | committable6: releases my token alt-alnum {^^ <alpha> |<alnum>.+ $$}; say "þ," ~~ &alt-alnum; | 08:33 | |
committable6 | JJMerelo, ¦releases (45 commits): «「þ」 alpha => 「þ」» | 08:34 | |
JJMerelo | Er | ||
08:35
Sgeo left
|
|||
JJMerelo | Well, R#3830 includes all that above. | 08:36 | |
linkable6 | R#3830 [open]: github.com/rakudo/rakudo/issues/3830 [regex] Strange token alternation errors with <alnum> and <graph> | ||
JJMerelo | committable6: releases my token alt-alnum {^^ [<alpha> | <alpha>.+ | <alnum>.+] $$}; say "þ," ~~ &alt-alnum; | 08:37 | |
committable6 | JJMerelo, ¦releases (45 commits): «「þ,」 alpha => 「þ」» | 08:38 | |
JJMerelo | committable6: releases my token alt-alnum {^^ [<alnum> | <alpha>.+ | <alnum>.+] $$}; say "þ," ~~ &alt-alnum; | ||
08:38
rindolf joined
|
|||
committable6 | JJMerelo, ¦releases (45 commits): «「þ,」 alpha => 「þ」» | 08:38 | |
JJMerelo | committable6: releases my token alt-alnum {^^ [<alnum> | <alnum>.+] $$}; say "þ," ~~ &alt-alnum; | 08:39 | |
committable6 | JJMerelo, ¦releases (45 commits): «Nil» | ||
JJMerelo | committable6: releases my token alt-alnum {^^ [<alpha> | <alpha>.+] $$}; say "þ," ~~ &alt-alnum; | ||
committable6 | JJMerelo, ¦releases (45 commits): «「þ,」 alpha => 「þ」» | 08:40 | |
JJMerelo | Added also to R#3830 | 08:42 | |
linkable6 | R#3830 [open]: github.com/rakudo/rakudo/issues/3830 [regex] Strange token alternation errors with <alnum> and <graph> when they are in the second part of the alternation | ||
08:46
sftp left
08:47
sftp joined
08:50
abraxxa left,
abraxxa joined
09:07
oddp joined
09:23
wamba left
09:30
markong joined
|
|||
timotimo | does Grammar::Tracer cause these problems? | 09:30 | |
JJMerelo | timotimo no, I just use it to see where it fails. | 09:44 | |
timotimo and what it shows is the opposite: it does not fail, and is totally happy with the match it obtains. | 09:45 | ||
timotimo | ah, i did not look closely enough | ||
09:48
Geth_ joined
09:51
cpan-raku joined,
cpan-raku left,
cpan-raku joined
|
|||
cpan-raku | New module released to CPAN! Math::Libgsl::RandomDistribution (0.0.2) by 03FRITH | 09:51 | |
New module released to CPAN! Sparky (0.0.26) by 03MELEZHIK | |||
09:54
Geth_ left
|
|||
cpan-raku | New module released to CPAN! JSON::Fast (0.14) by 03TIMOTIMO | 09:54 | |
09:55
raku-bridge left,
Geth__ joined
10:00
cpan-raku left,
Geth__ left
10:01
raku-bridge joined,
Geth___ joined,
cpan-raku joined,
cpan-raku left,
cpan-raku joined
10:08
markong left
10:10
markong joined
10:12
aborazmeh joined,
aborazmeh left,
aborazmeh joined
10:14
Altai-man_ joined
10:17
sena_kun left,
raku-bridge left
10:24
raku-bridge joined,
raku-bridge left,
raku-bridge joined
10:31
Geth___ left,
cpan-raku left
10:32
raku-bridge left
10:40
cpan-raku joined
10:41
Geth_ joined
10:45
cpan-raku left
10:47
raku-bridge joined,
raku-bridge left,
raku-bridge joined
10:52
clarkema joined
10:53
Black_Ribbon left
10:55
clarkema left
11:21
rockxloose joined
11:33
patrickb joined
11:36
cpan-raku_ left,
Geth left
11:37
cpan-raku joined,
cpan-raku left,
cpan-raku joined
11:40
cpan-raku left,
Geth_ left,
raku-bridge left
11:41
Geth joined,
raku-bridge joined,
raku-bridge left,
raku-bridge joined
|
|||
ab5tract | .ask masak When you get a moment, would you mind weighing in on how close the current experimental `macros` interface is to what it could/should look like post-RakuAST? I'm not planning to use anything too crazy but I am curious as well what is maybe still missing versus your/the "master plan" | 11:50 | |
11:50
raku-bridge left
|
|||
tellable6 | ab5tract, I'll pass your message to masak | 11:50 | |
11:52
raku-bridge joined,
raku-bridge left,
raku-bridge joined
|
|||
timotimo | what do you currently get passed to a macro? | 11:53 | |
11:53
devmikey joined
|
|||
timotimo | m: use experimental :macros; macro test($a) { dd $a; quasi { say "hi" } }; test(1 + 2) | 11:53 | |
camelia | AST.new hi |
||
timotimo | m: use experimental :macros; macro test($a) { dd $a.^methods; quasi { say "hi" } }; test(1 + 2) | ||
camelia | (submethod BUILD (AST: :$past, *%_ --> Nil) { #`(Submethod|78116288) ... }, method incarnate (AST: $quasi_context, @unquote_asts, *%_) { #`(Method|78116864) ... }, method evaluate_unquotes (AST: @unquote_asts, *%_) { #`(Method|78116720) ... }, method … | ||
timotimo | m: use experimental :macros; macro test($a) { dd $a.^methods>>.name; quasi { say "hi" } }; test(1 + 2) | 11:54 | |
camelia | ("BUILD", "incarnate", "evaluate_unquotes", "is_quasi_ast", "Str", "BUILDALL") hi |
||
timotimo | m: use experimental :macros; macro test($a) { dd $a.^methods(:all)>>.name; quasi { say "hi" } }; test(1 + 2) | ||
camelia | ("BUILD", "incarnate", "evaluate_unquotes", "is_quasi_ast", "Str", "BUILDALL", "antipairs", "nl-out", "Map", "repeated", "AT-POS", "squish", "kv", "Seq", "combinations", "end", "Hash", "sort", "skip", "prepend", "flat", "permutations", "rotor", "hash"… | ||
timotimo | m: use experimental :macros; macro test($a) { dd $a.^mro; quasi { say "hi" } }; test(1 + 2) | ||
camelia | (AST, Any, Mu) hi |
||
11:54
cpan-raku joined,
cpan-raku left,
cpan-raku joined,
sftp left,
devmikey is now known as bigdata
|
|||
timotimo | m: use experimental :macros; macro test($a) { dd $a.^mro; quasi { say {{{ $a }}}; say {{{ $a }}} } }; test(1 + 2) | 11:54 | |
camelia | (AST, Any, Mu) 3 3 |
||
timotimo | you can probably only create asts using quasi? | 11:55 | |
11:56
aborazmeh left
11:57
sftp joined
11:58
JJMerelo left
12:04
bigdata left
12:05
bigdata joined,
Geth left,
raku-bridge left
12:06
Geth joined,
cpan-raku left,
raku-bridge joined
12:08
bigdata left,
patrickb left
12:09
Geth_ joined,
cpan-raku joined,
raku-bridge1 joined,
cpan-raku left,
cpan-raku joined,
raku-bridge1 left,
raku-bridge1 joined,
raku-bridge1 left
12:10
Geth_ left,
cpan-raku left
|
|||
ab5tract | timotimo as in, that is the only aspect that is working in the current implementation (and it is working as expected) or that quasi should be able to create something other than AST | 12:11 | |
timotimo | something other than quasi should be able to create an ast | 12:12 | |
ab5tract | timotimo my question is really a bit higher level -- can I write against the experimental implementation without regard for internal details (and the fact that they are about to change) | ||
timotimo gotcha :) | |||
so it sounds like the short answer is "no" | |||
timotimo | actually i dunno | ||
12:12
cpan-raku joined,
cpan-raku left,
cpan-raku joined
|
|||
timotimo | BBIAB | 12:12 | |
ab5tract | ++ | 12:13 | |
12:15
sena_kun joined
12:16
Altai-man_ left
12:40
aborazmeh joined,
aborazmeh left,
aborazmeh joined
12:41
molaf joined
12:43
fluca1978 joined
|
|||
fluca1978 | hi, I'm having some difficulties in understanding what the method tree does <docs.raku.org/routine/tree>. I've understood it does call tree on the iterable or applies a whateverable, but what is the aim? | 12:44 | |
lizmat | fluca1978: I've never used tree, and I think its semantics sorta became suspect after the GLR | 12:46 | |
in fact, the code in the core still carries this comment: | |||
# XXX GLR Do we need tree post-GLR? | |||
fluca1978 | lizmat: and GLR stands for ... (I've seen the comment trying to figure out in rakudo what tree was doing) | 12:47 | |
lizmat | Great List Refactor | ||
during 2014 / 2015 it was decided that the way lists work, needed changing and harmonizing | 12:48 | ||
this became the Great List Refactor, to make then Perl 6 ready for release | |||
fluca1978 | oh, I must have missed the eterogeneity before...I'm using raku only since 2017 | 12:49 | |
holyghost | ok, racul is portable to m68k machines, after severe modularization (which is a good thing :-) | 12:50 | |
amiga machines, I mean | |||
ab5tract | holyghost what is this racul that you speak of? :) | 12:51 | |
holyghost | github.com/theholyghost2/racul (scheme language extensions for raku applications) | 12:52 | |
It's a guile but written from scratch | 12:53 | ||
not using anything from guile also | |||
ab5tract | neat project :D | 12:54 | |
12:54
__jrjsmrtn__ joined
|
|||
lizmat | not a lot to see except some makefiles yet? | 12:54 | |
holyghost | thx :-) | 12:55 | |
12:55
_jrjsmrtn left
|
|||
holyghost | lizmat : there's a start for symbols in src/symbols | 12:55 | |
I have to think about it twice | |||
12:57
fluca1978 left
|
|||
holyghost | I've been a machine lately :-) | 12:59 | |
12:59
aborazmeh left
|
|||
El_Che | holyghost: sent you a PR for the doc | 13:03 | |
13:07
Tirifto joined
|
|||
holyghost | I'll look into it later on | 13:07 | |
13:08
ab5tract left
|
|||
kawaii | Are there any modules for turning large numbers of seconds into friendly hours and minutes? :) | 13:14 | |
timotimo | yes | ||
oddp | There's polymod. | ||
kawaii | I literally just typed "I bet Timo knows" to my friend, and here you are :) | ||
timotimo | github.com/raku-community-modules/...Denominate | 13:15 | |
kawaii | timotimo: thank you :) | ||
oddp | docs.raku.org/routine/polymod | ||
Look at the example. | |||
kawaii | Oh this looks good too, and no additional dependency | 13:16 | |
m: my $i = 84864; say $i.polymod(60); | 13:35 | ||
camelia | (24 1414) | ||
kawaii | m: my $i = 84864; say $i.polymod(3600); | ||
camelia | (2064 23) | ||
holyghost | I've implemented something like that in Game-Markov | 13:36 | |
splitting off ns ms and s | |||
for MarkovTicks | |||
oh well | 13:37 | ||
oddp | m: my ($secs, $mins, $hours) = 84864.polymod(60, 60, 24); say "{$hours}h : {$mins}m : {$secs}s" | 13:47 | |
camelia | 23h : 34m : 24s | ||
oddp | kawaii: ^ | ||
13:49
gnufr33dom joined
|
|||
kawaii | oddp: ah that works, thanks! | 13:50 | |
timotimo | but that only goes up to hours | 13:51 | |
kawaii | that's all I need in my use-case | ||
oddp | m: say 84864.polymod(60, 60, 24) | ||
camelia | (24 34 23 0) | ||
oddp | You could also get the day there. | 13:52 | |
Maybe we should include an example in the docs similar to the one here that makes it quite clear: rakuadventcalendar.wordpress.com/2...t-in-raku/ | 13:56 | ||
14:00
raku-bridge left
|
|||
holyghost | El_Che : about your PR, you mean that raku is not perl6 std based ? | 14:01 | |
14:02
raku-bridge joined,
raku-bridge left,
raku-bridge joined
|
|||
oddp | It's a naming issue, nothing more, holyghost. | 14:03 | |
holyghost | ok, mea culpa | ||
right, liz said that it is named raku now | |||
bufgixed, I won't forget next time I hope | 14:10 | ||
14:12
cooper left
14:14
Altai-man_ joined
14:16
sena_kun left
14:27
Petr37 joined
14:30
john_parr_ joined,
xinming left
14:31
xinming joined
14:32
john_parr_ is now known as st_elmo
14:33
molaf left
14:43
Sgeo joined
14:46
molaf joined
14:48
gnufr33dom left
14:56
st_elmo left
14:59
Petr37 left
15:00
skids joined
15:03
raku-bridge left
15:09
raku-bridge joined,
raku-bridge left,
raku-bridge joined
|
|||
codesections | Here's a style/idiom question for the channel: when tracking a mutable count of elements, do you prefer to use a Hash that tracks the values (and modify with assignment) or a BagHash (and modify with `add`/`remove`). That is, which of these two looks better to you: | 15:11 | |
m: my %menu-items = eggs => 1, bacon => 1; %menu-items<spam> += 5; say %menu-items | |||
camelia | {bacon => 1, eggs => 1, spam => 5} | ||
codesections | m: my %menu-items is BagHash = eggs => 1, bacon => 1; %menu-items.add(<spam>) for ^5; say %menu-items | ||
camelia | BagHash(bacon eggs spam(5)) | ||
15:12
cpan-raku left
15:13
cpan-raku joined,
cpan-raku left,
cpan-raku joined
15:25
MilkmanDan left
15:26
rindolf left
|
|||
guifa2 | codesections: it depends on where in my code I am :-) | 15:31 | |
The first one is closest to what I'm doing if for some reason it's clearer for me to do that during initiatilization / in the innards of module space | |||
The latter is something I might prefer for user space (but I'd be careful whether "add"means "add to the menu" or "add quantities to an item in the menu", which if doing full OO might should be two separate commands, with the latter one issuing an exception if the item isn't on the menu) | 15:34 | ||
tbrowder | hi, all | 15:35 | |
15:38
MasterDuke left
|
|||
codesections | o/ | 15:40 | |
tbrowder | question on use of mi6: its doc says the build option uses the Build.pm file if it exists. is that the same one zef uses? | ||
codesections: g'day \o/ | 15:41 | ||
codesections | guifa2: thanks, that's a helpful way to think about it. You said you'd do the first "if for some reason it's clearer". What sort of things would make it clearer/less clear? | ||
I haven't used mi6, so I can't help with that one | |||
tbrowder | okey dokey, thnx | 15:42 | |
guifa2 | codesections: basically whitespacing :-) if I make the hash with really simple values (eggs 1, bacon 1, or even biscuits => $baker.check-availability('biscuits') ) I'll probably leave it all in one initial assignment line | 15:43 | |
but if the latter gets more complicated | |||
biscuits => min($lookup-suppliers('bakers').grep(*.check-availbility('biscuits').sort(*.request-prices('biscuits')).head, 10) | 15:45 | ||
It can often be much nicer visually to break that out into a separate line after the initial assignment | 15:46 | ||
er there's an error in that code but you get he idea | |||
codesections | guifa2: that makes sense, except that I don't see how it relates to the choice between a Hash and a BagHash. Both are mutable, so both let you split it into multiple lines if need be | 15:51 | |
guifa2 | ah, sorry, I was focusing on the .add semantics ;-) | 15:52 | |
codesections | Oh, I see. So, you're saying you generally disfavor using `+=` – if you think you'll need to modify the state, you'd like to have a `.add` method and let the type manage its state in a more OOP way? | 15:53 | |
15:54
MilkmanDan joined
|
|||
guifa2 | It makes sense to me from a user perspective — they don't need to know how your menu works internally. And maybe down the road, you want to change how the menu is stored internally. If you're using add, that's a lot easier since method add($) is easy to make. You *could* still pull it off mimicking Hash's %foo<bar> += 5 using Proxies but it's more work | 15:57 | |
codesections | Thanks, that all makes sense and is a helpfully different perspective than how I was thinking about it :) | 15:59 | |
I was thinking about it more in terms of type constraints: if I have a BagHash, I can't later try to set a key equal to something other than an Int or do any of the weird/powerful things I'd be tempted to do with a plain Hash | 16:00 | ||
(which is getting at a similar point as part of what you said, but your point about extensibility is a bit different – but points in the same direction) | 16:01 | ||
guifa2 | can you tell I'm someone who mainly does module authoring? lol | 16:14 | |
16:15
aindilis joined,
sena_kun joined
|
|||
codesections | :D It's a good perspective to have. So many one-off, we'll-throw-it-away-soon scripts end up becoming larger than expected, and early design decisions can come back to haunt people | 16:15 | |
e.g., tabs in Makefiles | 16:16 | ||
16:16
Altai-man_ left
|
|||
Kaiepi | how is endianness handled by blobs? | 16:18 | |
eh, ig this is something i can test with nativecall | 16:23 | ||
16:24
MilkmanDan left
|
|||
holyghost added amiga vbcc makefile to racul :-) | 16:28 | ||
Now for the C code, but that's for later | 16:30 | ||
holyghost is a bit afk | 16:31 | ||
guifa2 | Kaiepi: endianness doesn't feel 100% fleshed out to me. if you use Blob[uin64], I believe it defaults to your system's endianness | ||
there's the read methods on blob8 that let you specifiy endianness, but not on writing | 16:32 | ||
16:36
Kaiepi left
16:38
Kaiepi joined
16:39
MilkmanDan joined
16:42
dakkar left
16:44
MasterDuke joined
16:45
Kaiepi left
16:49
Kaiepi joined
|
|||
Kaiepi | it seems like the byte order depends on backend | 16:56 | |
on the jvm, it seems to be big endian instead of native byte order | 16:57 | ||
timotimo | you need to use a buf8 and .write-uint64 and friends that take endianness | 16:58 | |
holyghost | I drink only in the evening now, I'm super more productive, which makes me far more happy than calming down with beer. just my 2 cents | ||
timotimo | there are no write methods on blobs, because blobs are read-only, i would assume | 16:59 | |
guifa2 | I'm surprised that the blobs don't have endianness as an attribute | 17:01 | |
timotimo | that would only do anything when you're writing to files and other byte-oriented streams, right? | 17:02 | |
holyghost | FWIW, C read and write functions are char based, e.g. WAV headers need endianess | 17:04 | |
I dunno for nqp though | |||
aciinum or alphanum functionality | 17:06 | ||
*ascii num | |||
which you shift << 8, << 16 << 24 for endianess | 17:07 | ||
or the other way round | |||
32 bits not 64 | 17:08 | ||
or 36 | |||
17:09
Black_Ribbon joined
|
|||
holyghost | or a byte in mono (C#) | 17:10 | |
guifa2 | timotimo: I don't remember the exact details since I don't tend to work a huge maount with binary stuff (but am increasingly looking to do so for performance in intl::) but when I was making binex I remember having a lot of trouble knowing — from a programatic sense — if a blob that was passed to a sub was big or little endian | 17:11 | |
An endian-ness doc (with where things are done transparently to the user and where the user needs handle it manually) would be pretty sweet | 17:12 | ||
jdv79 | maybe someday someone will do a thing with/on raku at the hope conf | 17:16 | |
17:16
molaf left
|
|||
jdv79 | maybe a lightning talk | 17:16 | |
17:36
HarmtH_ left
17:44
kensanata left
17:50
cpan-raku left
18:00
molaf joined
18:08
MasterDuke left
18:10
rindolf joined
18:14
Altai-man_ joined
18:16
sena_kun left
18:24
cpan-raku joined,
cpan-raku left,
cpan-raku joined
18:29
MilkmanDan left
18:37
lucasb joined
18:39
MilkmanDan joined
18:40
abraxxa left
18:43
abraxxa joined
|
|||
lucasb | What's a easy way to code the utility function 'factor(360) -> (2, 2, 2, 3, 3, 5)' ? I was hoping for a Int.factor method to exist. Wouldn't it be useful? :) | 18:50 | |
18:59
SqrtNegInf joined
|
|||
SqrtNegInf | rosettacode.org/wiki/Prime_decomposition | 19:00 | |
19:00
guifa2 left
|
|||
[Coke] | m: sub factor($n) { my $r = $n; gather for 2..sqrt($n).Int { while $r %% $_ { $r/=$_ ; take $_ } } } ; say factor(360) | 19:09 | |
camelia | (2 2 2 3 3 5) | ||
tellable6 | 2020-07-27T07:45:24Z #raku-dev <JJMerelo> [Coke] I was going to, but it's apparently disappeared? | 19:10 | |
[Coke] | ^^ shorter, but very likely not performant with bigger numbers. | ||
19:14
xinming left
19:16
xinming joined
|
|||
[Coke] | oops. lost my prime listing. | 19:16 | |
19:19
guifa2 joined
|
|||
[Coke] | m: my @primes = (2..Inf).grep(*.is-prime); sub factor($n) { my $r = $n; gather for @primes { while $r %% $_ { $r/=$_ ; take $_ }; last if $r==1 } }; say factor(360); say factor(123456789) | 19:20 | |
camelia | (2 2 2 3 3 5) (3 3 3607 3803) |
||
lucasb | thanks! SqrtNegInf, [Coke] | 19:46 | |
SqrtNegInf | There's also the module Prime::Factor (it implements the 1st example at rosettacode.org/wiki/Prime_decomposition#Raku). Best of both worlds: runs quickly, easy to call. | 19:48 | |
moritz | m: sub f($i) { (^$i).map({ return $_ }) }; say f(2) | 19:54 | |
camelia | Attempt to return outside of immediately-enclosing Routine (i.e. `return` execution is outside the dynamic scope of the Routine where `return` was used) in block <unit> at <tmp> line 1 |
||
moritz | oops, reacting to stale backlog :D | 19:55 | |
20:00
SqrtNegInf left
20:03
dolmen joined
20:05
kensanata joined
20:14
sena_kun joined
20:17
Altai-man_ left
|
|||
gfldex | lolibloggedalittle: gfldex.wordpress.com/2020/07/27/ha...g-failure/ | 20:17 | |
20:27
rindolf left
|
|||
Geth | ¦ problem-solving: vrurg assigned to jnthn Issue Do we need :desc named in Test routines? github.com/Raku/problem-solving/issues/215 | 20:38 | |
lizmat | and another Rakudo Weekly News hits the Net: rakudoweekly.blog/2020/07/27/2020-...t-on-time/ | 20:50 | |
holyghost | yay! | ||
holyghost reads it | 20:52 | ||
I'm going to study Hungarian | |||
20:55
kensanata left
20:59
Xliff joined
|
|||
Xliff | o/ | 20:59 | |
oddp | Thanks a lot, liz! | 21:00 | |
holyghost | 'lo Xliff | 21:01 | |
Xliff | gnolly | ||
holyghost | I've put some scheme projects on the server, gondolinX.tar.gz files | ||
busy sorting those out | 21:02 | ||
too bad scsh does not run on 64 bit systems | |||
so you cannot run them there | |||
21:18
melezhik joined
|
|||
melezhik | lizmat - thanks for yet another rakudo weekly, as usual - good content! | 21:19 | |
lizmat | thanks to all the people providing that content! :-) | ||
21:19
OpenZen joined
|
|||
guifa2 | lizmat: that's a cool random name module | 21:19 | |
melezhik | lizmat - sure! | 21:20 | |
lizmat | thank you, another cool module I made the past weeks, Hash2Class needed it | ||
guifa2 internationalizes it, 'say docker-name :lang<es>' # quijote-épico | |||
;-) | |||
21:27
cpan-raku left
21:52
melezhik left
22:00
skids left
22:07
pecastro left
22:11
dolmen left
22:14
Tirifto left,
Altai-man_ joined
22:15
leont left
22:17
sena_kun left
22:32
cpan-raku joined,
cpan-raku left,
cpan-raku joined
|
|||
holyghost | szendvics | 22:43 | |
22:55
oneeggeach joined,
oneeggeach left
23:09
guifa2 left
23:31
afresh1 left
23:47
finsternis joined
23:48
oddp left
23:57
MilkmanDan left
23:58
MilkmanDan joined
|