wizzard: (Default)
wizzard ([personal profile] wizzard) wrote2010-03-23 11:34 pm

random crazy thought

а вот был бы такой язык с мощной системой типов, способной на всякие proof`ы и inference, в духе Haskell или скорее Coq, и генерировал бы он код на чем-то, что бы легко интегрировалось с кровавым ентерпрайзом (Java/C++/Javascript/C#), и решал бы проблему Generation Gap (в смысле, чтобы можно было хинтить компилятору про фиксированные интерфейсы, и\или чтобы при компиляции можно было подгрести старую версию генерированного кода и показать вменяемые ошибки совместимости – цены б ему не было…

[identity profile] ivan-ghandhi.livejournal.com 2010-03-23 10:18 pm (UTC)(link)
Это Скале ещё работать и работать... но, в принципе-то, в том направлении, нет?

[identity profile] justy-tylor.livejournal.com 2010-03-23 11:09 pm (UTC)(link)
Такое возможно только в динамическом языке. Когда вычисления на типах ничем не отличаются от вычислений на остальных данных. Но накладывается требование, что _почти_ во всех местах типы должны быть вычислены на этапе компиляции.

[identity profile] thedeemon.livejournal.com 2010-03-24 02:46 am (UTC)(link)
1. Coq генерит код на OCaml
2. OCaml запускается на JVM (http://ocamljava.x9c.fr/)
3. Profit!

[identity profile] thedeemon.livejournal.com 2010-03-24 03:50 am (UTC)(link)
С точки зрения ленивого юзера проще не париться и продолжать педалить на РНР/Java/whatever.

Очень мало кто способен освоить Coq или Agda, и еще меньше тех, кто может что-то практически полезное на них сделать. Слишком сложные они.