My advice on implementing stuff in C:
My advice on implementing stuff in C:
Posted Oct 21, 2010 19:58 UTC (Thu) by njs (subscriber, #40338)In reply to: My advice on implementing stuff in C: by nix
Parent article: Russell: On C Library Implementation
R has some excellent bits that are difficult/impossible to get without baking them into the core language design (support for NA ubiquitous across all data types, the formula syntax, the quirky call-by-thunk convention that lets you get ad-hoc macro-like behavior even for non-macro functions), BUT the interpreter is a piece of junk by modern standards -- and honestly even by not-so-modern standards, given that R is a Lisp (it does refcount based COW, where the refcount values are "1, 2, many", so in practice it's an imperative vector language that does not support in-place mutation), the C API is awful and exposes all of the interpreter's implementation details (so you can't fix any of them), and while in theory it has nice namespace support in practice you end up with a giant flat soup of poorly organized functions that do random things, like PHP.
TAKE THAT
