유한상태머신은 "지금 어떤 상태이고, 어떤 이벤트가 들어왔을 때 어디로 갈 수 있는가"를 명시적으로 정의하는 패턴이다. 왜 필요한지, 핵심 구성 요소(state/event/transition/action/guard/context)는 무엇인지, vanilla JS와 XState로 어떻게 구현하는지 정리한다.
모나드는 함수형 프로그래밍에서 효과를 포함한 계산을 합성하기 위한 규약이다. 위키피디아 정의를 바탕으로 Functor→Applicative→Monad 계층과 모나드 법칙을 정리하고, JavaScript에서 Array/Promise/Maybe/Either로 어떤 의미를 가지는지 이론적으로 설명한다.