A J programozási nyelv

Alprogramok, modulok

Függvénytípusok

Kétfajta függvényt különböztetünk meg: az egyik valamilyen értéket ad eredményül (verb), a másik eredménye egy módosított függvény lesz (adverb), ez valójában egy függvénykompozíció. Például:

Függvénydefiniálás

Egyszerűen nevet adunk a kódrészletünknek:

Max =: >. 2 Max 3

3

Függvények kompozíciója

NB. 1*1 + 2*2 + 3*3 = 14 sum square 1 2 3

14

NB. Írhatjuk így is: sumsq =: sum @: square sumsq 1 2 3

14

Az általános séma: "(f @: g) y" jelentése: "f (g y)"

Scriptek

Scriptnek J sorok sorozatát nevezzük amelyek újra felhasználhatóak. Az általános alak:

txt =: type : body NB. Ez a fejléc What is called a "script" is NB. A törzs a sequence of lines of J. ) NB. Itt a vége

A type lehetséges értékei:

noun0
adverb1
conjunction2
verb3
monad3
dyad4

Ha a body értéke 0 akkor a mögötte lévő sorok adják a függvény törzsét. Az argumentumokat egyargumentumú függvénynél az y. változó tartalmazza, két-argumentumúnál ehhez hozzájön az x. is (a baloldali az x.). A függvényben láthatóak a külső változók. Lokális változók ismertetőjele a nevük utáni pont (az y. változó amiben a paramétert kapjuk egy lokális változó például).