lisp

バイナリブロブな設定ファイルを廃止しよう

ʕ•͡ω•ʔ あれだよな。Scheme にもカミナリニンゲンみたいなプロジェクト・マネージャー的なもの欲しいよな % dry new zellanium ʕ•͡ω•ʔ すると、project.scm とかできてさ

Scheme でぷよぐらみんぐしてみた

プログラミング環境の準備 コードを書くのに使うテキストエディタといえば、そう。Emacs ですね。 Emacs をインストールするには Arch Linux ではこのように打ちます: % yaourt -S emacs あとは処理系ですね。 今回は Gambit Scheme を導入してみましょう。 …

超高速電磁寿司職人の朝は早い

シェルスクリプトの if 節の中には変数をそのまま書いちゃダメでダブルクォーテーションで囲まなきゃいけないということを知った。 base_dir=~/var/log/rubygems/${serial_date} if [[ ! -d "$base_dir" ]]; then mkdir -p $base_dir fi あと、Gambit Scheme…

シシカバブーって幻獣の仲間だったよね?

ʕ•͡ω•ʔ なーんか、アドベントカレンダーって雰囲気じゃなくなっちまったよな (๑´ڡ`๑) そうだね ものすごいモチベーションが無くなったのを感じます。

パソコンには霊圧も気もチャクラも無い

C# で書かれたこういうソースコードがあります: var hoge = 42; { var x = 0; if ( hoge >= 42 ) { x = 42; } else { x = hoge; } Console.WriteLine( x ); } hoge が 42 以上なら x に 42 を設定し、それ以外なら hoge の値を x に設定するというよくあるコ…

君にもできるデータセンター縮退炉

Lisp Advent Calendar 2015 5 日目。 昨日はりひにーさんで Lisp なら括弧とシンボルを並べるだけ!!! でした。 こーいう CoffeeScript で書いたコードを: # chapter002.coffee http = require 'http' options = hostname: 'www.google.co.jp' port: 80 pa…

Lisp なら括弧とシンボルを並べるだけ!!!

ʕ•͡ω•ʔ すげぇ簡単だからやってみようぜ!!

若者のチャレンジを応援する雑誌、若者チャレンジ

Lisp Advent Calendar 2015 3 日目。 昨日はりひにーさんで 大根のメタファーは撃ち抜けない でした。 ʕ•͡ω•ʔ 自動で (export hoge) してくれる public-define っていうのがあるんだけど: (public-define* (print #:rest args) (define (recur xs) (if (null…

大根のメタファーは撃ち抜けない

Lisp Advent Calendar 2015 2 日目。 昨日はりひにーさんで Lisp Advent Calendar 一日目 でした。 ʕ•͡ω•ʔ 今日も何にもないよな (๑´ڡ`๑) うん

Lisp Advent Calendar 一日目

ʕ•͡ω•ʔ 例によってネタがないよな ( ´∀`) SDL のことでもやる? ;; sdl-sample.scm (use-modules (srfi srfi-1) (srfi srfi-2) ((sdl sdl) #:prefix SDL:) ((sdl gfx) #:prefix SDL_gfx:)) (define screen-width 640) (define screen-height 480) (define s…

本当はコワイ副作用の恐怖

( ◠‿◠ )☛ 副作用を使ったな!? 副作用使用罪で逮捕する!! ╰( ´◔ ω ◔ `)╯ うわっ、お前はっ! 副作用警察!! 何故ここに!!1

ローストチキンを買ったら唐揚げがついてきた

(l ω l〃) 少し気が早くないかな……

殺人ピエロの卵閉じ

(l ω l〃) キーボードの #\i が押しにくくなってて文章を打つ気が起きない…

まずいデータ構造はあなたを地獄まで連れて行って離さない

╰( ´◔ ω ◔ `)╯ ユーザーが考えていることにフィットしたデータ構造と UI を考えよう (*゚∀゚) そーじゃないデータ構造と UI は本当にひどいことになる ╰( ´◔ ω ◔ `)╯ それを修正する手間と時間のことを考えると気分が重い………… (l ω l〃) 重要なのは、ユーザ…

ともあれ、COBOL は滅ぶべきであると考える次第である

(*゚∀゚) COBOLer 死すべし。慈悲はない

うーん、とっても Haskell

╰( ´◔ ω ◔ `)╯ 来年は Haskell でもやってみるか

牛すじタコライス丼

╰( ´◔ ω ◔ `)╯ Lisp 的なことは最近全然やってないんだよな… (l ω l〃) クトゥルフ神話 TRPG リプレイ動画観てばっかりだしね… ╰( ´◔ ω ◔ `)╯ まあ、仕方ないな

黄色いレンガの道を辿って

sinatra とかのクローン的な意味で santana とか考えてみた。 (use 'santana) (get "/hi" () "Hello, World!") ライチティーおいしいですね。

閉じ括弧を探せ!!

(l ω l〃) Lisp 書き始めは閉じ括弧で苦戦していた。

外で電子コインを集めまくり、1UP することに命をかける配管工の二人組

(mapcan #'evenp '(0 1 2 3 4 5 6 7 8 9)) これじゃダメで: (mapcan #'(lambda (x) (when (evenp x) `(,x))) '(0 1 2 3 4 5 6 7 8 9)) ってする必要がある。

トイレビューの富士山八合目

