

Programming language should be simple - l0nwlf
http://blog.dhananjaynene.com/2010/08/my-ideal-programming-language/

======
Ruudjah
In 40 years there has not been very much improvement. The same concepts of
decade old languages are implemented in newer languages.

OP: > Programming should be simple. And it should be accessible. And when I
mean accessible I mean people with IQ of approximately 100 should be able to
write programs.

He's looking for the wrong tool for the job. We'd need great IDE's for this to
hide all the stuff making the app complex.

------
dkersten
Similarly, open heart surgery should be simple and easy to learn.

I don't mind if theres a learning curve, so long as it is approachable (ie, a
language geared for web development shouldnt require a degree in type theory)
and, much more importantly, consistent. I don't mind complex tools for a
complex job, though.

Having said that, I agree with what he is saying in general. Simple languages
lead to cheaper maintenance (and fewer bugs), which is often more important
than more powerful (but more complex) features. Of course, if we can have the
features without sacrificing simplicity, then all the better. Consistency
helps here.

~~~
theclay
Apples and Oranges. Open heart surgery is not most--notice I say most--
programming jobs. Nor do most software bugs carry the same sorts of penalties
as screw-ups in major surgery.

This is why programmers aren't sued and surgeons are.

There is a huge niche in programming languages for non-professional/semi-
professional programmers without computer science degrees. This niche is
currently unfilled. Basic used to do the job. Python used to, and still wants
to, but it keeps moving up the ladder in complexity.

Lua looks most competitive in this regard, I think. One main data structure,
fast execution, room to grow without feature creep.

------
warrenwilkinson
These requirements are too stringent. Something better give, or what he wants
is a Java that is both more featured, simpler, and better documented.

1\. Must run on a very specific instruction set (JVM).

2\. Must have (require?) lots of documentation

3\. Be both Object Oriented, and Functional.

4\. Must be able to automagically do multicore.

5\. Must also contain a full type inferencing system.

6\. While prioritizing human readability over consistent syntax.

7\. And constrain itself to a very specific call stack layout.

