One thing that is interesting about Mathematica as well is that
expressions can be viewed as something like lists. Each expression has
a head, and it has parts. The head of {1,2,3} is List, and the head of
f[1,2,3] is f, but both expressions have the same parts. Using things
like Apply, this allows some degree of manipulation.
Through[p[f,g][x]] gives p[f[x],g[x]], which I suppose is analogous to
monadic forks. There seems to be no analogue to monadic hooks in the
language itself, although there is the obvious
Through[p[Identity,f][x]]. Of course, none of this is tacit.Mathematica has a function called Through. On 22 November 2010 22:56, Marshall Lochbaum <[email protected]> wrote: > Especially interesting would be including the style of Mathematica's lists. > I cringe when I have to deal with lists in Mathematica; however, it has the > very nice feature that a list can have any sort of elements whatsoever. > Pictures, functions, etc.. It would be very interesting to see, for example, > a J in which a list of functions could be applied to a list of arguments, > and it could also get rid of boxing and fills (ie. output list objects > instead of rows or boxes). > It should also be noted that Mathematica does not have great function > manipulation as far as I can tell, in that the syntax is arbitrary and just > in general not tacit (I know, that is a bit of a cheap shot). > > Marshall > > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Bo Jacoby > Sent: Monday, November 22, 2010 7:09 AM > To: Programming forum > Subject: Re: [Jprogramming] tacit programming > > The www.wolframalpha.com is such a formulator as requested by Neville Holmes > below. I find it very impressive. I wonder when the symbolic power of > Mathematica is united with the compact expressive power of J. > > --- Den man 22/11/10 skrev neville holmes <[email protected]>: > >> Fra: neville holmes <[email protected]> >> Emne: Re: [Jprogramming] tacit programming >> Til: [email protected] >> Dato: mandag 22. november 2010 06.03 >> I have been bemused by the discussion >> of tacit coding. >> Having some time ago been forced from APL to J and being utterly >> delighted by the tacit style, I taught it at both undergraduate and >> postgraduate levels. >> See "Tacit J and I" in Vector Vol.23 No.3 >> (www.vector.org.uk/archive/v233/tji.htm) which gave the background to >> the series of tutorial essays I used for Honours classes in >> "Functional Calculation" and which started appearing in that Vector >> and are continuing, despite publicity to the contrary. >> >> My tack was that the tacit style is the purest imaginable (to me at >> any rate) mode of functional expression and my experience was that the >> students agreed and coped very well, though they always went back to >> what they saw as the more expressive (I disagreed) coding styles as in >> Basic (ouch!) and C (shrug!) for example. >> >> The core issue seems to be whether you are tackling a calculation or >> facing up to a massive system. I held the opinion that tacit J was >> basically calculation and that connecting to files and databases was >> peripheral. >> >> However, there are problems in calculating with tacit J. >> I recently put an essay in my Computer column describing a device I >> called the formulator (see >> eprints.utas.edu.au/9474) that was based om my experience teaching >> tacit J (though that essay doesn't explicitly say so). >> >> What I proposed for the formulator would take the familiar calculator >> and take it a level higher, from arithmetic to algebra. I have >> another essay explaining the formulator in more detail for the APL/J >> world and this awaits proofing and publication (but see >> www.vector.org.uk/?vol=24&no=4&art=holmes (Stephen: >> I trust >> this isn't out of line; it seemed a good time to expose it to J >> people)). >> >> My motive was to provide a simple tool for people learning and >> teaching mathematics at school, and the striving for simplicity is the >> reason for some deviations from, and subsetting of, APL/J. However, >> adoption of the formulator would make transition to APL/J quite simple >> for formulator users. >> >> Should anyone wish to produce a formulator I would be delighted to >> cooperate, but I don't feel up to doing it myself alone). >> >> Neville Holmes, P.O. Box 2412, Bakery Hill 3354, Victoria >> >> >> >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm >> > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
