Alexander Kuklev (akuklev) wrote,
Alexander Kuklev
akuklev

Category:
Новый F* это язык моей мечты начала 2000 годов. Сигнатура функции не только точно описывает типы (допустимы зависимые), но и все эффекты, при этом в разумных случаях срабатывает type-and-effect inference и всё само выводится, вшита полная хоарова логика, соответствие функции спецификации в нудных случаях доказывает встроенный мощный SMT-солвер, в остальных случаях можно сделать доказательство на зависимых типах*. И TLA+ для доказывания свойств распределённых систем туда собираются вшить. Можно реально заниматься практическим certified programming.

Рили. http://youtu.be/em_tDc1Gc40


P.S. Чего же там не хватает с моей нынешней точки зрения?

1) Ну по большому счёту, несколько узки рамки call by value semantics, очень хочется delimited continuations, coroutines (ещё с прочтения Кнута в 2000 году хочется), честной ленивости нехватает. То есть хочется Call by push value вместо CBN/CBV дихтомии. Настоящих языков с CBPV ещё, кажется, нет, но это очень крутая идея. Вот игрушечная имплементация от Конора МакБрайда, кстати: https://personal.cis.strath.ac.uk/conor.mcbride/pub/Frank/TFM.pdf

2) Люто нехватает тайпклассов. Причём по возможности с имплиситами, с номинальным сабтайпингом и рефайнментами как в Scala. И символьными аргументами как в Fortress, кстати.

3) Там, где доказательства приходится проводить вручную, не хватает мощи синтаксиса Agda, мощи зависимого паттерн-матчинга и universe-полиморфизма Agda, мощи взаимно индуктивных и индуктивно-рекурсивных семейств типов Agda, мощи куммулятивных вселенных, импредикативного Prop-типа и тактик Coq'а, мощи равенства OTT и унивалентости HoTT.
Subscribe

  • (no subject)

    Встретил фотографию толпы футбольных фанатов, и она меня скорее напугала, у меня уж точно нет желания быть там среди них. Но внезапно я понял, что…

  • Прогресс

    Десять дней назад, вторая ступень SpaceX'овского корабля Starship своим ходом слетала своим ходом на десять километров вверх, и усмепшно приземлилась…

  • О водосбережении

    Как известно, питьевая вода во многих странах дефицитный ресурс. И даже в дождливой Германии летом иногда случаются засухи, в результате которых она…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 6 comments