Anton
На расте оставлю только рендеринг
Vladimir
в итоге все перепишешь на питон
Anton
Размечтался
Anton
Мне совсем немного осталось на расте допилить
Anton
Потом сделаю весь парсер на расте
Anton
И будет секси
Berkus
а зачем у тебя питонская часть?
Сергей
а кто-нибудь уже решал проблему вида "начать новый проект с зависимостями, если зависимости у тебя локально есть, а интернета нет"?
պլհկ
Есть patch.crates-io
պլհկ
Читай доку по манифесту
Сергей
как у тебя, кстати, количество rust кода на работе растёт?
Anonymous
а почему bool определен как примитив а не как enum Bool { True, False }?
Maxim
Anonymous
как енумерация?
Maxim
да
Maxim
довольно глупый вопрос
Anonymous
в хаскеле например
Maxim
потому что раст не хаскель, например
Maxim
специфика немного другая у него
Евгений
Anonymous
Fedor
стопроцентный
Fedor
и не поспоришь даже
Anonymous
я думаю что енумерация не должна работать медленнее чем хардкодинг определенного типа
Maxim
я еще с десяток таких могу привести
Maxim
на самом деле да, потому что, видимо, быстрее так работает, возможно, потом они это переделают
Maxim
можешь побенчить
Anonymous
Anonymous
ну в языке уже есть разделение между C-like и DU
Евгений
Нужно на этапе компиляции проверить, что у тебя все аргументы без параметров и заменить на u8,u16,u32 и т.д
պլհկ
а в чем профит-то?
Евгений
pattern matching
պլհկ
он и так работает
Anonymous
не, мне просто кажется странным и ненужным хардкодинг bool
Anonymous
MIR код почти не отличается при использовании встроенного и енума
Anonymous
🤔🤔🤔🤔
Anton
на расте нету
Anton
потом сам напишу
Anton
чтобы не проебывать время в пустую я делаю само приложение
Anton
а всякое говно подчищаю и правлю по ходу дела
Oleg
Oleg
if'ы и while'ы стали бы более многословными
Anonymous
а сейчас по-другому?
Anonymous
Oleg
каким образом?
Если бы bool был таким же enum, как и пользовательские энумы - пришлось бы сравнивать условия с True и False.
Anonymous
зачем?
Oleg
Можно было бы конечно сделать bool магическим енумом
Oleg
Но тогда какая разница?
Oleg
зачем?
А зачем enum bool?
Anonymous
чтобы не хардкодить ничего
պլհկ
ну в этом и вопрос, что магию все равно добавлять
պլհկ
так что профита 0
Anonymous
те же енумы все равно в release так же представляются
Anonymous
сейчас
Oleg
чтобы не хардкодить ничего
Так если if ("захардкоженный" оператор языка) будет понимать enum bool, то этот enum bool тоже надо будет захардкодить
Anonymous
ну, мне кажется, что проверять что именно Bool приходит как аргумент в if во время компиляции это намного лучше чем сейчас в любом случае
Anonymous
на самом деле можно даже без этого но могут появлятся неявные ошибки
պլհկ
чем лучше-то объясни
Anonymous
мне кажется использование енумерации в std вместо примитива упростит компилятор и логичнее для пользователя
Anonymous
сейчас true/false это вообще зарезервированые кейворды
պլհկ
(//_\\)
Oleg
Язык он может упростить, сократив число сущностей. Но компилятор от этого вряд ли станет проще :) Да и в любом случае, у bool'а всегда будет более значимый статус в языке, чем у энума с двумя значениями.
Oleg
Так что, ничто, собственно, не упростится
Anonymous
ну как минимум парсер
Anonymous
упростит
Anonymous
в остальном я очень плохо шарю
Marat
Anonymous
ну в других языках даже для option специальный синтаксис, к такому ли нужно стремиться?
Oleg
Marat
Berkus
я тебе уже советовал oak?
Loyd
Loyd
Представь себе, что он как енум определён
Anonymous
тогда он противоречит компилятору
Loyd
Хотя, я с тобой согласен