[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

タグ

Schemeに関するt_a_oのブックマーク (11)

  • 今からはじめるScheme入門

    Cognitoが大型アップデート!�Managed Loginとパスワードレスログインを�実際に使ってみた@しむそくRadio Special Day1

    今からはじめるScheme入門
    t_a_o
    t_a_o 2013/08/07
  • VimでのSchemeプログラミング - 再帰の反復blog

    LispやSchemeがとっつきにくく感じられる理由の一つに、プログラミング支援機能がまったくない状態だとすごくプログラムが書きにくいことがあるんじゃないかと思う。インタプリタを立ち上げてみてもカッコの対応表示機能がないとちょっとした式の入力も苦労する。rlwrapを使えばカッコ対応表示は解決するけど、Lisp向けのオプション設定がいくらか必要になる(→「改めてGaucheとrlwrapの連携について」)。ウェブブラウザに入力することになったらエディタで書いてコピペするのが一番現実的なやり方になってしまう。 エディタでプログラムを書くにしても、変数名に使える文字とかインデントの仕方などLisp独特の癖があるので、エディタの提供するプログラミング支援機能が(素の設定だと)うまく動かないといった苦労が出てくる。たぶんそうした苦労や敷居の高さの多くはEmacsを使えばなくなるのだろうけど、人によ

    VimでのSchemeプログラミング - 再帰の反復blog
    t_a_o
    t_a_o 2012/10/07
  • 改めてGaucheとrlwrapの連携について - 再帰の反復blog

    rlwrapコマンドを使うと、入力にReadLineの機能が使えるようになる。また補完機能やカッコの対応表示も働く。キーバインドは→GNU Readline Library:1.4 Bindable Readline Commands ヒストリ(Ctrl+p、Ctrl+nなど)と補完(Tab)だけでもかなり便利。 rlwrapをGaucheで利用する場合、オプションにc、q、b、mあたりを指定する。 rlwrap -c -q '"' -b "'"'(){}[].,#@;|`"' -m gosh 補完したい単語は、ファイル ~/.gosh_completions に並べておく。環境変数$RLWRAP_HOMEが設定されているなら $RLWRAP_HOME/gosh_completions というファイル。ファイル名のドットのあるなしに注意。 一般的には、補完語ファイルは ~/.コマンド名_c

    改めてGaucheとrlwrapの連携について - 再帰の反復blog
    t_a_o
    t_a_o 2012/10/07
  • gaucheをMacに入れた - コンドルが飛んでいる。

    SICPを読み始めているので. で, REPLが使い物にならなかったりアレしたのでちょっと調べて快適に使えるようにした. REPL $ brew install gauche $ brew install rlwrap $ vi ~/.gosh_completions #http://d.hatena.ne.jp/rui314/20070604/p1 で ~/.rlwrap/gosh_completions として紹介されているのをコピペ $ wget http://www.katch.ne.jp/~leque/software/misc/igosh -P /usr/local/bin/ $ chmod 744 /usr/local/bin/igosh Vim $ vi ~/.vimrc # Bundle 'haruyama/scheme.vim' と # autocmd FileType

    gaucheをMacに入れた - コンドルが飛んでいる。
    t_a_o
    t_a_o 2012/10/07
  • Vim+Gaucheでの作業環境の設定 - 再帰の反復blog

    追記: 書き直した Vimについて→VimでのSchemeプログラミング rlwrapについて→改めてGaucheとrlwrapの連携について rlwrapコマンドとの連携 rlwarp -c gosh とすればreadline操作とTabキーによるファイル名補完が働くのだけど、さらに関数名の補完もできる(参照:http://d.hatena.ne.jp/leque/20071018/1192731534、http://d.hatena.ne.jp/leque/20071113/1194939314)。 まずrlwrapはデフォルトでは補完の区切りにハイフンを含めているので、break-charsオプションで区切り文字を明示的に指定しておく。 rlwrap -c --break-chars "'"'(){}[].,#@;|`"' gosh 補完したい語は、$HOME/.コマンド名_comp

    Vim+Gaucheでの作業環境の設定 - 再帰の反復blog
    t_a_o
    t_a_o 2012/10/07
  • もうひとつの Scheme 入門

    勾配の緩やかな初心者向け Scheme 入門ページです。 コンピュータは使ったことがあるが、プログラミング経験があまりない人を想定しています。 Scheme の解説はすでに山ほど優れたものがありますが、あえて解説記事を書いてみました。 Scheme のような抽象的な話題は波長が合えばすんなりと理解できますが、あわないと全く理解できません。 他の解説を読んで今ひとつよく理解できなかった人は試しに読んでみてください。 この記事の目標はコンピュータ科学の教科書の決定版である SICP を読める程度の Scheme の知識を提供することです。 目次: 処理系のインストール Scheme を電卓代わりに使う リストを作ろう 関数を定義しよう 分岐 局所変数 繰り返し 高階関数 入出力 代入 文字、文字列 シンボル型 連想リスト、ハッシュ表 ベクトルと構造体 構文の定義 (マクロ) 継続 遅延評価 非

    t_a_o
    t_a_o 2012/01/11
  • ((Pythonで) 書く ((さらに良い) Lisp) インタプリタ)

    ((Pythonで) 書く ((さらに良い) Lisp) インタプリタ) Peter Norvig / 青木靖 訳 前のエッセイでは、90行のPythonコードでシンプルなLispインタプリタを書く方法を示した(lis.py)。このエッセイでは、3倍込み入っているが、より完全なlispy.pyを実装しよう。それぞれの節で1つの機能追加を扱っている。 (1) 新しいデータ型 - 文字列、論理型、複素数、ポート Lispyへの新しいデータ型の追加は3つの部分からなる。データの内部表現、それを扱う手続き、読み書きのためのシンタックスだ。ここでは4つの型を追加する(入力ポート以外はPythonのネイティブ表現をそのまま使う)。 文字列 文字列リテラルはダブルクォーテーションで囲まれる。文字列の中で \n は改行を、\" はダブルクォーテーションを意味する。論理型  構文 #t と #f はTrue

  • ((Pythonで) 書く (Lisp) インタプリタ)

    Peter Norvig / 青木靖 訳 このページには2つの目的がある。コンピュータ言語の実装について一般的な記述をすることと、Lispの方言であるSchemeのサブセットをPythonで実装する具体的な方法を示すことである。私はこのインタプリタをLispy (lis.py)と呼ぶ。何年か前に私はJavaとCommon LispでSchemeインタプリタを書く方法を示した。今回の目標は、アラン・ケイが「ソフトウェアのマクスウェル方程式」と呼んだところの簡潔さと取っつきやすさを可能な限り実現するということだ。 SchemeのサブセットLispy の構文と意味論 コンピュータ言語の多くは様々な構文的な決まり(キーワード、中置演算子、カッコ、演算子優先順、ドット記法、セミコロンなど)を持っているが、Lisp族言語の1つとして、Schemeの構文はすべてカッコ付きの前置記法であるリストを基とし

  • ((Rubyで) 書く (Lisp) インタプリタ) - hp12c

    ブログを下記に移転しました。デザイン変更により移転先では記事が一層読みやすくなっていますので、よろしければ移動をお願い致します。 ((Rubyで) 書く (Lisp) インタプリタ) : melborne.github.com - Peter Norvigさんの((Pythonで) 書く (Lisp) インタプリタ) という記事(青木靖さん訳)がすごい 100行ほどのPythonコードで Schemeのインタプリタの基部分を書いている Pythonのコードは見た目がRubyのコードとよく似ているので Rubyしか知らない僕でも何となく読める この記事を解読してRuby版Schemeインタプリタを書いたら インタプリタ Pyhon Scheme それからRubyのことも もう少し分かるようになるかもしれない こんなお得な勉強方法はないぞ きっと そんなわけで... 以下では上記記事を参照し

    ((Rubyで) 書く (Lisp) インタプリタ) - hp12c
  • 独習 Scheme 三週間 Teach Yourself Scheme in Fixnum Days

    独 習 Scheme 三 週 間 by Dorai Sitaram 日語訳 Nobuo Yamashita

  • 1