Skip to content

Commit 2b70566

Browse files
kikikiki
authored andcommitted
fix
1 parent 66f37b8 commit 2b70566

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+380
-357
lines changed

Elixir程序设计语言.pdf

-1.63 MB
Binary file not shown.

LICENSE

Lines changed: 165 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
GNU LESSER GENERAL PUBLIC LICENSE
2+
Version 3, 29 June 2007
3+
4+
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
5+
Everyone is permitted to copy and distribute verbatim copies
6+
of this license document, but changing it is not allowed.
7+
8+
9+
This version of the GNU Lesser General Public License incorporates
10+
the terms and conditions of version 3 of the GNU General Public
11+
License, supplemented by the additional permissions listed below.
12+
13+
0. Additional Definitions.
14+
15+
As used herein, "this License" refers to version 3 of the GNU Lesser
16+
General Public License, and the "GNU GPL" refers to version 3 of the GNU
17+
General Public License.
18+
19+
"The Library" refers to a covered work governed by this License,
20+
other than an Application or a Combined Work as defined below.
21+
22+
An "Application" is any work that makes use of an interface provided
23+
by the Library, but which is not otherwise based on the Library.
24+
Defining a subclass of a class defined by the Library is deemed a mode
25+
of using an interface provided by the Library.
26+
27+
A "Combined Work" is a work produced by combining or linking an
28+
Application with the Library. The particular version of the Library
29+
with which the Combined Work was made is also called the "Linked
30+
Version".
31+
32+
The "Minimal Corresponding Source" for a Combined Work means the
33+
Corresponding Source for the Combined Work, excluding any source code
34+
for portions of the Combined Work that, considered in isolation, are
35+
based on the Application, and not on the Linked Version.
36+
37+
The "Corresponding Application Code" for a Combined Work means the
38+
object code and/or source code for the Application, including any data
39+
and utility programs needed for reproducing the Combined Work from the
40+
Application, but excluding the System Libraries of the Combined Work.
41+
42+
1. Exception to Section 3 of the GNU GPL.
43+
44+
You may convey a covered work under sections 3 and 4 of this License
45+
without being bound by section 3 of the GNU GPL.
46+
47+
2. Conveying Modified Versions.
48+
49+
If you modify a copy of the Library, and, in your modifications, a
50+
facility refers to a function or data to be supplied by an Application
51+
that uses the facility (other than as an argument passed when the
52+
facility is invoked), then you may convey a copy of the modified
53+
version:
54+
55+
a) under this License, provided that you make a good faith effort to
56+
ensure that, in the event an Application does not supply the
57+
function or data, the facility still operates, and performs
58+
whatever part of its purpose remains meaningful, or
59+
60+
b) under the GNU GPL, with none of the additional permissions of
61+
this License applicable to that copy.
62+
63+
3. Object Code Incorporating Material from Library Header Files.
64+
65+
The object code form of an Application may incorporate material from
66+
a header file that is part of the Library. You may convey such object
67+
code under terms of your choice, provided that, if the incorporated
68+
material is not limited to numerical parameters, data structure
69+
layouts and accessors, or small macros, inline functions and templates
70+
(ten or fewer lines in length), you do both of the following:
71+
72+
a) Give prominent notice with each copy of the object code that the
73+
Library is used in it and that the Library and its use are
74+
covered by this License.
75+
76+
b) Accompany the object code with a copy of the GNU GPL and this license
77+
document.
78+
79+
4. Combined Works.
80+
81+
You may convey a Combined Work under terms of your choice that,
82+
taken together, effectively do not restrict modification of the
83+
portions of the Library contained in the Combined Work and reverse
84+
engineering for debugging such modifications, if you also do each of
85+
the following:
86+
87+
a) Give prominent notice with each copy of the Combined Work that
88+
the Library is used in it and that the Library and its use are
89+
covered by this License.
90+
91+
b) Accompany the Combined Work with a copy of the GNU GPL and this license
92+
document.
93+
94+
c) For a Combined Work that displays copyright notices during
95+
execution, include the copyright notice for the Library among
96+
these notices, as well as a reference directing the user to the
97+
copies of the GNU GPL and this license document.
98+
99+
d) Do one of the following:
100+
101+
0) Convey the Minimal Corresponding Source under the terms of this
102+
License, and the Corresponding Application Code in a form
103+
suitable for, and under terms that permit, the user to
104+
recombine or relink the Application with a modified version of
105+
the Linked Version to produce a modified Combined Work, in the
106+
manner specified by section 6 of the GNU GPL for conveying
107+
Corresponding Source.
108+
109+
1) Use a suitable shared library mechanism for linking with the
110+
Library. A suitable mechanism is one that (a) uses at run time
111+
a copy of the Library already present on the user's computer
112+
system, and (b) will operate properly with a modified version
113+
of the Library that is interface-compatible with the Linked
114+
Version.
115+
116+
e) Provide Installation Information, but only if you would otherwise
117+
be required to provide such information under section 6 of the
118+
GNU GPL, and only to the extent that such information is
119+
necessary to install and execute a modified version of the
120+
Combined Work produced by recombining or relinking the
121+
Application with a modified version of the Linked Version. (If
122+
you use option 4d0, the Installation Information must accompany
123+
the Minimal Corresponding Source and Corresponding Application
124+
Code. If you use option 4d1, you must provide the Installation
125+
Information in the manner specified by section 6 of the GNU GPL
126+
for conveying Corresponding Source.)
127+
128+
5. Combined Libraries.
129+
130+
You may place library facilities that are a work based on the
131+
Library side by side in a single library together with other library
132+
facilities that are not Applications and are not covered by this
133+
License, and convey such a combined library under terms of your
134+
choice, if you do both of the following:
135+
136+
a) Accompany the combined library with a copy of the same work based
137+
on the Library, uncombined with any other library facilities,
138+
conveyed under the terms of this License.
139+
140+
b) Give prominent notice with the combined library that part of it
141+
is a work based on the Library, and explaining where to find the
142+
accompanying uncombined form of the same work.
143+
144+
6. Revised Versions of the GNU Lesser General Public License.
145+
146+
The Free Software Foundation may publish revised and/or new versions
147+
of the GNU Lesser General Public License from time to time. Such new
148+
versions will be similar in spirit to the present version, but may
149+
differ in detail to address new problems or concerns.
150+
151+
Each version is given a distinguishing version number. If the
152+
Library as you received it specifies that a certain numbered version
153+
of the GNU Lesser General Public License "or any later version"
154+
applies to it, you have the option of following the terms and
155+
conditions either of that published version or of any later version
156+
published by the Free Software Foundation. If the Library as you
157+
received it does not specify a version number of the GNU Lesser
158+
General Public License, you may choose any version of the GNU Lesser
159+
General Public License ever published by the Free Software Foundation.
160+
161+
If the Library as you received it specifies that a proxy can decide
162+
whether future versions of the GNU Lesser General Public License shall
163+
apply, that proxy's public statement of acceptance of any version is
164+
permanent authorization for you to choose that version for the
165+
Library.

