even I was in the same situation as you.. after few days of research, I concluded with nodejs being the best option.. quite new but promising.. and fits in all requirements you mentioned..
More Related Contents:
- What is the difference between statically typed and dynamically typed languages?
- Function overloading by return type?
- What is duck typing?
- Dynamic type languages versus static type languages
- Language support for chained comparison operators (x < y < z)
- Detecting programming language from a snippet [closed]
- What are five things you hate about your favorite language? [closed]
- Can all iterative algorithms be expressed recursively?
- When is a language considered a scripting language? [closed]
- Why is the ‘if’ statement considered evil?
- Language Books/Tutorials for popular languages
- What is the ‘expression problem’?
- What’s the name for hyphen-separated case?
- Best explanation for languages without null
- Why functional languages? [closed]
- What is declarative programming? [closed]
- What languages are used for real time systems programming? [closed]
- Why are dates calculated from January 1st, 1970? [duplicate]
- What is the meaning of the term “thread-safe”?
- Can you monkey patch methods on core types in Python?
- What is a trampoline function?
- c++ array assignment of multiple values
- What is the difference between def foo = {} and def foo() = {} in Scala?
- Are there other common “c-like” or non “c-like” languages with non zero index array position? [closed]
- Why should java package name be lowercase?
- Setting std=c99 flag in GCC
- What is the difference between covariance and contra-variance in programming languages? [closed]
- Suggestions for writing a programming language? [closed]
- Is C# a single dispatch or multiple dispatch language?
- Maximum Method Name Length