Size: a a a

Clojure — русскоговорящее сообщество

2021 July 23

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
да не при чем тут производительность!

в ЯП важно, чтобы было понятно и предсказуемо поведение программы, и желательно без неявных туманных определений "если строка парсится как число, то складываем числа"

вот такой пользовательский ввод что должен давать на выходе? - "1." + ".0E0"
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
про toml?
про него довольно много кто знает, значительно больше чем про edn

есть всякие такие штуки - Golang, Rust ... слыхал?
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
ага.

потому что ямл просто для человека более понятен, но куда более неоднозначен и требователен к ресурсам
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Ошибку он должен выдавать, я думаю
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Тут просто предполагали сделать умный компилятор, который бы догадывался как сложить две строки, если они похожи на число :)
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
А эти не похожи
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
как это не похожи?
очень даже похоже, во всяком случае parseDouble тоже так считает
источник

A

Andrey in Clojure — русскоговорящее сообщество
))
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
а вот интересно, это так только на строковых константах или на пользовательском вводе тоже?
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Спасибо
источник

A

Andrey in Clojure — русскоговорящее сообщество
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
В любом случае в коде это будет что-то типа price + tax и значения прийдут только в рантайме, а во время компиляции у компилятора нет шансов подобрать правильную реализацию без типов
источник

A

Andrey in Clojure — русскоговорящее сообщество
точнее вот пользовательский ввод
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Если различать + и concat, то компилятору не надо ломать голову.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
А здесь что не срослось?
источник

A

Andrey in Clojure — русскоговорящее сообщество
я забыл что луа печатает строки без кавычек когда запрашиваешь значение переменной и в итоге положил в переменную "\"20\""
источник

A

Andrey in Clojure — русскоговорящее сообщество
в феннеле такой проблемы нет
источник

A

Andrey in Clojure — русскоговорящее сообщество
источник

MB

Mike Bohdan in Clojure — русскоговорящее сообщество
И написать ещё 100тыщь вариаций +, чтоб избежать кастинга и ошибок с ним связанных. Ну типа чтоб компилятор бил по рукам за 1 + 1.1, тк Float не Int и Int можно только с Int складывать без побочек
источник