커링 문서 원본 보기
←
커링
둘러보기로 이동
검색으로 이동
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
문서의 원본을 보거나 복사할 수 있습니다.
{{위키데이터 속성 추적}} [[수학]]과 [[컴퓨터 과학]]에서 '''커링'''(currying)이란 다중 인수 (혹은 여러 인수의 튜플)을 갖는 함수를 단일 인수를 갖는 함수들의 함수열로 바꾸는 것을 말한다. 모지즈 쇤핑클에 의해 도입되었고<ref>{{저널 인용|first=Christopher|last=Strachey|authorlink=Christopher Strachey|title=Fundamental Concepts in Programming Languages|journal=[[Higher-Order and Symbolic Computation]]|volume=13|pages=11–49|year=2000|quote=There is a device originated by Schönfinkel, for reducing operators with several operands to the successive application of single operand operators.|doi=10.1023/A:1010000313106|ref=harv}} (Reprinted lecture notes from 1967.)</ref><ref>{{저널 인용|first=John C.|last=Reynolds|authorlink=John C. Reynolds|title=Definitional Interpreters for Higher-Order Programming Languages |journal=[[Higher-Order and Symbolic Computation]]|volume=11|issue=4|page=374|doi=10.1023/A:1010027404223|quote=In the last line we have used a trick called Currying (after the logician H. Curry) to solve the problem of introducing a binary operation into a language where all functions must accept a single argument. (The referee comments that although “Currying” is tastier, “Schönfinkeling” might be more accurate.)|year=1998|ref=harv}}</ref><ref>Kenneth Slonneger and Barry L. Kurtz. ''Formal Syntax and Semantics of Programming Languages''. p. 144.</ref>, 이후 [[해스켈 커리]]에 의해 발전하였다.<ref>Henk Barendregt, Erik Barendsen, "[ftp://ftp.cs.ru.nl/pub/CompMath.Found/lambda.pdf Introduction to Lambda Calculus]{{깨진 링크|url=ftp://ftp.cs.ru.nl/pub/CompMath.Found/lambda.pdf }}", March 2000, page 8.</ref><ref>{{서적 인용|last=Curry|first=Haskell|author2=Feys, Robert|title=Combinatory logic|publisher=North-Holland Publishing Company |volume=I|edition=2|year=1958|location=Amsterdam, Netherlands}}</ref> 예를 들어, 세 개의 인수를 가지는 함수<math>f</math>를 커링하면 다음과 같은 세 개의 함수가 만들어진다. <math> \begin{align} x = f(a,b,c) \\ h = g(a) \\ i = h(b) \\ x = i(c) \end{align}</math> 언커링(uncurrying)은 커링의 쌍대 변환이다. == 같이 보기 == * [[느긋한 계산법]] == 참고 문헌 == <references/> {{디자인 패턴(소프트웨어)}} [[분류:고차 함수]] [[분류:함수형 프로그래밍]] [[분류:람다 대수]]
이 문서에서 사용한 틀:
틀:깨진 링크
(
원본 보기
)
틀:디자인 패턴(소프트웨어)
(
원본 보기
)
틀:서적 인용
(
원본 보기
)
틀:위키데이터 속성 추적
(
원본 보기
)
틀:저널 인용
(
원본 보기
)
커링
문서로 돌아갑니다.
둘러보기 메뉴
개인 도구
로그인
이름공간
문서
토론
한국어
보기
읽기
원본 보기
역사 보기
더 보기
검색
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
특수 문서 목록
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보