nuna
nuna copied to clipboard
feat: v0.4스펙 수정 제안
주 목적
- v4스펙의 모호한 정의들을 명확하게 재정의
- 각종 예외 사항을 구체적으로 명시
- 한글 맞춤법 수정
구체적인 개선 내용
- 값의 범위 설정을 구현자에게 넘김
-
null
을 값으로 정의하지 않음. (이전 명세는 이 부분이 명확하지 않음.) - 오버플로 및 언더플로를 표준 레벨에서 허용하지 않음.
-
아이템
과값
을 구분함.아이템
은 null일 수 있는 메모리 공간이지만값
은 정수만 의미함. -
스택 번호
가 무한할 수 있음을 명시함. -
흐
,읏
명령어의 문법 에러를 명확하게 정의 - 에러와
그 외
를 구분 - 구현체별로 상이할 수 있는 값의 범위를 위해 각종 런타임 에러를 정의
-
!
명령어의 유니코드 핸들링에 대한 에러 추가 -
pointer
가 0일 경우 아무 값도 가리키지 않기 때문에, 스택이 1부터 시작하도록 정의 - 스택에서
현재 값
,이전 값
을 찾을 수 없는 경우를 명확하게 정의하고0
을 기본 값으로 사용하도록 정의 - 자잘한 한국어 오타 수정
-
pointer
가 0보다 작은 상황에서의 POP 동작 에러 처리
기타 의견
위 내용은 99% 하위 호환성을 보장하지만(예전 코드들이 그대로 동작하지만), 몇몇 예외 처리의 구현을 강제하기 때문에 v0.4 스펙과 호환되기 어렵습니다.
만약 v0.4 스펙을 반드시 유지하셔야 한다면, 호환성을 깨트리는 변경들을 전부 선택사항으로 바꾸고 v0.4.1로 올리시기를 추천합니다.