Comments 8
Интересно наблюдать за развитием языка. Часть из объявленного позволит намного меньше потеть и материться при долгой разработке.
Существуют примерные сроки когда стоит ожидать полный выпуск Haxe 4.0?
Существуют примерные сроки когда стоит ожидать полный выпуск Haxe 4.0?
0
Насколько я знаю, дата релиза не назначена, но число задач, которые необходимо решить, сокращается (сейчас их осталось 16). Надеюсь, что скоро.
Но уже сейчас можно попробовать второй релиз кандидат или ночные сборки Haxe.
Но уже сейчас можно попробовать второй релиз кандидат или ночные сборки Haxe.
0
А почему было просто не убрать обязательный return и возвращать значение последнего выражения? Выглядит не хуже стрелочных функций и чуть более гибко.
0
Типизация статическая, Void-функции нужны. Вероятно, дело в этом.
0
Это определяется типом функции. Любой тип может быть преобразован к Void.
0
Под «типом функкции» понимается возвращаемый тип? В haxe активно используется выведение типов, поэтому возвращаемый тип часто не указывается. В этом случае, тип как раз выводится из выражения в return, либо на основе первого вызова. Если бы тип любой функции без return приводился на основе первого вызова, то компиляция бы ломалась добавлением вызова функции без сохранения результата в начало программы. Если бы всегда на основе последнего выражения, то это очень странно бы выглядело на статических таргетах. В конечном итоге, от выведения возвращаемого типа пришлось бы отказаться вообще. Мне кажется, оно того не стоит.
0
Явное указание типа — хорошая документация. Да и большенство часто используемых типов короче слова return и писать их приходится всего один раз на определение функции.
В Rust и Scala примерно так и сделано, на мой взгляд очень удобно.
В Rust и Scala примерно так и сделано, на мой взгляд очень удобно.
0
Согласиться безоговорочно я могу только с первым утверждением: документация – полезно.
Но многие используют lang server, так что в редаткторе видно выведенный тип, даже если он не указан.
А как можно сократить использование досрочных return? Если что, в haxe тоже everything is an expression, и всегда можно обойтись одним.
В общем, ответ на начальный вопрос можно перефразировать в «потому что оно плохо согласуется с системой выведения типов».
Одна фича против другой, есть выбор и он сделан.
Но многие используют lang server, так что в редаткторе видно выведенный тип, даже если он не указан.
А как можно сократить использование досрочных return? Если что, в haxe тоже everything is an expression, и всегда можно обойтись одним.
В общем, ответ на начальный вопрос можно перефразировать в «потому что оно плохо согласуется с системой выведения типов».
Одна фича против другой, есть выбор и он сделан.
+1
Sign up to leave a comment.
Haxe 4: Что нового?