саша
> есть блокчей на идрисе > репа с одним файлом, и тот README.md
Leonid 🦇
заканчивай уже с картинками
Евгений
заканчивай уже с картинками
Есть стирающий стикеры бот?
Leonid 🦇
или память
Слава
Десктопный клиент скайпа, вроде бы (можно уточнить), на плюсах целиком написан (или, как минимум, был написан несколько лет назад). Это не мешало ему съедать кучу памяти и тормозить :)
А когда он был написан на Дельфи, он не тормозил и потреблял куда меньше памяти. Именно тогда скайп приобрел популярность.
саша
Есть стирающий стикеры бот?
я и сам могу, только намекните
Евгений
Ну в общем не надо стикеров, у нас тут это не приветствуется
Евгений
вобще в БЧ смартах она очень нужна - кто умеет это делать пишите в ЛК есть работа ;)
Будут платить деньги за написание тотального языка? :О
Влод
Есть стирающий стикеры бот?
да но вроде его решили не добавлять
М
вобще в БЧ смартах она очень нужна - кто умеет это делать пишите в ЛК есть работа ;)
У меня есть проект собственного компилятора солидити в байткод EVM на хаскеле. Готовы спонсировать?
саша
Будут платить деньги за написание тотального языка? :О
Так можно же на Coq доказывать, а писать хоть на питоне, не?
A64m
интересно, почему нет опции не отображать стикеры? явно же их ненавидит каждый второй
М
Или хотя бы поменьше размером, да
Alexander
тогда часть чятиках будут абсолютно пустыми
Евгений
тогда часть чятиках будут абсолютно пустыми
И так половина моих чатов абсолютно пустые. И ничо
A64m
вроде для стикера есть соответствующий значек/слово
Anton
Мне, кстати, интересно, а сегодня блокчейн индустрию формальная верификация не интересует?
Судя по моему опыту, интересует. Довольно часто приходят офферы на эту тему. Проблема только в том, что заказчик сам не знает чего хочет, ему надо чтобы “была формальная верификация”
Евгений
Так можно же на Coq доказывать, а писать хоть на питоне, не?
По-моему верифицировать код сложнее, чем писать на тотальном языке
A64m
По-моему верифицировать код сложнее, чем писать на тотальном языке
понятно, что верифицировать сложнее, чем не верифицировать
Евгений
Писать на тотальном языке это верифицировать
A64m
не совсем
Vladimir
По-моему верифицировать код сложнее, чем писать на тотальном языке
а вот обьясните, как работает этот процесс. Ты пишешь на любом говнокоде, потом переписываешь на Coq и получаешь верификацию?
кана
"верифицировать завершаемость" наверное, а не корректность
М
Писать на тотальном языке это верифицировать
Туда тотальный язык не попрет. Специфика EVM. Никакой хаскель туда не ляжет
Vladimir
"верифицировать завершаемость" наверное, а не корректность
А Coq позволяет верифицировать корректность?
Anton
а вот обьясните, как работает этот процесс. Ты пишешь на любом говнокоде, потом переписываешь на Coq и получаешь верификацию?
нет. на кок формулируешь спецификацию, пишешь код, а потом доказываешь теоремы, говорящие о том, что код соответсвтует спекам
Anonymous
А еще часть из них хотят платить в той же криптовалюте, что и разрабатывается. 😂
О да - год назад моя почта разрывалась от таких. Напишите нам проект и смарт и проведите IСO выведите на биржи, а мы вам токенов наших будующих отсыпем процетов Х)))
A64m
с такми же успехом можно сказать, что писать на типизированном языке и запускать, проверяя не зацикливается ли - то же самое что верифицировать
Anton
Software Foundations
A64m
т.е. проверка соотвествия некоей спецификации при этом происходит, но спецификация довольно неинтересная
Alexander
о, надо бы дочитать
Евгений
"верифицировать завершаемость" наверное, а не корректность
Корректность тоже, ну. У тебя есть тотальная функция f : бла -> бла, ты типизируешь тип П a: бла. P(a) == a и уже доказательство
A64m
так при этом проверяется только что ничего по памяти не проедет там где не надо
A64m
будет ли программист при этом какую-то более интересную спецификацию проверять - это уже другой вопрос
Евгений
Смысл в том, что функции языка у тебя объекты первого поряда в нём же, как в системе доказательства теорем. А если ты будешь питон на coq верифицировать, то тебе нужно будет работать с программой как со сомнительными данными какого-то странного индуктивного типа синтаксических структур питона
A64m
безусловно, верифицировать какую-то интересную спецификацию легче на тотальном языке
М
Если вы про верификацию смарт-контрактов, то это тупо проверка что этот код компилится с этой версией компилятора в этот байткод
М
Сейчас этим занимается только сайт etherscan
A64m
но минимальная спецификация которую придется верифицировать если писать на тотальном языке - не очень интересная
Евгений
Хочется чтобы были математические гарантии на финансовые инструменты
Евгений
Хочется чтобы были математические гарантии на финансовые инструменты
Ну мне нет, финансовые инструменты должны гореть в аду, но рынку да
Vladimir
Берёшь Ada Spark и на ней пишешь. Получается верифицировано, и Coq учить не надо.
А в чем там верификация, там же просто контракты расставляются на уровне ассертов?
Vladimir
Эти контракты сверяются с кодом статически.
А какая разница статически или в рантайме. Код работает по контракту или не работает, в этом же кайф?
Слава
Cheese
А какая разница статически или в рантайме. Код работает по контракту или не работает, в этом же кайф?
разница в том, хочешь ты узнать об этом до того, как тебя ограбят, или после
М
Парити это кстати ребята, пишушие на расте
М
Это боянистая история с их багом, руки отрубать таким контрактописателям
Евгений
https://xakep.ru/2018/02/27/smart-contracts-problems/
Чо за баг я так и не понял из статьи
М
В эфири проблемы нету, проблема в кадрах как всегда
Слава
А какая разница статически или в рантайме. Код работает по контракту или не работает, в этом же кайф?
Мне кажется, у нас разное понимание того, что такое верификация. Контракт - это декларации, что должен делать код, и чего не должен. Декларация краткая и понятная, а код может замысловато грызть байты. Верификатор проверяет соответствие кода декларациям, и делает это не в райнтайме, а до того.
М
Тупо в контракте можно было назначить себя админом
М
И удалить всё нахер
Vladimir
разница в том, хочешь ты узнать об этом до того, как тебя ограбят, или после
ну падажи, ну то что упадет ПО это не приятно, но не так неприятно для бизнеса как выполнение говна?
М
Selfdestruct
М
Нефиг писать такие сложные контракты, если честно
М
Мне странно что криптокотов
М
Не сломали
М
Ведь там 2000+ строк кода
саша
В эфири проблемы нету, проблема в кадрах как всегда
> как всегда вот именно поэтому нужно как можно сильнее ослабить влияние самой ненадёжной части системы - человека, заставляя его верефицировать автоматическими средствами смартконтракты
Слава
Не сломали
Криптовалерьянкой
Vladimir
как если это проверка?
что проверка? Там можно было инициализировать овнера контракта больше одного раза, в этом был косяк, не понятно как это работало несколько лет
М
https://blog.zeppelin.solutions/on-the-parity-wallet-multisig-hack-405a8c12e8f7
Vladimir
А, тут путаница в терминах контракт и смарт контракт
М
смысл в том что перемудрили с логикой и не закрыли очевидную дыру
Alexander
я не очень шарю в последних тенденциях, но это все ещё про Haskell?
М
а нет, сорян, это про днугой хак
М
Вот https://blog.springrole.com/parity-multi-sig-wallets-funds-frozen-explained-768ac072763c