←back to thread

89 points murat3ok | 5 comments | | HN request time: 0.892s | source
Show context
Sytten ◴[] No.46240959[source]
In the same area, I am tracking the Rust rewrite of sqlite by Turso [1]. The big advantage is the file format compatibility.

[1] https://github.com/tursodatabase/turso

replies(1): >>46242858 #
egorfine ◴[] No.46242858[source]
It's not a rewrite of SQLite in Rust.

It's an entirely new project that happens to have some compatibility with one of the popular SQL databases, namely SQLite.

replies(1): >>46243010 #
1. forgotpwd16 ◴[] No.46243010[source]
From the devs themselves[0]:

>Our goal is to build a reimplementation of SQLite from scratch, fully compatible at the language and file format level, with the same or higher reliability SQLite is known for, but with full memory safety and on a new, modern architecture.

And they call it rewrite in a recent followup post[1].

[0]: https://turso.tech/blog/introducing-limbo-a-complete-rewrite...

[1]: https://turso.tech/blog/we-will-rewrite-sqlite-and-we-are-go...

replies(2): >>46243350 #>>46243413 #
2. egorfine ◴[] No.46243350[source]
They may call it all they want. It's been common between some Rust developers to steal valor by highjacking the name of original project for their own fun rewrites.

Turso a third party project that has nothing to do with SQLite.

replies(1): >>46243667 #
3. lucideer ◴[] No.46243413[source]
The wording & framing of these things is an interesting topic in the context of the W3C's decision to drop WebSQL.

A "rewrite" softly implies a replacement (intent that SQLite users would all migrate to Turso eventually & SQLite would cease to exist as a project). This isn't the strict definition of a rewrite but the implication is there in the language.

OTOH the W3C shut down that spec because it required competing implementations to exist. This imagines a world where Turso & SQLite coexist actively.

E.g. micropython isn't a rewrite of cpython even though they both target compatible python, Chrome isn't a rewrite of Firefox even though they both target a range of compatible languages & formats (but Firefox was a rewrite of Netscape - the word depends heavily on context).

I realise this usage isn't coming from you, it's coming from the Turso devs themselves, but it does feel like an overstep on their part.

The Turso guys can use whatever words they like in their blogposts, they're not the authority on whether it constitutes a rewrite.

4. forgotpwd16 ◴[] No.46243667[source]
Ah, it was about the usage of rewrite by such third-party efforts. In this case, yes, the original reimplementation (could have also call it alternative) wording is probably better. Was confused at the "happens to have some compatibility" part because the project was started with that intent so it wasn't a coincidence.
replies(1): >>46243725 #
5. egorfine ◴[] No.46243725{3}[source]
It's not a reimplementation either. It's just a separate project which has nothing to do with SQLite. Thus mentioning it as "SQLite resomething" is not fair.

SQLite compatibility at file level is a nice perk which I am not totally convinced is truly needed at all. Like, it's hard to imagine scenarios where this is useful. But it can be.

Anyway, godspeed. Just don't steal valor.