가치 수준 프로그래밍

Value-level programming

가치 수준 프로그래밍은 존 백커스프로그램을 수학적인 개체로 연구하면서 식별한 두 가지 대조적인 프로그래밍 패러다임 중 하나를 말하며, 다른 하나는 기능 수준 프로그래밍이다.백커스(Backus)는 원래 객체 레벨 프로그래밍(Object-Level Programming)이라는 용어를 사용했지만 지금은 객체 지향 프로그래밍과 혼동하기 쉽다.

가치 수준 프로그램은 최종 결과 값을 얻을 때까지 다양한 값(숫자, 기호, 문자열 등)을 결합하여 다른 값을 형성하는 방법을 설명하는 프로그램이다.새로운 값은 덧셈, 결합, 매트릭스 반전 등 다양한 가치 대 가치 함수의 적용에 의해 기존 값으로부터 구성된다.

기존의 폰 노이만 프로그램은 가치수준이다: 할당문 우측의 표현은 그때 저장될 가치의 구축에만 전적으로 관여한다.

데이터 유형 연결

프로그래밍에 대한 가치 수준 접근방식은 가치 형성 연산 하의 가치 공간과 그러한 연산들의 대수적 특성에 대한 연구를 초대한다.이것은 데이터 유형에 대한 연구라고 불리는 것으로, 가치 그 자체와 그 구조에 초점을 맞추는 것에서, 특정 공리와 대수 법칙에 의해 주어진 가치 형성 연산 및 그 구조에 대한 일차적 관심사, 즉 데이터 유형의 대수적 연구로 발전했다.

람다 미적분학 언어와의 연결

람다 미적분 기반 언어(리스프, ISWIM, Scheme 등)는 설계에 의해 제한되지는 않지만 실제 실행 가치 수준 언어에 속한다.

일반적인 람다 스타일 프로그램이 주로 가치 레벨인 이유를 확인하려면 가치 대 가치 함수의 일반적인 정의를 고려하십시오.

f = λx.E

여기서 x는 값 변수여야 하며(f의 인수는 정의에 의한 값이기 때문에) E도 값을 나타내야 한다(f의 결과가 정의에 의한 값이기 때문에).전형적으로, E는 변수와 상수를 가치화하기 위해 가치 형성 함수의 적용을 포함하는 표현이다. 그럼에도 불구하고, 기능과 가치 인수를 모두 가진 가치 형성 함수가 존재하고 제한된 목적을[citation needed] 위해 사용된다.

용어 이 값 변수 자체를 포함하도록 정의된 경우, 프로그래밍의 가치 수준 보기는 기존 프로그램(가치 형성 운영/기능)을 다른 값에 적용함으로써 건물 값의 하나이다.람다식 프로그래밍은 람다-값 변수를 추상화하여 결과값에서 새로운 프로그램을 만든다.

참고 항목