Archive for the ‘Scheme’ Category

  1. Hello, Win32 API(Scheme) World!

    Posted on 3月 8th, 2013 by cx20

    Win32 API(Scheme)

    Win32 API は、Windows の機能にアクセスする為の API(Application Programming Interface)である。
    以下は Scheme 実装の1つである Gauche による Win32 API 呼出しの例となっている。

    ソースコード

    (use os.windows)
     
    (define (main args)
      (sys-message-box #f "Hello, Win32 API World!" "Hello, World!" MB_OK)
      0)

    実行方法

    C:¥> gosh Hello.scm

    実行結果

    ---------------------------
    Hello, World!
    ---------------------------
    Hello, Win32 API World!
    ---------------------------
    OK   
    ---------------------------
  2. Hello, IronScheme World!

    Posted on 1月 22nd, 2012 by cx20

    IronScheme

    IronScheme は関数型言語 Scheme の .NET 実装である。開発当初は IronLisp として開発されていた。
    Scheme の構文が使える他、.NET Framework のライブラリが利用できる。

    ソースコード

    (import (rnrs))
    (display "Hello, IronScheme World!" )

    ソースコード(.NET ライブラリを使用した場合)

    (import
      (rnrs)
      (ironscheme clr))
    (clr-static-call System.Console WriteLine "Hello, IronScheme World!" )

    実行方法(スクリプトファイルを指定して実行)

    $ isc hello.ss

    実行結果

    Hello, IronScheme World!
  3. Hello, Scheme World!

    Posted on 1月 11th, 2012 by cx20

    Scheme

    Scheme は Lisp の方言の一つ。名前の由来は「策略家(schemer)」から。多くの言語仕様を取り入れた Common Lisp に対して、Scheme は必要最小限の言語仕様となっている。
    Scheme の実装は多数存在するが主なものとして、Gauche、GNU Guile、MIT Scheme などがある。
    以下のコードは、Gauche 及びに対話シェル gosh によるサンプルである。
    Gaucheはフランス語で「ねじれた、左」の意味。

    ソースコード

    #!/usr/local/bin/gosh
    (print "Hello, Scheme World!")

    実行方法(スクリプトファイルを指定して実行)

    $ gosh hello.scm

    実行方法(実行権限を付与して実行)

    $ chmod +x hello.scm
    $ ./hello.scm

    実行結果

    Hello, Scheme World!