Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
type safety in LISP
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  Messages 1 - 25 of 259 - Collapse all  -  Translate all to Translated (View all originals)   Newer >
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
marcel haesok  
View profile  
 More options Dec 6 2002, 10:54 pm
Newsgroups: comp.lang.lisp
From: "marcel haesok" <novuri...@attbi.com>
Date: Sat, 07 Dec 2002 03:54:29 GMT
Local: Fri, Dec 6 2002 10:54 pm
Subject: type safety in LISP
I was reading C# book by Jeffery Richter. Quote:
...."Delegates ensure that the callback method is type-safe (in keeping with
one of the most important goals of the DOTNET Framework)............"

which seems to suggest that "type-safety" is a big issue in real programming
world.
Lisp, on the other hand, from the readings I've done here, seems noted for
its
"dynamism" of type. IE, "type-versatility" of some sort.......

Is LISP type-safe?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Tim Daly, Jr.  
View profile  
 More options Dec 7 2002, 1:06 am
Newsgroups: comp.lang.lisp
From: t...@tenkan.org (Tim Daly, Jr.)
Date: 07 Dec 2002 00:50:17 -0500
Local: Sat, Dec 7 2002 12:50 am
Subject: Re: type safety in LISP

"marcel haesok" <novuri...@attbi.com> writes:
> I was reading C# book by Jeffery Richter. Quote:
*snip*
> Is LISP type-safe?

(declare (optimize (safety 3) (speed 0)))

Yes.

(declare (optimize (safety 0) (speed 3)))

No.

Lisp is by smart people, for smart people.  Is C#?

-Tim


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Gehlker  
View profile  
 More options Dec 7 2002, 5:04 am
Newsgroups: comp.lang.lisp
From: Chris Gehlker <gehl...@fastq.com>
Date: Sat, 07 Dec 2002 03:04:23 -0700
Local: Sat, Dec 7 2002 5:04 am
Subject: Re: type safety in LISP
On 12/6/02 8:54 PM, in article VheI9.261624$QZ.39282@sccrnsc02, "marcel

haesok" <novuri...@attbi.com> wrote:
> I was reading C# book by Jeffery Richter. Quote:
> ...."Delegates ensure that the callback method is type-safe (in keeping with
> one of the most important goals of the DOTNET Framework)............"

> which seems to suggest that "type-safety" is a big issue in real programming
> world.

It's a big issue in the sense that it's very controversial. There are many
very smart people who think it sucks. Other very smart people think it's
essential. See <http://perl.plover.com/yak/typing/notes.html> for a gentle
introduction to the controversy that doesn't take a side.

-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
marcel haesok  
View profile  
 More options Dec 7 2002, 1:21 pm
Newsgroups: comp.lang.lisp
From: "marcel haesok" <novuri...@attbi.com>
Date: Sat, 07 Dec 2002 18:21:33 GMT
Local: Sat, Dec 7 2002 1:21 pm
Subject: Re: type safety in LISP

"Chris Gehlker" <gehl...@fastq.com> wrote in message

news:BA1715B7.242D3%gehlker@fastq.com...

Thanks for the link and quote from the link:

"So given my conclusion, that static typing, as implemented by languages
like C and Pascal, is a failure, what can we do about it? One strategy is to
simply give up and forget about static typing. This strategy has been very
successful. Languages that do this include APL, the perennially popular
Lisp, the Unix scanning language AWK, and of course Perl."

Incidentally, I was surprised by the phrase "the PERENNIALLY popular Lisp".

So its seems that LISP is not the 'ELITE LANGUAGE' that many here
newsgroupers seem to believe, but a very POPULAR language.

Although I doubt if LISP is exactly a bigmac hamburger.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Gehlker  
View profile  
 More options Dec 7 2002, 4:21 pm
Newsgroups: comp.lang.lisp
From: Chris Gehlker <gehl...@fastq.com>
Date: Sat, 07 Dec 2002 14:21:29 -0700
Local: Sat, Dec 7 2002 4:21 pm
Subject: Re: type safety in LISP
On 12/7/02 11:21 AM, in article N_qI9.266486$NH2.18406@sccrnsc01, "marcel

haesok" <novuri...@attbi.com> wrote:
> Incidentally, I was surprised by the phrase "the PERENNIALLY popular Lisp".

