Hacker News new | past | comments | ask | show | jobs | submit login

Meyer is the creator of the Eiffel programming language. Most of Eiffel's OOP features were borrowed by other successful OO languages, but I still don't understand why Eiffel never took off.



Most PLs don't take off.

Language choice is mostly dependent of social factors that can be summarised as "network effect". In PLs that manifests itself primarily through a lack of mature and numerous libraries.

Eiffel had additional technical flaws:

- Subtyping was wrong.

- Handling of concurrency was wrong, in the sense that almost all concurrency was hidden, instead of exposed. Eiffel was an anti-Erlang in this regard.

- A lot of modern PL features were missing, e.g. pattern matching, first-class higher-order functions.

- The single most distinctive of Eiffel's features, built-in support for assertions, was not supported by good-enough tools.

I would argue that the last point is still the case today for all formal verification, see e.g. Microsoft's Dafny [1]. Automating formal verification so that normal programmers can use it routinely in mainstream programming is an unsolved problem in December 2017.

[1] https://github.com/Microsoft/dafny


Higher order functions have been added in later language updates.


It was initially only available in commercial versions, with enterprise level prices, similarly like Ada.

Think Rational Rose, Together, Enterprise Architect, Visual Studio Ultimate kind of prices.

Eiffel is a great language, proper OOP, value types, generics, contracts, MI, non nullable types, nice IDE, JIT and AOT compilation via native or C/C++ compilers.

But the price made it out of reach for most developers and the open source variants were a poor replication of the whole experience.

Nowdays there is a free license for open source projects, but it is too late for widespread adoption.


I have a memory that there weren't any free implementations for quite a while, which might have slowed adoption.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: