lisp

Facebook アプリを Scheme で shibuya.lisp tt#7

Facebook App in Scheme Shibuya.Lisp tt#7 2011/10/22View more presentations from Taro Higepon.

Shibuya.lispテクニカル・トーク#7 観覧募集中です

Shibuya.lispテクニカル・トーク#7 : ATND。

ロバ耳でコメントが読みやすく書きやすくなりました

「王様の耳はロバの耳 - 匿名であなたの秘密を打ち明けてすっきりしよう!」でコメントが読みやすく書きやすくなりました。 ぜひお試しください。

Facebook の日付形式「約1時間前」などを返す手続きを書いてみた

以下のような Facebook 日付形式を返す手続きを書いてみた。 テストの部分を見ると、どういう場合に日付形式が変わるのかが分かって面白いかも。 (import (rnrs) (mosh test) (only (mosh) format) (srfi :19)) (define dw '#("日曜日" "月曜日" "火曜日" "…

Shibuya.lisp テクニカルトーク #6 参加者募集開始

Shibuya.lispテクニカル・トーク#6 : ATND

Released Red-Black tree library for R6RS

Released Red-Black tree library for R6RS.(scheme-rbtree-0.0.1.tar.gz).Git repository

named let における list 終端で返す値

(let loop ([lst lst]) (cond [(null? lst) '()] ;; ここ [else ...])) のように値を返さないという意思表示で '() を返していたんだけど。 cond と組み合わせる場合は type 数が少ない (let loop ([lst lst]) (cond [(null? lst)] ;; #t が返る [else ...]))…

UtiLisp の先進性と高速さに驚いた

Shibuya.lisp TT #4 の近山先生の講演で聞いた UtiLisp 。 あの当時でパターンマッチを入れてるあたりはすごい。しかも同時代の他の処理系と比べて速度が半端じゃなく速い。 近山先生は相当の腕前なんだろう。自分も処理系作っているからかびっくりしたなあ。

Shibuya.lisp Tech Talk #4 LT発表資料 「さあ家に帰ったらSchemeのコード書いてみよう」

Shibuya.Lisp20091107View more documents from higepon.

Shibuya.lisp テクニカルトーク#4

Shibuya.lisp テクニカルトーク#4の告知が出ています。 今回のテクニカルトークも大変豪華。今から楽しみ。

Closure / PHP

briancarper.net :: Clojure 1, PHP 0 そろそろ誰かが Scheme で PHP のコードを置き換えたらこんなに短くなったというブログを書くべき。

次回 Shibuya.lisp Tech Talk #3 の 講演者を募集中

次回 Shibuya.lisp Tech Talk #3 の 講演者を募集中です。 TT/LT ともに募集していますので興味のある方はリンク先をご参照下さい。熱いお話、冷めたお話、ネタなど何でも歓迎です。 Shibuya.lisp » Blog Archive » Shibuya.lisp テクニカルトーク#3 発表者…

shibuya.lisp #2 ライトニングトーク決定

Shibuya.lisp » Blog Archive » Shibuya.lisp TT#2 ライトニングトークの発表内容決定!うーむ。すごいメンバーだ。ありがたいです。

Shibuya.lisp Tech Talk #2 開催します

2009年2月28日(土) 14:30- に Shibuya.lisp Tech Talk #2 を開催します。 前回と同じく会場は渋谷の 価格比較サイト / ECナビ さんに提供していただきます。ありがとうございます。 今回は前回と同等かそれ以上の豪華な Tech Talker 陣です(自分以外は。。…

Common Lisp の print

Common Lisp の print は表示したオブジェクトをそのまま返すらしい。id:g000001 さんに教えてもらった。 (and hoge hige) の print デバッグは (and (print hoge) hige) と書ける。面白い。 ちなみに Scheme の display は未定義値を返す仕様。 追記 多値に…

Bignum と get-timeofday

Bignumが実装されたのでやっと get-timeofday が使えるようになった。うれしい。

Tiny CLOS on Mosh

IRCで話していたらやる気が出たので Tiny CLOS を動かしてみました。 (define (fib x) (if (= x 0) 1 (* x (fib (- x 1))))) (define-generic gfib) (add-method gfib (make-method (list) (lambda (call-next-method x) (if (= x 0) 1 (* x (gfib (- x 1)))…

Numerical type predicates 実装完了

面白かった。

美しい

Numeric Tower を実装していて「この仕様は美しいな」と感じていたのだが、よく考えればそれは数学の美しさだった。Numeric Tower は数学の表層に過ぎないのは良く分かっているつもりだが、この整然とした美しさには特別なものを感じる。Tower とは言い得て…

+inf の作り方

Object::makeFlonum(1.0 / 0.0); と表現している部分が division by zero in ‘1.0e+0 / 0.’ と g++ さんに警告を受ける。の件ですが、きむら(K)さんに static double zero(void) { return 0.0; } static double one (void) { return 1.0; } one() / zero();…

nan?, finite?, infinite?, positive?, negative?, exact? and inexact?

浮動小数の計算が必要なコードをほとんど書いたことがない。だからIEEE 754 もおおざっぱにしか知らなかった。勉強し直して +inf.0 とか -inf.0 とか nan.0 を知る。 いやはや GNU MP に有理数の計算を任せられるとはいえ、複素数、浮動小数は自分で考えなけ…

Numeric Tower の基礎固め終了

基礎固めが終了。次は仕様で定められている算術手続きを実装する。数えたら 190 個ほど。1日10個だと3週間かかります><。 Mosh では commiter を募集しています。手伝ってくれる方がいたらうれしいな。

Numeric Tower 実装中

下記の数値タイプ同士での加減乗除や比較演算を地味に実装中。組み合わせが多くてテストと実装が大変。 Fixnum(固定長整数) Bignum(多倍長整数) Flnum(浮動小数) Ratnum(有理数) Compnum(複素数) ほぼ機械的に淡々と実装とテストを繰り返す。

Install gmp-4.2.4 on OSX 10.5.4

libgmp をリンクしようとして以下のエラーが出たら。 ld: warning in /usr/local/lib/libgmp.dylib, file is not of required architecture Undefined symbols: "___gmpz_init", referenced from: _main in cce3wyEi.o ld: symbol(s) not found collect2: ld…

Numeric Tower - Rational

Numeric Tower の Rational(有理数)の実装。 Rational と Fixnum の間の +, -, *, /, >, >=, GMPさんに数値を渡すだけの簡単なお仕事です。 さて次はどうするかな。Flonum や exact/inexact に早めに踏み込んだ方が良いのかもしれない。

Mosh 0.0.7 をリリースしました

Mosh 0.0.7 をリリースしました。 R6RS のUnicode, Bytevector, Sorting などが実装されました。 Mosh の起動速度や g++ でのコンパイル速度が大幅に向上しました。 また以前から -b オプションでサポートされていた R6RS モードがデフォルトとなり -b オプ…

なぜ quote が分からなかったか?

SICP を読みながら Scheme インタプリタを書いていた頃。quote の仕様と実装方法が分からなくて困ったことがあった。そのときなぜ分からなかったか?というのが今になって思い出したので書いておく。 理由はデータとコードとS式の関係がもやもやとして分かっ…

Shibuya.lisp テクニカルトーク #1 ニコニコ動画にて動画公開

Shibuya.lisp テクニカルトーク #1 ニコニコ動画にて動画公開! 動画公開にあたりid:koguroさん、snmstsさん、yazuさん、id:g000001さんなど多くの人が尽力して下さいました。ありがとうございます。 特にid:koguro さんは動画の編集とアップロードを引き受け…

Arc はどこへいくのか?

Arc Forum | Where are we going?Arc はリーダー(ポールグレアム)不在に見える。そのせいでユーザーは離れているよ。どうするの?的な話題。 ポールグレアムが「急ぐ必要は感じていない。Lispは50年ほげほげ」と答えている。 でもまあ一般的なオープンソー…

Gauche と Mosh の read/write の違い

はまったのでメモ。 #\null と #\nul |...| と ... :hoge Gauche ではキーワード。Moshでは識別子 (import (srfi :1)) 的なときに注意。