この記事は、NetBSD Advent Calendar 2024の23日目の記事です。
はじめに
Java Virtual Machineで動く言語を使いたかったのですが、JavaもKotlinも何となく気が進まなかったので、Clojureを試そうとしてみました。
環境を設定する
もたもたしていて今日時点でpkgsrc/lang/clojure-leiningenはインポートできていませんが、LeiningenはClojureで開発する場合には必要なようです。 ですが、まずは、pkgsrc/lang/clojure-leiningenをインストールします。
# cd /usr/pkgsrc/lang/clojure-leiningen # make install
以下のように実行してみましょう。 https://dev.classmethod.jp/articles/instaparse/を参考にしてみます。
$ mkdir ~/tmp $ cd ~/tmp $ lein new pj1 $ cd pj1 $ cat project.clj (defproject insta "HEAD" :dependencies [[org.clojure/clojure "1.11.1"] [instaparse "1.5.0"]] :main pj1.core) $ cat src/pj1/core.clj (ns pj1.core (:require [instaparse.core :as insta])) (def as-and-bs (insta/parser "S = AB* AB = A B A = 'a'+ B = 'b'+")) (defn -main [& args] (print (as-and-bs "aaabbaabbb"))) $ lein run [:S [:AB [:A a a a] [:B b b]] [:AB [:A a a] [:B b b b]]]
おわりに
NetBSD上のClojureで有用なプログラムを書くことができそうです。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。