[linux-l] statische / dynamische Programmierersprachen

Oliver Bandel oliver at first.in-berlin.de
Do Sep 22 19:36:12 CEST 2005


On Thu, Sep 22, 2005 at 06:17:56PM +0200, Ivan Villanueva wrote:
> On Thu, Sep 22, 2005 at 10:37:25AM +0200, Axel Wei?? wrote:
> > Wenn schon kein Compilierungs-Schritt da ist, sollte wenigstens eine 
> > statische Analyse stattfinden, um den Programmierer zu unterstützen.
> 
> Wenn ich die Diskussion richtig verstanden habe, geht es darum, schreibfaul zu
> sein. Dann koennen die Fehler nicht beim Compirieren gefunden werden, aber
> schreibt man weniger. Beispiel:
> a = 2
> b = 'a'
> a + b           // run-time error
> 
> Ich nehme an, so etwas kann man in Python kompilieren. In Java natürlich nicht,
> weil man sagen muß, was a und b sind:
> 
> int a = 2 ;
> char b = 'a' ;
> a + b ;          // compiler error
> 

Ocaml:

==========================================================================
first:~ oliver$ ocaml
        Objective Caml version 3.08.0

# let a = 2;;
val a : int = 2
# let b = 'a';;
val b : char = 'a'
# a + b;;
This expression has type char but is here used with type int
# 
==========================================================================

(Das "b" in der letzten Eingabezeile wurde vom Toplevel unterstrichen.)

Ciao,
   Oliver



Mehr Informationen über die Mailingliste linux-l