octahedron

LemとSKKとCommon Lispでたたかうプログラマのブログ

Oji --- バイト列の文字境界を識別する

Ojiは文字符号化の方法が分かっているバイト列における「一文字」の範囲を識別するライブラリです。 github.com どうしよう、これ。 いちおう動機 flexi-streamsにASCII範囲外の文字を渡してstream-read-charすると、正しく一文字を認識してくれない現象を発…

Lisp GNU Lesser General Public Licenseを和訳してみた

LLGPLを和訳してみた github.com T/Oなんですが、それだけでは寂しいので経緯と概要を記しておこうと思います。 LLGPLとは Lisp (特にCommon Lispか)の事情に対応するための前文を付け足したLGPLです。LGPLについては概要、経緯ともにWikipediaの当該記事が…

One --- 手短に入出力を扱うフレームワーク

One — 手短に入出力を扱うフレームワーク Oneはファイルや標準入力に対する操作を、bashのパイプ処理のような感じで手短に記述するためのライブラリ・フレームワークです。 github.com イチの逆襲(あらまし) 時は宇宙世紀2X17年。ぼくはまだ、CSVの処理をす…

roswellで開発中プロジェクトを簡単にloadする

開発中のプロジェクトを簡単にloadできるようにするスクリプトを書きましたが、改訂の途中です。 2017/05/25 追記: roswellのサブコマンドになりました。詳細はroswellサブコマンドへの道参照 動機 ぼくはrosaやinquisitor等々ライブラリを改修するときにsli…

package-inferred-systemに期待したもの

これまでのあらすじ package-inferred-systemは、pakageのinferred-systemである。 なんだか体がだるい感じのぼくはこころに学びを沁みわたらせるため、ライブラリのパッケージをすっきりと書くことはできないか考えてみようと思った。Common Lispを書いてい…

Lispエイリアン壁紙をつくりました2

Lisp界のマスコット、Lispエイリアンの壁紙をまたつくりました。 http://f.hatena.ne.jp/t-sin/20170513011545 オリジナルサイズ 背景 以前Lispエイリアンの壁紙をつくりました。 octahedron.hatenablog.jp でも、黒いのがほしかったので、またつくりました…

祝! Rosaバージョン1.0!

最近つくったrosaというライブラリ・ツールのバージョンを1.0にしました。 github.com テキストデータに、書きやすく見た目を邪魔しない形式で、メタデータを埋め込むための言語です。実際にどんなものかというのは、以下の記事に書きました。 Rosa --- メタ…

Seriesで響け!ユーフォニアム!

Series触る触ると言ってたのに触ってなかったので、手始めに響けユーフォニアムをseriesでやってみました。 2017/4/29 追記 「妙なwarningが出てしまうこと」について、以下の記事の反応をいただきました。 Seriesの色々 — #:g1 この記事ではapplyでseriesを…

Rosaに謎のシリアライズ機能が登場

先日こんなものが完成しました。 octahedron.hatenablog.jp まあ用途や有用性の不明な、なんだかよくわからんプロジェクトだとぼく自身も思うわけですが、なんなんでしょうね(ぼく自身ではわりと使ってます)。 Rosaについて Rosaとは 文字列に名前を付けて…

Rosa --- メタデータ付きテキストを表現する言語

Rosa Rosaは、プレーンテキストにタイトルや作成者などのメタデータを付与するための、メタなマークアップ言語です。また、そのパーサライブラリであり、パーサコマンドの名前でもあります。 ちなみにCommon Lispで実装しました!!! github.com 動機 ムサ…

Lispエイリアン壁紙をつくりました

TL;DR Lisp界のマスコット、Lispエイリアンの壁紙をつくりました。 同日 19:45追記; オリジナル画像がダウンロードできませんでした。笑止。 オリジナルサイズ 壁紙そのいち オリジナルサイズ 壁紙そのに 動機 Lispを愛するならば、デスクトップの壁紙もLisp…

One --- ワンライナーのための入力処理

One Oneはファイルや標準入力の行単位の入力を簡単に扱えるようにする、Common Lispでのワンライナーを支援するライブラリです。 github.com 概要 時は20XX年、ぼくはnums.csvの二列目を合計したくなった……。 $ cat nums.csv name1,1 name2,3 name3,5 $ cut …

Inquisitor --- external-formatラッパー & 文字コード/改行コード自動判定ライブラリ

Inquisitor Inquisitorとは、Common Lispの文字コード/改行コードの自動判定ライブラリなのである。 t-sin/inquisitorgithub.com これまでに文字コード判定を行うライブラリはあったが、 *1 改行コード判定がない さまざまな処理系(CCL、ECLなど)に対応して…