Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.forth > #355

Re: Neuer Text zu Forth - falls jemand Fehler findet...

From anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups de.comp.lang.forth
Subject Re: Neuer Text zu Forth - falls jemand Fehler findet...
Date 2015-09-06 15:56 +0000
Organization Institut fuer Computersprachen, Technische Universitaet Wien
Message-ID <2015Sep6.175600@mips.complang.tuwien.ac.at> (permalink)
References <134c1e35-36f4-4d65-a089-7c83f542ac3a@googlegroups.com> <mscv6l$lg7$1@dont-email.me> <2015Sep5.191829@mips.complang.tuwien.ac.at> <msfdo0$ujq$1@dont-email.me>

Show all headers | View raw


Bernd Paysan <bernd.paysan@gmx.de> writes:
>Anton Ertl wrote:
>
>> Bernd Paysan <bernd.paysan@gmx.de> writes:
>>>Abgesehen davon habe ich erst kürzlich einen Rant über den NULL-Pointer
>>>und das NULL-Objekt gelesen, der mir klar machte, warum das mit der
>>>Typprüfung in der Praxis so schlecht funktioniert: NULL ist einfach jeder
>>>Typ (zumindest jede Klasse), und crasht aber garantiert bei jedem Zugriff
>>>außer dem Vergleich auf NULL:
>>>
>>>https://www.lucidchart.com/techblog/2015/08/31/the-worst-mistake-of-computer-science/
>> 
>> Naja, NIL gab's in LISP schon 1960, und vermutlich schon frueher, da
>> braucht sich Hoare nicht damit bruesten:-).
>
>NIL ist aber richtig gemacht, und crasht nicht. (cdr NIL) ist einfach NIL, 
>ebenso (car NIL).

Ob das richtig ist, darueber kann man diskutieren.  Kommt wohl auf den
Einzelfall an, aber im Normalfall ist mir eine exception bei 0 @
lieber als dass da einfach 0 zurueckkommt.  Deswegen betreiben wir
auch recht viel Aufwand um im Gforth stack overflows sofort
abzufangen, wenn sie passieren.

>> Mir ist nur aufgefallen, dass, man in Java
>> Baeume auch rein ueber OO-Dispatch implementieren kann, dann braucht
>> man kein NULL, aber einige Operationen werden muehsamer zu
>> implementieren (geht alles nur ueber Rekursion).
>
>Man macht eine Klasse "Endknoten", von der es dann eine Instanz gibt, die 
>man überall einhängt, wo's nicht weitergeht. Die Methoden sind dann immer 
>der jeweilige Else-Zweig beim NULL-Test.
>
>Der Grund, warum das C++- und Java-Programmierer so überfordert, ist ja, 
>dass man in OOP ein Objekt eben *nicht* fragen muss, was es ist. Das weiß 
>das ja selber. Außer, es ist der NULL-Pointer, der weiß das nicht.

Ich weiss nicht, ob's die ueberfordert, aber das komische ist, dass
der Baum-Code von meinem Kollegen die Nachteile dieser Implementierung
mit den Nachteilen der NULL-Implementierung vereint, und ich glaube,
das ist die idiomatische Implementierung in Java (hab sowas zumindest
auch noch im Web gefunden).  And die Details kann ich mich im Moment
nicht erinnern, da muesste ich die Programme noch einmal alle
anschauen.

- anton
-- 
M. Anton Ertl                    Some things have to be seen to be believed
anton@mips.complang.tuwien.ac.at Most things have to be believed to be seen
http://www.complang.tuwien.ac.at/anton/home.html

Back to de.comp.lang.forth | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Neuer Text zu Forth - falls jemand Fehler findet... djc <ciesinger@gmx.net> - 2015-09-04 05:36 -0700
  Re: Neuer Text zu Forth - falls jemand Fehler findet... Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-04 22:35 +0200
    Re: Neuer Text zu Forth - falls jemand Fehler findet... anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-05 17:18 +0000
      Re: Neuer Text zu Forth - falls jemand Fehler findet... Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-05 20:55 +0200
        Re: Neuer Text zu Forth - falls jemand Fehler findet... djc <ciesinger@gmx.net> - 2015-09-06 02:56 -0700
          Re: Neuer Text zu Forth - falls jemand Fehler findet... anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-06 16:05 +0000
            Re: Neuer Text zu Forth - falls jemand Fehler findet... djc <ciesinger@gmx.net> - 2015-09-06 10:08 -0700
              Re: Neuer Text zu Forth - falls jemand Fehler findet... anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-08 16:18 +0000
        Re: Neuer Text zu Forth - falls jemand Fehler findet... anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-06 15:56 +0000
          Re: Neuer Text zu Forth - falls jemand Fehler findet... Bernd Paysan <bernd.paysan@gmx.de> - 2015-09-06 22:09 +0200
            Re: Neuer Text zu Forth - falls jemand Fehler findet... anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-09-08 16:27 +0000

csiph-web