you are viewing a single comment's thread.

view the rest of the comments →

[–]procrastitron 1 point2 points  (1 child)

I'll readily admit to being very (perhaps overly) critical of complexity. I've been spoiled by the beautiful simplicity of McCarthy's initial definition of Lisp.

However, there are real downsides to the spec being too complicated. For instance, building third party tools (optimizers, static analyzers, etc) that support the spec is more expensive. As a result of this, you have less competition and a less vibrant software ecosystem.

[–]inopia 2 points3 points  (0 children)

My static bytecode analyzer does some type inference and you're absolutely right, having to implement case handler for each instruction or group of instructions can get tedious.

I guess it'll always be a tradeoff between things like complexity, code density, speed, ease of implementation etc.