Gegründet 2006

함수형 프로그래밍 예제

목록 2는 Java의 스크립팅 API를 사용하여 Java 스크립트 코드 실행을 용이하게 하는 Java 응용 프로그램인 RunScript에 소스 코드를 제공합니다. RunScript는 앞으로 출시될 모든 예제의 기본 프로그램이 됩니다. 대부분의 범용 함수형 프로그래밍 언어는 무제한 재귀화를 허용하고 튜링이 완전하여 중단 문제를 정의할 수 없게 만들고 방정식 추론의 불건전성을 유발할 수 있으며 일반적으로 불일치의 도입이 필요합니다. 언어의 형식 시스템에 의해 표현된 논리로 변환됩니다. Coq와 같은 일부 특수 목적 언어는 잘 설립된 재귀만 허용하고 강력하게 정규화됩니다(비종료 계산은 codata라는 값의 무한 스트림으로만 표현될 수 있음). 결과적으로 이러한 언어는 튜링이 완전하지 않고 특정 기능을 표현하는 것은 불가능하지만 무제한 재귀로 인해 발생하는 문제를 피하면서 다양한 종류의 흥미로운 계산을 표현할 수 있습니다. 몇 가지 다른 제약 조건으로 잘 설립된 재귀로 제한된 함수형 프로그래밍을 총 함수형 프로그래밍이라고 합니다. [45] 단점으로, 함수형 프로그래밍은 큰 메모리 공간이 필요합니다. 상태가 없으므로 작업을 수행할 때마다 새 개체를 만들어야 합니다. 익명 함수는 필요에 따라 임시 논리를 정의해야 할 때 매우 유용합니다. 이름에서 알 수 있듯이 이름없는 익명 함수는 주로 명명 된 함수, 변수에 할당 된 함수 또는 더 높은 순서의 함수에서 함수로 반환되는 함수를 대체하는 함수에 대한 인수로 발견됩니다. 그것은 뿌리 람다 미적분에 무겁게 거짓말과 모든 기능 프로그래밍 언어에 매우 중요하다. 분명히 함수형 프로그래밍은 무시할 수 없지만 왜 더 인기를 끌고 있습니까? 무엇보다도 함수형 프로그래밍을 사용하면 프로그램 정확성을 쉽게 확인할 수 있습니다.

또한 동시 프로그램의 생성을 단순화합니다. 동시성(또는 병렬 처리)은 응용 프로그램 성능을 향상시키는 데 필수적입니다. 상태 변경은 명령적 프로그래밍의 부작용으로 참조 투명성을 방지합니다. 특히 프로그램에서 명령적 또는 기능적 스타일을 사용할지 여부를 평가할 때 알아야 할 다른 많은 부작용이 있습니다. 세 번째 일반적인 부작용은 I/O 작업에서 읽을 수 없는 텍스트를 입력하거나 기록할 수 없는 텍스트를 출력할 때 발생합니다.

Comments are closed.