Archive for 1月, 2012
-
Hello, PostScript World!
Posted on 1月 31st, 2012 by cx20
PostScript
PostScript は Adobe Systems が開発したページ記述言(PDL)である。
名前の由来は「追伸(post script)」から。逆ポーランド記法の後置記法にかけている。
1985年当時、コンピュータ・プリンタ間の通信速度が低速だったことから、プリンタ自身にイメージ生成を行わせることを目的として開発された。
他のページ記述言語としては、Canon の LIPS、EPSON の ESC/Page などがある。
ソースコード
実行方法(GhostScript)
$ gs -q -dNODISPLAY hello.ps
実行結果
Hello, PostScript World!
-
Hello, AppleScript World!
Posted on 1月 30th, 2012 by cx20
AppleScript
AppleScript は Mac OS の OSA(Open Scripting Architecture)に準拠したオブジェクト指向スクリプト言語である。
ソースコード
#!/usr/bin/osascript tell application "Finder" "Hello, AppleScript World!" end tell
実行方法(スクリプトファイルを指定して実行)
$ osascript ./hello.applescript
実行方法(実行権限を付与して実行)
$ chmod +x ./hello.applescript $ ./hello.applescript
コンパイル&実行方法
$ osacompile -o hello.scpt hello.applescript $ osascript ./hello.scpt
実行結果
Hello, AppleScript World!
-
Hello, Erlang World!
Posted on 1月 29th, 2012 by cx20
Erlang
Erlang は並行処理指向のプログラミング言語である。名前の由来は数学者のアグナー・アーラン (Agner Krarup Erlang) より。
ソースコード
-module(hello). -export([main/0]). main()-> io:format("Hello, Erlang World!n").
コンパイル&実行方法
$ erlc hello.erl $ erl -noshell -s hello main -s init stop
実行結果
Hello, Erlang World!
-
Hello, Nemerle World!
Posted on 1月 28th, 2012 by cx20
Nemerle
Nemerle はオブジェクト指向言語と関数型言語の特徴をあわせ持ったハイブリッド言語である。構文は C# に似ており .NET Framework で動作する。名前の由来はゲド戦記の大賢人ネマール(Nemmerle)から。
C# 同様に、UNIX 環境向けの .NET Framework 互換プロジェクト「Mono」により他の OS でも動作させることができる。
ソースコード
using System; class Hello { static Main() : void { Console.WriteLine("Hello, Nemerle World!"); } }
コンパイル&実行方法(Mono)
$ mono ncc.exe -o hello hello.n $ mono ./hello.exe
コンパイル&実行方法(.NET Framework)
C:¥> ncc -o hello hello.n C:¥> hello
実行結果
Hello, Nemerle World!
-
Hello, Fantom World!
Posted on 1月 27th, 2012 by cx20
Fantom
Fantom は Java VM もしくは .NET 共通言語ランタイム上で動作するオブジェクト指向言語である。構文は Java や C# に似ている。
言語の名前は当初、作者が住んでいる住所にちなんで「Fan」と付けられたが、検索しやすいように「Fantom」に変更された。
ソースコード
#!/usr/bin/env fan class Hello { static Void main() { echo("Hello, Fantom World!") } }
実行方法(スクリプトファイルを指定して実行)
$ fan hello.fan
実行方法(実行権限を付与して実行)
$ chmod +x hello.fan $ ./hello.fan
実行方法(Java VM で実行)
$ fan -version --Druntime=java Fantom Launcher Copyright (c) 2006-2011, Brian Frank and Andy Frank Licensed under the Academic Free License version 3.0 Java Runtime: java.version: 1.6.0_29 java.vm.name: Java HotSpot(TM) 64-Bit Server VM java.vm.vendor: Apple Inc. java.vm.version: 20.4-b02-402 java.home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home fan.platform: macosx-x86_64 fan.version: 1.0.61 fan.env: sys::BootEnv fan.home: /usr/local/Cellar/fantom/1.0.61/libexec $ fan --Druntime=java hello.fan
実行方法(.NET Framework で実行)
C:¥> fan -version --Druntime=dotnet Fantom Launcher Copyright (c) 2006-2011, Brian Frank and Andy Frank Licensed under the Academic Free License version 3.0 .NET Runtime: clr.version: 2.0.50727.5448 sys.platform: win32-x86 sys.version: 1.0.61 C:¥> fan --Druntime=dotnet hello.fan
実行結果
Hello, Fantom World!
-
Hello, Boo World!
Posted on 1月 26th, 2012 by cx20
Boo
Booは .NET Framework 向けのオブジェクト指向言語である。構文は Python に近い。名前の由来は不明だがロゴ(パックマンの敵キャラに似ている)からお化けのことと思われる。
C# 同様に、UNIX 環境向けの .NET Framework 互換プロジェクト「Mono」により他の OS でも動作させることができる。
ソースコード
ソースコード(.NET ライブラリを使用した場合)
実行方法(スクリプトファイルを指定して実行)
$ booi hello.boo
実行方法(実行権限を付与して実行)
$ chmod +x hello.boo $ ./hello.boo
コンパイル&実行方法(Mono)
$ booc hello.boo $ mono ./hello.exe
コンパイル&実行方法(.NET Framework)
C:¥> booc hello.boo C:¥> hello
実行結果
Hello, Boo World!
-
Hello, Cobra World!
Posted on 1月 25th, 2012 by cx20
Cobra
Cobra は .NET Framework 向けのオブジェクト指向言語である。名前の由来は Python(ニシキヘビ)に対するものと思われる。構文は Python の特徴を引き継いでいる。
C# 同様に、UNIX 環境向けの .NET Framework 互換プロジェクト「Mono」により他の OS でも動作させることができる。
ソースコード
#!/usr/bin/env cobra class Program def main is shared print 'Hello, Cobra World!'
ソースコード(.NET ライブラリを使用した場合)
#!/usr/bin/env cobra use System class Program def main is shared Console.writeLine('Hello, Cobra World!')
実行方法(スクリプトファイルを指定して実行)
実際には、コンパイルされた後に実行される。
$ cobra hello.cobra
実行方法(実行権限を付与して実行)
$ chmod +x ./hello.cobra $ ./hello.cobra
コンパイル&実行方法(Mono)
$ cobra -c hello.cobra $ mono ./hello.exe
コンパイル&実行方法(.NET Framework)
C:¥> cobra -c hello.cobra C:¥> hello
実行結果
Hello, Cobra World!
-
Hello, Oxygene World!
Posted on 1月 24th, 2012 by cx20
Oxygene
Oxygene は RemObjects Software 社による .NET または Java 環境向けのプログラミング言語である。
Embarcadero 社の Delphi Prism のプログラミング言語として採用されている。
コンパイラ単体は「Command Line Compiler」として無償提供されている。
C# 同様に、UNIX 環境向けの .NET Framework 互換プロジェクト「Mono」により他の OS でも動作させることができる。ソースコード(.NET ライブラリを使用した場合)
namespace hello; interface type Hello = class public class method Main(args: array of String): Integer; end; implementation class method Hello.Main(args: array of String): Integer; begin System.Console.WriteLine('Hello, Oxygene World!'); end; end.
ソースコード(Java ライブラリを使用した場合)
namespace hello; interface type Hello = class public class method Main(args: array of String): Integer; end; implementation class method Hello.Main(args: array of String): Integer; begin System.out.println('Hello, Oxygene World!'); end; end.
コンパイル&実行方法(.NET プログラムとしてコンパイル&実行)
C:¥> oxygene HelloDotNet.pas -type:exe -mode:Net C:¥> HelloDotNet
コンパイル&実行方法(Java プログラムとしてコンパイル&実行)
C:¥> oxygene HelloJava.pas -mode:Java C:¥> java -jar hellojava.jar
実行結果
Hello, Oxygene World!
-
Hello, Phalanger World!
Posted on 1月 24th, 2012 by cx20
Phalanger
Phalanger は .NET 環境向けの PHP コンパイラである。名前は「PHP language compiler」の略。
PHP の構文が使える他、.NET Framework のライブラリが使用できる。
C# 同様に、UNIX 環境向けの .NET Framework 互換プロジェクト「Mono」により他の OS でも動作できるようになってきている。
ソースコード
ソースコード(.NET ライブラリを使用した場合)
コンパイル方法
C:¥> phpc hello.php
コンパイル方法(.NET Framework を使用する場合)
C:¥> phpc /lang:clr /r:mscorlib hello.php
実行結果
Hello, Phalanger World!
-
Hello, ClojureCLR World!
Posted on 1月 23rd, 2012 by cx20
ClojureCLR
ClojureCLR は Lisp の方言の一つ Clojure の .NET 実装である。
Clojure の構文が使える他、.NET のライブラリが利用できる。
ソースコード
ソースコード(.NET ライブラリを使用した場合)
実行方法(.NET Framework)
C:¥> Clojure.Main hello.clj
実行結果
Hello, ClojureCLR World!