J: 이름과 표시

J: 이름과 표시 (Intro 17)

J 입문 17장에서는 지금까지 쓴 보통 이름 외의 세 부류(자기 참조 $:, 명시 정의의 x·y, 로컬레이트(locatives))와, 9!:3이 정하는 표시 형식을 설명해요.

출처: 문서

본문

지금까지 쓴 보통 이름에 더해, 세 가지 추가 부류가 있어요:

  1. $:은 자기 참조(self-reference)에 사용돼요. 이름을 반드시 할당하지 않고도 동사를 재귀적으로 정의할 수 있게 해주며, 22절에서 설명돼요.

  2. 이름 xy는 명시 정의(explicit definition)에 사용돼요(18절에서 논의). 그것들은 명시 정의에서 사용되는 인자들을 나타내요.

  3. 두 개의 밑줄이 있고 그중 하나가 마지막 문자인 이름(예: ab_cd_)은 로컬레이트(locative)예요. 로케일(locale) F에서 사용된 이름은, pqr_F_ 형태의 로컬레이트 이름에서 접미사 F를 사용해 다른 로케일 G에서 참조될 수 있어요. 이로써 그렇지 않으면 로케일 G에서 동일한 이름들과의 충돌을 피할 수 있어요. 자세한 내용은 2부 I절을 참조하세요.

이름만 단독으로 입력해 호출되는 표시의 형식은 9!:3이 정하며, 부록 A에 기술돼 있어요. 예를 들어:


   mean=: +/ % #

   9!:3 (4)                    Tree form

   mean
  +- / --- +
--+- %
  +- #

   9!:3 (5)                    Linear form

   mean
+/ % #

여러 표시도 가능해요:


   9!:3 (5 4 2)

   mean

+/ % #
  +- / --- +
--+- %
  +- #
+-----+-+-+
|+-+-+|%|#|
||+|/|| | |
|+-+-+| | |
+-----+-+-+

연습문제 (Exercises)

17.1

로컬레이트(locatives)의 사용을 실험해 보세요.

더 알아보기 (Learn more)

출처: Intro 17. Names and Displays