SUMMARY.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
* [控制语句](lessons/basics/control-structures.md)
1010
* [函数](lessons/basics/functions.md)
1111
* [管道操作符](lessons/basics/pipe-operator.md)
12-
* [模块(Module)]](lessons/basics/modules.md)
12+
* [模块(Module)](lessons/basics/modules.md)
1313
* [Mix](lessons/basics/mix.md)
1414
* [魔符(Sigil)](lessons/basics/sigils.md)
1515
* [文档模块](lessons/basics/documentation.md)
@@ -26,7 +26,7 @@
2626
* [错误处理](lessons/advanced/error-handling.md)
2727
* [可执行文件](lessons/advanced/escripts.md)
2828
* [并发](lessons/advanced/concurrency.md)
29-
* [OTP并发]](lessons/advanced/otp-concurrency.md)
29+
* [OTP并发](lessons/advanced/otp-concurrency.md)
3030
* [OTP Supervisors](lessons/advanced/otp-supervisors.md)
3131
* [OTP 分布式](lessons/advanced/otp-distribution.md)
3232
* [元编程](lessons/advanced/metaprogramming.md)
22 MB
Binary file not shown.

_book/_config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
theme: jekyll-theme-slate

_book/gitbook/gitbook-plugin-livereload/plugin.js

Lines changed: 0 additions & 11 deletions
This file was deleted.

_book/index.html

Lines changed: 65 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@
198198
<a href="lessons/basics/modules.html">
199199

200200

