タグ

Lispに関するnozomのブックマーク (157)

  • Shiro:ProgrammingClojure

    プログラミングClojure プログラミングClojure書誌情報正誤(第1版第1刷)確認済み未確認紹介・書評コメントなど 書誌情報 プログラミングClojure http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-274-06789-1 Stuart Halloway著 川合史朗訳 A5判 320ページ ISBN:978-4-274-06789-1 第1版第1刷 2010-01-25発行 原書: Programming Clojure http://www.pragprog.com/titles/shcloj/programming-clojure (文中のコードをダウンロード可能) 正誤(第1版第1刷) 確認済み 未確認 p.5 homoiconic 変更前 Lispは同図像性(homoiconic)を持つ言語だ 変更後 Lispは

    Shiro:ProgrammingClojure
  • Lython

    Unverified details These details have not been verified by PyPI Project links Homepage Download Meta License: GNU General Public License (GPL) ([see COPYING file.]) Author: Ben Hayden Maintainer: Ben Hayden Tags lisp, lython, spark, compile, bytecode, macro

    Lython
  • inforno :: Python:re.ScannerでS式パーサ

    Rubyの StringScanner は個人的にかなり好きなモジュールで、Rubyでちょっとしたパーサなどを書くときに重宝しています。 一方、Pythonにはexperimentalながら re.Scanner というクラスがあります( >= 2.4 )。experimentalなのでマニュアルにはのっていませんが。この re.Scanner はかなりシンプルなんですが典型的な StringScanner の使い方の範疇では、こちらのほうがキレイに書けるような気がします。 re.Scanner の使い方 使い方は非常に簡単で (regex, action) のリストを渡してScannerオブジェクトを作成 action は(scanner, string_matched) => stringな関数、Noneを返せば結果は無視される。 scanメソッドでスキャン。結果が配列で返ってくる と

  • ラムダ計算 - Wikipedia

    この記事には参考文献や外部リンクの一覧が含まれていますが、脚注による参照が不十分であるため、情報源が依然不明確です。 適切な位置に脚注を追加して、記事の信頼性向上にご協力ください。(2020年5月) ラムダ計算(ラムダけいさん、英語: lambda calculus)は、計算模型のひとつで、計算の実行を関数への引数の評価(英語: evaluation)と適用(英語: application)としてモデル化・抽象化した計算体系である。ラムダ算法とも言う。関数を表現する式に文字ラムダ (λ) を使うという慣習からその名がある。アロンゾ・チャーチとスティーヴン・コール・クリーネによって1930年代に考案された。1936年にチャーチはラムダ計算を用いて一階述語論理の決定可能性問題を(否定的に)解いた。ラムダ計算は「計算可能な関数」とはなにかを定義するために用いられることもある。計算の意味論や型理論

  • 10日分まとめて。 - リリカル☆Lisp開発日記

    気が付けば前の日記から10日もたっていました。 なんてこったい。 最近の動向 このブログのタイトル「リリカル☆Lisp 開発日記」だけど、変えた方がいい? 「リリカルLispで勉強する」って都市伝説じゃなかったの!? 情報処理学会とか入った方がいい? この大学と、学務課に幸あれ 私の英語力はTOEIC400点相当らしい Prologはギャルゲー 10日分まとめてお送りします。

    nozom
    nozom 2008/05/02
    「Prologはギャルゲー」
  • Emacs Lisp のダメなところ - あどけない話

    Emacs Lisp をこよなく愛する僕の目から、Emacs Lisp がダメだと思うところをまとめておきます。 文化的な問題 Emacs Lisper の多くは、Lisp が好きで使っているのではなく、Emacs が好きだからしかたなく使っているのでしょう。当は C で書きたいのに、無理して Lisp を利用している感じです。 そのため、Emacs に付いてくる Emacs Lisp のコードは、Lisp らしくないものがほとんどです。単に C での発想を Lisp で表現しています。 これらのコードは、読みこなせないぐらい関数が大きく、副作用のある部分とない部分が分離されていません。また高階関数を用いて、データ構造を走査するコードと実際に仕事をするコードを分離するという意識も低いようです。 GoogleMapReduceという論文のお陰で、Lisp の写像関数(map)と畳込み

    Emacs Lisp のダメなところ - あどけない話
  • リリカル☆Lispソース公開 - リリカル☆Lisp開発日記

    nozom
    nozom 2007/10/21
  • R6RSの歩き方

    Revised^6 Report on Algorithmic Language Scheme -- アルゴリズム言語 Scheme に関する報告書第6改訂版。 2007年9月に正式に決定された。正式な文書は http://www.r6rs.org/ から 入手できる。 R5RSまでのミニマリズムから、実用主義へ大きく方針変更がなされたため、 仕様の分量もR5RSの50ページからR6RSは全4部、計187ページへと大きく膨らんでいる (ただしコア言語の仕様は90ページ、あとはライブラリや設計上の選択の理由説明である)。 そのため、それまでのミニマリズムを良しとするSchemerと、実用に使えるリッチな 仕様を望むSchemerの間でたいへんな議論となった。 結局、Schemeコミュニティ内で投票が行われ、賛成67票、反対35票、棄権10票で 批准された。しかし、批准の基準である総投票数の6

    R6RSの歩き方
    nozom
    nozom 2007/10/05
    あとで読む
  • Redirect

    nozom
    nozom 2007/09/26
    gpg.elの後継
  • gpg.el (ファイルの暗号化/復号化)

    [ホーム]-> [emacs]-> [活用法]-> [gpg] gpg.el (ファイルの暗号化/復号化) 1. gpg.el とは 2. インストール 3. 使い方 1. gpg.el とは ファイルを他人に見られたくない場合, 暗号化して保存するという方法が考えられます。 このとき, 編集する度に一々復号化したり暗号化したりする作業は面倒です。 そこで, 適当に拡張子を設定し, Emacs でファイルを開くときには自動的に復号化し, 保存するときには自動的に暗号化してくれれば便利です。 暗号化にGnuPGを利用する場合は, 山和彦氏の書かれた gpg.el を利用すると, これらのことができるようになります。 2. インストールと設定 もちろんGnuPGがインストールされていることが前提です。まず gpg.elを load-pathに置き、好みに応じて bytecompileします。

    nozom
    nozom 2007/09/26
    あとで使う
  • https://www.unixuser.org/~euske/doc/python/python-lisp-j.html

  • 大人のためのブラックボックス読解講座――クロージャとオブジェクトの微妙な関係

    はじめに 2006年8月、Javaの次期仕様(JDK7)にクロージャを入れる案*が出され話題になりました。クロージャは関数型言語では30年以上の歴史を持ち、プログラミングにおける基的な道具となっています。最近はPerlRubyPythonなどの軽量言語(Lightweight Language)にも取り込まれ、それと知らずに使っているユーザーも増えているのではないでしょうか。 一方、手続き型言語の世界では、完全なクロージャはなじみが薄いようです。C言語からC++へと発展してきた手続き型言語のメインストリームでは、 ガーベジコレクションを持たず、ローカル変数をスタックに置くことを基とする言語のため、クロージャとの相性が悪かった オブジェクト指向を採り入れることでクロージャの代用とできた といったことが理由でしょう。 実際、クロージャとオブジェクト指向プログラミング言語には、メカニズム

    大人のためのブラックボックス読解講座――クロージャとオブジェクトの微妙な関係
    nozom
    nozom 2007/03/31
    やけに内容が的確だと思ったら著者はshiroさんか。納得
  • オブジェクト指向言語として必須な要素とは何か? - Smalltalkのtは小文字です

    ときどきの雑記帖 リターンズ -おしえて(OOPLの)えらいひと より。お呼びでない…とは思いましたが、私のこれまで調べたことを頭の中で整理するのに役立ちそうなので、できるだけ簡潔にまとめてみます。 ケイのオブジェクト指向(メッセージングのオブジェクト指向)に立脚する場合 このオブジェクト指向のコンセプト パーソナルコンピューティングに係わるものをメッセージングで表現。 それをサポートする言語に必須のもの メッセージング(あるいは、それに準ずる)機構と、メッセージのレシーバ(たいていは、オブジェクト。状態や処理の保持・保護・隠蔽を行なえることが期待される)。 原則として欠いてはいけない機能 可能な限りの動的性。 ストラウストラップのオブジェクト指向(ユーザー定義型のオブジェクト指向)に立脚する場合 このオブジェクト指向のコンセプト 抽象データ型(この文脈ではユーザー定義型を指す)を「クラス

    オブジェクト指向言語として必須な要素とは何か? - Smalltalkのtは小文字です
  • LispUser.net : /lisp/2007-01-28-01-54.html

    LISPUSERLISPMEMOLisp is like a ball of mud - you can throw anything you want into it, and it's still Lisp. -- Anonymous 息抜きに小ネタをば。Shiro さんとこの Lisp:S式の理由 の中のネタより。 個人的には、condは (Paul GrahamがArcで提案しているように) 括弧をひとつ 省いて、(cond 述語 式 述語 式 ) でいいんじゃないかという気がします。 式に複数の処理を書きたければbeginを使うと。 (cond (predicate x) (begin (do-something) (do-something2)) (predicate y) (do-another-thing) else (do-whatever)) また、letについては、束

    nozom
    nozom 2007/02/15
  • バベル案内

    Steve Yegge / 青木靖 訳 2004年9月 これは駆け足の言語案内だ — Amazon Developers Journalのために今月書いていたのだが、どうもこれを見苦しくないようにする方法を見つけられなかった・・・。 ひとつには、私はどうも粗野で口汚くなりがちで、オフィシャルな趣のあるAmazonの出版物に載せるのは不適切に思えた。それでかわりに誰も読まない自分のブログに押し込めてしまうことにした。読んでるのはあなたくらいのものだよ。どうも! もうひとつ言うと、これは当に書きかけのものであり、そこかしこの断片を集めたものでしかない。全然磨き上げられていない。これもブログエントリにする理由になっている。ブログなら別に良質である必要も完全である必要もない。単に私が今日考えたことというだけのものだ。ではお楽しみを! この駆け足の案内では、C、C++、Lisp、JavaPerl

  • Sun Developer NEWS いまこそ新しいOS、新しい言語をイメージする

    2002年新年号の談話室時也葉に登場するのはコグニティブ リサーチ ラボ株式会社の代表取締役であり、コンピュータサイエンテストである苫米地英人氏をお迎えしての新春放談。 苫米地氏は、Javaコンソーシアムの立ち上げに尽力されたり、ジャストシステムで多くのプロダクト開発に関わった実績に加え、大学における活動や、国家プロジェクトでの活躍など多彩な方面で活躍されていますし、コグニティブリサーチ社においては独自のWebサーバをLISPを使って開発するなど、LISPのエキスパートとしても有名。 今回はコンピューターサイエンテストとしての立場から、今求められているコンピューティングのあり方についてお話を伺った。JavaやSolarisの世界に留まらず、真の次世代コンピューティングについてとてもエキサイティングな話しを伺うことが出来た。そのすべてを紹介することはできないが、その片鱗でも感じて

  • 魔法言語 リリカル☆Lisp

    About ★「魔法言語 リリカル☆Lisp」はノベルゲーム風のLispチュートリアルです。 "アリサ"や"すずか"達と楽しくLispを学べます。 全12話構成で各話の最後には練習問題が用意されています。 Lisp処理系にはNScripter上で動作するLispインタプリタであるNScLisperを使用。 別の処理系をインストールする必要はありません!! Lispとは ★CやC++Java、BASIC、PerlRubyPHPPython、ML、Haskellなどと同じプログラミング言語の一つです。 マサチューセッツ工科大学のJohn McCarthy教授を中心とする研究グループによって開発され、1962年に発表されました。 LispとはList Processorの略で名前通りリストの処理を得意とします。 このことから人工知能の開発に多く用いられています。 NScLisperとは

  • Lisp:S式の理由

    S式は人に優しいか Shiro: Lispの不人気の理由として筆頭に上げられるのが、括弧だらけの 独特の見た目。とっつきにくい、一般的な表記法と違っていてわかりにくい、 等々、様々なことが言われてきました。しかし、 S式を捨てたLispも開発されましたが 流行ったとはいい難く、Lispな人々はいまだに括弧に固執しているかのようです。 S式のメリットをLisperに尋ねれば、エディタがどうの、マクロがどうの、といった 回答が真っ先に返って来ると思うんですが、そういう理屈をいくら理解しても S式がダメな人がS式を好きになったりはしません。どうも、もっと根的な 感覚に大きな隔たりがあるような気がします。非Lisperから理解しがたい、 Lisperの持つ感覚とはどんなものなんでしょうか。Lisp脳から見た世界は どんなものなのでしょうか。 構文木を人間が書く? S式は言ってみれば言語の構文木そ

    nozom
    nozom 2007/01/28
  • enbug diary(2007-01-25) Lisp:S式の理由

    _ Lisp:S式の理由 shiroさんがLispの拡張性について語っておられますが、 この点について、Lispが他の追随を許さないほど強力なのは全くもってその通りです。 ただ実用性という観点において、いくら原理的に可能であっても、 実装されていない機能ばかりで自分で作るものが多いと使わないんですよね、 大抵の人は。 時間もエネルギーも有限ですから。 例えば、最近の私はもはや名前つきパラメータのない処理系なんて使っていられない体になってしまってますが、 Schemeだと SRFI 89 として去年ようやく提案されたばかりで、 Gaucheでもまだ実装されていないのではないかと思います (違ったらごめんなさい)。 もちろん、作ろうと思えば理論的に可能なのだから、 自分で作ってしまえばよいという考え方もできます。 でも私はあんまりやりたいと思いません。 自分の関心はそこにはないので、 すでにサ

  • Lisp:よくある誤解

    Lispについてのよくある誤解と、その中にあるちょっとした真実 はてなの質問: プログラミング言語で最強(スケーラブル)なのは、 Lispだと思われます。 http://jp.franz.com/index.html しかし、 世間ではマイナー言語のようです。 なぜでしょうか。 についた回答のいくつかには、「Lispを少しだけかじった人がしがちな誤解」が 含まれてるようなので、それをネタに少し解説してみます。 ただ、誤解が生じるのは、やっぱりそれなりの理由があって、従ってその 誤解の中にも(条件つきの)真実が含まれていることがあります。 そのへんまでをも含めて考えてみましょう。以降、引用は回答からです。 Lispはスクリプト言語? 一昔前まで、これらのスクリプト系の言語は「とてつもなく遅い」のが嫌われる最大の要因でしたが、最近のコンピューターの性能向上でようやくRuby,Python,Li

    nozom
    nozom 2007/01/08