Functional programming

대수적 자료형이란?대수적 자료형(Algebraic Data Types, ADT)이란 다른 타입의 결합으로 만들어지는 합성 타입을 말하며, 이러한 합성 타입은 수학적인 합(sum)과 곱(product)의 개념을 조합해서 만들어지게 됩니다.곱타입(product)은 여러 값을 함께 가지며(AND를 뜻합니다) 대표적인 예시로 튜플(tuple)이나 우리가 평소에 객체지향적으로 프로그래밍하면서 만들게 되는 class 같은 자료형의 모음이 있습니다.합타입(sum)은 타입의 모음 중 하나에만 속하게 되는 타입을 말하고(OR을 뜻합니다) 대표적인 예시로 enum class, sealed trait(interface) 같은 조합이 있습니다. 곱타입(product)과 합타입(sum)곱타입(product)곱타입은 개요에서 설..
이전에 설명한 functor 글을 읽어보시면 더욱 도움이 됩니다.여기서도 샘플 코드는 kotlin으로 작성합니다.오류에 대한 정정이나 의견은 언제든지 환영합니다. Option 타입은 일반적으로 Some, None의 두 타입으로 정의됩니다.Some은 값이 존재할 경우의 타입이고 None은 값이 존재하지 않을 경우의 타입입니다.sealed class Option { data object None : Option() data class Some(val value: A) : Option} Java의 Optional은 위에서 적은 것과 같이 타입으로 구분되지 않고, isPresent(), isEmpty() 같은 함수를 통해 Some, None을 구분한다고 이해할 수 있습니다.val t = Optional.of..
sleeptoy
'Functional programming' 태그의 글 목록