201-
模块(Module)]
201+
模块(Module)
202202

203203
</a>
204204

@@ -387,7 +387,7 @@
387387
<a href="lessons/advanced/otp-concurrency.html">
388388

389389

390-
OTP并发]
390+
OTP并发
391391

392392
</a>
393393

@@ -773,12 +773,68 @@ <h1>
773773

774774
<section class="normal markdown-section">
775775

776-
<h1 id="&#x7EEA;&#x8A00;">&#x7EEA;&#x8A00;</h1>
777-
<p>Elixir School &#x662F;&#x5E0C;&#x671B;&#x638C;&#x63E1; Elixir &#x8FD9;&#x95E8;&#x7F16;&#x7A0B;&#x8BED;&#x8A00;&#x7684;&#x4EBA;&#x9996;&#x9009;&#x8D44;&#x6599;&#x3002;</p>
778-
<p>&#x4E0D;&#x7BA1;&#x4F60;&#x662F;&#x5426;&#x6709;&#x7ECF;&#x9A8C;&#xFF0C;&#x4F60;&#x90FD;&#x4E00;&#x5B9A;&#x53EF;&#x4EE5;&#x4ECE;&#x4ECE;&#x8FD9;&#x4E9B;&#x8BFE;&#x7A0B;&#x4E2D;&#x5F97;&#x5230;&#x4F60;&#x60F3;&#x8981;&#x7684;&#x8F85;&#x52A9;&#x8D44;&#x6599;&#x3002;</p>
779-
<p>&#x901A;&#x8FC7;&#x65E0;&#x6570;&#x5FD7;&#x613F;&#x8005;&#x7684;&#x52AA;&#x529B;&#xFF0C;Elixir School &#x5DF2;&#x7ECF;&#x672C;&#x7FFB;&#x8BD1;&#x6210;&#x4E86;&#x591A;&#x79CD;&#x8BED;&#x8A00;&#xFF0C;&#x5305;&#x62EC;: Vi&#x1EC7;t ng&#x1EEF;, &#x7B80;&#x4F53;&#x4E2D;&#x6587;, &#x7E41;&#x9AD4;&#x4E2D;&#x6587;, Espa&#xF1;ol, Sloven&#x10D;ina, &#x65E5;&#x672C;&#x8A9E;, Polski, Portugu&#xEA;s, &#x420;&#x443;&#x441;&#x441;&#x43A;&#x43E;&#x43C;, Bahasa Indonesia, Bahasa Melayu, &#x423;&#x43A;&#x440;&#x430;&#x457;&#x43D;&#x441;&#x44C;&#x43A;&#x43E;&#x44E;, &#xD55C;&#xAD6D;&#xC5B4;, Italiano, Deutsch, &#x9AC;&#x9BE;&#x982;&#x9B2;&#x9BE;, T&#xFC;rk&#xE7;e, and &#xE20;&#xE32;&#xE29;&#xE32;&#xE44;&#xE17;&#xE22;&#x3002;</p>
780-
<p>&#x6211;&#x4EEC;&#x5E0C;&#x671B;&#x5E76;&#x4E14;&#x671F;&#x5F85;&#x4F60;&#x52A0;&#x5165;&#x6211;&#x4EEC;&#x4E00;&#x8D77;&#x5B8C;&#x5584; Elixir School&#x3002;&#x6211;&#x4EEC;&#x7684;&#x9879;&#x76EE;&#x5730;&#x5740;&#x662F; <a href="https://github.com/elixirschool/elixirschool" target="_blank">elixirschool/elixirschool</a>&#x3002;</p>
781-
<p>&#x7279;&#x522B;&#x611F;&#x8C22; <a href="https://github.com/markhoo" target="_blank">MarkHoo</a> &#x7F16;&#x6392;&#x5E76;&#x5236;&#x4F5C;&#x672C;PDF&#x3002;</p>
776+
<h1 id="&#x7EEA;&#x8A00;"><a href="./">&#x7EEA;&#x8A00;</a></h1>
777+
<h3 id="&#x7B2C;&#x4E00;&#x90E8;&#x5206;&#xFF1A;&#x57FA;&#x7840;">&#x7B2C;&#x4E00;&#x90E8;&#x5206;&#xFF1A;&#x57FA;&#x7840;</h3>
778+
<ul>
779+
<li><a href="lessons/basics/basics.html">&#x57FA;&#x7840;</a></li>
780+
<li><a href="lessons/basics/collections.html">&#x96C6;&#x5408;</a></li>
781+
<li><a href="lessons/basics/enum.html">Enum &#x6A21;&#x5757;</a></li>
782+
<li><a href="lessons/basics/pattern-matching.html">&#x6A21;&#x5F0F;&#x5339;&#x914D;</a></li>
783+
<li><a href="lessons/basics/control-structures.html">&#x63A7;&#x5236;&#x8BED;&#x53E5;</a></li>
784+
<li><a href="lessons/basics/functions.html">&#x51FD;&#x6570;</a></li>
785+
<li><a href="lessons/basics/pipe-operator.html">&#x7BA1;&#x9053;&#x64CD;&#x4F5C;&#x7B26;</a></li>
786+
<li><a href="lessons/basics/modules.html">&#x6A21;&#x5757;(Module)</a></li>
787+
<li><a href="lessons/basics/mix.html">Mix</a></li>
788+
<li><a href="lessons/basics/sigils.html">&#x9B54;&#x7B26;(Sigil)</a></li>
789+
<li><a href="lessons/basics/documentation.html">&#x6587;&#x6863;&#x6A21;&#x5757;</a></li>
790+
<li><a href="lessons/basics/testing.html">&#x6D4B;&#x8BD5;</a></li>
791+
<li><a href="lessons/basics/comprehensions.html">&#x63A8;&#x5BFC;</a></li>
792+
<li><a href="lessons/basics/strings.html">&#x5B57;&#x7B26;&#x4E32;</a></li>
793+
<li><a href="lessons/basics/date-time.html">&#x65E5;&#x671F;&#x548C;&#x65F6;&#x95F4;</a></li>
794+
<li><a href="lessons/basics/mix-tasks.html">&#x81EA;&#x5B9A;&#x4E49;Mix&#x4EFB;&#x52A1;</a></li>
795+
<li><a href="lessons/basics/iex-helpers.html">IEx&#x8F85;&#x52A9;&#x51FD;&#x6570;</a></li>
796+
</ul>
797+
<h3 id="&#x7B2C;&#x4E8C;&#x90E8;&#x5206;&#xFF1A;&#x9AD8;&#x7EA7;">&#x7B2C;&#x4E8C;&#x90E8;&#x5206;&#xFF1A;&#x9AD8;&#x7EA7;</h3>
798+
<ul>
799+
<li><a href="lessons/advanced/erlang.html">&#x548C;Erlang&#x4E92;&#x64CD;&#x4F5C;</a></li>
800+
<li><a href="lessons/advanced/error-handling.html">&#x9519;&#x8BEF;&#x5904;&#x7406;</a></li>
801+
<li><a href="lessons/advanced/escripts.html">&#x53EF;&#x6267;&#x884C;&#x6587;&#x4EF6;</a></li>
802+
<li><a href="lessons/advanced/concurrency.html">&#x5E76;&#x53D1;</a></li>
803+
<li><a href="lessons/advanced/otp-concurrency.html">OTP&#x5E76;&#x53D1;</a></li>
804+
<li><a href="lessons/advanced/otp-supervisors.html">OTP Supervisors</a></li>
805+
<li><a href="lessons/advanced/otp-distribution.html">OTP &#x5206;&#x5E03;&#x5F0F;</a></li>
806+
<li><a href="lessons/advanced/metaprogramming.html">&#x5143;&#x7F16;&#x7A0B;</a></li>
807+
<li><a href="lessons/advanced/umbrella-projects.html">Umbrella Projects</a></li>
808+
<li><a href="lessons/advanced/typespec.html">Specifications and types</a></li>
809+
<li><a href="lessons/advanced/behaviours.html">&#x884C;&#x4E3A;</a></li>
810+
<li><a href="lessons/advanced/gen-stage.html">GenStage</a></li>
811+
<li><a href="lessons/advanced/protocols.html">&#x534F;&#x8BAE;</a></li>
812+
<li><a href="lessons/advanced/nerves.html">Nerves</a></li>
813+
</ul>
814+
<h3 id="&#x7B2C;&#x4E09;&#x90E8;&#x5206;&#xFF1A;ecto">&#x7B2C;&#x4E09;&#x90E8;&#x5206;&#xFF1A;ECTO</h3>
815+
<ul>
816+
<li><a href="lessons/ecto/basics.html">Basics</a></li>
817+
<li><a href="lessons/ecto/changesets.html">Changesets</a></li>
818+
<li><a href="lessons/ecto/associations.html">&#x5173;&#x8054;&#x5173;&#x7CFB;</a></li>
819+
<li><a href="lessons/ecto/querying.html">&#x67E5;&#x8BE2;</a></li>
820+
</ul>
821+
<h3 id="&#x7B2C;&#x56DB;&#x90E8;&#x5206;&#xFF1A;&#x4E13;&#x9898;">&#x7B2C;&#x56DB;&#x90E8;&#x5206;&#xFF1A;&#x4E13;&#x9898;</h3>
822+
<ul>
823+
<li><a href="lessons/specifics/plug.html">Plug</a></li>
824+
<li><a href="lessons/specifics/eex.html">&#x5D4C;&#x5165;&#x7684; Elixir(EEx)</a></li>
825+
<li><a href="lessons/specifics/ets.html">Erlang &#x9879;&#x5F0F;&#x5B58;&#x50A8;(ETS)</a></li>
826+
<li><a href="lessons/specifics/mnesia.html">Mnesia &#x6570;&#x636E;&#x5E93;</a></li>
827+
<li><a href="lessons/specifics/debugging.html">&#x8C03;&#x8BD5;</a></li>
828+
</ul>
829+
<h3 id="&#x7B2C;&#x4E94;&#x90E8;&#x5206;&#xFF1A;&#x7A0B;&#x5E8F;&#x5E93;">&#x7B2C;&#x4E94;&#x90E8;&#x5206;&#xFF1A;&#x7A0B;&#x5E8F;&#x5E93;</h3>
830+
<ul>
831+
<li><a href="lessons/libraries/guardian.html">Guardian(&#x57FA;&#x7840;)</a></li>
832+
<li><a href="lessons/libraries/poolboy.html">Poolboy</a></li>
833+
<li><a href="lessons/libraries/benchee.html">Benchee</a></li>
834+
<li><a href="lessons/libraries/bypass.html">Bypass</a></li>
835+
<li><a href="lessons/libraries/distillery.html">Distillery(&#x57FA;&#x7840;)</a></li>
836+
<li><a href="lessons/libraries/stream-data.html">StreamData</a></li>
837+
</ul>
782838

783839

784840
</section>
@@ -818,7 +874,7 @@ <h1 class="search-results-title">No results matching "<span class='search-query'
818874
<script>
819875
var gitbook = gitbook || [];
820876
gitbook.push(function() {
821-
gitbook.page.hasChanged({"page":{"title":"Introduction","level":"1.1","depth":1,"next":{"title":"基础","level":"1.2","depth":1,"path":"lessons/basics/basics.md","ref":"lessons/basics/basics.md","articles":[]},"dir":"ltr"},"config":{"gitbook":"*","theme":"default","variables":{},"plugins":["livereload"],"pluginsConfig":{"livereload":{},"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"}},"file":{"path":"README.md","mtime":"2019-11-04T15:34:56.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2019-11-04T15:36:14.037Z"},"basePath":".","book":{"language":""}});
877+
gitbook.page.hasChanged({"page":{"title":"Introduction","level":"1.1","depth":1,"next":{"title":"基础","level":"1.2","depth":1,"path":"lessons/basics/basics.md","ref":"lessons/basics/basics.md","articles":[]},"dir":"ltr"},"config":{"gitbook":"*","theme":"default","variables":{},"plugins":[],"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"}},"file":{"path":"README.md","mtime":"2019-11-05T02:25:51.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2019-11-05T03:01:22.004Z"},"basePath":".","book":{"language":""}});
822878
});
823879
</script>
824880
</div>
@@ -828,10 +884,6 @@ <h1 class="search-results-title">No results matching "<span class='search-query'
828884
<script src="gitbook/theme.js"></script>
829885

830886

831-
<script src="gitbook/gitbook-plugin-livereload/plugin.js"></script>
832-
833-
834-
835887
<script src="gitbook/gitbook-plugin-search/search-engine.js"></script>
836888

837889

0 commit comments

Comments
 (0)