[Jprogramming] tacit definition (was: Using # item by item ...)
Bo Jacoby
bojacoby at yahoo.dk
Mon Aug 10 00:24:55 HKT 2009
Expressions are not tacit nor functional. Function definitions are.
+/ *: 4 5 6 NB. this is an expression, not a function
77
f =. [: +/ *: NB. this is a function definition, tacit
f 4 5 6 NB. this expression involves the above function
77
OK?
Regards, Bo
--- Den lør 8/8/09 skrev bill lam <bbill.lam at gmail.com>:
> Fra: bill lam <bbill.lam at gmail.com>
> Emne: Re: [Jprogramming] tacit definition (was: Using # item by item ...)
> Til: programming at jsoftware.com
> Dato: lørdag 8. august 2009 19.43
> On Sat, 08 Aug 2009, Sherlock Ric
> wrote:
> > > From: Raul Miller
> > >
> > > If it matters, the "official" definition of
> tacit:seems to be:
> > >
> > > http://www.jsoftware.com/help/dictionary/intro.htm
> > >
> > > "...functional or tacit
> programming that requires no explicit
> > > mention of the arguments
> of a function (program) being
> > > defined, and the use of
> assignment to assign names to
> > > functions..."
> > >
> > > The dictionary also mentions that 13 : may be
> used to create
> > > tacit verbs.
> > >
> > > (Essays can provide very good and useful material
> but usually
> > > the dictionary will trump them.)
> > >
> > > [That said, bill lam has already answered and
> explained what
> > > he really means, and my post, here, was inspired
> by some
> > > points raised in past threads.]
> >
> > After reading Bill's post I found myself grappling in
> my own mind with what was a tacit expression and what
> wasn't, which was why I started/renamed this thread. I think
> Dan's post does a pretty good job of describing sorts of
> ideas I was/am trying to reconcile. The dictionary
> description (I'm not sure if it is really a definition?)
> didn't really clear things up for me.
> >
> > If I write a "top level sentence" in the session
> manager
> > +/ 4 5 6
> > Is it tacit or explicit? Is my sentence a) defining a
> function, b) executing a function, or c) both?
> > I'm thinking c), and given that the arguments are
> given but not explicitly referred to, I'd also suggest that
> this is a tacit expression?
> >
> > What about:
> > +/ *: 4 5 6
> > How is this described? Is a function being defined?
> (maybe, but I'm not sure!) If so, there doesn't seem to be
> any explicit reference to the arguments - so is it therefore
> tacit?
> >
>
> I'll take Raul's quotation to be official. It refers to a
> style of
> programming by defining a series of names with other names
> without
> explicit arguments in its reasoning.
>
> take the example of standard deviation (not sure correct or
> not).
>
> sum=: +/
> mean=: sum % #
> deviation=: sum - mean
> meansquare=: *:@deviation % #
> stddev=: %:@meansquare
>
> certainly it is not about mechanically replacing x or y
> with [ and ]
> because x or y never appeared in the first place.
>
> --
> regards,
> ====================================================
> GPG key 1024D/4434BAB3 2008-08-24
> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
Find din nye laptop på kelkoo.dk. Se de gode tilbud her - http://dk.yahoo.com/r/pat/mm
More information about the Programming
mailing list