Re: EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)
From: Robert Israel (israel_at_math.ubc.ca)
Date: 03/07/05
- Next message: Paul Eisner: "I created a fractal that looks like a penis !!!"
- Previous message: John Creighton: "EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- In reply to: John Creighton: "EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- Next in thread: John Creighton: "Re: EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- Reply: John Creighton: "Re: EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- Messages sorted by: [ date ] [ thread ]
Date: 7 Mar 2005 01:39:52 GMT
In article <c5e803c2.0503061419.2fee6687@posting.google.com>,
John Creighton <JohnCreighton_@hotmail.com> wrote:
>I am an EE student and in part of my thesis I use MAPLE to
>symbolically derive the RIDF for a Kalman filter. This worked but as
>part of my proposal I discuss symbolic math packages in the context of
>functional programming. Since, I am not widely read in the area I
>would appreciate it if someone could look over what I read to make
>sure everything I say is at least somewhat true. I am currently
>reading more references to strengthen this aspect of my proposal. All
>help is appreciated.
>1.1.3 A few comments on Symbolic and Functional Programming
>Symbolic programming languages fall under two categories, functional
>(e.g. lisp, Maple) and logical (e.g. PROLOG). In functional
>programming languages each program is a function similar to a
>mathematical function. A program is made up of a composition of
>functions [9]. The arguments to the functions can include the data
>types, lists, expressions, primitives and variables. All data types
>are built up of elemental units called primitives. In Maple an
>algebraic variables contains a pointer.
Nearly everything has pointers. The low-level internal representation
of data is not ordinarily of interest to the user.
> The pointer will point to null
>until a value is substituted for the variable.
You don't substitute a value for the variable, you assign a value to the
variable.
> At that point the
>variable points to the value subsisted, which could be another
>variable, an entire expression or a primitive. If the value
>substituted is a primitive, then a numeric value can be obtained by
>evaluating the variable.
I don't know what you mean by a "primitive". That word is not
part of the usual description of Maple. An object of type "numeric"
is an integer, a fraction or a float.
> A pointer abstracts the manipulation of data
>in a manner similar to the way variables in mathematics abstract the
>manipulation of numbers. That is the rules of algebra can be used to
>manipulate the variables without having compete knowledge of the
>underlying structure.
I don't know what you're getting at here.
>Expressions describe how data is evaluated mathematically in terms of
>data (e.g. variables) and functions (e.g plus). Expressions can be
>represented with strings but are usually represented as a list.
No, expressions are not lists. A list is a particular type of expression.
> The
>MATAB equivalent of a list is a one dimensional cell array. In an
>expression, the first element of the list is the function or
>operation. The subsequent elements are the arguments. Arguments can be
>any data structure including expressions. When the arguments of the
>functions in an expression are expressions it becomes natural to
>represent the expression as a tree. This representation is known as
>the operation tree. Unlike the flow of procedural programming
>languages, in functional programming language the outer function is
>evaluated first and the inner function is only evaluated if called by
>the outer function. This is referred to as lazy evaluation.
Maple does not use lazy evaluation. When an expression is evaluated,
it is ordinarily evaluated from the inside out: by default, a function
evaluates its arguments first. There are some exceptions.
Robert Israel israel@math.ubc.ca
Department of Mathematics http://www.math.ubc.ca/~israel
University of British Columbia Vancouver, BC, Canada
- Next message: Paul Eisner: "I created a fractal that looks like a penis !!!"
- Previous message: John Creighton: "EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- In reply to: John Creighton: "EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- Next in thread: John Creighton: "Re: EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- Reply: John Creighton: "Re: EE Student, Edit, Proposal Masters, Help (concepts of functional programming, symbolic programming and MATLAB)"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|