🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). Log available at irclogs.raku.org/raku/live.html . If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 6 September 2022.
00:02 librasteve joined 00:07 librasteve left 00:19 arkiuat joined, guifa left 00:24 arkiuat left 00:31 guifa joined 00:37 arkiuat joined 00:42 arkiuat left 00:44 Guest36 left
guifa can we use file system sockets in Raku? 00:50
(that is, a UDS) 00:51
ah we can, with IO::Socket::Async.connect-path 00:53
01:07 arkiuat joined 01:22 arkiuat left, arkiuat joined 01:27 arkiuat left
tonyo .tell manifest0 git clone github.com/tony-o/raku-fez && cd raku-fez && zef install -f --/test . 01:32
tellable6 tonyo, I'll pass your message to Manifest0
01:48 kylese left, hulk joined 01:52 arkiuat joined 01:56 arkiuat left 02:13 arkiuat joined 02:15 hulk left, kylese joined 02:18 arkiuat left 02:24 arkiuat joined 02:33 arkiuat left 02:45 arkiuat joined 02:50 arkiuat left
jdv i know some people like the idea of an IDE and think its "the way" but i don't think i agree that language design should "depend on" or "give favor" to that. 02:52
02:59 arkiuat joined 03:04 arkiuat left 03:24 arkiuat joined 03:29 arkiuat left 03:41 arkiuat joined 03:45 kylese left 03:46 arkiuat left 03:47 kylese joined 04:13 arkiuat joined 04:16 oodani left 04:17 oodani joined, arkiuat left 04:43 arkiuat joined 04:48 arkiuat left 05:26 arkiuat joined 05:31 arkiuat left 05:52 Aedil joined 06:02 arkiuat joined 06:03 librasteve joined 06:07 arkiuat left 06:10 librasteve left 06:18 Sgeo left 06:22 librasteve joined 06:27 arkiuat joined 06:29 librasteve left 06:32 arkiuat left 06:36 jjido joined 06:42 librasteve joined 06:45 jjido left 06:47 librasteve left 06:56 arkiuat joined 07:00 arkiuat left 07:04 jjido joined 07:05 librasteve joined 07:09 librasteve left 07:17 librasteve joined 07:28 arkiuat joined 07:32 librasteve left 07:33 arkiuat left 07:39 librasteve joined 07:44 librasteve left 07:45 jjido left 07:46 librasteve joined, arkiuat joined 07:51 librasteve left 07:53 jjido joined, arkiuat left 07:58 dakkar joined 08:03 librasteve joined 08:04 jjido left 08:05 arkiuat joined 08:09 librasteve left 08:13 arkiuat left 08:18 lichtkind joined 08:22 librasteve joined 08:24 sjn left 08:25 peder left 08:26 librasteve left 08:31 peder joined, sjn joined 08:40 librasteve joined 08:45 arkiuat joined 08:50 arkiuat left 08:55 librasteve left
disbot3 <holmdunc> I've seen it phrased that language implementations should be designed with rich development tooling in mind. For example, a brand new language these days won't be taken seriously if it doesn't provide an official LSP language server 09:05
09:14 librasteve joined 09:18 arkiuat joined 09:23 arkiuat left 09:26 librasteve left
timo good thing raku is old as dirt :) 09:46
09:47 arkiuat joined
timo but an LSP with a lot of work put into it would be nice to have. what we have right now is a good start, but it's not really prominently advertised or anything 09:51
09:52 arkiuat left 09:53 librasteve joined
timo github.com/bscan/RakuNavigator in case you haven't seen it 09:56
09:58 librasteve left 10:09 wayland joined 10:21 arkiuat joined 10:24 librasteve joined 10:26 arkiuat left 10:30 librasteve left
disbot3 <melezhik.> Second that 10:36
10:47 librasteve joined 10:49 arkiuat joined 10:55 arkiuat left 11:04 librasteve left 11:16 librasteve joined 11:24 arkiuat joined 11:25 librasteve left 11:28 arkiuat left 11:37 librasteve joined 11:41 librasteve left
tbrowder hi, i can never remember how to get a list from a sequence. i need the list of pieces produced from raku routine 'split'. supposedlu routine 'comb' also produces a sequence but i have never had a problem accessing that. 11:49
11:49 arkiuat joined
lizmat m: dd <a b c>.map({ $_ ~ $_ }) 11:50
camelia ("aa", "bb", "cc").Seq
11:50 librasteve joined
tbrowder m: my $s = "my dog"; say $_ for $s.comb 11:50
camelia m
y

