Show HN: I wrote a RDBMS (SQLite clone) from scratch in pure Python

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • learndb-py

    Learn database internals by implementing it from scratch.

  • Especially the VM part: https://github.com/spandanb/learndb-py/blob/master/learndb/v...

    Compare it with this: https://github.com/sqlite/sqlite/blob/master/src/vdbe.c

    That's said, I'm curious how complete this LearnDB is. SQLite is hard to read not only it's old but also it covers a lot of SQL and following SQL spec makes hings complicated. SQLite has great test suite so it's nice if you run the suit against this implementation.

  • CsharpSQLite

    Windows, Linux, Mono C# port of the SQLite library

  • Long long time ago someone rewrote/ported SQLite from C to C# -> https://code.google.com/archive/p/csharp-sqlite/wikis/Letter... - note how welcome Dr. Richard Hipp was on the effort!

    Probably here on github -> https://github.com/CsharpDatabase/CsharpSQLite - and possibly some more clones after that.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • evadb

    Database system for AI-powered apps

  • parse

    Monadic parsing for Common Lisp (by massung)

  • parsec

    A monadic parser combinator library

  • SQLite

    Official Git mirror of the SQLite source tree

  • Especially the VM part: https://github.com/spandanb/learndb-py/blob/master/learndb/v...

    Compare it with this: https://github.com/sqlite/sqlite/blob/master/src/vdbe.c

    That's said, I'm curious how complete this LearnDB is. SQLite is hard to read not only it's old but also it covers a lot of SQL and following SQL spec makes hings complicated. SQLite has great test suite so it's nice if you run the suit against this implementation.

  • Lark

    Lark is a parsing toolkit for Python, built with a focus on ergonomics, performance and modularity.

  • Lark supports, and recommends, writing and storing the grammar in a .lark file. We have syntax highlighting support in all major IDEs, and even in github itself. For example, here is Lark's built-in grammar for Python: https://github.com/lark-parser/lark/blob/master/lark/grammar...

    You can also test grammars "live" in our online IDE: https://www.lark-parser.org/ide/

    The rationale is that it's more terse and has less visual clutter than a DSL over Python, which makes it easier to read and write.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts