Ну будет тип, который можно создать только через конструктор/гард. И он будет несовместим со всеми остальными типами
Ааа, хитрó. Хотя я не очень понимаю как. Ну и немного вербозно.
Во flow есть очень крутая штука — opaque types. Ты можешь делать с этими типами что угодно, но не можешь кастовать к ним. То есть создать значение такого типа ты можешь только через набор инструментов, который определил (гарды и конструкторы). Сладенько
Ну как типичные ADT в Хаскеле?
хз) вот, свм посмотри https://flow.org/en/docs/types/opaque-types/
есть morphic-ts c похожим функционалом https://github.com/sledorze/morphic-ts
https://github.com/sveseme/taghiro вот такой подход
https://github.com/gcanti/newtype-ts чуть популярнее альтернатива
знакомый ник gcanti
Да есть много реализаций
Обсуждают сегодня