J: 단어 형성

J: 단어 형성 (Intro 16)

J 입문 16장에서는 문장 해석이 단어 형성(word formation)에서 시작하며, 공백·아포스트로피·구두점을 다루는 단어 형성 함수 ;:를 설명해요.

출처: 문서

본문

쓰여진 영어 문장의 해석은 단어 형성으로 시작돼요. 그 과정은 문장을 단위로 나누는 공백에 기반하지만, 아포스트로피와 구두점 같은 문제로 복잡해져요: was와 Brown와 Ross'는 각각 단일 단위이지만, however,는 그렇지 않아요(쉼표가 별개의 단위이기 때문).

다음 문자 목록들은 J의 문장을 나타내며, do 또는 execute 함수(".)를 적용해 실행할 수 있어요:


   m=: '3 %: y'
   d=: 'x %: y'
   x=: 4
   y=: 27 4096

   ". m
3 16

   do=: ".
   do d
2.27951 8

J의 단어 형성 규칙은 사전 1부에 규정돼 있어요. 게다가 단어 형성 함수 ;:은 문장을 나타내는 문자열에 적용되어 그 단어들의 박스된 목록을 만들 수 있어요:


   ;: m
+-+--+-+
|3|%:|y|
+-+--+-+

   words=: ;:
   words d
+-+--+-+
|x|%:|y|
+-+--+-+

J의 형태학 규칙(rhematic rules)은 영어 구에 상당히 잘 적용돼요:


   words p=: 'Nobly, nobly, Cape St. Vincent'
+-----+-+-----+-+----+---+-------+
|Nobly|,|nobly|,|Cape|St.|Vincent|
+-----+-+-----+-+----+---+-------+

   >words p
Nobly
,
nobly
,
Cape
St.
Vincent

연습문제 (Exercises)

16.1

앞 연습문제에서 pp=:+//.@(*/) 같은 문장을 골라 따옴표로 감싸고, 단어 형성(;:)이 그것들에 미치는 효과를 관찰해 보세요.

16.2

커서를 줄의 왼쪽으로, 그 줄에서 하나 이상의 공백으로 분리되도록 이동하고 Ctrl F1을 눌러 문장의 단어들을 각각 박스로 표시해 보세요.

더 알아보기 (Learn more)

출처: Intro 16. Word Formation