J: 동명사와 안건

J: 동명사와 안건 (Intro 21)

J 입문 21장에서는 결속 접속사(tie conjunction) `이 두 동사에 적용되어 동명사(gerund)를 만들고, 안건 접속사(agenda conjunction) @.이 동명사의 요소를 실행용으로 선택하는 방법을 설명해요.

출처: 문서

본문

영어에서 동명사(gerund)는 cooking이라는 명사가 the art of cooking이라는 구에서 그런 것처럼, 동사의 힘을 지니는 명사예요. agenda(안건)는 행동할 항목들의 목록이에요. 결속 접속사(tie conjunction) `은 두 동사에 적용되어 동명사를 만들며, 그 요소를 실행용으로 선택할 수 있어요. 따라서 안건 접속사(agenda conjunction) @.이 동명사에 적용되면, 형용사(동사) 오른쪽 인자가 요소를 선택하는 결과를 제공해요. 예를 들어:


   g=: +`^
   a=:<
   2 a 3
1

   2 [email protected] 3
8

   3 [email protected] 2
5

   +:`-:`*:`%: @. (4&|@<.)"0 i. 10
0 0.5 4 1.73205 8 2.5 36 2.64575 16 4.5

[email protected]가 만든 동사는 종종 case 또는 case statement(케이스 문)이라 불려요. 동명사의 "케이스(cases)" 중 하나를 실행용으로 선택하기 때문이에요.

삽입 부사(insert adverb) /은 동사에 적용될 때와 유사한 방식으로 동명사에 적용돼요. 예를 들어:


   c=:3 [ x=: 4 [ power=: _1
   g/ c,x,power
3.25

   3+x^_1
3.25

동명사의 요소들은 필요에 따라 반복돼요. 예를 들어:


   +`*/1,x,3,x,3,x,1
125

위의 마지막 문장은, 계수 1 3 3 1과 인자 x를 가진 다항식의 호너(Horner)의 효율적 평가에 대응해요.

연습문제 (Exercises)

21.1

(x=: 4) f c=: 1 3 3 1이 호너의 방법에서 +*/의 인자로 사용된 결과를 산출하도록 함수 f를 정의해 보세요.

답: f=: }.@,@,.

더 알아보기 (Learn more)

출처: Intro 21. Gerund and Agenda