Hacker News
Why I'm Building a Database Engine in C#
benterix
|next
[-]
Correct me if I'm wrong but isn't it what aot was supposed to solve?
landl0rd
|root
|parent
[-]
Span<T> is more important for performance TBH JIT warmup isn't a huge issue for a long-running process
CharlieDigital
|root
|parent
|next
[-]
> ...but it may make your code much uglier
Flip side is that if you use more source generation, it may end up making the code more terse/"prettier" where it matters and avoid the reflection hit.AI agents seem fairly good at generating source generators so there doesn't seem to be a reason to not use them.
tracker1
|next
|previous
[-]
C# is pretty powerful and capable of lower level usage, such as in the examples given... not to mention a pretty nice interop with C-style libraries. It looks like the intent here might be a custom database engine for service integrations... not necessarily a full rdbms in and of itself.
nitwit005
|next
|previous
[-]
kerblang
|next
|previous
[-]
I'm not sure authors of Cassandra, ElasticSearch, MongoDB (and more...?) ever had the slightest twinge of uncertainty about whether a managed memory env would cause far more problems than it fixed, even with less native tooling than in C#. Java bros DGAF
zerr
|next
|previous
[-]
alex7o
|next
|previous
[-]
DeathArrow
|next
|previous
[-]
jaen
|next
|previous
[-]
If they could make the developer experience similar to Go, it would rule the world...
Rohansi
|root
|parent
|next
[-]
You can already AOT compile .NET software to an executable to run on whichever platform you need, just like Go.
Libraries need to be published into a package manager (NuGet) which is more friction than just importing from Git repos but it's not that bad.
landl0rd
|root
|parent
|next
|previous
[-]
karmakaze
|root
|parent
|previous
[-]
Great post with details, not a I'm vibe coding...