A godd start but much more is needed Explicit J and one operation at a time is easy - or at least I think it is easy.
Tacit J, hooks and forks I admire and I like to understand it better. Unfortunately many who see tacit J complain that it looks like line noise. One short sentence of tacit J may need pages of explanation so it is understandable that it can look scary. So what is J? If I talk about expicit J and say it is easy and the one I am speaking with/to is thinking about tacit J will never agree with it being easy. We might even want to break up the forums into explicit J and tacit J in order to specify what we are talking about. 2009/5/1 Kip Murray <[email protected]> > This is a beginner's introduction to tacit definition of verbs. > > > Although a motivation for APL and J is to have a precise language for > mathematics, almost nothing in J is exactly like its mathematical > counterpart. This is one justification for J's grammatical names noun, > verb, adverb, conjunction for its objects. > > > As an example, although I said in the Language S thread > > ([: ^. ^) is a tacit verb equivalent to the mathematical composition (ln o > exp) > > that assertion ignored the ambivalence of the verb ^ -- only in monadic > usage does ^ correspond to the exponential function of mathematics, and the > train ([: ^. ^) permits > > x ([: ^. ^) y <--> ^. (x ^ y) > > as well as > > ([: ^. ^) y <--> ^. (^ y) > > the latter corresponding to (ln o exp) y = ln(exp y) in mathematics. > > > This is a good thing. In the concept of verb J embraces two mathematical > concepts, function (monadic use) and operation (dyadic use), and J > economically presents concepts of composition in addition to the > mathematical (f o g) y = f(g y) . > > > TACIT DEFINITION OF VERBS DEFINES VERBS IN TERMS OF OTHER VERBS. This > occurs in mathematics where you see h = f + g , h = f g, h = f o g, etc., > but tacit definition is not much used in math beyond differentiation > formulas like (f + g)' = f' + g', (f g)' = f' g + f g', (f o g)' = (f' o g) > g' ; and you are more than likely to see the last expressed as f(g(x))' = > f'(g(x)) g'(x) . Likewise, you are more likely to see (x^n)' = n x^(n-1) > than (id^n)' = n id^(n-1) . That is, math is more likely to use informal > definitions with x's than tacit definitions without x's. > > > Above, id is the identity function defined by > > for every real number t, id(t) = t > > In terms of id you can define many other functions, for example f = (1 + > id)/(1 - id) which means > > for every real number t except 1, f(t) = (1 + id(t))/(1 - id(t)) = (1 + > t)/(1 - t) . > > > In J, the tacit definition of f would be expressed > > f =: (1 + ]) % (1 - ]) > > where in monadic use ] is in fact an identity verb: x ] y is y , and ] y > is y . > > > You may object that I have violated my definition, "TACIT DEFINITION OF > VERBS DEFINES VERBS IN TERMS OF OTHER VERBS" because there is a number, 1, > in my definition of f . In fact, until recently, you would have had to use > > f =: (1"_ + ]) % (1"_ - ]) or f =: (1: + ]) % (1: - ]) > > where both 1"_ and 1: are constant verbs which return only the value 1. > Now the form > Noun Verb Verb (for examples 1 + ] and 1 - ]) is given special dispensation > in tacit definitions. It is understood to mean Noun"_ Verb Verb. > > That is my beginner's introduction to tacit definition of verbs. > > Kip Murray > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > -- Björn Helgason, Verkfræðingur Fugl&Fiskur ehf, Þerneyjarsundi 23, Hraunborgum Po Box 127,801 Selfoss , t-póst: [email protected] gsm: +3546985532 Landslags og skrúðgarðagerð, gröfuþjónusta http://groups.google.com/group/J-Programming Tæknikunnátta höndlar hið flókna, sköpunargáfa er meistari einfaldleikans góður kennari getur stigið á tær án þess að glansinn fari af skónum /|_ .-----------------------------------. ,' .\ / | Með léttri lund verður | ,--' _,' | Dagurinn í dag | / / | Enn betri en gærdagurinn | ( -. | `-----------------------------------' | ) | (\_ _/) (`-. '--.) (='.'=) ♖♘♗♕♔♙ `. )----' (")_(") ☃☠ ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
