Vogen 라이브러리 소개 - 기본 요소 (int, decimal 등)를 도메인 개념으로 나타내는 값 객체로 표현

하고자 하는 목적이 너무 달라요

C#의 using은 타입의 alias를 지원하지만 다른 타입을 만드는 거는 아니에요.

using CustomerId = int;
using OrderId = int;

CustomerId customerId  = 1;
OrderId orderId  = 2;

customerId  = orderId; // 가능

OrderId 타입을 CustomerId 타입 변수에 넣고 싶지 않은데… C#은 언어에서 지원 하지 않지요.

F#은 언어에서 지원합니다 ㅋㅋ

type CustomerId = CustomerId of int
type OrderId = OrderId of int

let mutable customerId = CustomerId 1
let orderId = OrderId 1

customerId <- CustomerId 2

customerId <- orderId; // Error: This expression was expected to have type customerId but here has type OrderId
5개의 좋아요