Skip to content

Commit

Permalink
Merge branch 'epub'
Browse files Browse the repository at this point in the history
  • Loading branch information
ilammy committed Dec 7, 2013
2 parents 3389af8 + faad72b commit 3dc26aa
Show file tree
Hide file tree
Showing 17 changed files with 38 additions and 25 deletions.
1 change: 1 addition & 0 deletions epub/OEBPS/!lisp.opf
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@
<item id="png29" href="images/png29.png" media-type="image/png"/>
<item id="png30" href="images/png30.png" media-type="image/png"/>

<item id="frs-cl" href="fonts/FreeSerif-mathcal.ttf" media-type="application/x-font-ttf"/>
<item id="djv-sc" href="fonts/DejaVuSansCondensed.ttf" media-type="application/x-font-ttf"/>
<item id="djv-mb" href="fonts/DejaVuSansMono-Bold.ttf" media-type="application/x-font-ttf"/>
<item id="djv-m" href="fonts/DejaVuSansMono.ttf" media-type="application/x-font-ttf"/>
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch01_basics.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:basics"><span class="wrap"><span class="seq">Глава 1.</span><span class="title">Основы интерпретации</span></span></h1>
<h1 id="chapter:basics"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 1.</span></span><span class="title">Основы интерпретации</span></span></h1>

<p class="noindent"><span class="initial">В</span><span class="sc"><span class="c">этой главе</span></span> описывается базовый интерпретатор, идеи
которого проходят красной нитью через большую часть этой книги. Он намеренно
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch02_lisp_1_2_omega.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:lisp1-2-omega"><span class="wrap"><span class="seq">Глава 2.</span><span class="title">Lisp, 1, 2, …, <i>ω</i></span></span></h1>
<h1 id="chapter:lisp1-2-omega"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 2.</span></span><span class="title">Lisp, 1, 2, …, <i>ω</i></span></span></h1>

<p class="noindent"><span class="initial">Ф</span><span class="sc"><span class="c">ункции занимают</span></span> центральное место
в Лиспе, поэтому очевидно, что эффективность их вызовов очень важна.
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch03_escape_and_return.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:escape"><span class="wrap"><span class="seq">Глава 3.</span><span class="title">Переходы и возвраты: продолжения</span></span></h1>
<h1 id="chapter:escape"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 3.</span></span><span class="title">Переходы и возвраты: продолжения</span></span></h1>

<p class="noindent"><span class="initial">К</span><span class="sc"><span class="c">аждое вычисление</span></span> в конечном счёте
приводит к возврату результата сущности, которая называется <em class="term">продолжением</em>.
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch04_assignment_and_side_effects.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:assignment"><span class="wrap"><span class="seq">Глава 4.</span><span class="title">Присваивание и побочные эффекты</span></span></h1>
<h1 id="chapter:assignment"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 4.</span></span><span class="title">Присваивание и побочные эффекты</span></span></h1>

<p class="noindent"><span class="initial">П</span><span class="sc"><span class="c">редыдущие главы</span></span> с их нескончаемыми
повторениями и вариациями чем-то напоминают «Болеро» Мориса Равеля. Но один
Expand Down
8 changes: 4 additions & 4 deletions epub/OEBPS/ch05_denotational_semantics.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:denotational"><span class="wrap"><span class="seq">Глава 5.</span><span class="title">Денотационная семантика</span></span></h1>
<h1 id="chapter:denotational"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 5.</span></span><span class="title">Денотационная семантика</span></span></h1>

