diff --git a/pages/tutorials/ts-for-functional-programmers.md b/pages/tutorials/ts-for-functional-programmers.md index 366da0ff..5dd3429e 100644 --- a/pages/tutorials/ts-for-functional-programmers.md +++ b/pages/tutorials/ts-for-functional-programmers.md @@ -148,7 +148,7 @@ TypeScript는 `any`를 제공할 때 에러가 발생되면, ## 구조적인 타이핑 (Structural typing) -비록 하스켈과 대부분의 ML은 구조적으로 타이핑하지 않지만, +비록 Haskell과 대부분의 ML은 구조적으로 타이핑하지 않지만, 구조적 타이핑은 대부분의 함수형 프로그래머에게는 익숙한 개념입니다. 기본 형태는 아주 간단합니다: @@ -189,7 +189,7 @@ two = new Three(); ## 유니언 (Unions) TypeScript에서 유니언 타입은 태그되지 않습니다. 다르게 말하면, -하스켈에서 `data` 와 달리 유니언은 구별하지 않습니다. +Haskell에서 `data` 와 달리 유니언은 구별하지 않습니다. 그러나 다른 프로퍼티나 내장된 태그를 사용하는 유니언으로 타입을 구별할 수 있습니다. ```ts @@ -386,7 +386,7 @@ type Shape = | { kind: "triangle"; x: number; y: number }; ``` -하스켈과 달리, 태그 또는 판별은 각각 객체 타입에서 단지 속성에 불구합니다. +Haskell과 달리, 태그 또는 판별은 각각 객체 타입에서 단지 속성에 불구합니다. 특이 케이스는 다른 유닛 타입과 함께 동일한 속성을 가집니다. 아직 평범한 유니언타입입니다; 리드하는 `|` 는 유니언 타입 구문의 선택적인 부분입니다. 유니언을 사용하는 평범한 JavaScript @@ -413,7 +413,7 @@ function area(s: Shape) { 걸 알고 있기 때문에 유의해야할 필요가 있습니다. 몇몇 특이 케이스가 커버되지 않으면 `area` 의 리턴 타입은 `number | undefined` 으로 대신될 것입니다. -또한, 하스켈과 달리 흔한 속성들은 어떤 유니언에도 나타나며, +또한, Haskell과 달리 흔한 속성들은 어떤 유니언에도 나타나며, 그래서 유용하게 여러 개의 유니언 구분가능합니다: ```ts