IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.
使いたい人のための継続入門継続渡し形式call/ccは普通の関数call-with系関数call-with-procedurecall-with-continuation-procedurecall-with-current-continuation評価順序と継続call/ccパズルお手元マルチスレッド部分継続reset/pcとcall/pc環境破壊と部分継続部分継続の使用法PRINT-AND-NEXT-REPL議論質問お手元マルチスレッドのサンプルプログラムについて 使いたい人のための継続入門 とりあえず殴り書き。 くどかったり冗長な文章になってたり、重複してたり、間違ってたり、 おおいなる勘違いをしてたり、恥をカいてたりするかもしれないけどご愛敬。 藁をもつかみたい気持ちで継続を使えるようになりたい人は読んでみてください。 ただし所詮は藁です。(w 継続渡し形式 例によって階乗fact
GrahamのANSI Common Lispでは嫌われていて碌に説明のないloopマクロ。一方、Practical Common Lispでは対照的に好んで用いられていて、全編に渡って頻繁に使われている。しかしloopマクロは難しいという意識があるのかその説明は第22章とかなり後回しにされており、ちぐはぐな感を受ける。ここでは、LOOP for Black-Belts という題のつけられたその章で解説されているloopマクロの用法を整理してみた。 ANSI Common Lispでの黒魔術扱いに敬遠していたloopマクロだったが、こうして整理してみるとそれほど難しく考えずとも便利に使うことができそうだ。 目次 繰り返し 計数繰り返し コレクション内繰り返し 変数更新しながら繰り返し ループ終了条件の追加 アクション 集約 ループ内ローカル変数 任意の式の実行 条件分岐 ループ中断 その他
メーリングリストで質問したり、WiLiKiに自分のページを作ったりするのはちょっと… というシャイなあなたのためのスペースです。 あたらしい質問は、項目の先頭に追加していって下さい。 書き方を間違えても小人さんが直してくれるので、 こわがらなくてもだいじょうぶ。 長くなってきたので過去ログ: Scheme:初心者の質問箱:log00 Scheme:初心者の質問箱:log01 Scheme:初心者の質問箱:log02 \0 区切りの文字列の read対話的に起動した際、使用する文字コードを指定することは可能でしょうか対話的に起動した際、C-r で履歴をインクリメンタルに検索する設定は可能でしょうかR7RSモードでの起動時の-lで指定したロードファイルの挙動についてSRFI-49で開きカッコがネストしている場合の書き方連想リスト(Association list)の形式についてバックグラウンド
LISPUSERLISPMEMOLisp is like a ball of mud - you can throw anything you want into it, and it's still Lisp. -- Anonymous Lisp の括弧は良くネタにされます。実際、大量の過去は最初のインパクトは強烈だったのを覚えています。 いったいなぜ Lisper は括弧を捨てないのでしょう? 歴史的にみれば括弧を好まない Lisper も居ます。古くは CMU の AI リポジトリに CGOL という ALGOL ライクな 構文の Lisp リーダ/ライタがあり、これは S 式と相互に変換できました。CGOL で書いて、S 式で表示とかができたわけですね。 ;;Execute by typing "cl < demo.txt". (load "parser.cl") (load "c
うまくいかない日に仕込むラペ 「あぁ、今日のわたしダメダメだ…」 そういう日は何かで取り返したくなる。長々と夜更かしして本を読んだり、刺繍をしたり…日中の自分のミスを取り戻すが如く、意味のあることをしたくなるのです。 うまくいかなかった日のわたしの最近のリベンジ方法。美味しいラペを…
Emacs には EmacsLisp のインタープリターが内蔵されている (正確には EmacsLisp の処理系の上に Emacs というエディターが構築されてる) ので、EmacsLisp のソースを編集しながら評価が可能。EmacsLisp 程強力ではないけれど、同じようことを Common Lisp (あるいは Scheme) でもやれる。 ※以下の説明は、Emacs 22 用のもの。Emacs 21 で同じことが出来るかは確かめてない。 Common Lisp の場合 まず、Emacs から呼び出す Common Lisp の処理系を .emacs で設定する。clisp を使うなら、こんな感じ。 (setq inferior-lisp-program "clisp") Lisp のソース・ファイルを開いたら、次のコマンドを実行。 M-x run-lisp すると、shell モ
ANSI Common Lisp Introduction Syntax Evaluation and Compilation Types and Classes Data and Control Flow Iteration Objects Structures Conditions Symbols Packages Numbers Characters Conses Arrays Strings Sequences Hash Tables Filenames Files Streams Printer Reader System Construction Environment Glossary Appendix The icon is a link to the table of contents. The icon is a link to the alphabetical ind
SLIME の公式ページ から入手可能です.現在は ArmedBearCL, AllegroCL, CLISP , Corman Lisp, CMUCL, ECL, LispWorks, OpenMCL, SBCL, Scieneer Common Lisp といった処理系に対応.( Scheme48 に対応した SLIME48 もあります) 別プロセスで起動した lisp 処理系とソケット経由で通信する 関数の引数表示 シンボルの補完機能 ( **例:** ``m-v-b TAB => multiple-value-bind`` ) コマンド一発で HyperSpec が引ける コンパイラの note, warning, error をソース上で示してくれる(下線が引かれて,カーソルを合わせると詳細がでる) 親切なデバッガ(バックトレース上でカーソルを合せると詳細が表示されたりとか) 現
Educational Resources Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp by Peter Norvig. LISP Tutor Jr - One of the earliest intelligent tutoring systems created for teaching Lisp Programming at Carnegie Mellon University. Basic Lisp Techniques, a comprehensive basic Lisp handbook by David Cooper, Jr., designed to get you coding quickly (100+ pages). Land of Lisp: Learn
Emacs ユーザーの方に質問です。これは便利! と思える elisp プログラムを教えてください。 標準で組み込まれてるものでも結構です。プログラムがどういうものかの説明も簡単にしていただけると嬉しいです。 ちなみに自分が便利だなと思うのは ・ ELScreen (GNU screen のようなスクリーン機能を実現するもの) ・kill-summary.el (killing buffer を履歴表示して yank するものを選べるようにする) ・navi2ch (定番ですねw 2ちゃんねるビューワー) ・riece (IRCクライアント) などです。それから、こういう設定知ってる? 的なものも是非教えてください。 今日 (windmove-default-keybindings) で shift + カーソルキーで分割したウィンドウが移動できることを知って驚愕してます。 よろしくお願い
Lisp 言語処理系: CAMPUS LIsP Lemon version, (Version 1.2) 2000年に CAMPUS LIsP を開発/公開 2016年に CAMPUS LIsP 上で動作する ELIZA の実装をした人がいる! 1981年に販売開始された SINCLAIR ZX81 (Z80 CPU, 3.25MHz Clock, 1Kb Memory) 上で!!! 参考: "ELIZA": 人工知能研究黎明期に作られた, 自然言語で人と対話するコンピュータソフトウエアで, 世界初の人工無能. Wikipedia: "ELIZA"の項 Wikipedia: "SINCLAIR ZX81" の項 概要説明 Lisp の処理系の構造を学ぶための、 コンパクトな Lisp解釈系です。 C言語で記述してあり、わずか1000行の短さです。 Lisp 処理系の内部構造の基礎を学ぶため
0. はじめに P.Graham 著 ANSI Common LISP (日本語訳) は優れた LISP の入門書です。この本には練習問題が載っていますが、解答は付いていないので、 解答案を書いてみました。その問題までに出てきた本文の内容を使って解いていますので (特に最初の章では)ぎこちない点があります。あまりにぎこちない場合は別解をつけました。 自信の無いところもあります。 間違いなどが見つかりましたら takafumi@shido.info までご連絡ください。 1. 目次 第2章 第3章 第4章 第5章 第6章 第7章 第8章 第9章 第10章 第11章 第12章 第13章 2. 第2章 "X => Y" は "X が評価されて Y になる”を表す。 5 => 5, 1 => 1, 3 => 3, and 7 => 7. (- 5 1) => 4 and (+ 3 7) => 10
LISPUSERLISPMEMOLisp is like a ball of mud - you can throw anything you want into it, and it's still Lisp. -- Anonymous Ruby 方面でみかけたネタに触発されました.Lisp はプログラマブルな言語な のでリーダーもプログラマブルです.そこでリーダーをいじって let や defun などの構文を括弧じゃなくて end にでもしてみましょうか. 100 行程度を目標にトライしました.使ったライブラリは CL-Yacc のみです. できあがったのがこちら. #@suck-lisp defun fib (n) if (< n 0) (error "oops") elif (= n 0) 0 elif (= n 1) 1 else let x <- (fib (- n 1))
object がアトムの場合 t を返し、 そうでない場合 nil を返す。コンスセル以外のものは全てアトム。
The Scheme Programming Language Fourth Edition R. Kent Dybvig Illustrations by Jean-Pierre Hébert Table of Contents Preface Chapter 1. Introduction Section 1.1. Scheme Syntax Section 1.2. Scheme Naming Conventions Section 1.3. Typographical and Notational Conventions Chapter 2. Getting Started Section 2.1. Interacting with Scheme Section 2.2. Simple Expressions Section 2.3. Evaluating Scheme Expre
国際化プログラミング(書籍「パーフェクトJava」:「国際化」の章の原稿の後半) 書籍「パーフェクトJava」に掲載予定だった「国際化」の章の原稿の後半です。「パーフェクトJava」にはページ数の関係で掲載しませんでした。 本文 ■■■■18章 国際化 [勉強用のソースコードでは、日本語を直接コードに書くことも悪くありません。しかし、実務のコードでは国際化を意識する必要があります。この章ではソフトウェアの国際化一般の話とJavaプログラミングにおける国際化の説明をします。] ■■■18-1 国際化と地域化 ソフトウェアの国際化の基本的な発想は、言語や国に依存する部分を分離してソースコードの外に追い出すことです。出力メッセージを例にすると、出力メッセージ用の文字列をソースコードにハードコードせずに外部に出します。英語や日本語など言語ごとに出力メッセージファイルを用意します。こうして実行時に必
国際化プログラミング(の前の知識) 書籍「パーフェクトJava」に掲載予定だった「国際化」の章の原稿(前半)です。ページ数の関係で掲載していません。Javaプログラミングと直接的な関係は薄いですが、国際化プログラミングの背景として知っておいて損はありません。 掲載予定だった「国際化」の章の後半: http://dev.ariel-networks.com/column/tech/i18n-part2/ パーフェクトJava http://www.amazon.co.jp/dp/4774139904/ ■■■18-1 国際化と地域化 国際化とはinternationalizationの訳語です。長い単語なので、先頭のiと末尾のnの間に18文字あることからしばしばi18nと省略します。地域化はlocalizationの訳語です。同様の省略でl10nと表記します。本書では国際化と地域化の記述で統
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く