Re: Best Maths Computer Programming Language
- From: Mike Kent <mkent@xxxxxxx>
- Date: Fri, 15 Jul 2005 00:47:04 -0400
Herman Rubin wrote:
Not quite off-topic yet so one more post ...
The other unusual things are in the semantics of
variables -- APL deals exclusively with values, and has no pointers or reference types
This is a major shortcoming. It should have been corrected in all languages after FORTRAN (the original one, not the later versions), generally. Pointers ARE variables.
Most (all?) languages that support pointers give them reference semantics. Without a lot of discipline for the programmer, this tends to produce a maze of aliases, and software that's painful to maintain or extend.
....
Lisp, with mathematical syntax and semantics, and the use of very heavily overloaded operators, might be a good language.
I don't know. Common Lisp is a -very large- language. There's a language K that straddles the fence between APL's array orientation and Lisp's list orientation, with infix notation for the usual math functions, but I've never given it a real try.
APL always has three types -- character, integer, and real -- and in some implementations complex and in one, rational. Most implementations use 8-bit characters and whatever's convenient for the hardware platform for integer and real. In any case, these are implementation issues, not language deficiencies.
No, they are language deficiencies. An adequate language for
mathematics should be able to do what any mathematician wants
to do with computers, not a small subset of them.
APL the language is defined over abstract (mathematical) integers
and reals. Implementations aren't. There's no barrier to creating
an implementation with arbitrary size integers (as in J) or arbitrary precision floats.
....
Even if one is producing a ln routine, it is highly desirable to be able to use the same string as both integer and floating.
I clearly don't understand what you mean here. I don't know of any hardware architecture that allows the same bits to represent a float and and integer with some coherent relation between the values in the two interpretations.
The handling of trigonometric and exponential functions
is not good.
....
At least the versions of APL I saw had VERY odd notation for the trigonometric functions.
Ah. Circular-function notation. Yes, this is ugly. It would IMO have been better to define a standard library with the usual abbreviated names. I've seen a lot of trivial cover routines for the circular and hyperbolic functions for just this reason.
Enough. APL has been good to me for for almost 30 years now and it looks like it this may go on for another 5 or 10.
That's made me a fan ... .
- Follow-Ups:
- Re: Best Maths Computer Programming Language
- From: Herman Rubin
- Re: Best Maths Computer Programming Language
- References:
- Best Maths Computer Programming Language
- From: Michael
- Re: Best Maths Computer Programming Language
- From: Mike Kent
- Re: Best Maths Computer Programming Language
- From: Herman Rubin
- Re: Best Maths Computer Programming Language
- From: Mike Kent
- Re: Best Maths Computer Programming Language
- From: Herman Rubin
- Best Maths Computer Programming Language
- Prev by Date: Re: Undergrad --- terminology for a Group property
- Next by Date: Re: x^3+y^3=z^3
- Previous by thread: Re: Best Maths Computer Programming Language
- Next by thread: Re: Best Maths Computer Programming Language
- Index(es):
Relevant Pages
|