더북(TheBook)

숫자(Number): 록스는 배정도 부동 소수점(double-precision floating point) 한 종류의 숫자만 사용한다. 넓은 범위의 정수를 나타낼 수 있는 부동 소수점 숫자 한 종류만 사용하면 만사 간소화할 수 있다.

완전한 기능을 갖춘 언어들은 16진법(hexadecimal), 과학 표기법(scientific notation), 8진법(octal) 등 숫자와 연관된 많은 구문을 제공한다. 록스는 그냥 기본적인 정수와 십진법 리터럴만 사용한다.

1234;  // 정수
12.34; // 10진수

문자열(String): 문자열 리터럴은 이미 첫 번째 예제에서 본 적이 있다. 다른 언어처럼 큰따옴표(double quotes)로 묶는다.

 

"I am a string";
"";    // 빈 문자열
"123"; // 숫자가 아닌 문자열이다

앞으로 구현하면서 배우겠지만, 별것 아닌 것처럼 보이는 문자 시퀀스에도 복잡한 내막이 많이 숨겨져 있다.

'문자(character)'라는 단어 자체가 참 묘하다. ASCII를 말하는 건가? 아니면 유니코드? 코드 포인트(code point)나 '그래핌 클러스터(grapheme cluster)'를 가리키는 것일까? 문자는 어떻게 인코드될까? 각 문자의 길이는 고정인가, 아니면 가변인가?

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.