News for hackers. Stuff that matters.
Re:Runtime verification in Erlang by using contracts by LawnboyMax on Wednesday February 06, 2019 @06:56PM (#19101501)
I wish Eiffel Software changed their dual licensing business model so that more people would consider using the language in production.
Re:Runtime verification in Erlang by using contracts by hinkley on Wednesday February 06, 2019 @07:50PM (#19101900)
Bertrand Meyer is constantly at the top of my “people to read when I’ve read all of my unread books” list and unfortunately the last time I looked those books were out of print.

My feel at the time was that Meyer introduced Eiffel right on the cusp of the move to free compilers, and he never recovered from that tectonic shift.

Whether most developers of that generation could be convinced that rigor was useful I cannot say (but fear the answer is “no”), but they certainly weren’t going to pay to learn or use a new language.

Re:Runtime verification in Erlang by using contracts by pjmlp on Thursday February 07, 2019 @01:27AM (#19103439)
We certainly paid for our compilers and interpreters, even to learn a new programming language.

Alternative was making our own ones, from code listings.

That rigour is useful, having learned Eiffel, coming from Wirth languages background, reading Code Complete, completely influenced my way of writing C and I regularly used all the nice VSC++ ASSERT macros variants for pointer and argument validation.

Also adopted code contracts in Java and .NET years later.

Coming back to Eiffel, languages need a killer use case for business to adopt them, so they end up only having customers on domains where companies are required to take quality seriously, like high integrity computing.

Re:Runtime verification in Erlang by using contracts by pjmlp on Thursday February 07, 2019 @01:16AM (#19103412)
And I wish it was still viable to make a business selling software tools to the average developer, instead of being forced to target only the enterprise, as the customers willing to pay for their tooling.