On Wed, 2011-02-02 at 12:50 -0500, erik quanstrom wrote:
> > Even C has a runtime.  Perhaps you should look more into how programming
> > languages are implemented :-).  C++ has one too, especially in the wake of
> > exceptions and such.
> 
> really?  what do you consider to be the c runtime?
> i don't think that the asm goo that gets you to main
> really counts as "runtime" and neither does the c
> library, because neither implement language features.

A runtime system is just a library whose entry points are language
keywords.[1]  In go, dynamic allocation, threads, channels, etc. are
accessed via language features, so the libraries that implement those
things are considered part of the RTS.  That's a terminological
difference only from Plan 9 C, which has the same features[2] but
accesses them through ordinary library entry points so the libraries
that implement them aren't called `runtimes'.  But I think complaining
about a library only because its entry point is a keyword is kind of
silly.

jcc

[1] Or other syntactic features of the language.  I'm not aware of any
other simplification in this statement; correct me if I'm wrong.

[2] Well, C has somewhat less useful versions of the same features.  The
difference has no significant impact on the size of the relevant
libraries.



Reply via email to