Lisp

【Common Lisp】SBCLとClispのスクリプトファイル実行方法

SBCLとClispでの外部スクリプト実行の方法が微妙に違って、 よく調べる手間が発生しているのでメモしておきます。 まずはlispファイルを用意hello.lisp (princ "Hello, world!") Clisp $ clisp hello.lisp Hello, world! $ SBCL $ sbcl --script hello.lisp …

【Common Lisp】改行関数(fresh-line)

タイトルのとおり、(fresh-line)は改行する関数です。こういう簡単な関数の説明も意外と出てこないのよね〜(;^ω^) lispの出力関数である(princ)なんかは人間に理解しやすい形で出力するのでよく使うのですが、改行処理をしていません。 なので以下の…

【Java・Ruby・Lisp】Fizz-Bazzを解けないとやばいらしい。ので懇切丁寧に解説。解き方。

FizzBuzz問題が解けないとやばいらしい。FizzBuzzというのは、プログラムの問題として非常に有名なもので、一度くらいは解いたことがあるのではないでしょうか。 FizzBuzz問題は、正直そんなに難しいものではなく私の入社後の研修でも序盤の方でやりました。…

【CommonLisp】プログラミング問題用に標準入力を考える

Lispの標準入力はreadとread-lineがあるのですが、 アルゴリズムの練習問題を解くのに両方共対応できなかった。 例えば、「1 2 3 4 5」のように標準入力で受け取って、何かしらの処理をする問題があるとする。 Rubyとかだと標準入力で文字列として受け取って…

【CommonLisp】リストを食べる関数の代表例。リストの長さを計算する関数

今日も「Land of Lisp」から。リストを食べる関数というのは、 リストを再帰的に処理していく中で、nilになるまで処理を続けていくということ。 リストを頭から食べていって空リストを検出することはLispの関数でよく使われるみたい。関数型の言語は触ったこ…

【CommonLisp】ash関数でビット演算

完全に趣味の世界でlispを始めた。 というか、Land of Lispを読み始めた(・∀・) 関数一つ調べてもRubyとは対極で日本語の記事は全然でてこない。。 調べたことは逐次ブログに上げといたほうが個人的な資産になりそう(笑) ash関数は、第一引数の整数を第二…