Hello,world祭り、もしくはエントリポイントの調査

各種言語のエントリポイントがどういう仕様になっているかを調べるために、ひたすらHello,worldを書いてみた。

C

#include <stdio.h>

main(){
  puts("Hello,world!!");
}

Java

class Hello {
    public static void main(String[] args){
	System.out.println("Hello,world!!");
    }
}

Perl

print "Hello,world!!\n";

Python

print "Hello,world!!"

Ruby

puts 'Hello,world!!'

OCaml

let _ =
  print_endline "Hello,world!!"

Gauche(Scheme)

2つある。

(print "Hello,world!!")
(define (main args)
  (print "Hello,world!!"))

Haskell

module Main where
    main = putStrLn "Hello,world!!"

まとめ

トップレベルがそのまま実行されるやつと、main関数が実行されるやつの2パターンがある。
ボクは、トップレベルがそのまま実行されるほうが好みだな。