Forums before death by AOL, social media and spammers... "We can't have nice things"
|    comp.lang.forth    |    Forth programmers eat a lot of Bratwurst    |    117,927 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 116,289 of 117,927    |
|    Paul Rubin to Anton Ertl    |
|    Re: push for memory safe languages -- im    |
|    10 Mar 24 01:56:08    |
      From: no.email@nospam.invalid              anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:       >>2+2=5 is also deterministic yet wrong.       > In Java 2+2 gives 4. What do you hope to gain by putting up straw men?              2+2=5 is obviously wrong and Java doesn't go quite that far. Java       instead insists that you can add two positive integers and get a       negative one. That's wrong the same way that 2+2=5 is. It just doesn't       mess up actual programs as often, because the numbers involved are       bigger.              > You just have no arguments but "It's wrong!" and straw men to back up       > your opinion.              In what world can it be right for n to be a positive integer and n+1 to       be a negative integer? That's not how integers work.              Tony Hoare in 2009 said about null pointers:               I call it my billion-dollar mistake. It was the invention of the        null reference in 1965. At that time, I was designing the first        comprehensive type system for references in an object oriented        language (ALGOL W). My goal was to ensure that all use of references        should be absolutely safe, with checking performed automatically by        the compiler. But I couldn't resist the temptation to put in a null        reference, simply because it was so easy to implement. This has led        to innumerable errors, vulnerabilities, and system crashes, which        have probably caused a billion dollars of pain and damage in the        last forty years.              That is, C and other such languages have null pointers because they       corresponded so conveniently to machine operations that the language       designers couldn't resist including them. Java-style wraparound       arithmetic is more of the same. A bug magnet, but irresistibly       convenient for the implementers because of its isomorphism to machine       arithmetic.              Java also has null pointers, another possible mistake. Ada doesn't have       them, nor does Python etc. C++ has them because of its C heritage and       the need to support legacy code, but I believe that in "modern" C++       style you're supposed to use references instead of pointers, so you       can't have a null or uninitialized one.              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca