Как это было у классиков: "Джва года ждал такой язык, суть токова...". На самом деле, я тут, вместе с остальным прогрессивным человечеством, активно обнюхиваю
Rust, поддавшись мощной PR-компании. Есть даже какие-то мысли, но писать, как обычно, лень (или, как это щас модно называть: "У меня прокрастинация
(
Read more... )
Comments 28
- ну что же вы так, может кому-то нравится поухаживать, подобиваться, завоевать внимание, поводить даму на свидания и устроить романтический вечер, а не раздвигать ей ноги через десять минут знакомства. Но, конечно, всему свое время и обстоятельства.
Reply
Там что, даже монад нет?
Reply
Но там относительно неплохие макры, может, ими можно что-то изобразить.
Reply
case x of
Just x -> case z x of
Just y -> ...
Nothing -> Nothing
Nothing -> Nothingможно превратить в
x >>= \x -> z x >>= ...Синтаксический сахар не очень нужен. А вот ФВП нужны.
Пока твоё описание выглядит, как Си + некий SMT решатель, посыпанный сверху алгебраическими типами.
Reply
Прямолинейная реализация монад через фвп осложняется тем, что нельзя так просто взять и вернуть замыкание, когда у тебя нет GC, а вместо этого есть владеющие указатели.
Reply
Сейчас как-то начали бороться с этим, но попытки выглядят довольно неуклюже, а код превращается в ад из try!() макросов.
http://lucumr.pocoo.org/2014/10/16/on-error-handling/
Reply
Reply
А то в плюсах совсем фигово с этим, даже толком про выравнивение вектора байт не скажешь.
Reply
По поводу задать выравнивание в стандартных коллекциях -- хз, честно говоря, по-моему, нельзя :) Но можно задать вектор на уже выравненом регионе, насколько я помню. А стандартный аллокатор у них выделяет память через posix_memalign.
Но, на самом деле, в русте векторы особо не таскают (тем более, что вектор можно только либо насовсем отдать, либо "одолжить"), там носят слайсы: пару из указателя *T и количество элементов.
Reply
Reply
Leave a comment