サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
practical-scheme.net
読む必要性 --The Need to Read--- Paul Graham, November 2022 これは、Paul Graham: The Need to Read を、原著者の許可を得て翻訳・公開するものです。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2022 by Paul Graham 原文: https://paulgraham.com/read.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> 子供の頃読んだSFの本ではよく、 読むことはもっと効率的に知識を得る方法に取って代われていた。 プログラムをコンピューターにロードするみたいに、 謎の「テープ」から脳
Gauche(ゴーシュ)は、スクリプトインタプリタとしての使い易さに重点を置いて 開発を行っているR7RS準拠のScheme処理系です。日常業務の中でのちょっとした処理を行う スクリプトを気軽にSchemeで書きたいなあ、という願望のもとに、 起動が速いこと、システムへのアクセスが組み込まれていること、 最初から多国語対応を考慮していること、 リスト処理ライブラリとして他のC/C++プログラムから簡単にリンク可能であること、 などを目標としています。 Gaucheは多くのUnix系プラットフォーム およびWindows上で動作します。 実装されている機能の概要については、 機能のページをご覧ください。 News 詳しい変更はChangeLogをどうぞ。 また、最新の開発状況はGitリポジトリで知ることができます。 2024/9/3 最新の開発版ソースから毎日作られる"bleeding-ed
ヘンな言語 Paul Graham, August 2021 Copyright 2021 by Paul Graham. これは、Paul Graham:Weird Languages を、原著者の許可を得て翻訳・公開するものです。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2021 by Paul Graham 原文: http://www.paulgraham.com/weird.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> Paul Graham氏のエッセイをまとめた『ハッカーと画家』の 邦訳版が出版されました。 出版社の案内ページ Amazon.co.jp サポートペ
知っておきたかったこと --- What You'll Wish You'd Known Paul Graham, January 2005 Copyright 2005 by Paul Graham. これは、Paul Graham:What You'll Wish You'd Known を、原著者の許可を得て翻訳・公開するものです。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2005 by Paul Graham 原文: http://www.paulgraham.com/hs.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> Paul Graham氏のエッセイをまとめた『ハ
普通のやつらの上を行け ---Beating the Averages--- 著者:Paul Graham Copyright 2001 by Paul Graham これは、Paul Graham: Beating the Averages を、原著者の許可を得て翻訳・公開するものです。 プロジェクト杉田玄白正式参加テキスト。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2001 by Paul Graham 原文: http://www.paulgraham.com/avg.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> 文中、Eric Raymondの "How to bec
初期の作品 --- Early Work Paul Graham, October 2020 これは、Paul Graham: Early Work を、原著者の許可を得て翻訳・公開するものです。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2020 by Paul Graham 原文: http://www.paulgraham.com/early.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> Paul Graham氏のエッセイをまとめた『ハッカーと画家』の 邦訳版が出版されました。 出版社の案内ページ Amazon.co.jp サポートページ 2020/10/20 翻訳公開
ハッカーと画家 ---Hackers and Painters--- Paul Graham, May 2003 Copyright 2003 by Paul Graham. これは、Paul Graham:Hackers and Painters を、原著者の許可を得て翻訳・公開するものです。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2003 by Paul Graham 原文: http://www.paulgraham.com/hp.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> Paul Graham氏のエッセイをまとめた『ハッカーと画家』の 邦訳版が出版されました。
Top (Gauche ユーザリファレンス)
ポール・グレアムのエッセイと和訳一覧 (originally maintained by naoya_t) Paul Grahamのエッセイ(原文)と、公開されている日本語訳のリストです。 見つけたら or 訳したら、自由に追加して下さい。複数の訳が存在する場合は全て追加してください。 Writes and Write-Nots 書く者と書かざる者 (spinute) Founder Mode 創業者モード (spinute) The Reddits Reddit の創業者たち (spinute) What You (Want to)* Want あなたが(望むことを)*望むこと (spinute) Alien Truth エイリアンの真実 (spinute) How to Start Google Googleのはじめ方 (yomoyomo) How to Get New Ideas 新
このページでは、プログラミング言語Schemeの紹介、および 自作のSchemeのライブラリやアプリケーションの紹介をしてゆきます。 特に、ファイルをパーズしてテキストファイルを生成したりとか、 プロセスを監視したりとか、ちょっとしたGUIをでっちあげる と言った、職業プログラマとしてやってく上で避けて通れない雑用に便利な ライブラリが中心になる予定です。 SchemeはLisp系の言語で、見かけはLispに良く似ています。 Lispと聞いたら人工知能用言語だとか、もう古くさい言語だとか思われることも 多いんですが、CommonLispで書かれた実用的なアプリケーションはいろいろ ありますし、Schemeも拡張言語としてそれなりに使われています。 ただ、いかんせんマイナーな言語であることは間違いなく、メンテできる人が居ない とか他に分かる人が居ないという理由で採用が見送られることがあるのは
ものつくりのセンス ---Taste for Makers--- Paul Graham, February 2002. Copyright 2002 by Paul Graham. これは、Paul Graham:Taste for Makers を、原著者の許可を得て翻訳・公開するものです。 プロジェクト杉田玄白正式参加テキスト。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2002 by Paul Graham 原文: http://www.paulgraham.com/taste.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> Paul Graham氏のエッセイをまとめた『
Shiro Kawai まだ下書き Schemeの特徴をあげるときに、「継続」や「call/cc」が出て来ないことはない。 でも、R5RSのcall/ccの項をいくら読んでも、どうもよくわからない。 call/ccを使えばC言語のbreakみたいなのとか、コルーチンとかいう スレッドもどきとかが書ける、というのはわかったけど、一体そういうのが書けて 何が嬉しいのか、そこんとこがピンと来ないんだ。 今、そこにある継続 プログラミングの世界の概念には、禅の公案のようなものがある。 それを説明する文章はほんの一文なのに、最初に目にする時、 その文は全く意味をなさない、暗号のように感じられる。 だがひとたびその概念を理解すると、 その概念の説明は確かにその一文で説明されているのがわかるのだ。 そんな、「分かれば分かる」という禅問答の中でも 「継続」は最も謎めいたものの一つと言えるだろう。 文献を紐
emeitchさんのリクエストより。元ネタは Perlプログラマのレベル10。 私家版、Schemeプログラマのレベル10 くれぐれも本気にしないように。 レベル0 SchemeとかLispとかいうカッコだらけですごくわかりにくい言語があることは知っているが、 最強とか主張する信者がいるらしいのでなるべく関わらないようにしている。 EmacsLisp?もその親戚らしいけどコードを見ただけでくらくらする。 でも便利なマクロは自分の.emacsにコピペしている。 レベル1 Schemeに関するwebサイトを見たり、大学の講義での説明とかを聞いて、 factorialとかappendとかreverseとかを書いたり、 ネストした木構造のノードの数を数えたりできる。 でもそれが何の役に立つかわからない。こんな言語で実用的な プログラムが書けるなんて信じられない。 カッコの位置を間違えて動かないプロ
Lispについてのよくある誤解と、その中にあるちょっとした真実 はてなの質問: プログラミング言語で最強(スケーラブル)なのは、 Lispだと思われます。 http://jp.franz.com/index.html しかし、 世間ではマイナー言語のようです。 なぜでしょうか。 についた回答のいくつかには、「Lispを少しだけかじった人がしがちな誤解」が 含まれてるようなので、それをネタに少し解説してみます。 ただ、誤解が生じるのは、やっぱりそれなりの理由があって、従ってその 誤解の中にも(条件つきの)真実が含まれていることがあります。 そのへんまでをも含めて考えてみましょう。以降、引用は回答からです。 Lispはスクリプト言語? 一昔前まで、これらのスクリプト系の言語は「とてつもなく遅い」のが嫌われる最大の要因でしたが、最近のコンピューターの性能向上でようやくRuby,Python,Li
Lispについての正しい認識と、それでもLisperがLispを使う理由 yoriyukiさんのエントリがなかなか 真実を突いていたので、ネタにさせていただきます。 原因のほとんどは経路依存性とかネットワーク効果によるもので、Lisp自体の性質とは無関係だと思います。と言った上で、私が何となくLisp系言語を使わない理由としては、 Too dynamic: 実行時にコードが差し替えられることがすごい利点だ、と言っている人がいましたが、逆に言えば今どのコードが走っているか理解しにくい、という欠点にも繋がる。 Meta programming:S式のおかげでMeta Programmingがしやすいが、Meta Programmingを多用したプログラムは理解しにくい。 動的型付け:利点でもあるけど、特有のバグを引き起こす。 識別子に関数と値の2種類が別々にバインドできる。これは私には非常に美
起業の前に --Before the Startup--- Paul Graham, October 2014 これは、Paul Graham: Before the Startup を、原著者の許可を得て翻訳・公開するものです。 <版権表示> 本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2014 by Paul Graham 原文: http://paulgraham.com/before.html 日本語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> (このエッセイは、スタンフォード大での サム・アルトマンのスタートアップ講座 に招かれた時の講義を基にしたものだ。大学生が対象だけれど、多くの部分は 起業を考
S式は人に優しいか Shiro: Lispの不人気の理由として筆頭に上げられるのが、括弧だらけの 独特の見た目。とっつきにくい、一般的な表記法と違っていてわかりにくい、 等々、様々なことが言われてきました。しかし、 S式を捨てたLispも開発されましたが 流行ったとはいい難く、Lispな人々はいまだに括弧に固執しているかのようです。 S式のメリットをLisperに尋ねれば、エディタがどうの、マクロがどうの、といった 回答が真っ先に返って来ると思うんですが、そういう理屈をいくら理解しても S式がダメな人がS式を好きになったりはしません。どうも、もっと根本的な 感覚に大きな隔たりがあるような気がします。非Lisperから理解しがたい、 Lisperの持つ感覚とはどんなものなんでしょうか。Lisp脳から見た世界は どんなものなのでしょうか。 構文木を人間が書く? S式は言ってみれば言語の構文木そ
SSHの基本的な整備 参考資料 http://d.hatena.ne.jp/torazuka/20110420/ssh 基本作業 rootにパスワードを設定する。 ubuntuなのにrootいるの? $ ssh -i aka.pem [email protected] Welcome to Ubuntu 11.10 (GNU/Linux 3.0.0-16-virtual x86_64) [snip] ubuntu@ip-xxx-xxx-xxx-xxx:~$ cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/
使いたい人のための継続入門継続渡し形式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
開発の始めかた うーん,何を書けばよいかわからないので,とりあえず,私が何か Gaucheで作るときの手順でも書いてみます.- kou 前提 GAUCHE_LOAD_PATHは".:./lib:./src:${HOME}/local/share/gauche/site/lib"となっている. Gauche関係のものは~/work/gauche/以下に置いている. テストの実行はGaUnitに含まれているrun-test.elを使ってEmacs上で行っている. 下準備 プロジェクト(ちょっとしたものなら「ちょっとした」プロジェク トになる)用のディレクトリを作る.プロジェクト用ディレクトリ は以下のような構成となる.ここでは,プロジェクト名をXXXとする. XXX -+- lib ;; スクリプトを置くディレクトリ | +- test ;; テストスクリプトを置くディレクトリ % cd ~/
(Shiro: 私はNichimen Geometryになってから、 プラグイン書き等で少々いじったにすぎないので、 Symbolics時代のこととか、周辺事情にもあまり詳しくないっす。 識者の方、がんがん修正してください)。 (khashi) 情報追加しといたんですが、まとまりがなくなってしまったんで、適当に整理しといてください。 Geometryとは Lispで書かれたモデリングツール。 もともとSymbolicsのグラフィックス・パッケージS-Products のモデリング・モジュール。 1981年公開の映画「トロン」のモデリングを担当してたLarry Maloneによって開発された。 このツールが最初に日本でデモされたのは1985年の筑波博覧会アメリカ館。 市販されてから20年の歴史を持っている。 尚且つ20年間1人のプログラマによってメンテナンスされている。 開発当初は、Zeta
Top This is a reference manual of Gauche, an R7RS Scheme implementation.
一応スペック。 CPUはZ80A (クロック4MHz) だったと思うけど、途中でB (6MHz) にしたかも。 RAMは最終的に256KB積んでいた。BIOSでバンク切替えして、 通常は192KBをRAMディスクとして使っていた。あとドライバを組み込んだ32KBのROMも バンク切り替え。メモリ最上位のスタブルーチンを呼ぶとROMバンクに切り替えて ドライバに制御が渡る。カーネルモードとユーザモードの切り替えみたいなもんだね。 この構造のおかげで、ユーザRAMエリアをかなり広く取れた。 OSはCP/M-80だったけど、全部逆アセンブルして中身を解析し、かなり書き換えて使っていた。 当時学校でUnixを触り始めてそれに憧れていたので、標準入出力のredirectionとか パイプ(MS-DOS時代の疑似パイプね)なんかができるようにしていた。 FDDは5inchの時代。2DDとか2HDとか。
ちょっとだけトリッキーなのはgame-readで、Common Lispのreadは 後続の空白文字(改行文字含む)を消費するので、 > (game-repl) とタイプしてRETを打った時、入力バッファは空で、game-read はすぐに ユーザの入力待ちになるのだけれど、Gaucheのreadは後続の空白文字を消費しない。 gosh> (game-repl) とタイプしてRETを打つと、REPLは閉じ括弧まで読んですぐに(RETを入力に残したまま) game-replを実行する。その中から読まれる game-read は最初に 残っていたRETを見るので、最初のread-line で空の文字列が帰ってくる。 移植版ではこのケースへの対応が入っている。 Shiro(2016/02/02 23:30:58 UTC): 現在の開発版Gaucheでは、REPLについては後続の空白を 読み飛ばす
Land of Lisp Land of Lisp書誌情報正誤初版第1刷初版第2刷初版第3刷初版第4刷初版第5刷初版第6刷初版 第7刷紹介、書評コード処理系ごとの差異コメント 書誌情報 Land of Lisp Conrad Barski M.D.著、川合史朗訳 オライリー・ジャパン ISBN978-4-87311-587-0 正誤 初版第1刷 p.110下から1/4くらい 誤: ただ、mapの方が速いというだけだ。 正: ただ、mapcの方が速いというだけだ。 初版第2刷 p.69 7行目 誤: object-atを実際に動かしてみよう 正: objects-atを実際に動かしてみよう p.69 下から6行目 誤: object-at関数を使って見つけ、 正: objects-at関数を使って見つけ、 p.115 dot->pngのコード。書籍版のままでも動作しますが、生成されるdotフ
Shiro(2012/04/03 13:25:57 UTC): http://togetter.com/li/283057 からの考察。 現在のGaucheのファイルロードメカニズムは、あらかじめ設定されたload-pathからファイルを探すようになっている。add-load-path を使ってスクリプト内でload-pathに追加することもできるが、add-load-pathはリテラルしか取れないので、静的なメカニズムに近い (スクリプトが固定された時点でadd-load-pathに渡す引数も固定される)。 これは、私自身のUnixとの長い付き合いの中で、こういう想定に基づいた設計だった。 ソフトウェアはconfigure + make + make installするもの スクリプトやモジュールファイルの置かれる位置はconfigure時に指定するもの だから、makeでパスを埋め込ん
Github Basic Configuration Reference http://help.github.com/mac-set-up-git/ Memo How to reuse existing SSH keys Just copy the private and public key into the .ssh directory. If you have multiple key paris, write or modify .ssh/config file to bind hosts and keys. http://linux.die.net/man/5/ssh_config aka:ssh 複数Github アカウント Githubは、1つのGithubアカウントに複数のSSH公開鍵を設定することはできるが、1つのSSH公開鍵を複数のGithubアカウントに設定すること
次のページ
このページを最初にブックマークしてみませんか?
『Practical Scheme』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く