정수는 2,147,483,647에서 멈춘다: Ada가 오버플로를 거부하는 순간
The Integer
모든 정수는 태어날 때부터 경계를 가진다. 이 글은 32비트 정수의 한계에 도달한 정수의 1인칭 시점에서, 경계를 넘으려는 순간 Ada 런타임이 CONSTRAINT_ERROR 예외를 발생시키고 프로그램이 종료되는 과정을 그린다. C 언어에서 흔한 오버플로로 인한 음수 반전 대신, Ada는 명시적 raise를 통해 정수의 정체성을 지킨다. 이 이야기는 프로그래밍 언어의 안전성과 정수의 유한함에 대한 독특한 통찰을 제공한다.
우주가 나에게 불가능한 존재가 되라고 요구했을 때, Ada는 거부했다.