> IMHO even the ideas of "block" and "chain" are implementation details in the same way as the journal of a traditional database is an implementation detail.
The internals of a database are one thing, but the semantics of the language builtins seem like another. It almost feels akin to someone suggesting we change the underlying implementation of "println" (or whatever language builtin outputs to stdout) to automatically write to a new row in a database. I mean, I could adjust to such a weird idea but my initial impression would be we are forcing an existing abstraction onto a problem rather than choosing a truly suitable abstraction.
> Exposing these details as a library means that the program is tied to not only the blockchain, but a particular blockchain runtime.
Not necessarily, I'm considering something more like Go's cloud API: https://github.com/google/go-cloud
You could easily have a "blockchain" API with any number of runtime backends.
I understand what the proposer was suggesting: a single semantic meaning for "print" across all programming languages that will map onto blockchain. I just don't agree that it is a good idea.