tgoop.com/gavr_sas/3383
Last Update:
https://oxcaml.org/
Окисленный OCalm — набор расширения(аля расширения хаскель компиля) добавляющий в ML
- более высокоуровневые примитивы для параллелизма
- SIMD примитивы
- unboxed types (стек)
- data-race-free parallelism трекинг использований канкарнет валуёв шоб превентить гонки
- моды похожие на типы, описывают как используются значения, делятся на past и future, моды прошлого трекают предыдущие значения, будущего - возможные использования. можно ли возвращать из функции, передавать между потоками, изменять
примеры
- мод будущего - local - значение нельзя передавать за пределы текущего скопа, global наоборот
юзается для аллокаций на стаке
- мод прошлого uncontended — к значению обращался только один поток rw
shared — значение читали из нескольких потоков r
contended — в значение могут писать другие потоки w
Submoding: значение можно поднимать в более строгие моды но не наоборот (из local в global)
Mode-crossing types: некоторые типы вроде интов не зависят от модов вообще
TLDR - rust для OCaml
BY gavr_sas
Share with your friend now:
tgoop.com/gavr_sas/3383