Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!asuvax!noao!arizona!gudeman From: gudeman@cs.arizona.edu (David Gudeman) Newsgroups: comp.lang.misc Subject: Re: Dynamic typing (part 31,497) Message-ID: <1883@optima.cs.arizona.edu> Date: 14 Apr 91 21:44:05 GMT Sender: news@cs.arizona.edu Lines: 31 In article <8742@skye.cs.ed.ac.uk> Nick Rothwell writes: ] ]Now, using such general terms as "function" and "sequence" in a mathematical ]context, I assumed your were implying a homogeneous list. If you're assuming ]heterogeneous sequences, then the kind of mathematics you're dealing with ]gets more complicated than I assumed. I think. Why would you assume that? Math makes no distinction between homogenous and heterogeneous lists. What complication are you talking about? It is trivial to define a heterogeneous list in math: Let S be the sequence beginning with S[1] defined as follows: if i is odd then S[i] = i if i is even then S[i] = {i, i-1} It is equally trivial to define a function to act on heterogenous elements: Let f x be defined as follows: if x is an integer then x else if x is a set then the min element of x All of this can be programmed directly in a language with dynamic typing and requires extra effort in a language with static typing. My main criterion for the expresiveness of a language is "does it let me say what I want to directly, instead of making me work around limitations in the language?" -- David Gudeman gudeman@cs.arizona.edu noao!arizona!gudeman