On Sunday, May 11, 2014 11:51:59 AM UTC+5:30, Marko Rauhamaa wrote: > Rustom Mody : > > > > > On Saturday, May 10, 2014 2:39:31 PM UTC+5:30, Steven D'Aprano wrote: > > >> > > >> Personally, I don't imagine that there ever could be a language where > >> variables were first class values *exactly* the same as ints, > >> strings, floats etc. > > > > [...] > > > > What you mean by *exactly* the same mean, I am not sure... > > > > Lisp variables (symbols) are on an equal footing with other objects. > IOW, lisp variables are objects in the heap.
But is a symbol a variable?? Sure, by providing a data-structure symbol, lisp provides one of the key building blocks for developing language processing systems. However I would argue that a variable is not a merely a symbol (identifier in more usual programming language-speak) but a relation between identifiers/symbols and some 'rhs' For an (interpreted?) language like python, rhs is naturally value/object For a C like language it is memory. [Just invoking the standard denotational semantics fare: Env : Symbol → Value for interpreted languages For 'compiled' languages Env : Symbol → Location (at compile time) Store : Location → Value (at run time) -- https://mail.python.org/mailman/listinfo/python-list