|
This channel is intended for people just starting with the Raku Programming Language (raku.org). Logs are available at irclogs.raku.org/raku-beginner/live.html Set by lizmat on 8 June 2022. |
|||
|
00:43
lizmat joined
01:26
librasteve_ left
01:36
Manifest0 left
08:50
librasteve_ joined
08:52
stanrifkin joined
08:58
Manifest0 joined
09:15
dakkar joined
10:47
stanrifkin left
12:32
stanrifkin joined
13:31
human-blip left
13:32
human-blip joined
13:57
human-blip left,
human-blip joined
14:15
librasteve_ left
17:35
dakkar left
18:14
stanrifkin left
|
|||
| ab5tract | librasteve: I'm still curious about this: usercontent.irccloud-cdn.com/file/.../image.png | 19:40 | |
|
19:50
librasteve_ joined
|
|||
| librasteve | ab5tract: sorry thought I had dodged that one ... going over to IRC to avoid mistranslations | 19:51 | |
| librasteve_ | arrives at IRC, here’s what I think I said | ||
| m: say &[+](1,2) | 19:52 | ||
| camelia | 3 | ||
| librasteve_ | then | ||
| .oO as in ooooh that’s neat | |||
| hope that makes sense now | 19:53 | ||
|
19:59
uniro joined
20:02
Manifest0 left
|
|||
| ab5tract | ahhh | 20:21 | |
| that explains it quite perfectly | 20:22 | ||
| I'm not sure how we can fix that bridge, but it would be awesome if we can do so | |||
| renormalist | Are allomorphs a special feature of the language or is it "just" a predefined use of the normal type system, with those types, the <> operators, etc.? I mostly wonder where that "use the correct value" work is done, like wouldn't it need to train *every* operator to know about allomorphs? | 20:51 | |
| m: <42 50e0 100>.^name | 20:53 | ||
| camelia | ( no output ) | ||
| renormalist | m: dd <42 50e0 100>.^name | ||
| camelia | "List" | ||
| antononcube | @renormalist That would depend on how you define your operators. (I assume you are making new operators.) | ||
| renormalist | actually I'm just reading about it, just trying to understand them, because I think they are what's needed in cases where I want Raku to DWIM like Perl, like on porting Perl code. | 20:54 | |
| antononcube | Try this: <42 50e0 100>.map(*.^name) | 20:55 | |
| renormalist | and I'm not sure right now if "Allomorphs" is a concept of the Raku language, or a special type, lie IntStr is. | ||
| m: dd <42 50e0 100>.map(*.^name) | |||
| camelia | ("IntStr", "NumStr", "IntStr").Seq | ||
| renormalist | m: dd +«<42 50e0 100>.map(*.^name) | 20:56 | |
| camelia | (Failure.new(exception => X::Str::Numeric.new(source => "IntStr", pos => 0, reason => "base-10 number must begin with valid digits or '.'"), backtrace => Backtrace.new), Failure.new(exception => X::Str::Numeric.new(source => "NumStr", pos => 0, reason… | ||
| renormalist | m: dd (+«<42 50e0 100>).map(*.^name) | ||
| camelia | ("Int", "Num", "Int").Seq | ||
| renormalist | m: dd (~«<42 50e0 100>).map(*.^name) | ||
| camelia | ("Str", "Str", "Str").Seq | ||
| renormalist is here: docs.raku.org/language/numerics#Allomorphs | |||
| I formulate it differently: could I create m own "allomorph" behaviour, let's call it "multimorphs", and eg let them handle 3 different values/contexts? | 20:58 | ||
| then I would understand Allomorphs are just a particular setup of the normal type system of Raku. Is that the case? | 20:59 | ||
| (remember, I'm early beginner level) | |||
| antononcube | Allomorph behavior is seen in other languages, but most like the concept of "Allomorph" is just in Raku. (As a programming language concpet.) | 21:01 | |
| renormalist | ok | ||
| antononcube | Due, at least one of Raku's creators being a linguist, I guess... | ||
| renormalist | I will take this as my thinking model for now. Thanks. Back on experimenting. :-) | 21:02 | |
| ab5tract | Allomorphs are implemented using normal features of the Raku type system, so you could definitely create your theoretical "multimorphs" | 21:06 | |
| the essential pattern is pretty simple, even if the particulars get a bit intricate: github.com/rakudo/rakudo/blob/main...hs.rakumod | 21:07 | ||
| antononcube | Hmmm... maybe LLMs can make Raku allomorphs... | 21:18 | |
| Although, I cannot comeup with a meaningful allomorph right now. All my ideas are some version of symbolic programming use cases. | 21:19 | ||
| ab5tract | It would be an interesting exercise to work on a Multimorph role that could take a list of types as parameters | 21:20 | |
| I guess their utlity would likely intersect with "sum" types | 21:21 | ||
| librasteve | rakujourney.wordpress.com/2024/04/...s-unicode/ | 21:29 | |
| rakujourney.wordpress.com/2023/05/...lomorphia/ | |||
| renormalist | ab5tract: thanks, will read and adapt my thinking model. | 21:39 | |
| ab5tract: that core.c/allomorphs.rakumod, despite me not getting every detail, is quite the answer, I can somehow see everything I was thinking about. Nice learning for me. Thanks again. | 21:44 | ||
| ab5tract | renormalist: cheers! sometimes taking a look at the Rakudo source can be really helpful | 21:48 | |
|
22:58
cleo left
|
|||