2 ms·
The title makes no sense. The "three laws" are observations about how people respond to a programming language design. They do not make any sense when applied
by drallison 13y ago
The title makes no sense. The "three laws" are observations about how people respond to a programming language design. They do not make any sense when applied to a design or the design process.
- ScottBurson 13y agoIt certainly was not the article I was hoping for, which would say things like: -- Define and publish a formal syntax for your language. Do not get too clever with the syntax -- if you can't express some feature cleanly in BNF, don't do it that way. -- Equality must be an equivalence relation: symmetric, reflexive, and transitive. If you don't know what that means, you have no business designing a language. [Equality is not transitive in either JavaScript or PHP.] -- Comparison operators ('<' etc.) must be transitive. [Violated in PHP.] -- Transformations that people expect to work must work. For example, 'if (p) a else b' must be equivalent in all cases to 'if (!p) b else a' [Visual Basic violates this]. -- The scope rules must be clear and straightforward, and not cause maintainability nightmares. [JavaScript fails.]