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. |
|||
04:05
Kaipii joined
04:08
Kaipei left
04:44
Kaipii left
05:20
Kaipii joined
07:42
Kaipii is now known as Kaiepi
08:59
Kaiepi left
09:14
Kaiepi joined
09:22
jaguart joined
10:36
lizmat_ joined
10:38
lizmat left,
lizmat_ is now known as lizmat
12:18
jgaz joined
|
|||
jaguart | Do folks using Raku have any thoughts either way on Dependency Injection vs Service Container - or is that orthogonal? | 13:31 | |
I mean - orthogonal to Raku :) | 14:08 | ||
14:10
saint- joined
14:27
kbtz joined
|
|||
lizmat | feels like a question better asked on #raku | 14:29 | |
14:38
kbtz left,
kbtz joined
16:41
discord-raku-bot left
16:42
discord-raku-bot joined
16:54
kbtz left
16:59
jgaz left
|
|||
jaguart | looking for recommends - Config loader, prefer JSON or YAML - anyone have a fav? Config + Config::Parser::json or Config::JSON etc.? | 17:03 | |
17:51
saint- left
17:57
Kaiepi left
18:33
Kaiepi joined
|
|||
SmokeMachine | I prefer json (I don’t like indentation with meaning… I feel like using `whitespace`) | 18:34 | |
And it’s easy to search with rak… :) | |||
jaguart | SmokeMachine++ - thanks. So far my thought is ``Config`` naming is evil - there is a problem with the Perl Config.pm in terms of name-clash which makes me nervous, and Config::JSON is meh - it has a function interface, but no instance, so would need wrapping to provide state like .config-filename .is_dirty etc. | 18:40 | |
Config::Clever looks interesting - with a shallow wrapper | 18:42 | ||
Config::INI - missing raku.land overview, because the docs are in pod6 in the module - but it's a INI based anyway | 18:44 | ||
avuserow | I like TOML these days. Similar looking to INI but has better data structures. Easier to edit than JSON and avoids the complexity of YAML. | 20:56 | |
Quibono | What’s the best way to deal with the raku learning curve? | 21:32 | |
Nemokosch | doing the weekly challenges, reading small snippets and finding out every day what you need to solve at the moment | 21:34 | |
Quibono | Also, does rakudo spit out the bytecode into a file and is there a way to get like a textual bytecode/docs for the bytecode? | 21:35 | |
And how do you kinda justify the complexity of it? Like what makes raku so worth learning (not trying to be confrontational, just curious) | |||
Nemokosch | I don't know if it is worth it. What I can say is that it makes you feel empowered when it really works as you would expect. My personal motive for starting Raku was simply that I think POSIX shell is the most disgusting language still in use and I wanted something that has a fluent interface to it, while still being a proper programming language. | 21:37 | |
it also feels great for CLI stuff and prototyping | 21:39 | ||
for CLI, I doubt it is beatable at all | |||
Quibono | Gotcha, thanks. 🙂 | 21:41 | |
Nemokosch | Also I think the community is very entitled. This is true for many languages but it's particularly important for languages with small user bases | 21:43 | |
Quibono | Entitled how? | 21:46 | |
Nemokosch | well, how | ||
Anton Antonov | docopt implementations in Python and R make those languages fairly for CLI tasks. (At least for data processing, ML, etc.) | 22:09 | |
"docopt" (docopt.org) implementations in Python and R make those languages fairly for CLI tasks. (At least for data processing, ML, etc.) | 22:10 | ||
Nemokosch | and even this looks lamer than what you get with Raku by literally not doing anything for it | 22:12 | |
Anton Antonov | Yeah. 🙂 It is a crutch. But since I can utilize with CLI some powerful Python and R libraries through "docopt", I like it. | 22:14 | |
Nemokosch | Well, fair enough, not gonna argue with that | 22:17 | |
There are two aspects in which we need to catch up, even if not to Python level, at least towards it | |||
One is the amount of high-quality, maintained modules | |||
Anton Antonov | Also -- like you, it seems -- I have hard time determining is learning Raku worth it. For its worth comes from much deeper understanding on programming language technologies. But this is more of a "the journey is its own reward" kind of deal. | ||
Nemokosch | And the other is the performance... | ||
Anton Antonov | Working on it, I think ... | ||
Nemokosch | Definitely | ||
stevied | That’s why I’m learning it. Just to become more knowledgeable. | ||
Nemokosch | Python is reasonably fast for data processing these days | 22:19 | |
stevied | Good mix of being useful and doing advanced stuff. | ||
Anton Antonov | Currently I am profiling / benchmarking a the same theoretical design of recommender systems in Java, Kotlin, Mathematica, Python R, Raku, and Swift. Python is not the fastest for the core computations, but is very, very quick and getting/rehydrating pickled recommenders. That makes _very_ applicable for utilization in Unix shell CLI pipelines. | 22:21 | |
BTW, with Raku the reading of the largest benchmark test CSV file is 20-30 times slower than Python. (After utilizing CBOR, not direct CSV parsing...) | 22:25 | ||
Basically, I was strongly considering not including Raku in that study. But the corresponding Raku package has a reference implementation, so I am going to accommodate it somehow... | 22:27 | ||
Python or Raku? | |||
stevied | Raku | ||
Quibono | 20x slower? Damn | 22:29 | |
Now I want to get involved in raku just to figure out why it’s so slow | |||
Anton Antonov | The data load, of CSV files. Python uses directly C for those, I am told. | 22:31 | |
Quibono | Ah so raku’s CSV is implemented directly in raku, that’d do it | ||
Anton Antonov | Again -- I used a python program to convert CSV file into CBOR file, and used the Raku package "CBOR::Simple" (raku.land/zef:japhb/CBOR::Simple) to ingest that file in Raku. | 22:33 | |
Quibono | Is there not a raku CSV module? | ||
Anton Antonov | There is, "Text::CSV", but it is too slow. After 60 min still did not parse / ingest my CSV file. | 22:34 | |
Nemokosch | that's why it's reasonably common to implement modules using the NativeCall module, depending on C typically | ||
anyway, Raku usually runs on MoarVM, it has basically nothing to do with C per se | 22:35 | ||
while MoarVM has pros - for example the sheer fact that it can support all the features of Raku, and that it uses a language that is still essentially Raku - , it seems rather heavy and probably there are still huge open optimization possibilities... | 22:37 | ||
not necessarily "low-hanging" but still, there have been good reworks so far, like the new dispatch and like RakuAST will be | 22:38 | ||
probably there could be other reworks as well | 22:39 | ||
Anton Antonov | Hm... for me the low-hanging fruit are basic Machine Learning (ML) algorithms. To some extend in order to supplement the ML code generation I implemented in Raku, but mostly to "remind" myself of those algorithms and take another look at them, | 22:44 | |
Hm... for me the low-hanging fruit are basic Machine Learning (ML) algorithms. To some extend in order to supplement the ML code generation I implemented in Raku, but mostly to "remind" myself of those algorithms and take another look at them. | |||
Nemokosch | I suppose machine learning content isn't that much about real-time performance anyway? | 22:48 | |
22:50
kbtz joined
22:52
kbtz left
23:03
kbtz joined
|
|||
kbtz | hey folks, I've put my grammar on a its own rakumod file and I'm using `unit grammar gname;` cuz its nice | 23:10 | |
but now over the main program I use gname but neither `parse` nor `gname::parse` is found | 23:11 | ||
I need some sort of `our gname::parse` so it can be used over there? | 23:13 | ||
Quibono | Kinda insane but I’m really tempted to make my own Raku VM and maybe compiler… | 23:14 | |
kbtz | `gname.parse` of course | 23:20 | |
Quibono | So there’s only rakudo as an active compiler? | 23:33 | |
stevied | Only viable one being worked, from what I’ve read | 23:52 |