P′′
P′′| 패러다임 | 필수, 구조화 |
|---|---|
| 설계자 | 코라도 뵐 |
| 처음 등장한 | 1964 |
| 타이핑 분야 | 타이프하지 않다 |
| 사투리 | |
| 브레인 fuck | |
| 영향받은 | |
| 브레인 fuck | |
P ′ ( P double[1] prime )는 1964년 Corrado Böhm이[2][3] 튜링 기계군을 설명하기 위해 만든 원시 컴퓨터 프로그래밍 언어이다.
정의.
{ { P } }^{ \ \ ( inafter p ) ) p 、 R、 { \ { , \ , ( , ) , , of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of { { { { { { { { of of { {
구문
- R과 은 P로 표기된 단어입니다.
- 1 2(\가 P'의 인 1 q 2(\1}q_{2})는 P'의 단어입니다.
- q{ q } 가 P 의 단어인 ,() { 은 P 의 단어입니다.
- 앞의 세 가지 규칙에서 파생할 수 있는 단어는 P자형 단어뿐입니다.
의미론
- is the tape-alphabet of a Turing machine with left-infinite tape, being the blank symbol, equivalent to .
- P'의 모든 설명은 가능한 모든 테이프 구성(테이프 내용과 테이프 헤드 위치)의 가능한 모든 구성의 X 세트(\ X의 배열입니다.
- α{ 는 현재 기호가 { 이 아님을 나타내는 술어입니다.이 기호는 명령어가 아니며 프로그램에서 사용되지 않지만 언어를 정의하는 데 사용됩니다.
- { R}는 테이프 헤드를 1셀 오른쪽으로 이동시키는 것을 의미합니다(가능한 경우).
- \bodda는 현재 (\})를c+) +1) {\로 대체한 후 테이프 헤드를 1셀 왼쪽으로 이동함을 의미합니다.
- 21}는 함수 2 1({2}\을 의미합니다., 1은 2보다 먼저 실행됩니다.
- ) { }는 {\ \alpha에서 잠시 동안q {q}를 을 의미합니다.
다른 프로그래밍 언어와의 관계
- P′ was는 튜링 완전성이 입증된 최초의[2][3] 명령 구조 프로그래밍 언어이다.
- Brainfuck 언어(I/O 명령어 제외)는 P′′의 작은 비공식 변형입니다.Böhm은 (\ textstyle r r, r^{\}, R r\equestyle r r r\textstyle만을 사용하여 계산 가능한 함수 집합 각각에 대해 명시적인 P' 을 제공합니다. { ^{ n }은 r { r} 및 { L \ r^ { \ }\의 n번째 을 .이러한 명령어는 6개의 Brainfuck 명령어와 동일합니다[, ], +, -, <, >. n + 0text {\c_ \이므로 현재 을 증가시키면 결과가 현재 셀에서 "수정"됩니다(\r
프로그램 예시
Böhm은[2] x > 0의 선행(x-1)을 계산하기 위한 다음 프로그램을 제공합니다.
이는 동등한 Brainfuck 프로그램으로 직역됩니다.
>[>]< >[−[< >[< >]]−< >]>+ 프로그램에서는 각각 ,, (\1,, …,textstyle 1, 2, \를 하는 base-k표기로 정수가 표현되어야 하며, k1, ldots})의 앞과 앞에 있어야 합니다.e 번호 8은 c c (\ \2}\ 로 인코딩됩니다.이는 bijectionive base-2의 8은 112이기 때문입니다.)계산의 시작과 끝 부분에서 테이프 헤드는 \의 숫자 문자열 앞에 있습니다.
레퍼런스
웹 링크
- P''온라인 인터프리터:337568 P′ instructionsionsionsionsionsionsionsionsions bottles bottles bottles에서 해석된 99병의 맥주송 반복 시연.