(」・ω・)」 モノリシックメソッドやめろーーーーー!!! モノリシックな to-fizz-buzz: (define (to-fizz-buzz n) (cond ((and (equal? (modulo n 3) 0) (equal? (modulo n 5) 0)) "FizzBuzz") ((equal? (modulo n 3) 0) "Fizz") ((equal? (modulo n 5) 0)…

そう、アリババには 40 人もの盗賊がいた

でも、あなたはもっとラッキー! 誰も敵いはしない。 (l ω l〃) だえもんが何人も見守ってるからね!! ╰( ´◔ ω ◔ `)╯ あ、はい ( ◠‿◠ )☛ Lisp 関係ないよな

機械で捏ねられたハンバーグと、人間の手で捏ねられたハンバーグはどっちもおいしい!

(๑´ڡ`๑) おいしい! Scheme は Lisp じゃなくて ALGOL だ!! という Common Lisp 原理主義者の瘴気に当てられたことは内緒なんだけど、 最近、Common Lisp をやってもいいんじゃないか感が強いので、アドベントカレンダーが終わってからでも SBCL を触って…

穴あきタートルグラフィック

(l ω l〃) SBCL 使ってみようかな感が高まっている…

すぐマクロ、すごくマクロ

今書いてる Emacs Lisp server-running-p が定義してあったら server-running-p を呼ぶみたいなのがあるんですが: (when (fboundp 'server-running-p) (server-running-p)) これ: (fbound-when server-running-p (server-running-p)) ってやってもいいんじゃ…

ジャバニャンは 2 回ベルを鳴らす

ええい、1 つの記事で 2 つのアドベントカレンダーに登録してやる!! 昨日思い立って、.emacs.d を新しくしているんですが、 mozc.el をまだ require してないせいで、何かよく分からないインプットメソッドになってしまい、日本語入力がとてもつらいです。

qurasow の話

rake は rule とかで make とおんなじ感じで .c から .o への変換に gcc を使うぜとかできるんですが、 そのまま書くとこんな風になって: (rule ".c" => ".o" (t) (sh "gcc -O2 -W -Wall -c #{t source} -o #{t target}")) どうやれば実装できるかわからない…

エクストリーム・空中散歩・ほんわかガイド

cCLan っていうのがあったんだけど、全然活動してない感があるのであれがそれでこれ。 マウスが効かない感じあるし、なんかもうダメ感すごい…。

秋冬おすすめのコーディング規約

Lisp Advent Calendar 2014、2 日目はりひにーさんで クマクマナルド南国帝国ホテル店の決闘 でした。 3 日目はわたくし、りひにーです。 早くもネタが無くなってまいりました。 そこで、FizzBuzz 問題を例に Scheme ってこう書くといいのかーと目の前が明る…

クマクマナルド南国帝国ホテル店の決闘

(:3[____] Sinatra 風: (route "/" () (html "index.html")) Apache httpd の設定ファイルの何か: (virtual-host "*:80" () (document-root "/var/www/websie") (server-name "mysite.dev"))

( ノ╹◡◡╹)ノ make っぽいビルドツール きゅらそー

えーっと、Advent Calendar を 2 つも並列で走らせるのはやめた方が良いと思いました。 まだ一日目なんですがめんどくささが漂っています。 Ruby には rake といういい感じの make 風のビルドツールがあるそうですが、Scheme にもあったら面白いな〜と考えて…

Lisp は万能ではない

╰( ´◔ ω ◔ `)╯ Lisp は確かに神の言語だが、この意味するところは「神が使っていた言語って Lisp なんじゃねーの?」ってことだ。 ( ◠‿◠ )☛ ただのプログラミング言語で神がかり的な力を得られるわきゃねーだろ… Lisp に満足しちゃったらそれまでのにんげん…

ヽ(゚∀゚)ノ ワー test.simple できたよー!!

;; -*- coding: utf-8; -*- ;; test-simple.lisp (provide 'test.simple) ;; (defpackage :test ;; (:use :cl)) ;; (in-package :test) (defpackage :test.simple (:use :cl) (:export tests ok)) (in-package :test.simple) (defvar *test-amount* 1) (defu…

悲しみ…

こういうファイル test-simple.lisp と: ;; -*- coding: utf-8; -*- ;; test-simple.lisp (provide 'test.simple) (defpackage :test (:use :cl)) (in-package :test) (defpackage :test.simple (:use :cl) (:export tests ok)) (in-package :test.simple) (…

神の言語 Lisp

世界は Lisp によってカオスから作られた。 丸かっこはカオスをアトムに分解する働きのために非常に細かく振動することになった。 まず初めに丸かっこがあり、カオスはたくさんの、本当にたくさんのアトムに分解された。 この時の副作用が眼も眩むばかりの光…

現在の init.el を晒してみた

他のパソコンでも使うので、メモっておく。 ;;; .emacs ;(setq debug-on-error t) ;; =============================================================================== ;; ;; Environmental discrimination(環境識別) ;; ;; ============================…

タイトルバーにバージョンとか載せてみた

Meadow-version の中で interactive が呼ばれてないせいだと思うんだけど、エラるし、そのままは気に食わないので、 ちょっと書いてみた。 (if *run-meadow* (progn (setq about-meadow (let ((meadow-about-text (car (split-string (Meadow-version) " "))…

テンポラリバッファってみようと思った

いちいちファイル名を決めてなきゃいけないのはめんどくさいので、*temp* ってバッファを作成して、 それにメモったり Evernote とかにコピペしたりできればいいな~と思った。 xyzzy では簡単にできたんだけど… とりあえず空のバッファを作成する関数をググ…