downloads.html 6.62 KB
Newer Older
Mariano Montone's avatar
Mariano Montone committed
1 2
<a class="btn btn-primary float-right" href="/documentation"><i class="fa fa-arrow-right"></i>&nbsp;&nbsp;Read the documentation</a>

Mariano Montone's avatar
Content  
Mariano Montone committed
3
<h1><i class="fa fa-walking"></i> Getting started</h1>
Mariano Montone's avatar
Mariano Montone committed
4 5

<h2>Download and Install</h2>
6

Mariano Montone's avatar
Mariano Montone committed
7 8 9
<p>If you are a newbie or you want to get started as fast as possible, then <a href="https://portacle.github.io/">Portacle</a> is probably your best option. Portacle is a multiplatform, complete IDE for Common Lisp. It includes Emacs, SBCL, Git, Quicklisp, all configured and ready to use.</p>

<p>
Mariano Montone's avatar
Mariano Montone committed
10
    <a href="https://portacle.github.io" class="btn btn-primary"><i class="fa fa-download"></i>&nbsp;&nbsp;Download Portacle - All-In-One Common Lisp</a>
Mariano Montone's avatar
Mariano Montone committed
11 12
</p>

Mariano Montone's avatar
Mariano Montone committed
13 14 15 16
<p>Otherwise, Common Lisp comes in many different <a href="/implementations">flavors, or implementations</a>.</p>

<p>Two popular <em>open source</em> ones are Steel Bank Common Lisp (SBCL) and Clozure Common Lisp (CCL):</p>

17
<div class="row">
Mariano Montone's avatar
Mariano Montone committed
18

19
    <div class="col-md-4">
Mariano Montone's avatar
Mariano Montone committed
20

21 22 23 24 25 26 27
        <b>Steel Bank Common Lisp (SBCL)</b>
        <ul>
            <li><a href="http://www.sbcl.org/">Main website</a></li>
            <li><a href="http://www.sbcl.org/platform-table.html">Download&nbsp;&nbsp;<i class="fa fa-download"></i></a></li>
            <li><a href="http://www.sbcl.org/getting.html">Install</a></li>
        </ul>
    </div>
Mariano Montone's avatar
Content  
Mariano Montone committed
28

29 30 31 32 33 34 35 36 37 38
    <div class="col-md-4">

        <b>Clozure Common Lisp (CCL)</b>
        <ul>
            <li><a href="http://ccl.clozure.com/">Main website</a></li>
            <li><a href="http://ccl.clozure.com/download.html">Download/Install&nbsp;&nbsp;<i class="fa fa-download"></i></a></li>
        </ul>
    </div>

</div>
Mariano Montone's avatar
Mariano Montone committed
39

40

Mariano Montone's avatar
Mariano Montone committed
41

42 43 44 45 46
<!--

NOTE: Franz say they will pick this up again in Fall 2020. 

  <div class="row">
47 48

    <div class="col-md-4">
Mariano Montone's avatar
Mariano Montone committed
49

50 51 52 53 54 55 56 57
        <b>Allegro CL</b><br/>
        <a href="https://franz.com/products/allegro-common-lisp/">Allegro CL ®</a> <span class="small"> (sponsored link)</span> is a very powerful dynamic object-oriented development system especially suited to enterprise-wide, complex application development.
        <ul>
            <li><a href="https://franz.com/products/allegro-common-lisp/">Main website</a></li>
            <li><a href="http://www.franz.com/">Company website</a></li>
            <li><a href="https://franz.com/downloads/clp/survey">Free download&nbsp;&nbsp;<i class="fa fa-download"></i></a></li>
        </ul>
    </div>
58
</div>  -->
Mariano Montone's avatar
Mariano Montone committed
59

60 61

<p> Look <a href="/implementations">here</a> for other Common Lisp compilers, including powerful <em>commercial</em> implementations.</p>
Mariano Montone's avatar
Content  
Mariano Montone committed
62

Mariano Montone's avatar
Mariano Montone committed
63
<p>You can also try Common Lisp online:</p>
Mariano Montone's avatar
Mariano Montone committed
64
<p>
Mariano Montone's avatar
Mariano Montone committed
65 66 67
    <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#try_lisp" aria-expanded="false" aria-controls="collapseExample">
        <i class="fa fa-play"></i>&nbsp;&nbsp;&nbsp;Try Lisp Online
    </button>
Mariano Montone's avatar
Mariano Montone committed
68 69
</p>
<div class="collapse" id="try_lisp">
Mariano Montone's avatar
Mariano Montone committed
70 71
    <p>This is a <a href="https://github.com/jscl-project/jscl">JSCL</a> Lisp REPL running on the Web. Note that it is not a complete Common Lisp implementation, but enough to have a taste of it:</p>
    <iframe style="width:100%; height: 400px;"  src="https://jscl-project.github.io/"></iframe>
Mariano Montone's avatar
Mariano Montone committed
72 73
</div>

Mariano Montone's avatar
Mariano Montone committed
74
<h2>Setup your environment</h2>
Mariano Montone's avatar
Mariano Montone committed
75