> So its seems that LISP is not the 'ELITE LANGUAGE' that many here
> newsgroupers seem to believe, but a very POPULAR language.

> Although I doubt if LISP is exactly a bigmac hamburger.

I think he was  using "popular" in the sense of "well know and highly
regarded." There are some who think that Lisp is like a Humvee, just the
thing you need if you are heading off into uncharted and possibly dangerous
territory with no support. But maybe not the best choice for going down to
the corner market. You might be stylin' but you are also wasting gas.

Could be that's just the folks I hang around with. They think Lisp is great
but they might still say "You used Lisp for that?" if they thought some
lighter weight language was more appropriate to the problem.

-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Dec 7 2002, 6:05 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.no>
Date: 07 Dec 2002 23:05:18 +0000
Local: Sat, Dec 7 2002 6:05 pm
Subject: Re: type safety in LISP
* "marcel haesok" <novuri...@attbi.com>
| I was reading C# book by Jeffery Richter. Quote: "Delegates ensure that
| the callback method is type-safe (in keeping with one of the most
| important goals of the DOTNET Framework)"

  This is a peculiar case of post hoc, ergo propter hoc argumentation.
  It is not type-safe /because/ of the delegates.  The delegates have been
  designed this way because the language implements type-safety that way.

| which seems to suggest that "type-safety" is a big issue in real
| programming world.

  It is.  But just like the most dangerous man in the world has decided to
  scare almost 300 million people out of their wits in the name of national
  security and safety, stripping them of freedoms and rights at a pace that
  rivals the enemy back when another president defined the four freedoms in
  response to not dissimilar threats 60 years earlier, the concept of "type-
  safety" can also be thought of in terms of the freedoms you give up, or in
  terms of the differences in implementation.  Where one president promises
  his people freedom of speech and freedom from fear in response to threats
  (very much like Lisp offers freedom of expression when solving the problem
  of type safety in response to dangerous program errors), another clamps
  down on the freedom of expression and severely limits what the population
  may say and offers them fear in response to threats (very much like C++ is
  extremely restricting and has its users live in perennial fear of abuse of
  the necessary type-casting operators).

  It should be obvious from the above that it is not the threat itself that
  defines the response, but the "personality" of the language (president).
  The idiot will cave in to the fear and cannot see other solutions than to
  abridge the freedoms of those he obviously believes he provides "safety"
  in so doing.  The intelligent will transcend the fear and determine the
  most pacifying strategy, the one showing the most strength and power and
  understanding of the threat involved, and then take advantage of it.

| Lisp, on the other hand, from the readings I've done here, seems noted
| for its "dynamism" of type.  IE, "type-versatility" of some sort.......

  It is in fact your understanding of "type safety" that is so limited that
  you are not even aware of it.  Please consider a brief study of logic so
  you avoid committing so many annoying fallacies.

  Some languages are "statically typed", which means that the /compiler/ is
  the last element of the entire production line from programmer to system
  execution of the binary that knows the type of anything -- the execution
  environment deals only with bits that have no type at all.  (Recall that
  a bit is a bit is a bit (not unlike a rose), but what it means depends on
  what the observer wants it to mean.)  If you want type safety in a system
  where the compiler is the last to know, you must ensure that the compiler
  does indeed know, which is an incredibly complex task.  Some languages
  are therefore "dynamically typed", which means that the type information
  /does not evaporate/ during processing.  Think of compilation as cooking.
  Dynamic typing means the steak is juicy and still a little red, like red
  meat is supposed to be.  Static typing means you burnt it to a crisp.
  Dynamic typing means that the /object/ carries the type information.
  Static typing means that storage container carries it and the object
  inside it has lost its type information.

  Some people, when they look at dynamically typed languages from the
  statically typed language vantage point, seem to believe that since the
  storage containers are no longer marked and the compiler cannot ensure
  that only the appropriate kinds of objects are put into them, all hell
  must break loose.  This despite the glaring fact that "object-oriented"
  programming in these languages introduce some measure of run-time type
  information.  I have a hard time actually imagining what went wrong with
  people who think this way.  It is so short-sighted, so devoid of any
  thinking skills, so utterly /absent/ of intelligence, that one can only
  marvel at the ability of the human species to produce this kind of people
  and yet not destroy itself.

  Just because you do not know does not mean that you can draw any form of
  useful conclusions about that which you do not know.  I wonder why this
  is not drilled into the heads of people in kindergarten.  In a dynamically
  typed language, the storage containers are much more generic than the
  storage containers in the statically typed languages.  You do not have to
  re-introduce the type information to the compiler when you pick an item
  out of a collection in a properly designed language!  The object already
  carries type information around with it.  Storage containers in Lisp can
  hold objects of any type.  The notion that a container for type T1 can
  hold an object of type T2 is pretty fundamental to the "object-oriented"
  crowd, yet when it comes to actually implementing it fully, they acquire
  an amazing array of delusions about efficiency which they either ignored
  or did not even consider when they were talking their heads off about the
  amazing power of object-orientation, possibly because their understanding
  of "object-orientation" is based in "encapsulation" and "inheritance" and
  /not/ based on type-specific discrimination, which is far more important.

  For some readers, there is evidently a /qualitative/ difference between
  addition of numbers of various types and sending "messages" to objects of
  various genealogy from a common ancestor.  It appears to me that the only
  cause for this rather amazing improvidence is the misguided notion that
  it cannot be a "class" (or type) unless it stores some data in a container.
  Thus an /integer/ cannot be a class, functions are not defined on /numbers/
  because the "number" is not a structure that contains a virtual function
  pointer table.  Instead of thinking about types and functions on types,
  the inverse notion that the type owns the function cannot but cause the
  most heinous malabstraction.

