Lispと一緒(23) ラズパイPico2でもuLisp、局所変数、letとdo一族

uLisp_let
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。このところCommon Lisp上とuLispで実装が違うものどもを調べてます。今回はローカル変数を利用するためのものども、let(Special Form)やdo(Macro)などの一族です。この辺は実装は違えど挙動は同じじゃ。
“Lispと一緒(23) ラズパイPico2でもuLisp、局所変数、letとdo一族” の続きを読む

Lispと一緒(22) ラズパイPico2でもuLisp、マクロでない者共その2

incf_decfEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。前回はCommon Lisp上の「マクロ」と異なるuLispでの実装が、実装に関わりなく同様な動作をすることを観察。しかし今回はCommon Lisp上とuLisp上で反応が違うんでないかい、という「元マクロ」どもを観察します。

“Lispと一緒(22) ラズパイPico2でもuLisp、マクロでない者共その2” の続きを読む

Lispと一緒(21) ラズパイPico2でもuLisp、マクロでない者共

andEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。前回はCommon Lisp上「マクロ」として実装されている「あれやこれ」がuLisp上ではスペシャルフォームなどとして実装されていることを見ました。今回はマクロであったはずのあれやこれの実際の動作を拝見。みかけに違いはないのよ。
“Lispと一緒(21) ラズパイPico2でもuLisp、マクロでない者共” の続きを読む

Lispと一緒(20) ラズパイPico2でもuLisp、Macroはどこ?

Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回はCommon LispとuLispの大きな違いの一つ、マクロについて調べてみます。Lispの中には、関数、マクロ、スペシャルフォームなどあり、その挙動が異なります。しかし、どうもuLispにはマクロはないみたい。

“Lispと一緒(20) ラズパイPico2でもuLisp、Macroはどこ?” の続きを読む

Lispと一緒(19) ラズパイPico2でもuLisp、list関連関数

Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回は巡り巡ってリスト関係の関数に戻ってまいりました。uLispは「マイクロ」なので関数の数は少ないですが、この辺の関数どもの挙動にはCommon LispとuLispの差は見えませぬ。あったら困るか?さっさと練習して次へ。 “Lispと一緒(19) ラズパイPico2でもuLisp、list関連関数” の続きを読む

Lispと一緒(18) ラズパイPico2でもuLisp、配列、array

make_arrayEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回は配列、arrayを練習してみます。今回はCommon LispとuLispの差というより、処理系依存な部分がちょいと見えましたかな。まあ、注意してたらその差は見えないような使い方は十分できそうな気がするけど(個人の感想デス。)

“Lispと一緒(18) ラズパイPico2でもuLisp、配列、array” の続きを読む

Lispと一緒(17) ラズパイPico2でもuLisp、整数ビット演算

uLisp_logbitp
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回は整数のビット演算系の関数を練習してみます。Common Lispではboole関数とlogで始まる関数どもで似た処理が可能。uLispではlogで始まる関数のみ存在します。その範囲であれば「概ね」差は見えにくいです。

“Lispと一緒(17) ラズパイPico2でもuLisp、整数ビット演算” の続きを読む

Lispと一緒(16) ラズパイPico2でもuLisp、文字列関連関数

concatenateEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回文字列を扱う関数を練習したので、今回は文字列やリスト、あるいは文字列を数値に変換するような関数をいくつか練習してみます。前回はCommon LispとuLispの間に差はなかったですが、今回はいろいろあります。仕方ねえ。

“Lispと一緒(16) ラズパイPico2でもuLisp、文字列関連関数” の続きを読む

Lispと一緒(15) ラズパイPico2でもuLisp、文字と文字列

uLisp_string_eq
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回までで算術演算系の関数どもはひと段落。今回は、文字と文字列を扱うものどもです。Common Lispでは多数ある関数どもが uLisp ではこじんまりとした数です。必要最小限?知らんけれども。いくつかは既に練習済じゃと。 “Lispと一緒(15) ラズパイPico2でもuLisp、文字と文字列” の続きを読む

Lispと一緒(14) ラズパイPico2でもuLisp、大小比較

uLisp_numeq_noteq
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回まで算術演算系の関数どもを練習してきましたが、今回の「大小比較」で一段落かと。前回はコマケー話で、Common LispとuLispの違いが見えてしまいましたが、今回は平穏無事、波風立たず。

“Lispと一緒(14) ラズパイPico2でもuLisp、大小比較” の続きを読む

Lispと一緒(13) ラズパイPico2でもuLisp、乱数、最大最小、丸め系?

CeilingEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回は指数、対数系の演算関数を練習。計算精度を除けばCommon lisp とuLispに違いなし、平穏無事。今回は、乱数、最大最小、丸めなどやってみます。概ね一緒ではあるものの、コマケー違いがあるんだ、今回は。
“Lispと一緒(13) ラズパイPico2でもuLisp、乱数、最大最小、丸め系?” の続きを読む

Lispと一緒(12) ラズパイPico2でもuLisp、算術演算、指数、対数系?

uLispExpt
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。uLispにおいては浮動小数点数は extensions という位置づけですが、FPUを備えているPico2にはなんでもありません?前回は三角関数など練習。今回は指数、対数系です。今回は平穏無事な感じ。目くじらたてることもなし。

“Lispと一緒(12) ラズパイPico2でもuLisp、算術演算、指数、対数系?” の続きを読む

Lispと一緒(11) ラズパイPico2でもuLisp、算術演算、三角関数、平方根

pi_EC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。前回は算術演算を練習するのに浮動小数点数使ってしまいました。しかし、uLispにおいては浮動小数点数は extensions という位置づけです。ターゲットマイコンによっては使えない機種もあり。Common Lispとの差異もあり。
“Lispと一緒(11) ラズパイPico2でもuLisp、算術演算、三角関数、平方根” の続きを読む

Lispと一緒(10) ラズパイPico2でもuLisp、算術演算、「細かい」違いはある

divEC
Joseph Halfmoon

Common Lispの系譜を継ぐ、マイコン上のuLispをラズパイPico2上で練習中です。前回は末尾に「p」がつく問いかけ(述語)どもでした。今回は算術演算です。普通の加減乗除ね。そんなところに何か埋まっている筈ない、と思ったらあきまへん。Common LispとuLispの微妙(微妙でもないか)な違いにまた遭遇。

“Lispと一緒(10) ラズパイPico2でもuLisp、算術演算、「細かい」違いはある” の続きを読む