Provavelmente devemos comparar maçãs com maçãs e laranjas com laranjas. O JRE é um tempo de execução, não um kit de desenvolvedor. Podemos comparar: tamanho da fonte do kit de desenvolvimento, o tamanho do kit de desenvolvimento compilado e o tamanho compilado do tempo de execução mínimo.
O pacote configurável de origem do OpenJDK 7 tem 82 MB (download.java.net/openjdk/jdk7) versus o pacote configurável de origem GHC 7, que possui 23 MB (haskell.org/ghc/download_ghc_7_0_1). O GHC não é grande aqui. Tamanho do tempo de execução: openjdk-6-jre-headless no Ubuntu tem 77 MB descompactado vs Haskell helloworld, vinculado estaticamente ao tempo de execução, que é <1 MB. O GHC não é grande aqui.
Onde o GHC é grande, é o tamanho do kit de desenvolvimento compilado:
O próprio GHC ocupa 270 MB e, com todas as bibliotecas e utilitários que se reúnem, ocupa mais de 500 MB. E sim, é muito, mesmo com bibliotecas de base e um gerenciador de ferramentas / dependências de construção. A plataforma de desenvolvimento Java é menor.
GHC:
$ aptitude show ghc6 | grep Size
Uncompressed Size: 388M
contra o OpenJDK com dependências:
$ aptitude show openjdk-6-jdk openjdk-6-jre openjdk-6-jre-headless ant maven2 ivy | grep Size
Uncompressed Size: 34.9M
Uncompressed Size: 905k
Uncompressed Size: 77.3M
Uncompressed Size: 1,585k
Uncompressed Size: 3,736k
Uncompressed Size: 991k
Mas ainda tem mais de 100 MB, e não 26 MB enquanto você escreve.
Os itens pesados em ghc6 e ghc6-prof são:
$ dpkg -L ghc6 | grep '\.a$' | xargs ls -1ks | sort -k 1 -n -r | head -3
57048 /usr/lib/ghc-6.12.1/ghc-6.12.1/libHSghc-6.12.1.a
22668 /usr/lib/ghc-6.12.1/Cabal-1.8.0.2/libHSCabal-1.8.0.2.a
21468 /usr/lib/ghc-6.12.1/base-4.2.0.0/libHSbase-4.2.0.0.a
$ dpkg -L ghc6-prof | grep '\.a$' | xargs ls -1ks | sort -k 1 -n -r | head -3
112596 /usr/lib/ghc-6.12.1/ghc-6.12.1/libHSghc-6.12.1_p.a
33536 /usr/lib/ghc-6.12.1/Cabal-1.8.0.2/libHSCabal-1.8.0.2_p.a
31724 /usr/lib/ghc-6.12.1/base-4.2.0.0/libHSbase-4.2.0.0_p.a
Por favor, note o quão grande é libHSghc-6.12.1_p.a
. Portanto, a resposta parece ser a versão estática de links e perfis para todas as bibliotecas existentes.