| Is LISP type-safe?

  Suppose I argue that the core purpose of the family is to ensure that the
  offspring can grow up in safety and comfort and that the core purpose of
  society is to enable families to provide such measures to their offspring,
  which is a brief summary of the Republican position.  Suppose I wish to
  /implement/ this by extending the embrace of the familty to the entire
  popularion and therefore secure the state-supplied safety and comfort
  through state ownership of all means of production, which is a brief
  summary of the Communist position.  Are Republicans Communists?

  If the only way you can imagine type safety is through state control and
  loss of freedom, then you will have to conclude that the implementation
  thereof does not matter, and since all political schools of thought have
  been concerned with the physical and extended safety of the population
  (sometimes through exclusivity as to what constitutes the "population"),
  there can be no difference between them.  If, however, you aim for a much
  more abstract understanding of "safety" and grasp that it can be taken
  care of at a different level than controlling all people (or objects), by
  letting individual people (objects) remain free to be what they want, the
  world suddenly looks very different.  In a world where people believe that
  only control over other people can produce safety, you get a suspicious
  lot who are far from safe, but instead fear those they cannot control (as
  happened in other countries that tried GWB's censorship and surveillance
  methods).  In a world where people trust that those who violate contracts
  (both social and legal) can be punished and damages repaid, the need for
  individual suspicion and fear has no place.  Just as the right to bear
  arms was a necessity at a time when the police could scarcely care less
  (even if they had had the resources) and the gun control crowds primarily
  wanted to disarm the lower classes for fear of armed uprising, institution
  of a /working/ police force that the population actually trusts to protect
  them obviates the need for personal armories, a programming language that
  provides /no/ safety infrastructure, body (core) dumps in response to any
  violation, and a direct threat to anyone who carelessly trusts a stranger,
  /should/ have been obsoleted by a language that offers an infrastructure
  that maintains security and trustworthiness.

  Static typing in programming languages is closely akin to the need to bear
  arms and the purported need to do all this anal compile-time checking is
  precisely to keep the lower classes in check, the uneducated hoodlums who
  program for food and wipe your windshield for cash and whose code more
  likely than not will do something you would rather it refrain from.

  Dynamic typing in programming languages means you can trust even code that
  you would not in the static typing world, because it is so much harder to
  lie successfully.  In the static typing world, you need someone else (the
  compiler) to tell you that the code you talk to is OK before you can trust
  the /data/ it gives you, and some of the most insidious backstabbers you
  can think of imagine some draconian measure like "Palladium" because they
  are unable to escape the confines of their mental models, which produced
  the virus vehicles they think they can halt by running them off the road,
  and it all goes downhill from there.

  The moral of this story that I want you to take with you is that there are
  more /times/ to get type safety than compile-time.  It is in fact a /lot/
  easier to get true type safety if you do /not/ do it at compile-time, but
  people who are massively inept at programming think that if they can catch
  some
