Enviar pesquisa
Carregar
Gaucheで本を作る
•
1 gostou
•
1,806 visualizações
Keiichiro Shikano
Seguir
http://www.slideshare.net/guest7a66b8/gauche の再掲
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 30
Baixar agora
Baixar para ler offline
Recomendados
『新装版リファクタリング ―既存のコードを安全に改善する―』 のここがすごい
『新装版リファクタリング ―既存のコードを安全に改善する―』 のここがすごい
Keiichiro Shikano
LL2017 プログラミング言語鑑定団 資料
LL2017 プログラミング言語鑑定団 資料
Ken SASAKI
TeXは軽量マークアップの夢を見るか
TeXは軽量マークアップの夢を見るか
Keiichiro Shikano
技術を本にして売る、という仕事
技術を本にして売る、という仕事
Keiichiro Shikano
表とリスト(List Driven Table in LaTeX )
表とリスト(List Driven Table in LaTeX )
Keiichiro Shikano
KindleでMathMLの現実
KindleでMathMLの現実
Keiichiro Shikano
2018年でもEPSをTeXで使う
2018年でもEPSをTeXで使う
Keiichiro Shikano
TeXの気持ちを理解するために知っておくと役立つかもしれないこと
TeXの気持ちを理解するために知っておくと役立つかもしれないこと
Keiichiro Shikano
Recomendados
『新装版リファクタリング ―既存のコードを安全に改善する―』 のここがすごい
『新装版リファクタリング ―既存のコードを安全に改善する―』 のここがすごい
Keiichiro Shikano
LL2017 プログラミング言語鑑定団 資料
LL2017 プログラミング言語鑑定団 資料
Ken SASAKI
TeXは軽量マークアップの夢を見るか
TeXは軽量マークアップの夢を見るか
Keiichiro Shikano
技術を本にして売る、という仕事
技術を本にして売る、という仕事
Keiichiro Shikano
表とリスト(List Driven Table in LaTeX )
表とリスト(List Driven Table in LaTeX )
Keiichiro Shikano
KindleでMathMLの現実
KindleでMathMLの現実
Keiichiro Shikano
2018年でもEPSをTeXで使う
2018年でもEPSをTeXで使う
Keiichiro Shikano
TeXの気持ちを理解するために知っておくと役立つかもしれないこと
TeXの気持ちを理解するために知っておくと役立つかもしれないこと
Keiichiro Shikano
Sphinxで売り物の書籍を作ってみた
Sphinxで売り物の書籍を作ってみた
Keiichiro Shikano
脚注をめぐる冒険
脚注をめぐる冒険
Keiichiro Shikano
ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版
Keiichiro Shikano
TeX原稿からEPUBを作りたい
TeX原稿からEPUBを作りたい
Keiichiro Shikano
イテレーティブでインクリメンタルな技術書の作り方
イテレーティブでインクリメンタルな技術書の作り方
Keiichiro Shikano
TUG 2014 参加体験記
TUG 2014 参加体験記
Keiichiro Shikano
xml2tex at TUG 2014
xml2tex at TUG 2014
Keiichiro Shikano
Csspage1 2014-06-22
Csspage1 2014-06-22
Keiichiro Shikano
Index makes your book perfect
Index makes your book perfect
Keiichiro Shikano
Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11
Keiichiro Shikano
Texuser 2012-lt
Texuser 2012-lt
Keiichiro Shikano
多値で簡単パーサーコンビネーター
多値で簡単パーサーコンビネーター
Keiichiro Shikano
オーム社開発部がTeXを使う3つのおもな理由
オーム社開発部がTeXを使う3つのおもな理由
Keiichiro Shikano
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
Shota Ito
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
furutsuka
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
osamut
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
Atomu Hidaka
Mais conteúdo relacionado
Mais de Keiichiro Shikano
Sphinxで売り物の書籍を作ってみた
Sphinxで売り物の書籍を作ってみた
Keiichiro Shikano
脚注をめぐる冒険
脚注をめぐる冒険
Keiichiro Shikano
ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版
Keiichiro Shikano
TeX原稿からEPUBを作りたい
TeX原稿からEPUBを作りたい
Keiichiro Shikano
イテレーティブでインクリメンタルな技術書の作り方
イテレーティブでインクリメンタルな技術書の作り方
Keiichiro Shikano
TUG 2014 参加体験記
TUG 2014 参加体験記
Keiichiro Shikano
xml2tex at TUG 2014
xml2tex at TUG 2014
Keiichiro Shikano
Csspage1 2014-06-22
Csspage1 2014-06-22
Keiichiro Shikano
Index makes your book perfect
Index makes your book perfect
Keiichiro Shikano
Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11
Keiichiro Shikano
Texuser 2012-lt
Texuser 2012-lt
Keiichiro Shikano
多値で簡単パーサーコンビネーター
多値で簡単パーサーコンビネーター
Keiichiro Shikano
オーム社開発部がTeXを使う3つのおもな理由
オーム社開発部がTeXを使う3つのおもな理由
Keiichiro Shikano
Mais de Keiichiro Shikano
(13)
Sphinxで売り物の書籍を作ってみた
Sphinxで売り物の書籍を作ってみた
脚注をめぐる冒険
脚注をめぐる冒険
ドキュメントシステムはこれを使え2015年版
ドキュメントシステムはこれを使え2015年版
TeX原稿からEPUBを作りたい
TeX原稿からEPUBを作りたい
イテレーティブでインクリメンタルな技術書の作り方
イテレーティブでインクリメンタルな技術書の作り方
TUG 2014 参加体験記
TUG 2014 参加体験記
xml2tex at TUG 2014
xml2tex at TUG 2014
Csspage1 2014-06-22
Csspage1 2014-06-22
Index makes your book perfect
Index makes your book perfect
Our docsys-pyfes-2012-11
Our docsys-pyfes-2012-11
Texuser 2012-lt
Texuser 2012-lt
多値で簡単パーサーコンビネーター
多値で簡単パーサーコンビネーター
オーム社開発部がTeXを使う3つのおもな理由
オーム社開発部がTeXを使う3つのおもな理由
Último
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
Shota Ito
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
furutsuka
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
iPride Co., Ltd.
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
osamut
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
Atomu Hidaka
Último
(9)
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
Gaucheで本を作る
1.
Gauche で本を作る 株式会社オーム社開発部 鹿野 桂一郎 kshikano@ohmsha.co.jp 1
2.
Gauche で本を作る 鹿野 桂一郎 k16.shikano@gmail.com http://k16journal.blogspot.com/ 2
3.
祝 『プログラミング Gauche』 出版 3
4.
ほんとのこと言うと、僕が編集したかった 4
5.
ほんとのこと言うと、僕が編集したかった Scheme 本ならオーム社だろ、常考 5
6.
ほんとのこと言うと、僕が編集したかった Scheme 本ならオーム社だろ、常考 2 月発行予定が結局
Gauche.Night 当日かよ! 6
7.
ほんとのこと言うと、僕が編集したかった Scheme 本ならオーム社だろ、常考 2 月発行予定が結局
Gauche.Night 当日かよ! 実はオライリージャパンで 発行がちょっとくやしい 7
8.
「Gauche の本」の話ができないなら、 「Gauche で本」の話をするしかない。 8
9.
「理論的にクールな話だけではなくて、実稼働に 応用して得られた具体的な数値や経験なんかも 知りたい」 — Shiro さんの
Wiliki より 9
10.
「理論的にクールな話だけではなくて、実稼働に 応用して得られた具体的な数値や経験なんかも 知りたい」 — Shiro さんの
Wiliki より オーム社内の編集制作で Gauche + SXML が実稼働中。 (SXML にして数 M バイト程度の原稿を Gauche でい じって LaTeX にコンバート。) 10
11.
僕らの仕事は原稿のハック 11
12.
原稿ハッキング環境 Gauche 12
13.
なぜ Gauche?(Perl や
Ruby でなく) 13
14.
なぜ Gauche?(Perl や
Ruby でなく) 答え:マルチバイトな関数型言語 14
15.
なぜ Gauche?(Perl や
Ruby でなく) 答え:マルチバイトな関数型言語 ↑ 日本語の原稿だし 15
16.
なぜ Gauche?(Perl や
Ruby でなく) 答え:マルチバイトな関数型言語 ↑ 日本語の原稿だし ↑ 愚問 16
17.
Gauche といえば正規表現 (regexp-replace-all* manuscript #/(行)
な ([いうえわ])/ "12") 17
18.
Gauche といえば正規表現 (regexp-replace-all* manuscript #/(行)
な ([いうえわ])/ "12") 送り仮名は本則で! 18
19.
充実したライブラリとリファレンス 19
20.
Gauche の周りの人たちもすごい。 たとえば c-wrapper 素人にここまでのパワーを許している関数型言 語のコミュニティがあるか? 20
21.
hurigana.scm 漢字をひらがな化する自作ユーティリティ。 LaTeX で索引を作るときの最大の手間である読み仮名の 入力を省力化。 (c-load-library "/usr/lib/libkakasi.so.2.1.0") (c-include
"/usr/include/libkakasi.h") (define (kanji->hira str) (let ((base-ces "utf-8") (kakasi-ces "iso2022jp")) (kakasi_close_kanwadict) (kakasi_getopt_argv 2 ’("kakasi" "-JH")) ... 21
22.
なんといっても関数型言語 原稿のハックをサポートするツールがざくざく 作れる。 22
23.
xml-trivial.scm 整形式じゃない XML っぽい原稿を処理したい。 (define
(read-xml) (define (in-tag c tag) (cond ((eof-object? c) (error "EOF while tag" tag)) ((char=? # c) (in-escaped (read-char) (string+char tag c))) ... 23
24.
xml-trivial.scm 整形式じゃない XML っぽい原稿を処理したい。 僕でも作れた、特定目的用の再帰下降パーザ。 (define
(read-xml) (define (in-tag c tag) (cond ((eof-object? c) (error "EOF while tag" tag)) ((char=? # c) (in-escaped (read-char) (string+char tag c))) ... 24
25.
xml2tex.scm XML っぽく構造化されているテキストをリバースエンジ ニアリングして、各要素を適当な LaTeX
のコマンドや環 境に変換するコンバータをお手軽に作りたい。 (define (make-p name) (define-rule (lambda () (receive (vskip hskip) (values (ifstr ($@ ’vskip) (cut list "vskip" <> "n")) ... (define-simple-rules make-p p0 p1 p2 p3) 25
26.
xml2tex.scm XML っぽく構造化されているテキストをリバースエンジ ニアリングして、各要素を適当な LaTeX
のコマンドや環 境に変換するコンバータをお手軽に作りたい。 僕でもできた、メタプログラミング。 (define (make-p name) (define-rule (lambda () (receive (vskip hskip) (values (ifstr ($@ ’vskip) (cut list "vskip" <> "n")) ... (define-simple-rules make-p p0 p1 p2 p3) 26
27.
xml2tex.scm XML っぽく構造化されているテキストをリバースエンジ ニアリングして、各要素を適当な LaTeX
のコマンドや環 境に変換するコンバータをお手軽に作りたい。 僕でもできた、メタプログラミング。 このプレゼンも、下書きのテキストに適当な XML タグをつけてから、xml2tex.scm で LaTeX への変換ルールを定義して作成しました。 27
28.
xml2tex.scm XML っぽく構造化されているテキストをリバースエンジ ニアリングして、各要素を適当な LaTeX
のコマンドや環 境に変換するコンバータをお手軽に作りたい。 僕でもできた、メタプログラミング。 このプレゼンも、下書きのテキストに適当な XML タグをつけてから、xml2tex.scm で LaTeX への変換ルールを定義して作成しました。 →時間が残ってたらデモします。 28
29.
xml2tex.scm のおかげで、XML っぽい原稿から make
いっぱつで印刷用の最終 PDF データを生 成するコンバータが、毎回少しの苦労で作れる。 原稿そのものは Subversion を使って筆者と編 集者とで共有しているので、結果として赤書き した校正紙ゲラのやり取りはゼロ。 29
30.
デモ 本や出版の話は kshikano@ohmsha.co.jp へ。 それ以外の話は
k16.shikano@gmail.com へ。 30
Baixar agora