История изменений
Исправление Esper, (текущая версия) :
fn? Зачем?
Чтобы парсить объявление функции в один проход и не удлинять и без того небыструю компиляцию.
Зачем этот -> перед bool? От этого стало понятнее, что параметры закончились?
Именно.
Сравни fn d9d9(fun: fn (i32, i32) -> i32) -> fn (i32) -> i32
и d9d9 (fun (i32, i32) i32) (i32) i32
. Если ты считаешь, что второй вариант - читабельней, то тебе нужно провериться на лиспофажество.
по телу функции компилятор и так может определить возвращаемый тип
Видел сообщения об ошибках в Цацкеле? Хочешь так же? Я - нет.
Работа с любым устройством, в том числе консолью, не должна быть частью языка вообще.
println! - это не часть языка, это макрос из стандартной библиотеки.
Никаких глобальных невнятных функций.
Для макросов ещё не запилили пространства имён, было не в приоритете. Когда запилят, просто засунут его куда-нибудь в std::fmt и сделают импорт в prelude.
В том же C++
нет особых проблем с записью функций
базовый синтаксис вменяемый
Серьёзно?!
int32_t (*d9d9(int32_t fun(int32_t, int32_t)))(int32_t)
Вот это ты считаешь вменяемым?
Может в третьей редакции ребята исправятся.
Конечно. Послушают великого тебя и исправятся.
Исходная версия Esper, :
fn? Зачем?
Чтобы парсить объявление функции в один проход и не удлинять и без того небыструю компиляцию.
Зачем этот -> перед bool? От этого стало понятнее, что параметры закончились?
Именно.
Сравни fn d9d9(fun: fn (i32, i32) -> i32) -> fn (i32) -> i32
и d9d9 (fun (i32, i32) i32) (i32) i32
. Если ты считаешь, что второй вариант - читабельней, то тебе нужно провериться на лиспофажество.
Работа с любым устройством, в том числе консолью, не должна быть частью языка вообще.
println! - это не часть языка, это макрос из стандартной библиотеки.
Никаких глобальных невнятных функций.
Для макросов ещё не запилили пространства имён, было не в приоритете. Когда запилят, просто засунут его куда-нибудь в std::fmt и сделают импорт в prelude.
В том же C++
нет особых проблем с записью функций
базовый синтаксис вменяемый
Серьёзно?!
int32_t (*d9d9(int32_t fun(int32_t, int32_t)))(int32_t)
Вот это ты считаешь вменяемым?
Может в третьей редакции ребята исправятся.
Конечно. Послушают великого тебя и исправятся.