본문 바로가기

monad

(2)
DDD 구현 : 모나드로 Result 생성 함수 연결 Result type을 생성하는 함수끼리 깔끔하게 합성하는 법을 알아봅시다. 다음은 문제의 시각적 표현입니다. 일반 함수는 철도 트랙의 일부로 시각화할 수 있습니다. 그러나 Result 출력이 있는 함수는 다음과 같이 두 개로 분할되는 철도 트랙으로 시각화할 수 있습니다. 이러한 종류의 함수를 철도에 비유한 후 스위치 함수라 부를 것입니다. 종종 "모나딕" 함수라고도 합니다. 그렇다면 이러한 "스위치" 함수 중 두 개를 어떻게 연결해야 할까요? 출력이 성공하면 시리즈의 다음 함수로 넘어가고 싶지만, 출력이 오류라면 그림과 같이 우회하고 싶습니다. 두 오류 트랙이 모두 연결되도록 이 두 스위치를 어떻게 결합합니까? 다음과 같이 분명합니다. 그리고 이러한 방식으로 파이프라인의 모든 단계를 연결하면 다음과 같..
타입스크립트(typescript)로 배우는 함수형 프로그래밍 - 모나드(monad) https://dev.to/gcanti/getting-started-with-fp-ts-applicative-1kb3 지금까지의 내용 : Program f Program g Composition pure pure g ∘ f effectful pure (unary) lift(g) ∘ f where liftA1 = lift Functor A타입의 인스턴스 a와 T=>F 시그니처의 함수(Constructor), A=>B 시그니처의 함수 f를 다루었다. 아래 fa(F)는 constructor(a)를 암시한다. 즉 A타입 인스턴스 하나와 생성자(effectful program) 하나, 순수 함수 하나를 이용하여 F타입의 인스턴스 하나(F 를 다른 타입(F)으로 전환하는 이야기였다. lift: (f: (a: A) ..