<p class="noindent"><span class="initial">Э</span><span class="sc"><span class="c">та глава</span></span> начинается кратким обзором
<span class="math"><span class="ord var">λ</span></span>-исчисления, после чего переходит к денотационной семантике во всей её
Expand Down Expand Up @@ -1324,9 +1324,9 @@ href="zz_footnotes.xhtml#foot5.4"><sup>4</sup></a>:</p>
<p>Теперь необходимо переопределить аппликацию функций так, чтобы получать все
возможные результаты. Если порядок случаен, то это фактически значит, что
аппликация выполняется так: сначала выбирается случайный терм, обозначим
его <span class="math"><span class="ord var">π<sub><span class="ord num">0</span></sub><sup></sup></span></span>, он вычисляется в <span class="math"><span class="ord var">ε<sub><span class="ord num">0</span></sub><sup></sup></span></span>, потом из оставшихся выбирается следующий
терм <span class="math"><span class="ord var">π<sub><span class="ord num">0</span></sub><sup></sup></span></span>, который вычисляется в <span class="math"><span class="ord var">ε<sub><span class="ord num">0</span></sub><sup></sup></span></span>, и так далее. Затем значения
<span class="math"><span class="ord var">ε<sub><span class="ord num">0</span></sub><sup></sup></span><span class="punct">,</span><span class="ord var">ε<sub><span class="ord num">1</span></sub><sup></sup></span><span class="punct">,</span><span class="ord"></span><span class="punct">,</span><span class="ord var">ε<sub><span class="ord var">n</span></sub><sup></sup></span></span>
его <span class="math"><span class="ord var">π<sub><span class="ord num">0</span></sub><sup class="prime"></sup></span></span>, он вычисляется в <span class="math"><span class="ord var">ε<sub><span class="ord num">0</span></sub><sup class="prime"></sup></span></span>, потом из оставшихся выбирается следующий
терм <span class="math"><span class="ord var">π<sub><span class="ord num">0</span></sub><sup class="prime"></sup></span></span>, который вычисляется в <span class="math"><span class="ord var">ε<sub><span class="ord num">0</span></sub><sup class="prime"></sup></span></span>, и так далее. Затем значения
<span class="math"><span class="ord var">ε<sub><span class="ord num">0</span></sub><sup class="prime"></sup></span><span class="punct">,</span><span class="ord var">ε<sub><span class="ord num">1</span></sub><sup class="prime"></sup></span><span class="punct">,</span><span class="ord"></span><span class="punct">,</span><span class="ord var">ε<sub><span class="ord var">n</span></sub><sup class="prime"></sup></span></span>
переупорядочиваются так, как они шли в исходной форме:
<span class="math"><span class="ord var">ε<sub><span class="ord num">0</span></sub></span><span class="punct">,</span><span class="ord var">ε<sub><span class="ord num">1</span></sub></span><span class="punct">,</span><span class="ord"></span><span class="punct">,</span><span class="ord var">ε<sub><span class="ord var">n</span></sub></span></span>, и, наконец, первое значение-функция
применяется к последовательности из всех остальных. При таком подходе порядок
Expand Down
4 changes: 2 additions & 2 deletions epub/OEBPS/ch06_fast_interpretation.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:fast"><span class="wrap"><span class="seq">Глава 6.</span><span class="title">Быстрая интерпретация</span></span></h1>
<h1 id="chapter:fast"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 6.</span></span><span class="title">Быстрая интерпретация</span></span></h1>

<p class="noindent"><span class="initial">Д</span><span class="sc"><span class="c">енотационный</span></span>
интерпретатор из предыдущей
Expand Down Expand Up @@ -1757,7 +1757,7 @@ Scheme. Несмотря на то, что объекты и замыкания
<li>Явное представление функций с помощью объектов.</li>

<li>Результатом предварительной обработки станут комбинаторы
(чьи имена записываются <span class="logo">прописными буквами</span>),
(чьи имена записываются <span class="sc"><span class="c">прописными буквами</span></span>),
напоминающие инструкции гипотетической виртуальной машины.</li>
</ol>

Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch07_compilation.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:compilation"><span class="wrap"><span class="seq">Глава 7.</span><span class="title">Компиляция</span></span></h1>
<h1 id="chapter:compilation"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 7.</span></span><span class="title">Компиляция</span></span></h1>

<p class="noindent"><span class="initial">В</span><span class="sc"><span class="c">предыдущей главе</span></span>
был изложен метод перевода
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch08_evaluation_and_reflection.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:reflection"><span class="wrap"><span class="seq">Глава 8.</span><span class="title">Вычисления и рефлексия</span></span></h1>
<h1 id="chapter:reflection"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 8.</span></span><span class="title">Вычисления и рефлексия</span></span></h1>

