a cura di Dario Dariol
 
     

    Esercizio 002 - Hello World

    Eric Raymond, nel suo The New Hacker's Dictionary, definisce Hello World  come uno dei tipici brevi programmi che producono in uscita questo tipo di messaggio. In Java un programma che produce Hello World è il seguente.
    class A{public static void main(String[]a){System.out.println("Hello world");}}
    Eric afferma, giustamente, che sono considerati perdenti quei linguaggi in cui
    • è complesso scrivere questi programmi, oppure
    • quegli ambienti che generano un non ragionevole e grosso eseguibile come risultato di questo test.
    Java non sembra essere perdente sotto questo punto di vista: infatti il precedente programma è molto corto (è lungo solo 79 caratteri) e genera un eseguibile (file A.class) di soli 403 bytes.

    Ma riusciamo a far di meglio? Quale è il più piccolo file sorgente A.java che una volta compilato con javac a.java ed eseguito con java A stampa Hello World a terminale?

    Il mio record personale è di 66, oppure 19, caratteri:

    • 66 caratteri usando la specifica formale di Java (in questo caso il file A.class è lungo 410 bytes);
    • 19 caratteri interpretando in modo inusuale il testo dell'esercizio (in questo caso A.class è di soli 161 bytes).


    Come sono questi programmi?

    È possibile migliorarli, rendendoli ancora più brevi?




MokaByte®  è un marchio registrato da MokaByte s.r.l.

Java® è un marchio registrato da Sun Microsystems; tutti i diritti riservati

E' vietata la riproduzione anche parziale
Per comunicazioni inviare una mail a
mokainfo@mokabyte.it