🦋 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. |
|||
04:09
guifa left
05:23
sivoais left,
sivoais joined
05:30
lizmat_ joined
05:33
lizmat left
|
|||
ab5tract | Maybe it would be worthwhile exploring an SQLite version of the above | 07:46 | |
Ah, not in the context of fatpacker necessarily, but just as a compunit repo | 07:48 | ||
08:37
finanalyst joined
08:49
donaldh left
09:59
sjm_ left,
sjm_ joined
10:03
sjm__ joined
10:04
sjm_ left
10:10
lizmat_ left,
lizmat joined
10:54
donaldh joined
12:05
guifa joined
|
|||
ugexe | it would be a good learning experience for whoever as it is relatively trivial to model it after CUR::Tar and CUR::Github (just replace calls from `tar` to `sqlite3` or a sqlite library), but i'm not sure it would be particularly useful to anyone unless it was in the core and replaced the existing CURI (i.e. it is used to solve the file naming on any file system thing). | 14:15 | |
but even then these type of repos are probably only useful for pure-raku module sets | 14:16 | ||
lizmat | hmmmm are you implying adding sqlite support in MoarVM itself? | 14:20 | |
ugexe | i think it would be smarter to figure out the use case first, particularly since i just pointed out a pretty glaring flaw | 14:27 | |
lizmat | you mean distributions with resources ? | 14:28 | |
ugexe | i mean anything that uses nativecall | ||
or anything that interfaces with anything outside of raku and has no concept of whatever virtual file system the sqlite db would be acting as | 14:29 | ||
similar to in perl how you can't fat pack XS stuff | |||
it has to be pure perl | |||
lizmat | I thought the point of NativeCall would be that *if* the naive deps are installed, you wouldn't need a compiler, and thus it would still be pure raku ? | 14:30 | |
Geth | rakudo/main: bb0857c8b5 | (Will Coleda)++ | docs/release_guide.pod jdv taking 2025.05 release |
||
ugexe | yeah thats true, to be more precise i should have said anything providing non-raku code in the distribution | 14:31 | |
like how openssl provides the dlls in the distribution itself | |||
lizmat | right, understood | ||
but that would be a very small subset of distributions | |||
although openssl is really high up river indeed | 14:32 | ||
ugexe | in general it is probably safe to assume most things with a Build.rakumod would not work since that is typically used for compiling stuff | 14:33 | |
lizmat | remind me what the a Build.rakumod has over a BEGIN block in a module ? | 14:35 | |
ugexe | that being said, i'm not against sqlite being in core even if for other stuff | ||
lizmat | I guess it could be used to create the source... | ||
ugexe | Build.rakumod is often used to compile c code. for example: inline::perl5 | ||
lizmat | yeah, sqlite is used by the profiler, afaik | ||
and Red already supports it as well, afaik | 14:36 | ||
ugexe | if it compiles C code then the generated artifacts need to be referenced by the raku code, but those artifacts wouldn't be on the file system | ||
lizmat | and it could provide a way to create persistent data structures, backed by sqlite database | ||
ugexe | i guess but what advantage does a database have for that vs any other storage medium | 14:38 | |
lizmat | only possible issue I can think of, is that sqlite still is single threaded? | ||
standarization, I guess | |||
and the ability to do a bit smarter querying I gess | |||
ugexe | i think using a file would be the most standardized way | ||
lizmat | *guess | ||
SmokeMachine | Red supports SQLite, but it uses DBIish for that... | 14:39 | |
lizmat | re standarization: "The SQLite file format is stable, cross-platform, and backwards compatible and the developers pledge to keep it that way through the year 2050. SQLite database files are commonly used as containers to transfer rich content between systems [1] [2] [3] and as a long-term archival format for data [4]. There are over 1 trillion (1e12) SQLite databases in active use [5]." | 14:40 | |
from the sqlite home page | |||
ugexe | i dont see how the file format is relevant | ||
a persistent data structure just needs some representation that raku understands and correctly recreates whatever object | 14:41 | ||
lizmat | "pledge to keep it that way through the year 2050" | ||
ugexe | but how is that relevant | ||
lizmat | actually, I'm not 100% sure, but it feels good :-) | 14:42 | |
15:38
finanalyst left
|
|||
timo | lizmat: sqlite has multi threaded modes that you can opt into if you promise to be good | 19:01 | |
i think if you just create multiple "handle" objects on the same database and only use one handle from one thread at the same time you get a performance increase by being able to utilise multiple cores | 19:02 | ||
nine | Just for correctness' sake: Inline::Perl5 does not have a Build.rakumod | 19:13 | |
timo | nine: apart from "user is now responsible for nuking their ~/.raku/precomp at the right times", what issues can you foresee from using `install-dist.raku --/precomp` when building debian packages? to be clear, this is just a hotfix to get things working again before the deadline which is approaching verily | 19:17 | |
nine | Not sure how well we cope when we can't find any writable precomp store. Other than that it should be just a collossal waste of resources | 19:19 | |
And I still wonder how we got into this situation when the way to package Raku modules has been pretty clear for some 8 years or so | 19:20 | ||
Also wouldn't it be just easier to do this properly? It's not like you have do do much, is it? | 19:22 | ||
timo | i may not have to do much, but i also don't have time to make more than one attempt and get it right the first time | 19:31 | |
21:28
guifa left
22:02
guifa joined
22:03
guifa left
|
|||
Geth | rakudo: wayland++ created pull request #5876: Test that a submethod can access an attribute |
22:24 |