Size: a a a

2020 April 03

p

polunin.ai in rust_offtopic
Что за тулза
источник

S

Soul in rust_offtopic
декораторы?
источник

AZ

Alex Zhukovsky in rust_offtopic
Soul
Ну так значит вся компайл-таймовость у вас - на самом деле не компайл-таймовость, а просто иной способ представления того же кода с умными проверками типов на основе сложных математических теорий. А в рантайме что там, что там одинаково, и суть опять-таки не в компайлтайм-выражениях, а в системе типов наверное
я уже 100 раз сказал что оно все компайл таймовое. То что парсинг на низвестных данных нельзя сделать в компайл тайм - ну извините, такая физика
источник

AZ

Alex Zhukovsky in rust_offtopic
может у тебя и инты не компайлтаймовые потому что atoi в арнтайме работает?
источник

p

polunin.ai in rust_offtopic
Soul
декораторы?
Они в рантайме работают
источник

D

Dika in rust_offtopic
polunin.ai
А что это?
Тип с приватным конструктором. Таким образом можно написать тип функции, "которая принимает число от 3 до 7". И ошибиться можно лишь в одном месте, в коде конструктора, а не каждый раз при использовании. То есть компайлтайм валидации здесь нет только у конструктора. Это неплохой компромисс, и можно использовать во многих языках, а не только в упоротых.
https://wiki.haskell.org/Smart_constructors
источник

P

Pavel in rust_offtopic
polunin.ai
Это точно питон?
я не умею писать на питоне -- оно не компилируется
источник

p

polunin.ai in rust_offtopic
Pavel
я не умею писать на питоне -- оно не компилируется
Не понял
источник

P

Pavel in rust_offtopic
polunin.ai
Не понял
я не знаю такого языка как питон
источник

p

polunin.ai in rust_offtopic
Pavel
я не знаю такого языка как питон
Тогда что это за язык?
источник

S

Soul in rust_offtopic
Alex Zhukovsky
может у тебя и инты не компайлтаймовые потому что atoi в арнтайме работает?
ну так ты сравнивал проверки данных ифами с типами и говорил, что типы компайлтаймовые. Это некорректно, если проверка для этих типов всё равно нужна в рантайме, пусть она выделяется в конструктор или ещё какую-нибудь заклинаньку
источник

P

Pavel in rust_offtopic
polunin.ai
Тогда что это за язык?
любой с компайл-тайм аннотациями
источник

AZ

Alex Zhukovsky in rust_offtopic
Soul
ну так ты сравнивал проверки данных ифами с типами и говорил, что типы компайлтаймовые. Это некорректно, если проверка для этих типов всё равно нужна в рантайме, пусть она выделяется в конструктор или ещё какую-нибудь заклинаньку
смотри
источник

AZ

Alex Zhukovsky in rust_offtopic
давай аналогию проведем
источник

p

polunin.ai in rust_offtopic
Pavel
любой с компайл-тайм аннотациями
В mypy они есть
источник

P

Pavel in rust_offtopic
polunin.ai
В mypy они есть
значит и компайл-тайм ифы там есть, просто ещё не открыли
источник

AZ

Alex Zhukovsky in rust_offtopic
есть менее структурированный тип - string
есть более структурированный тип - int
чтобы преобразовать первый во второй - нужен процесс парсинга - atoi.

В остальном они полностью компайл таймовые и ты не можешь передать строку туда где ожидается инт.

есть менее структурированный тип - int
есть более структурированный тип - WeirdRange<7,9>.
чтобы преобразовать первый во второй - нужен процесс парсинга - int_to_range<7,9>.

В остальном они полностью компайл таймовые и ты не можешь передать инт туда где ожидается WeirdRange<7,9>.
источник

S

Soul in rust_offtopic
я вообще потерял интерес спорить так что ты прав, но всё равно быстрые приложения и embedded и отрисовку графики я буду писать на си
источник

p

polunin.ai in rust_offtopic
Pavel
значит и компайл-тайм ифы там есть, просто ещё не открыли
Я тебя попросил выразить тип который предлагал Алекс на существующей тулзе в существующем языке. Мне кони в вакууме не интересны.
источник

AZ

Alex Zhukovsky in rust_offtopic
@sadlonelysoul может так понятнее, где ранатйм где компайл атйм?
источник