On October 3, 2005 3:27 PM Jens Axel Søgaard wrote:
> 
> Bill Page wrote:
>> On October 3, 2005 4:37 AM Michael Brickenstein wrote:
> 
>>> ... Python is in fact a strongly typed language, which
>>> doesn't do implicit conversions (at default), I only
>>> mention this, as I know that axiom focuses very much on
>>> a type system.
>> 
>> As I understand it Python is a dynamically typed language.
>> To use the word "strong" seems a little miss-leading.
> 
> Most likely we just use the words differently, but I don't
> see an inherent conflict between "dynamically" and "strong".
> 

I agree with you. The use of "strong" in this context is
probably correct. But as the article that you cite

http://en.wikipedia.org/wiki/Strongly_typed

points out, it is not a very useful distinction.

A more relevant point is that Axiom is "statically" typed,
meaning that types are associated with variables. But in
Python types are associated with values. E.g. in Python we
can write

  x=10
  x="xxx"

In the Axiom compilers we must write

  x:Integer

so that x denotes some object from the domain Integer. E.g.

  x:=10

But

  x:="xxx"

is a type error.

On the other hand in Axiom the values themselves have no
implicit type. For example 1 might mean

  1$Integer
  1$Float
  1$SquareMatrix(2,Integer)
  etc.

By the usual mathematical convention adopted by Axiom library
programmers, 1 denotes the unit with respect to multiplication
in some domain.

Regards,
Bill Page.




_______________________________________________
Axiom-developer mailing list
Axiom-developer@nongnu.org
http://lists.nongnu.org/mailman/listinfo/axiom-developer

Reply via email to