...

read more »


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pascal Costanza  
View profile  
 More options Dec 7 2002, 8:42 pm
Newsgroups: comp.lang.lisp
From: Pascal Costanza <costa...@web.de>
Date: Sun, 08 Dec 2002 02:42:30 +0100
Local: Sat, Dec 7 2002 8:42 pm
Subject: Re: type safety in LISP

Erik Naggum wrote:
>   The moral of this story that I want you to take with you is that there are
>   more /times/ to get type safety than compile-time.  It is in fact a /lot/
>   easier to get true type safety if you do /not/ do it at compile-time, but
>   people who are massively inept at programming think that if they can catch
>   some bugs at compile-time, that somehow makes all the remaining bugs less
>   important and hard to catch.  This is in fact wrong.  

However, there are counter examples. Here is a quote by Guy Steele,
about his experience with Haskell which he used for a particular task:

"In the end, I have to say that the type checking was more help than
hindrance, especially in the construction of the continuations building
block. I had the same experience with Haskell that I had twenty years
ago with ECL [...] (which was, in effect, also a strongly-typed dialect
of Lisp): almost always, once I made the type checker happy, the program
was correct." (in "Building Interpreters by Composing Monads", POPL'94)

 >   Empirically, people

>   who believe their compilers will catch bugs for them because it enforces a
>   ridiculously irrelevant aspect of the task of programming, produce /more/
>   bugs than people who do their testing right and do not believe in a class
>   society for bugs (such that they can ignore or repress some bugs).

That's very interesting - can you point to a study that supports this
assessment?

Pascal

--
Given any rule, however ‘fundamental’ or ‘necessary’ for science, there
are always circumstances when it is advisable not only to ignore the
rule, but to adopt its opposite. - Paul Feyerabend


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pascal Costanza  
View profile  
 More options Dec 7 2002, 8:44 pm
Newsgroups: comp.lang.lisp
From: Pascal Costanza <costa...@web.de>
Date: Sun, 08 Dec 2002 02:44:58 +0100
Local: Sat, Dec 7 2002 8:44 pm
Subject: Re: type safety in LISP

