APL/J言語:アルファベットと数字

APL/J言語:アルファベットと数字

   (a. {~ j +/ i.26) ; (j +/ i.6) ; (j=: a. i. 'aA') ; ($ a.)
 +--------------------------+--------------------+-----+---+
 |abcdefghijklmnopqrstuvwxyz|97 98 99 100 101 102|97 65|256|
 |ABCDEFGHIJKLMNOPQRSTUVWXYZ|65 66 67  68  69  70|     |   |
 +--------------------------+--------------------+-----+---+

   1 2 3{ t=: 8 32$a.  NB.アルファベット表
 !"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
`abcdefghijklmnopqrstuvwxyz{|}~

テーブルtはアルファベットを8行に分けているが、全体を表示しようとすると中に含まれるキャリッジリターン等のさまざまなコントロールキャラクターのせいで、まともに表示できない。<(小なり記号、ボックス化)によってボックス化して表示するとコントロールキャラクターがスペースに変換されるので見やすい。

   i. 2 5   NB.整数のテーブル
0 1 2 3 4
5 6 7 8 9
   r=: 0j1 _1 0j_1 1  NB.プラス1とマイナス1の二乗根
   + r   NB.(複素数) 共役複素数(conjugates)
0j_1 _1 0j1 1
   r * +r
1 1 1 1             
   r */ r   NB.単位元(unity)の二乗根の掛け算テーブル
  _1 0j_1    1  0j1
0j_1    1  0j1   _1
   1  0j1   _1 0j_1
 0j1   _1 0j_1    1                    
   ! 45x  NB.“x”は有効桁数(precision)を拡張指定
119622220865480194561963161495657715064383733760000000000