d
o
g
lizmat m: dd <a b c>.map({ $_ ~ $_ }).List
camelia ("aa", "bb", "cc")
tbrowder oh i may be a dummy... 11:54
11:54 arkiuat left 11:55 librasteve left
tbrowder m: my $s = "dog"; my @a = $s.comb.List; say "'$_'" for @a 11:56
camelia 'd'
'o'
'g'
lizmat in that case you won't need the List
m: my $s = "dog"; my @a = $s.comb; say "'$_'" for @a 11:57
camelia 'd'
'o'
'g'
lizmat the initialization of @a will iterate over de Seq produced by .comb
tbrowder should .List work on the seq from 'split'? i'll go back and try it... 11:58
nope :-( 11:59
lizmat please show the code :)
tbrowder ok i'll try a short chunk...
m: my $s = " a b c "; my @a = split('b', $s, 1, :v).List; say "|$_|" for @a 12:03
camelia | a b c |
tbrowder ?? 12:04
i haven't looked at roast yet... 12:07
lizmat how many parts do you want ? 12:14
split with value 1 basically is a noop 12:15
m: my $s = " a b c "; my @a = split('b', $s, 2, :v).List; say "|$_|" for @a
camelia | a |
|b|
| c |
lizmat m: my $s = " a b c "; my @a = split('b', $s, 2, :v).List; dd @a
camelia [" a ", "b", " c "]
lizmat which looks correct to me?
part one is " a ", part 2 is " c ", and the divider is "b" 12:16
tbrowder arg, i missed the "1 is a noop" 12:20
which, for dummies, is not in the docs..l 12:21
we need a short book entitled "Raku for Dummies"
12:21 arkiuat joined 12:22 librasteve joined
tbrowder i think of $limit as "how many splits", not "how many pieces 12:23
[Coke] "The optional LIMIT indicates in how many segments the string should be split" 12:24
12:26 arkiuat left 12:27 librasteve left
tbrowder yes, i know, but i would like to see the "no op" statement there, too 12:28
can anyone think of a practical use for using limit=1 12:29
that had trapped me since 2015 and why i try to avoid split for routine use 12:31
and furthermore, when you specify 2, with :v, you get three pieces in the list. 12:35
another reason to improve something. i complained a long time ago that the docs skip immediately to overly abstract uses rather than a simple one. and the REAL effect of limit is lost in the shuffle 12:41
12:44 librasteve joined
tbrowder that's why my Text::Utils tries to simplify splitting a line so the user sees the effects more easily. 12:44
anyhow, thanks for the reminder of the limitations of LIMIT 12:45
lizmat tbrowder: changing the semantics of LIMIT depending on whether :v was specified or not, feels like a bad design 12:47
12:49 arkiuat joined 12:54 arkiuat left
[Coke] I was suprised to find that split is so old it's using perldoc style in the docs. 13:15
where the args are referred to in ALLCAPS
lizmat yeah, that goes back a looong time 13:18
13:22 arkiuat joined
[Coke] I remember arguing about it back in the day but not with whom :| 13:25
So one of the things I miss about the office (continuing yesterday's thread where I was very much the only person who did) was being able to talk to humans in person. That's pretty much the number one thing. Speaking of which, anyone practicing keto/low carb/IF? Wonder if the discord is a better place for random discussions than IRC. (happy to have an "OT" channel on irc for things that aren't specifically 13:29
raku)
13:32 arkiuat left
tbrowder lizmat: i don't disagree, i just think the minimum value for LIMIT should be 2 13:40
[Coke]: i would submit a PR for the docs on 'split' if you would consider it 13:41
[Coke] for? 13:44
13:48 librasteve left 13:51 arkiuat joined
tbrowder declutteriing examples, more emphasis on effect of $limit. have the examples start with a single-char delim and then show effects of various combinations of the options on that. only THEN show more complicated examples. 13:51
13:55 arkiuat left
tbrowder i would use single quotes, instread of doube 13:56
double, and show the effect of limit 1
i would put a blank line between string use and regex 13:57
14:01 librasteve joined
tbrowder at least one example should show effect of blanks in the string 14:02
[Coke] I'm not sure I agree with having a complex example first.
tbrowder if i said that i meant simple first 14:03
[Coke] But sure, put a PR in, and we can go through it. 14:04
tbrowder ok, will do, thnx
14:06 librasteve left
[Coke] Thanks! 14:07
14:19 librasteve joined 14:23 arkiuat joined 14:24 librasteve left
[Coke] jumps on discord and finds that so many old servers are now read only and no longer updating on discord. 14:24
14:26 mc2 joined
mc2 hello rakoons 14:26
14:28 arkiuat left
lizmat mc2: o/ 14:29
[Coke] ~~ 14:33
disbot3 <cokebot9000> waves
lizmat ~~
heh
14:47 librasteve joined 14:52 librasteve left 14:53 arkiuat joined 14:59 arkiuat left 15:04 librasteve joined 15:09 librasteve left 15:26 arkiuat joined 15:29 librasteve joined 15:31 arkiuat left 15:37 arkiuat joined 15:42 arkiuat left 15:43 arkiuat joined 15:49 arkiuat left 16:16 arkiuat joined 16:21 arkiuat left 16:34 dakkar left, librasteve left 16:37 arkiuat joined 16:42 arkiuat left 16:46 librasteve joined 16:51 librasteve left 17:13 jjido joined 17:14 arkiuat joined 17:18 arkiuat left 17:21 librasteve joined 17:25 librasteve left 17:38 arkiuat joined 17:43 wayland76 joined, arkiuat left, wayland left 17:48 librasteve joined 17:53 librasteve left 17:55 ACfromTX left
[Coke] (off topic) huh. Found several random chats on discord that are perfect. 18:01
disbot3 <nahita3882> what am i doing when i do [3; 4; 5] with the ;s 18:04
[Coke] m: dd [3; 4; 5] 18:08
camelia [3, 4, 5]
[Coke] m: dd (1,2;3,4) 18:10
camelia ((1, 2), (3, 4))
[Coke] m: dd (1,2;3) 18:11
camelia ((1, 2), 3)
[Coke] So looks like if the sub-list is a single item, it collapses to a normal element.
m: dd (1,2;3,)
camelia ((1, 2), (3,))
[Coke] so to get the effect with your list:
18:12 arkiuat joined
[Coke] m: dd [3,;4,;5,] 18:12
camelia [(3,), (4,), (5,)]
18:16 arkiuat left 18:21 librasteve joined 18:26 librasteve left
disbot3 <nahita3882> why is [,] is a List not Array 18:26
18:28 jjido left 18:39 arkiuat joined 18:44 arkiuat left 18:47 librasteve joined 18:52 librasteve left 19:12 arkiuat joined 19:20 librasteve joined 19:25 librasteve left 19:30 jjido joined, arkiuat left 19:44 mc2 left 19:45 mc1 joined 19:52 librasteve joined 19:57 arkiuat joined 20:01 arkiuat left 20:11 librasteve left 20:12 mc1 left 20:16 librasteve joined 20:24 arkiuat joined 20:28 librasteve left 20:29 arkiuat left 20:34 librasteve joined
[Coke] huh, interesting. 20:37
20:37 melezhik joined
melezhik . 20:37
[Coke] m: dd [,].WHAT ; dd [1,].WHAT; dd (1,).WHAT; dd (,).WHAT
camelia ===SORRY!=== Error while compiling <tmp>
Preceding context expects a term, but found infix , instead.
at <tmp>:1
------> WHAT ; dd [1,].WHAT; dd (1,).WHAT; dd (,<HERE>).WHAT
[Coke] m: dd [,].WHAT ; dd [1,].WHAT; dd (1,).WHAT;
camelia List
Array
List
20:39 librasteve left 20:49 lichtkind left 20:57 arkiuat joined 21:06 arkiuat left 21:08 jjido left 21:10 librasteve joined 21:15 librasteve left 21:24 Aedil left 21:26 jjido joined 21:27 librasteve joined 21:30 arkiuat joined 21:32 librasteve left 21:34 arkiuat left 21:41 arkiuat joined 21:44 librasteve joined 21:45 arkiuat left 21:49 librasteve left 22:00 librasteve joined 22:05 librasteve left 22:13 arkiuat joined 22:17 librasteve joined 22:18 arkiuat left 22:21 librasteve left 22:25 librasteve joined 22:26 Sgeo joined 22:30 librasteve left 22:37 grondilu left, grondilu joined 22:41 arkiuat joined 22:42 librasteve joined 22:46 arkiuat left, librasteve left 22:47 melezhik left
Voldenet m: my @x := [,]; @x.push(1) 22:58
camelia Cannot call 'push' on an immutable 'List'
in block <unit> at <tmp> line 1
Voldenet huh~ 22:59
23:00 librasteve joined 23:04 librasteve left 23:13 wayland76 left 23:15 arkiuat joined 23:18 librasteve joined 23:20 arkiuat left
guifa timo: any plans to move JSON::Fast to fez? 23:21
23:22 librasteve left 23:28 jjido left 23:34 librasteve joined 23:38 librasteve left
[Coke] ++timo 23:41
23:42 arkiuat joined 23:47 arkiuat left 23:51 librasteve joined 23:57 librasteve left