Mariano Montone's avatar
Mariano Montone committed
76 77 78 79 80 81 82 83 84 85
<p>A Lisp setup consists of three parts: a running Lisp instance, a text editor connected to that running Lisp instance, and project setup and libraries.</p>

<p>The most common way is to use <a href="http://www.emacs.org">Emacs</a> and <a href="https://common-lisp.net/project/slime/">SLIME</a> as text editor/IDE and <a href="https://common-lisp.net/project/asdf/">ASDF</a> + <a href="http://www.quicklisp.org">Quicklisp</a> for project setup and libraries.</p>

<p><a href="https://common-lisp.net/project/slime/">SLIME</a> is an extension to the Emacs text editor that connects the editor to the running Lisp image (called *inferior-lisp*) and interacts with it. It provides lisp code evaluation, compilation, and macroexpansion, online documentation, code navigation, objects inspection, debugger, and much much more.</p>

<p><a href="https://common-lisp.net/project/asdf/">ASDF</a> is the Lisp version of Make. It is used to define projects (called systems), its dependencies, and load and compile the project.</p>

<p><a href="https://www.quicklisp.org">Quicklisp</a> is a library manager for Common Lisp. Use it to download, install, and load any of over 1,500 libraries with a few simple commands.</p>

86
<p>For an introduction on how to set them all up, you can have a look at <a href="https://lispcookbook.github.io/cl-cookbook/getting-started.html">this guide</a>.</p>
Mariano Montone's avatar
Mariano Montone committed
87 88 89

<p>You can also watch this video tutorial:</p>

Mariano Montone's avatar
Mariano Montone committed
90
<p>
Mariano Montone's avatar
Mariano Montone committed
91 92 93
    <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#setup_video" aria-expanded="false" aria-controls="collapseExample">
        <i class="fa fa-play"></i>&nbsp;&nbsp;&nbsp;Watch an introductory video
    </button>
Mariano Montone's avatar
Mariano Montone committed
94 95
</p>
<div class="collapse" id="setup_video">
Mariano Montone's avatar
Mariano Montone committed
96
    <iframe width="560" height="315" src="https://www.youtube.com/embed/VnWVu8VVDbI" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
Mariano Montone's avatar
Mariano Montone committed
97 98
</div>

Mariano Montone's avatar
Mariano Montone committed
99 100 101 102 103 104 105
<h2>Read about Lisp</h2>

<p>A good way to learn Lisp is to go through <a href="http://www.gigamonkeys.com/book/">Practical Common Lisp book</a>.
</p>

<p>Read <a href="/documentation">our documentation</a> for more options.</p>

Mariano Montone's avatar
Mariano Montone committed
106 107
<h2>Start a new project</h2>

108
<p>You may want check out <a href="https://lispcookbook.github.io/cl-cookbook/getting-started.html">the Common Lisp Cookbook</a> for getting started on Common Lisp ecosystem.</p>
Mariano Montone's avatar
Mariano Montone committed
109

Mariano Montone's avatar
Mariano Montone committed
110
<p>
Mariano Montone's avatar
Mariano Montone committed
111 112 113
    <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#start_project_video" aria-expanded="false" aria-controls="collapseExample">
        <i class="fa fa-play"></i>&nbsp;&nbsp;&nbsp;Watch an introductory video
    </button>
Mariano Montone's avatar
Mariano Montone committed
114 115
</p>
<div class="collapse" id="start_project_video">
Mariano Montone's avatar
Mariano Montone committed
116
    <iframe width="560" height="315" src="https://www.youtube.com/embed/SPgjgybGb5o" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
Mariano Montone's avatar
Mariano Montone committed
117
</div>
Mariano Montone's avatar
Mariano Montone committed
118

Mariano Montone's avatar
Mariano Montone committed
119
<h2>Libraries</h2>
Mariano Montone's avatar
Content  
Mariano Montone committed
120

Mariano Montone's avatar
Mariano Montone committed
121 122
<p>Check out <a href="/libraries">this list</a> of Lisp libraries.</p>

123
<p>The easiest way to download and load libraries is via <a href="http://www.quicklisp.org">Quicklisp</a>.  <a href="https://lispcookbook.github.io/cl-cookbook/getting-started.html#install-quicklisp">Follow these instructions</a> to get started.</p>
Mariano Montone's avatar
Content  
Mariano Montone committed
124

Mariano Montone's avatar
Mariano Montone committed
125
<h2>Resources</h2>
Mariano Montone's avatar
Content  
Mariano Montone committed
126

Mariano Montone's avatar
Mariano Montone committed
127
<p>Here's a list of alternative guides for getting started:
Mariano Montone's avatar
Mariano Montone committed
128 129 130 131 132
    <ul>
        <li><a target="_blank" href="https://lispmethods.com/development-environment.html">Getting Started With Common Lisp</a> at lispmethods.com.</li>
        <li><a href="http://articulate-lisp.com">Articulate Lisp site</a>.</li>
        <li><a target="_blank" href="https://cliki.net/Getting%20Started">CLiki guide</a>.</li>
    </ul>
Mariano Montone's avatar
Mariano Montone committed
133
</p>