More useful to assign a special meaning to "function", I think.  Then you
can include things like ?, file reads, comparisons (which depend on
tolerance), etc.


On Fri, Feb 15, 2013 at 12:08 PM, Devon McCormick <[email protected]>wrote:

> One functional language definition of "function" that I've seen is along
> the lines of "a function always returns the same result for the same input"
> which apparently excludes anything like "?" in J unless we assign a special
> meaning to "same".
>
>
> On Fri, Feb 15, 2013 at 2:10 PM, Raul Miller <[email protected]>
> wrote:
>
> > On Fri, Feb 15, 2013 at 12:29 PM, Boyko Bantchev <[email protected]>
> > wrote:
> > > On 15 February 2013 18:01, Raul Miller <[email protected]> wrote:
> > >> It seems we differ on the definition of a mathematical "function".
> > >
> > > I wonder how you came to this conclusion, since 'mathematical
> > > functions' were not discussed.
> >
> > It came about because I have been involved in conversations about
> > functional programming languages for a couple decades, now, and in my
> > experience this phrase "functional programming" is a reference to the
> > use of mathematical functions to reason about and develop programs.
> > And, that the longer phrase: "functional programming language," refers
> > to a language designed to favor this approach (using mathematical
> > functions to reason about and develop programs).
> >
> > In Haskell, for example, the IO Monad is used to capture the idea that
> > when using input (or output), "state" can be represented as an
> > argument for the relevant functions. It does not have to be baked into
> > the definition of the function, and is separable from the function
> > itself.
> >
> > > Apart from that, your statement:
> > >
> > >> Here, you have introduced a definition of "function" which conflicts
> > >> with the usual meaning of the word when people talk about functional
> > >> programming.
> > >
> > > is incorrect, because most functional languages admit stateful
> > > functions, and, consequently, 'when people talk about functional
> > > programming', stateful functions are not excluded.
> >
> > Here, the distinction is that the state is not a part of the function
> > - it is a parameter which is supplied to the function.
> >
> > > But most importantly, the appropriateness of your linguistic exercise
> > > still evades me.  That continuing exercise is irrelevant to my
> > > argumented observation that considering closures 'incompatible with
> > > the functional programming model' is incorrect.
> >
> > Yes... it's typically the case that if people cannot agree on the
> > meanings of words then the exchange of sentences using those words
> > does not carry useful meaning.
> >
> > That said, I do recognize that sometimes people use a word ("function"
> > in this case) to refer to a keyword in a programming language (for
> > example, javascript has a "function" keyword). However, that departs
> > from [my understanding of] the usual meaning of "functional" in the
> > phrase "functional programming language".
> >
> > If "functional programming language" meant only that the language had
> > a keyword which was spelled with those letters in that order it would
> > not be an interesting topic.
> >
> > And, of course, this last example could easily be "not what you
> > meant". But, since you have never told me what you do mean I am left
> > without any useful approach for understanding the concepts you are
> > referring to.  I would like it if, at some point, you supplied some
> > definitions for the meanings of some of the words you use where I have
> > expressed that I think the relevant definition is different.
> >
> > Thanks,
> >
> > --
> > Raul
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
>
>
>
> --
> Devon McCormick, CFA
> ^me^ at acm.
> org is my
> preferred e-mail
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to