Another good source of information, especially on the terminology, is
the paper "Type Systems" by Luca Cardelli. (to be found at
http://www.luca.demon.co.uk/Bibliography.html, for example
http://research.microsoft.com/Users/luca/Papers/TypeSystems.pdf)

Pascal

--
Given any rule, however ‘fundamental’ or ‘necessary’ for science, there
are always circumstances when it is advisable not only to ignore the
rule, but to adopt its opposite. - Paul Feyerabend


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Raymond Wiker  
View profile  
 More options Dec 8 2002, 6:50 am
Newsgroups: comp.lang.lisp
From: Raymond Wiker <Raymond.Wi...@fast.no>
Date: 08 Dec 2002 12:50:21 +0100
Local: Sun, Dec 8 2002 6:50 am
Subject: Re: type safety in LISP

Pascal Costanza <costa...@web.de> writes:
> Erik Naggum wrote:

>  >   Empirically, people
> >   who believe their compilers will catch bugs for them because it enforces a
> >   ridiculously irrelevant aspect of the task of programming, produce /more/
> >   bugs than people who do their testing right and do not believe in a class
> >   society for bugs (such that they can ignore or repress some bugs).

> That's very interesting - can you point to a study that supports this
> assessment?

        I'd say that there is quite a large number of programmers who
think that, if the code is acceptable to the compiler, it must be all
right. Part of their work pattern is to make random or semi-random
changes to the code in order to make the compiler happy.

--
Raymond Wiker                        Mail:  Raymond.Wi...@fast.no
Senior Software Engineer             Web:   http://www.fast.no/
Fast Search & Transfer ASA           Phone: +47 23 01 11 60
P.O. Box 1677 Vika                   Fax:   +47 35 54 87 99
NO-0120 Oslo, NORWAY                 Mob:   +47 48 01 11 60

Try FAST Search: http://alltheweb.com/


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Thomas Stegen  
View profile  
 More options Dec 8 2002, 7:34 am
Newsgroups: comp.lang.lisp
From: Thomas Stegen <tste...@cis.strath.ac.uk>
Date: Sun, 08 Dec 2002 11:29:47 +0100
Local: Sun, Dec 8 2002 5:29 am
Subject: Re: type safety in LISP
Pascal Costanza wrote:

 > However, there are counter examples. Here is a quote by Guy Steele,
 > about his experience with Haskell which he used for a particular task:
 >
 > "In the end, I have to say that the type checking was more help than
 > hindrance, especially in the construction of the continuations
 > building block. I had the same experience with Haskell that I had
 > twenty years ago with ECL [...] (which was, in effect, also a
 > strongly-typed dialect of Lisp): almost always, once I made the type
 > checker happy, the program was correct." (in "Building Interpreters by
 > Composing Monads", POPL'94)

Haskell is dynamically typed, is it not? Which basically means that
the above is not a counter example...

>> Empirically, people who believe their compilers will catch bugs
>> for them because it enforces a ridiculously irrelevant aspect of
>> the task of programming, produce /more/ bugs than people who do
>> their testing right and do not believe in a class society for
>> bugs (such that they can ignore or repress some bugs).

> That's very interesting - can you point to a study that supports this
> assessment?

I think that is is pretty obvious that people who do not do their
testing right produces more bugs than people who do their testing
right. But I do not think that there is any automatic correlation
between using a language/compiler which enforces "a ridicolously
irrelevant aspect [..] of programming" and not doing testing right.
There might be some correlatation between trusting the compiler
to do this well and not doing proper testing though. But this is a
people problem more than it is a language or compiler problem.
That the language leads them to believe this is of course part of
the problem, but unthinking brains should take their part of the
blame as well. And I am not so sure that these people will benefit
from using Common Lisp.

--
Thomas.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pascal Costanza  
View profile  
 More options Dec 8 2002, 8:38 am
Newsgroups: comp.lang.lisp
From: Pascal Costanza <costa...@web.de>
Date: Sun, 08 Dec 2002 14:38:58 +0100
Local: Sun, Dec 8 2002 8:38 am
Subject: Re: type safety in LISP

No, it's statically typed.

Pascal

P.S.: Thanks for the other comments - nothing to add.

--
Given any rule, however ‘fundamental’ or ‘necessary’ for science, there
are always circumstances when it is advisable not only to ignore the
rule, but to adopt its opposite. - Paul Feyerabend


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Thomas Stegen  
View profile  
 More options Dec 8 2002, 12:15 pm
Newsgroups: comp.lang.lisp
From: Thomas Stegen <tste...@cis.strath.ac.uk>
Date: Sun, 08 Dec 2002 15:56:10 +0100
Local: Sun, Dec 8 2002 9:56 am
Subject: Re: type safety in LISP

Pascal Costanza wrote:

> No, it's statically typed.

Ok, but how does the polymorphism work then?

--
Thomas.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pascal Costanza  
View profile  
 More options Dec 8 2002, 3:33 pm
Newsgroups: comp.lang.lisp
From: Pascal Costanza <costa...@web.de>
Date: Sun, 08 Dec 2002 21:33:01 +0100
Local: Sun, Dec 8 2002 3:33 pm
Subject: Re: type safety in LISP

Thomas Stegen wrote:
> Pascal Costanza wrote:

>> No, it's statically typed.

> Ok, but how does the polymorphism work then?

I don't know exactly what you mean with this question. Haskell uses type
inference to determine static type soundness, so if the same function
can be used in different circumstances this is usually possible. You
don't need to declare the types of variables, etc. Information about
Haskell can be found at http://www.haskell.org

Does this help?

Pascal

--
Given any rule, however ‘fundamental’ or ‘necessary’ for science, there
are always circumstances when it is advisable not only to ignore the
rule, but to adopt its opposite. - Paul Feyerabend


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Bruce Hoult  
View profile  
 More options Dec 8 2002, 4:48 pm
Newsgroups: comp.lang.lisp
From: Bruce Hoult <br...@hoult.org>
Date: Mon, 09 Dec 2002 10:48:11 +1300
Local: Sun, Dec 8 2002 4:48 pm
Subject: Re: type safety in LISP
In article <3df36c7...@nntphost.cis.strath.ac.uk>,
 Thomas Stegen <tste...@cis.strath.ac.uk> wrote:

> Pascal Costanza wrote:

> > No, it's statically typed.

> Ok, but how does the polymorphism work then?

As with other HM languages (SML/NJ, CAML), a type can be polymorphic
(i.e. a union type), in which case anywhere it is used it must be either
passed to another place expecting the same polymorphic type, or else
must be broken down into *all* the possibilities using a
case/switch-like construct.

If you can't prove to the compiler that your case statement covers *all*
the possibilities then you have to add a default branch that does
something appropriate.  Such as throw an exception.

Static typing people tell me that this is somehow different from the
compiler automatically inserting the exact same runtime check and
exception in dynamically-typed languages such as Dylan or Lisp or
Smalltalk.

-- Bruce


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Thomas Stegen  
View profile  
 More options Dec 8 2002, 5:07 pm
Newsgroups: comp.lang.lisp
From: Thomas Stegen <tste...@cis.strath.ac.uk>
Date: Sun, 08 Dec 2002 21:03:50 +0000
Local: Sun, Dec 8 2002 4:03 pm
Subject: Re: type safety in LISP

Pascal Costanza wrote:
> Thomas Stegen wrote:

> I don't know exactly what you mean with this question.

It was an idiotic question. Thanks anyway.

--
Thomas.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Simon András  
View profile  
 More options Dec 8 2002, 5:17 pm
Newsgroups: comp.lang.lisp
From: asi...@math.bme.hu (Simon András)
Date: 09 Dec 2002 00:17:59 +0100
Local: Sun, Dec 8 2002 6:17 pm
Subject: Re: type safety in LISP

Thomas Stegen <tste...@cis.strath.ac.uk> writes:
> Pascal Costanza wrote:

> > No, it's statically typed.

> Ok, but how does the polymorphism work then?

With polymorphic types, I guess.

Andras


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Dec 8 2002, 5:37 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.no>
Date: 08 Dec 2002 22:37:32 +0000
Local: Sun, Dec 8 2002 5:37 pm
Subject: Re: type safety in LISP
* Pascal Costanza
| However, there are counter examples.

  A counter-example is an example of something quite different than
  what has been claimed, intending to refute the claims.  However, I
  made no claims about Haskell, nor any claims to universality that
  can be shot down with a simple counter-example.  I do know enough
  about logic to avoid that kind of stupid traps, and so should you.

  You have shown an /additional/ piece of information, namely that
  static typing can be done better than the languages that were under
  discussion in this case.  Someone who reads about C# and asks some
  questions about type-safety is unlikely to have the prerequisites to
  understand what Haskell is, as well as being completely unable to
  enter a context where it makes sense to talk about that language.

--
Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pascal Costanza  
View profile  
 More options Dec 8 2002, 6:14 pm
Newsgroups: comp.lang.lisp
From: Pascal Costanza <costa...@web.de>
Date: Mon, 09 Dec 2002 00:14:44 +0100
Local: Sun, Dec 8 2002 6:14 pm
Subject: Re: type safety in LISP

Erik Naggum wrote:
> * Pascal Costanza
> | However, there are counter examples.

>   A counter-example is an example of something quite different than
>   what has been claimed, intending to refute the claims.  However, I
>   made no claims about Haskell, nor any claims to universality that
>   can be shot down with a simple counter-example.  I do know enough
>   about logic to avoid that kind of stupid traps, and so should you.

I have quoted the following statement of yours.

[...]
 > people who are massively inept at programming think that if they can
 > catch some bugs at compile-time, that somehow makes all the remaining
 > bugs less important and hard to catch.  This is in fact wrong.

Then I have quoted the following statement by Guy Steele: "[...] almost
always, once I made the type checker happy, the program was correct."

These two statements contradict each other. There are only few kinds of
differences that are stronger than contradiction. The situation Guy
Steele describes _is_ a counter example.

>   Someone who reads about C# and asks some
>   questions about type-safety is unlikely to have the prerequisites to
>   understand what Haskell is, as well as being completely unable to
>   enter a context where it makes sense to talk about that language.

I don't think so.

Pascal

--
Given any rule, however ‘fundamental’ or ‘necessary’ for science, there
are always circumstances when it is advisable not only to ignore the
rule, but to adopt its opposite. - Paul Feyerabend


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Dec 8 2002, 6:55 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.no>
Date: 08 Dec 2002 23:55:07 +0000
Local: Sun, Dec 8 2002 6:55 pm
Subject: Re: type safety in LISP
* Chris Gehlker
| [Type safety is] a big issue in the sense that it's very controversial.

  Really?  There is no controversy over type safety that I know of.
  There is great controversy over how to implement it, however.  This
  is not unlike the political scene, where /nobody/ argues that each
  individual should be left entirely alone to fend for himself.  The
  many different ways political groups argue for the implementation
  of safety measures and carefully balancing them against freedoms
  and human rights should not be interpreted to mean that those who
  do not agree with any particular measures to implement safety and
  social and national security are fighting against safety and social
  and national security.  You would have to be astonishingly ignorant
  of history, human nature, and politics to believe that core human
  needs are controversial because their means of implementation is.
  So, too, with type safety in programming languages.  /Nobody/ wants
  programming languages that only ship bits around.  /Everybody/ is
  in full agreement with everybody else that even though processors
  ship machine words around in general-purpose registers and memory
  cells that can hold any machine word, it is considered imprudent to
  design programming languages that do not retain type information in
  some form and ensure that a machine word that represents a value of
  one type is not confused with another.  Controversial this is not.

| There are many very smart people who think it sucks.

  Can you name one person who thinks type safety sucks who is not
  also a complete moron with zero understanding of what it means?

  If /you/ confuse type safety with explicit, static typing, that is
  your problem and you should upgrade yourself forthwith.  Please do
  not repeat your conflated misunderstanding.

--
Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Erik Naggum  
View profile  
 More options Dec 8 2002, 7:10 pm
Newsgroups: comp.lang.lisp
From: Erik Naggum <e...@naggum.no>
Date: 09 Dec 2002 00:10:32 +0000
Local: Sun, Dec 8 2002 7:10 pm
Subject: Re: type safety in LISP
* Pascal Costanza
| These two statements contradict each other.

  Wrong.  /Think/, now.  How can I flatly reject your claims, which
  you only repeat with that stubborn "I'm right, so there" attitude?
  Could it be that you bring to your reading of what other people
  write so much baggage that what other people write is immaterial
  for your conclusions?

| I don't think so.

  You have never thought long enough to realize the value of context,
  so why should you start now?

  Think, even though it hurts.  You may actually learn something new,
  and it may tear down several of your personal beliefs.  One of the
  most obvious ones is that you appear to believe that knowledge of
  the truth does not need to be acquired through mental effort, but
  that it is sufficient for something to just "be true".  Another is
  that you appear to believe that when you read something, only you
  have the proper understanding of what it means and that the author
  in particular has lost the right to tell you that it looks like you
  have misunderstood.  Both have in common that you appear to believe
  that your interpretation of something is "the truth", infallibly.
  To be blunt, I find this aspect of your behavior extremely annoying.

--
Erik Naggum, Oslo, Norway

Act from reason, and failure makes you rethink and study harder.
Act from faith, and failure makes you blame someone and push harder.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pascal Costanza  
View profile  
 More options Dec 8 2002, 8:51 pm
Newsgroups: comp.lang.lisp
From: Pascal Costanza <costa...@web.de>
Date: Mon, 09 Dec 2002 02:51:17 +0100
Local: Sun, Dec 8 2002 8:51 pm
Subject: Re: type safety in LISP

Erik Naggum wrote:
> * Pascal Costanza
> | These two statements contradict each other.

>   Wrong.

If this is the wrong conclusion, then the other alternative is that you
deliberately used the term "statically typed languages" to refer only to
the set of languages that are based on explicit typing. [1] However, the
correct usage of that term also covers languages based on implicit
typing (or type inference). If your intention was to exclude the latter
kind of languages you should have made that explicit. I have considered
the quote by Guy Steele to be a counter example under the assumption
that you have used the term "statically typed language" correctly. (In
this case it would be a counter example!)

I consider it a fundamental mistake to use a general term for a proper
subset without saying so. I didn't expect you to be more liberal in that
regard.

Pascal

[1] This would also explain your statement about me having "shown an
/additional/ piece of information".

--
Given any rule, however ‘fundamental’ or ‘necessary’ for science, there
are always circumstances when it is advisable not only to ignore the
rule, but to adopt its opposite. - Paul Feyerabend


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Nils Goesche  
View profile  
 More options Dec 8 2002, 10:09 pm
Newsgroups: comp.lang.lisp
From: Nils Goesche <n...@cartan.de>
Date: 09 Dec 2002 04:09:33 +0100
Local: Sun, Dec 8 2002 10:09 pm
Subject: Re: type safety in LISP

Pascal Costanza <costa...@web.de> writes:
> Erik Naggum wrote:
> > * Pascal Costanza
> > | These two statements contradict each other.
> >   Wrong.

Now I am getting curious myself:  The statements you explicitly
quoted were:

# people who are massively inept at programming think that if
# they can catch some bugs at compile-time, that somehow makes
# all the remaining bugs less important and hard to catch.  This
# is in fact wrong.  (Erik)

# almost always, once I made the type checker happy, the program
# was correct.  (Guy Steele)

These two statements do indeed /not/ contradict each other.  Why
do you think they do?

> I consider it a fundamental mistake to use a general term for a
> proper subset without saying so.

I am not sure why that would apply here, but you shouldn't.  The
only field where this is actually feasible is mathematics.  In
all other fields the exceptions have to be inferred from the
particular context because the real world is simply so complex
(and not clearly defined ;-) that it isn't possible to explicitly
mention all special cases all the time.  You couldn't even say
something like ``Americans speak English.´´ or ``It is cold.´´ or
``Margaret Thatcher was cool.´´ without tons of further
qualifications.  (There might be other people named ``Margaret
Thatcher´´ apart from the one I mean, for instance.)

Regards,
--
Nils Gösche
Ask not for whom the <CONTROL-G> tolls.

PGP key ID #xD26EF2A0


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chris Gehlker  
View profile  
 More options Dec 9 2002, 12:06 am
Newsgroups: comp.lang.lisp
From: Chris Gehlker <gehl...@fastq.com>
Date: Sun, 08 Dec 2002 22:06:02 -0700
Local: Mon, Dec 9 2002 12:06 am
Subject: Re: type safety in LISP
On 12/8/02 8:09 PM, in article 878yyzsxaq....@darkstar.cartan, "Nils

They certainly appear contradictory to me. I'm willing to make the following
assumptions from context:

"people who are massively inept .." means "only people who are massively
inept"

Pascal does not believe Guy Steele was massively inept at programming

The bugs in a set of bugs which is "almost always" empty are both less
important and easier to catch than the bugs in a set which contains "some
bugs."

-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Patrick W  
View profile  
 More options Dec 9 2002, 1:36 am
Newsgroups: comp.lang.lisp
From: Patrick W <patrickw...@yahoo.com.au>
Date: 09 Dec 2002 17:39:49 +1100
Local: Mon, Dec 9 2002 1:39 am
Subject: Re: type safety in LISP

Pascal Costanza <costa...@web.de> writes:
> Erik Naggum wrote:
> > * Pascal Costanza
> > | These two statements contradict each other.
> >   Wrong.

> If this is the wrong conclusion, then the other alternative is that
> you deliberately used the term "statically typed languages" to refer
> only to the set of languages that are based on explicit typing.

Another alternative: the mob's belief in the "safety" of static typing
has nothing to do with a master programmer's experience of same
(regardless of whether you're talking about explicit typing or static
typing in general).  Is it conceivable to you in general terms that a
bunch of idiots can believe in the benefits of something, and a
talented person can *experience* the benefits of the same thing, and
yet the idiots still be mistaken in their beliefs?

I see no contradiction here.  Guy Steele's good experiences with
Haskell do not provide a "counter example" to the notion that many
"massively inept programmers" believe that static eliminates the most
import bugs, and are wrong to believe it.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Tom Lord  
View profile  
 More options Dec 9 2002, 3:54 am
Newsgroups: comp.lang.lisp
From: l...@emf.emf.net (Tom Lord)
Date: Mon, 09 Dec 2002 08:54:08 -0000
Local: Mon, Dec 9 2002 3:54 am
Subject: Re: type safety in LISP

Our ability to form quite sane abstractions that thwart even the
fanciest static type checkers exceeds the ability of static type
checker generators to keep up.  

Well, duh ... that's just an instance of the "All we have to do is
solve the halting problem" bug.

And the value of putting on binders?  Well, sure... I don't mind
driving across various bridges.   That doesn't mean bridge designers
have the final say on mechanical engineering.

This debate goes in Wired's "tired" column.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Messages 1 - 25 of 259   Newer >
« Back to Discussions « Newer topic     Older topic »