Platform on which to build experimental server stuff.

Implies modules -- because you need to be able to add stuff,
and also to ignore stuff.

Implies free licence -- Otherwise commercial types get stuck.

Implies multiple working configs. -- Otherwise useless as starting point.

Implies easy to follow some configs.  -- Otherwise easier to start over.


Cool features are interesting, but only to the extent that they're easy,
at least for the core module set.  Dyn load is easy -- Less than a day.



I've worked on LP, I've written Kria.


Desirable :  language-agnostic, highly portable.

Language-agnostic more or less implies C.

2 classes of design decisions: those require and exclude.
Don't exclude without good reason, don't require without good reason.

Global properties:
language, calling conventions, threading, dynload, GC.

Threading:

VM multithreading does not require app multithreading.
Not all systems support app multithreading.
Multithreading has understandability and efficiency (mutex) penalties.
For 2-proc and the like, distributed techniques may be better.
Threading is not a win on 1 processor.

GC: another global property.




LP-style
bootstrap
config
socket
telnet
VM
compiler
database
parser?

Diku-style
bootstrap
config
socket
telnet
parser
rooms
custom_code