<!--\indexC{eval}-->
<!--\indexR{вычислитель}-->
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch09_macros.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:macros"><span class="wrap"><span class="seq">Глава 9.</span><span class="title">Макросы: употребление и злоупотребление</span></span></h1>
<h1 id="chapter:macros"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 9.</span></span><span class="title">Макросы: употребление и злоупотребление</span></span></h1>

<!--\indexR{абстракция!и макросы}-->
<p class="noindent"><span class="initial">П</span><span class="sc"><span class="c">резираемые</span></span>, неверно используемые,
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch10_compiling_into_c.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:cc"><span class="wrap"><span class="seq">Глава 10.</span><span class="title">Компиляция в Си</span></span></h1>
<h1 id="chapter:cc"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 10.</span></span><span class="title">Компиляция в Си</span></span></h1>

<!--\indexR{язык!целевой}-->
<p class="noindent"><span class="initial">И</span><span class="sc"><span class="c">ещё одна глава</span></span> о компиляции.
Expand Down
2 changes: 1 addition & 1 deletion epub/OEBPS/ch11_essence_of_an_object_system.xhtml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<body>

<h1 id="chapter:objects"><span class="wrap"><span class="seq">Глава 11.</span><span class="title">Квинтэссенция объектной системы</span></span></h1>
<h1 id="chapter:objects"><span class="wrap"><span class="seq"><span class="sc">Г<span class="c">лава</span> 11.</span></span><span class="title">Квинтэссенция объектной системы</span></span></h1>

<p class="noindent"><span class="initial">О</span><span class="sc"><span class="c">бъекты</span></span>!
Ах, что бы мы без них делали? В этой
Expand Down
Binary file added epub/OEBPS/fonts/FreeSerif-mathcal.ttf
Binary file not shown.
23 changes: 16 additions & 7 deletions epub/OEBPS/zz_lisp.css
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,13 @@
src: url('fonts/stix-regular.ttf') format('truetype');
}

@font-face {
font-family: FreeSerif;
font-style: normal;
font-weight: normal;
src: url('fonts/FreeSerif-mathcal.ttf') format('truetype');
}

@font-face {
font-family: 'DejaVu Serif';
font-style: normal;
Expand Down Expand Up @@ -130,7 +137,6 @@ h1 {

h1 .seq {
display: block;
font-variant: small-caps;
font-weight: normal;
margin-bottom: 1.0715em;
}
Expand Down Expand Up @@ -251,10 +257,6 @@ p.noindent {
text-indent: 0;
}

span.logo {
font-variant: small-caps;
}

span.fbox {
border: 1px solid black;
padding: 0.2222em;
Expand Down Expand Up @@ -469,7 +471,7 @@ table.numbered-source pre {

.math .cal {
color: black;
font-family: 'DejaVu Serif';
font-family: FreeSerif, STIX, serif;
}

.math .num {
Expand Down Expand Up @@ -545,10 +547,17 @@ span.quad-stub {

.math sub + sup {
display: inline-block;
left: -0.8ex;
left: -1ex;
text-indent: 0;
width: 0;
}

.math sup.prime {
font-size: 100%;
top: 0;
left: -0.8ex;
}

.math .syntax {
font-weight: bold;
}
Expand Down
3 changes: 2 additions & 1 deletion epub/fontconfig/10pt.css
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ table + .caption code,
table#ch5-dynamic-denotation-transform,
table.disasm code,
code .comment code,
pre .comment code
pre .comment code,
.math code
{ font-size: 9pt; }
blockquote.equation span.eqno,
.math .Vset,
Expand Down
3 changes: 2 additions & 1 deletion epub/fontconfig/8pt.css
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ table + .caption code,
table#ch5-dynamic-denotation-transform,
table.disasm code,
code .comment code,
pre .comment code
pre .comment code,
.math code
{ font-size: 7.2pt; }
blockquote.equation span.eqno,
.math .Vset,
Expand Down
3 changes: 2 additions & 1 deletion epub/fontconfig/9pt.css
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ table + .caption code,
table#ch5-dynamic-denotation-transform,
table.disasm code,
code .comment code,
pre .comment code
pre .comment code,
.math code
{ font-size: 8.1pt; }
blockquote.equation span.eqno,
.math .Vset,
Expand Down

0 comments on commit 3dc26aa

Please sign in to comment.