|
|
1번째 줄: |
1번째 줄: |
− | '''하스켈''' 또는 '''해스켈'''(Haskell)은 1985년에 개발된 순수 [[함수형 프로그래밍 언어]]이며, 논리학자 해스켈 커리에서 따온 이름이다. | + | '''하스켈''' 또는 '''해스켈'''(Haskell)은 1985년에 개발된 순수 [[함수형 프로그래밍 언어]]이며, 논리학자 '해스켈 커리'(Haskell Brooks Curry)에서 따온 이름이다. |
| | | |
− | == 개요 ==
| + | {{프로그래밍 언어|검토 필요}} |
− | | |
− | == 등장배경 ==
| |
− | 1987년 오리건 주 포틀랜드에서 열린 회의에 참석한 참가자들이 순수 함수형 프로그래밍 언어를 만들자는 뜻으로 최초버전인 하스켈98이 1990년에 등장하게되었다.
| |
− | | |
− | == 역사 ==
| |
− | * 1998년 하스켈 98 출시
| |
− | * 2003년 1월 <하스켈: 98 언어와 라이브러리:개정보고서> 개정판 출시
| |
− | * 2009년 11월 하스켈 2010 출시
| |
− | | |
− | == 특징 ==
| |
− | 코드가 짧고 명확하여 유지 보수하기 쉽고 오류가 적어 신뢰성이 높으며 리드 타임이 짧은것이 장점이다. 느긋한 계산법<ref>컴퓨터 프로그래밍에서 느긋한 계산법(Lazy evaluation)은 계산의 결과값이 필요할 때까지 계산을 늦추는 기법이다. 두 가지 관련된 항목들이 있는데 지연 계산법과 최소 계산법이다.</ref>으로 유명하고 단일체, 타입 클래스는 하스켈만의 독창적인 개념이며 이러한 특징들로 프로그래밍 언어에서 어려웠던 함수 정의를 간단하게 만들었다.
| |
− | | |
− | == 종류 ==
| |
− | 함수형 프로그래밍 언어로 [[하스켈]], [[스칼라]], [[F#]], [[클로저]] 등이 있다.
| |
− | | |
− | == 활용 ==
| |
− | 주로 학계에서 사용되며 AT&T, BAE 시스템즈, 페이스북, 구글프로젝트 등 산업계에서도 쓰이고 있다.
| |
− | | |
− | == 문제점 ==
| |
− | 비용이 많이 들어도 성능이 요구되는 응용 프로그램이나 구조가 쉬운 알고리즘에 대한 세부적인 조정이 필요한 응용 프로그램에서는 [[C언어]]와 같이 [[명령형 언어]]가 하스켈보다 더 낫다
| |
− | | |
− | == 평가 ==
| |
− | 코드가 간결하며 알고리즘 구조가 직관적이고 장점이 많지만 일반적인 프로그래밍 언어와 체계가 너무 달라서 쉽게 익숙해지기 어렵고 배우는 과정에서 이해하기 어려워 습득하기 힘들다는 평이 주를 이루며 산업계에서는 [[자바]]와 호환되고 [[객체 지향 프로그래밍]](OOP; Object-Oriented Programming)도 지원하는 함수형 언어인 [[스칼라]]가 더 큰 인기를 끌고 있다.
| |
− | | |
− | {{각주}}
| |
− | | |
− | == 참고자료 ==
| |
− | * HaskellWiki, 〈[https://wiki.haskell.org/Introduction#Why_use_Haskell.3F, Haskell]〉, 《하스켈위키》, 2018-08-26
| |
− | * 봄바람살랑, 〈[https://hshee78.blog.me/140127114148 '하스켈(Haskell)']〉, 《네이버 블로그》, 2011-04-05
| |
− | | |
− | == 같이 보기 ==
| |
− | * [[프로그래밍 언어]]
| |
− | * [[해스켈 커리]]
| |
− | * [[카르다노]]
| |
− | | |
− | {{프로그래밍 언어|토막글}} | |