Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Documentation rework #49

Merged
merged 4 commits into from over 1 year ago

2 participants

Francesco Ceccon Bruce Mitchener
Francesco Ceccon
Collaborator

I changed the documentation to use the new style introduced with the community page. Then changed the publications page to be consistent with the other pages.

I will reorder the documentation sections soon™.

fracek added some commits
Francesco Ceccon fracek Use sidebar navigation on documentation page
This commit is a first iteration of a reorganization of the documentation
page.
dc9b1dc
Francesco Ceccon fracek Use definition style on documentation page
Replace the old quotes style (gray bars) with the new definiton
(no gray bars) style for text blocks.
9f56926
Francesco Ceccon fracek Add 3 publications to the documentation page 968ca5b
Francesco Ceccon fracek Convert the publications page to the new style
Change the old quote style to the new style.
45700e6
Bruce Mitchener waywardmonkeys merged commit 292f0a6 into from
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Showing 4 unique commits by 1 author.

Mar 10, 2013
Francesco Ceccon fracek Use sidebar navigation on documentation page
This commit is a first iteration of a reorganization of the documentation
page.
dc9b1dc
Mar 17, 2013
Francesco Ceccon fracek Use definition style on documentation page
Replace the old quotes style (gray bars) with the new definiton
(no gray bars) style for text blocks.
9f56926
Francesco Ceccon fracek Add 3 publications to the documentation page 968ca5b
Francesco Ceccon fracek Convert the publications page to the new style
Change the old quote style to the new style.
45700e6
This page is out of date. Refresh to see the latest.
170 source/documentation/index.rst
Source Rendered
... ... @@ -1,3 +1,19 @@
  1 +.. raw:: html
  2 +
  3 + <div class="row">
  4 + <div class="span3 bs-docs-sidebar">
  5 + <ul class="nav nav-list bs-docs-sidenav" data-spy="affix">
  6 + <li><a href="#learning-dylan"><i class="icon-chevron-right"></i> Learning Dylan</a></li>
  7 + <li><a href="#articles"><i class="icon-chevron-right"></i> Articles</a></li>
  8 + <li><a href="#publications"><i class="icon-chevron-right"></i> Publications</a></li>
  9 + <li><a href="#cheat-sheets"><i class="icon-chevron-right"></i> Cheat Sheets</a></li>
  10 + <li><a href="#references"><i class="icon-chevron-right"></i> References</a></li>
  11 + <li><a href="#for-open-dylan-developers"><i class="icon-chevron-right"></i> For Open Dylan Developers</a></li>
  12 + <li><a href="#archived-documentation"><i class="icon-chevron-right"></i> Archived Documentation</a></li>
  13 + </ul>
  14 + </div>
  15 + <div class="span9">
  16 +
1 17 *************
2 18 Documentation
3 19 *************
@@ -8,12 +24,10 @@ Documentation
8 24 in the near future.
9 25 :class: alert alert-block alert-warning
10 26
11   -.. raw:: html
  27 +Learning Dylan
  28 +==============
12 29
13   - <div class="row">
14   - <div class="span6">
15   -
16   - <h2>Learning Dylan</h2>
  30 +.. raw:: html
17 31
18 32 <div class="alert alert-block alert-success">
19 33 <p>Just getting started with Open Dylan? We recommend that
@@ -23,43 +37,29 @@ Documentation
23 37 book.</p>
24 38 </div>
25 39
26   -`An Introduction to Dylan <intro-dylan/index.html>`_
27   -[`pdf <intro-dylan/IntroductiontoDylan.pdf>`__]
28   -[`epub <intro-dylan/AnIntroductiontoDylan.epub>`__]
29   -
  40 +`An Introduction to Dylan <intro-dylan/index.html>`_ [`pdf <intro-dylan/IntroductiontoDylan.pdf>`__] [`epub <intro-dylan/AnIntroductiontoDylan.epub>`__]
30 41 This tutorial is written primarily for those with solid programming
31 42 experience in C++ or another object-oriented, static language. It
32 43 provides a gentler introduction to Dylan than does the Dylan Reference
33 44 Manual (DRM).
34 45
35   -`Dylan Programming <http://opendylan.org/books/dpg/>`_
36   -[`pdf <http://opendylan.org/books/dpg/DylanProgramming.pdf>`__]
37   -[`epub <http://opendylan.org/books/dpg/DylanProgramming.epub>`__]
38   -
  46 +`Dylan Programming <http://opendylan.org/books/dpg/>`_ [`pdf <http://opendylan.org/books/dpg/DylanProgramming.pdf>`__] [`epub <http://opendylan.org/books/dpg/DylanProgramming.epub>`__]
39 47 A good, book length Dylan tutorial by several Harlequin employees.
40 48
41   -`Getting Started with Open Dylan <getting-started/index.html>`_
42   -[`pdf <getting-started/GettingStartedWithOpenDylan.pdf>`__]
43   -[`epub <getting-started/GettingStartedWithOpenDylan.epub>`__]
44   -[`old HTML <http://opendylan.org/documentation/opendylan/env/index.htm>`__]
45   -
  49 +`Getting Started with Open Dylan <getting-started/index.html>`_ [`pdf <getting-started/GettingStartedWithOpenDylan.pdf>`__] [`epub <getting-started/GettingStartedWithOpenDylan.epub>`__] [`old HTML <http://opendylan.org/documentation/opendylan/env/index.htm>`__]
46 50 Describes Open Dylan's development environment. The first two
47 51 chapters are useful on any platform, whereas the remaining
48 52 chapters document the Open Dylan IDE on Windows.
49 53
50   -`Building Applications Using DUIM <building-with-duim/index.html>`_
51   -[`pdf <building-with-duim/BuildingApplicationsWithDUIM.pdf>`__]
52   -[`epub <building-with-duim/BuildingApplicationsWithDUIM.epub>`__]
53   -[`old HTML <http://opendylan.org/documentation/opendylan/dguide/index.htm>`__]
54   -
  54 +`Building Applications Using DUIM <building-with-duim/index.html>`_ [`pdf <building-with-duim/BuildingApplicationsWithDUIM.pdf>`__] [`epub <building-with-duim/BuildingApplicationsWithDUIM.epub>`__] [`old HTML <http://opendylan.org/documentation/opendylan/dguide/index.htm>`__]
55 55 Describes how to use DUIM (Dylan User Interface Manager),
56 56 the portable window programming toolkit. This is only useful
57 57 if you are using Open Dylan on Windows.
58 58
59   -.. raw:: html
  59 +Articles
  60 +========
60 61
61   - <hr>
62   - <h2>Articles</h2>
  62 +.. raw:: html
63 63
64 64 <div class="alert alert-block alert-info">
65 65 <p>Featured articles and blog postings.</p>
@@ -68,12 +68,10 @@ Documentation
68 68 <h3>Learning Dylan</h3>
69 69
70 70 `Dylan Macro System <../articles/macro-system/index.html>`_ by Dustin Voss.
71   -
72 71 This article holds hard-won knowledge about how the Dylan macro system works
73 72 and how to work around some of the gotchas that may catch a macro writer.
74 73
75 74 `Procedural Dylan <../articles/procedural-dylan/index.html>`_ by Paul Haahr.
76   -
77 75 This essay explores Dylan from the perspective of a programmer used to
78 76 traditional procedural languages, such as Pascal or C.
79 77
@@ -82,23 +80,64 @@ Documentation
82 80 <h3>Tools</h3>
83 81
84 82 `Development inside emacs using DIME <../news/2011/12/12/dswank.html>`_
85   -
86 83 An exciting look at using DIME and emacs for Dylan development.
87 84
88   -.. raw:: html
89   -
90   - <hr>
91   - <h2>Publications</h2>
92   -
93   -`See our publications page <publications.html>`_.
  85 +Publications
  86 +============
  87 +
  88 +**Extending Dylan's type system for better type inference and error detection** [`pdf <http://www.itu.dk/~hame/ilc2010.pdf>`__] [`bib <../_static/documentation/mehnert2010.bib>`__]
  89 + Whereas dynamic typing enables rapid prototyping and easy
  90 + experimentation, static typing provides early error detection and
  91 + better compile time optimization. Gradual typing provides the best
  92 + of both worlds. This paper shows how to define and implement
  93 + gradual typing in Dylan, traditionally a dynamically typed
  94 + language. Dylan poses several special challenges for gradual
  95 + typing, such as multiple return values, variable-arity methods and
  96 + generic functions (multiple dispatch).
  97 +
  98 + In this paper Dylan is extended with function types and parametric
  99 + polymorphism. We implemented the type system and a
  100 + unification-based type inference algorithm in the mainstream Dylan
  101 + compiler. As case study we use the Dylan standard library (roughly
  102 + 32000 lines of code), which witnesses that the implementation
  103 + generates faster code with fewer errors. Some previously
  104 + undiscovered errors in the Dylan library were revealed.
  105 +
  106 + https://dl.acm.org/citation.cfm?id=1869643.1869645
  107 +
  108 +**Partial Dispatch: Optimizing Dynamically-Dispatched Multimethod Calls with Compile-Time Types and Runtime Feedback** [`pdf <http://people.csail.mit.edu/jrb/Projects/pd.pdf>`__] [`bib <../_static/documentation/bachrach2000.bib>`__]
  109 + We presented an approach to gaining back complete class hierarchy
  110 + information by delaying the construction of dispatch caches until
  111 + the whole class hierarchy is available at run- time. Run-time
  112 + call-site caches can then be constructed as specialized decision
  113 + trees built from disjointness and concrete- subtype operations on
  114 + actual arguments combined with compile-time inferred types
  115 + injected into the run-time. Unnecessary decision steps can be
  116 + avoided and often run-time dispatch can be completely
  117 + eliminated. We consider this to be a nice half-way house between
  118 + full static compilation and dynamic compilation which mitigates
  119 + the runtime expense of separately compiled components while
  120 + satisfying our implementation constraints of code shareable
  121 + components, multi-threaded runtime, incremental development, “pay
  122 + as you go philosophy”, and interoperability with standard tools.
  123 +
  124 +**D-Expressions: Lisp Power, Dylan Style** [`pdf <http://people.csail.mit.edu/jrb/Projects/dexprs.pdf>`__] [`bib <../_static/documentation/bachrach1999.bib>`__]
  125 + This paper aims to demonstrate that it is possible for a language
  126 + with a rich, conventional syntax to provide Lisp-style macro power
  127 + and simplicity. We describe a macro system and syntax manipulation
  128 + toolkit designed for the Dylan programming language that meets,
  129 + and in some areas exceeds, this standard. The debt to Lisp is
  130 + great, however, since although Dylan has a conventional algebraic
  131 + syntax, the approach taken to describe and represent that syntax
  132 + is distinctly Lisp-like in philosophy.
  133 +
  134 +`See our publications page to find more <publications.html>`_.
  135 +
  136 +Cheat Sheets
  137 +============
94 138
95 139 .. raw:: html
96 140
97   - </div>
98   - <div class="span6">
99   -
100   - <h2>Cheat Sheets</h2>
101   -
102 141 <div class="alert alert-block alert-info">
103 142 <p>Quick one-page sheets for common tasks.</p>
104 143 </div>
@@ -111,26 +150,20 @@ Documentation
111 150 * `Collections <cheatsheets/collections.html>`_
112 151 * `For Scheme programmers <cheatsheets/scheme.html>`_
113 152
114   -.. raw:: html
  153 +References
  154 +==========
115 155
116   - <hr>
117   - <h2>References</h2>
  156 +.. raw:: html
118 157
119 158 <div class="alert alert-block alert-info">
120 159 <p>These are some lengthier reference materials. While they
121 160 make for dry reading, they're full of invaluable information!</p>
122 161 </div>
123 162
124   -`Dylan Reference Manual
125   -<http://opendylan.org/books/drm/>`_ (`Errata
126   -<http://opendylan.org/books/drm/drm_errata.html>`_)
127   -
  163 +`Dylan Reference Manual <http://opendylan.org/books/drm/>`_ (`Errata <http://opendylan.org/books/drm/drm_errata.html>`_)
128 164 The official definition of the Dylan language and standard library.
129 165
130   -`Dylan Library Reference <library-reference/index.html>`_
131   -[`pdf <library-reference/DylanLibraryReference.pdf>`__]
132   -[`epub <library-reference/DylanLibraryReference.epub>`__]
133   -
  166 +`Dylan Library Reference <library-reference/index.html>`_ [`pdf <library-reference/DylanLibraryReference.pdf>`__] [`epub <library-reference/DylanLibraryReference.epub>`__]
134 167 Describes the Open Dylan implementation of the Dylan language, a
135 168 core set of Dylan libraries, and a library interchange mechanism.
136 169 The core libraries provide many language extensions, a threads
@@ -141,17 +174,15 @@ Documentation
141 174 as a foreign function interface and some low-level access to the
142 175 Microsoft Win32 API.
143 176
144   -`DUIM library reference
145   -<http://opendylan.org/documentation/opendylan/dref/index.htm>`_
146   -
  177 +`DUIM library reference <http://opendylan.org/documentation/opendylan/dref/index.htm>`_
147 178 Describes the libraries forming DUIM (Dylan User Interface Manager),
148 179 the portable window programming toolkit. It complements
149 180 Building Applications Using DUIM.
150 181
151   -.. raw:: html
  182 +For Open Dylan Developers
  183 +=========================
152 184
153   - <hr>
154   - <h2>For Open Dylan Developers</h2>
  185 +.. raw:: html
155 186
156 187 <div class="alert alert-block alert-info">
157 188 <p>Notes and materials useful to those working on
@@ -159,29 +190,22 @@ Documentation
159 190 level details.</p>
160 191 </div>
161 192
162   -`Open Dylan Hacker's Guide <hacker-guide/index.html>`_
163   -[`pdf <hacker-guide/OpenDylanHackersGuide.pdf>`__]
164   -[`epub <hacker-guide/OpenDylanHackersGuide.epub>`__]
165   -
  193 +`Open Dylan Hacker's Guide <hacker-guide/index.html>`_ [`pdf <hacker-guide/OpenDylanHackersGuide.pdf>`__] [`epub <hacker-guide/OpenDylanHackersGuide.epub>`__]
166 194 A work in progress to help out people who are hacking on Open Dylan itself.
167 195
168   -`Dylan Style Guide <style-guide/index.html>`_
169   -[`pdf <style-guide/StyleGuide.pdf>`__]
170   -[`epub <style-guide/StyleGuide.epub>`__]
171   -
  196 +`Dylan Style Guide <style-guide/index.html>`_ [`pdf <style-guide/StyleGuide.pdf>`__] [`epub <style-guide/StyleGuide.epub>`__]
172 197 Notes and thoughts on how to format your Dylan code. This is the style
173 198 guide that we aspire to adhere to in the Open Dylan sources.
174 199
175 200 `Dylan Enhancement Proposals <../proposals/index.html>`_
176   -
177 201 A series of proposals for improvements to the Open Dylan
178 202 implementation and related libraries.
179 203
180 204
181   -.. raw:: html
  205 +Archived Documentation
  206 +======================
182 207
183   - <hr>
184   - <h2>Archived Documentation</h2>
  208 +.. raw:: html
185 209
186 210 <div class="alert alert-block alert-warning">
187 211 <p>This is old documentation that we don't plan to
@@ -189,14 +213,10 @@ Documentation
189 213 material.</p>
190 214 </div>
191 215
192   -`Developing Component Software with CORBA
193   -<http://opendylan.org/documentation/opendylan/corba/index.htm>`_
194   -
  216 +`Developing Component Software with CORBA <http://opendylan.org/documentation/opendylan/corba/index.htm>`_
195 217 A tutorial and reference for CORBA interoperability using the Open Dylan ORB.
196 218
197   -`OLE, COM, ActiveX and DBMS library reference
198   -<http://opendylan.org/documentation/opendylan/interop2/index.htm>`_
199   -
  219 +`OLE, COM, ActiveX and DBMS library reference <http://opendylan.org/documentation/opendylan/interop2/index.htm>`_
200 220 Describes high and low level interfaces to COM, OLE, and
201 221 ActiveX component technology, and generic DBMS support, through
202 222 SQL with an ODBC backend.
56 source/documentation/publications.rst
Source Rendered
@@ -2,12 +2,7 @@
2 2 Publications about Dylan
3 3 ************************
4 4
5   -**Extending Dylan's type system for better type inference and error
6   -detection**
7   -(by Hannes Mehnert at ILC 2010
8   -`pdf <http://www.itu.dk/~hame/ilc2010.pdf>`__
9   -`bib <../_static/documentation/mehnert2010.bib>`__)
10   -
  5 +**Extending Dylan's type system for better type inference and error detection** (by Hannes Mehnert at ILC 2010 `pdf <http://www.itu.dk/~hame/ilc2010.pdf>`__ `bib <../_static/documentation/mehnert2010.bib>`__)
11 6 Whereas dynamic typing enables rapid prototyping and easy
12 7 experimentation, static typing provides early error detection and
13 8 better compile time optimization. Gradual typing provides the best
@@ -27,11 +22,7 @@ detection**
27 22
28 23 https://dl.acm.org/citation.cfm?id=1869643.1869645
29 24
30   -**Automatically generated type-safe GTK+ binding for Dylan**
31   -(by Hannes Mehnert at ILC 2009
32   -`pdf <http://www.itu.dk/~hame/ilc09.pdf>`__
33   -`bib <../_static/documentation/mehnert2009.bib>`__)
34   -
  25 +**Automatically generated type-safe GTK+ binding for Dylan** (by Hannes Mehnert at ILC 2009 `pdf <http://www.itu.dk/~hame/ilc09.pdf>`__ `bib <../_static/documentation/mehnert2009.bib>`__)
35 26 We present an automated way to get language bindings for GTK+ for
36 27 Dylan, an object-oriented functional programming language related
37 28 to Lisp. Dylan supports multiple inheritance, polymorphism,
@@ -40,11 +31,7 @@ detection**
40 31 is type-safe, no up- and downcasts are needed.
41 32
42 33
43   -**A domain-specific language for manipulation of binary data in Dylan**
44   -(by Hannes Mehnert and Andreas Bogk at ILC 2007
45   -`pdf <http://www.itu.dk/~hame/ilc07-final.pdf>`__
46   -`bib <../_static/documentation/mehnert2007.bib>`__)
47   -
  34 +**A domain-specific language for manipulation of binary data in Dylan** (by Hannes Mehnert and Andreas Bogk at ILC 2007 `pdf <http://www.itu.dk/~hame/ilc07-final.pdf>`__ `bib <../_static/documentation/mehnert2007.bib>`__)
48 35 We present a domain specific language for manipulation of binary
49 36 data, or structured byte sequences, as they appear in everyday
50 37 applications such as networking or graphics file manipulation. Our
@@ -56,11 +43,7 @@ detection**
56 43
57 44 https://dl.acm.org/citation.cfm?id=1622123.1622148
58 45
59   -**Efficient Compression of Generic Function Dispatch Tables**
60   -(by Eric Kidd - Technical Report Dartmouth College 2001
61   -`pdf <http://www.cs.dartmouth.edu/reports/TR2001-404.pdf>`__
62   -`bib <../_static/documentation/kidd2001.bib>`__)
63   -
  46 +**Efficient Compression of Generic Function Dispatch Tables** (by Eric Kidd - Technical Report Dartmouth College 2001 `pdf <http://www.cs.dartmouth.edu/reports/TR2001-404.pdf>`__ `bib <../_static/documentation/kidd2001.bib>`__)
64 47 A generic function is similar to an overloaded operator, but
65 48 provides a way to select an appropriate behavior at run-time
66 49 instead of compile-time. Dujardin and colleagues have proposed an
@@ -75,11 +58,7 @@ detection**
75 58
76 59 https://dl.acm.org/citation.cfm?id=867862
77 60
78   -**Partial Dispatch: Optimizing Dynamically-Dispatched Multimethod Calls with Compile-Time Types and Runtime Feedback**
79   -(by Jonathan Bachrach and Glenn Burke - Technical Report 2000
80   -`pdf <http://people.csail.mit.edu/jrb/Projects/pd.pdf>`__
81   -`bib <../_static/documentation/bachrach2000.bib>`__)
82   -
  61 +**Partial Dispatch: Optimizing Dynamically-Dispatched Multimethod Calls with Compile-Time Types and Runtime Feedback** (by Jonathan Bachrach and Glenn Burke - Technical Report 2000 `pdf <http://people.csail.mit.edu/jrb/Projects/pd.pdf>`__ `bib <../_static/documentation/bachrach2000.bib>`__)
83 62 We presented an approach to gaining back complete class hierarchy
84 63 information by delaying the construction of dispatch caches until
85 64 the whole class hierarchy is available at run- time. Run-time
@@ -95,11 +74,7 @@ detection**
95 74 components, multi-threaded runtime, incremental development, “pay
96 75 as you go philosophy”, and interoperability with standard tools.
97 76
98   -**D-Expressions: Lisp Power, Dylan Style**
99   -(by Jonathan Bachrach and Keith Playford - Technical Report 1999
100   -`pdf <http://people.csail.mit.edu/jrb/Projects/dexprs.pdf>`__
101   -`bib <../_static/documentation/bachrach1999.bib>`__)
102   -
  77 +**D-Expressions: Lisp Power, Dylan Style** (by Jonathan Bachrach and Keith Playford - Technical Report 1999 `pdf <http://people.csail.mit.edu/jrb/Projects/dexprs.pdf>`__ `bib <../_static/documentation/bachrach1999.bib>`__)
103 78 This paper aims to demonstrate that it is possible for a language
104 79 with a rich, conventional syntax to provide Lisp-style macro power
105 80 and simplicity. We describe a macro system and syntax manipulation
@@ -109,11 +84,7 @@ detection**
109 84 syntax, the approach taken to describe and represent that syntax
110 85 is distinctly Lisp-like in philosophy.
111 86
112   -**Modern languages and Microsoft's component object model**
113   -(by David N. Gray, John Hotchkiss, Seth Laforge, Andrew Shalit and
114   -Toby Weinberg - Communications of the ACM May 1998
115   -`bib <../_static/documentation/gray1998.bib>`__)
116   -
  87 +**Modern languages and Microsoft's component object model** (by David N. Gray, John Hotchkiss, Seth Laforge, Andrew Shalit and Toby Weinberg - Communications of the ACM May 1998 `bib <../_static/documentation/gray1998.bib>`__)
117 88 As the computer industry's reliance on component software increases,
118 89 it becomes increasingly difficult to integrate complex component
119 90 systems. Modern development environments take a variety of approaches
@@ -124,12 +95,7 @@ Toby Weinberg - Communications of the ACM May 1998
124 95
125 96 http://dl.acm.org/citation.cfm?id=274957
126 97
127   -**A Monotonic Superclass Linearization for Dylan**
128   -(by Kim Barrett and Bob Cassels and Paul Haahr and David A. Moon and
129   -Keith Playford and P. Tucker Withington at OOPSLA 1996
130   -`html <http://haahr.tempdomainname.com/dylan/linearization-oopsla96.html>`__
131   -`bib <../_static/documentation/barrett1996.bib>`__)
132   -
  98 +**A Monotonic Superclass Linearization for Dylan** (by Kim Barrett and Bob Cassels and Paul Haahr and David A. Moon and Keith Playford and P. Tucker Withington at OOPSLA 1996 `html <http://haahr.tempdomainname.com/dylan/linearization-oopsla96.html>`__ `bib <../_static/documentation/barrett1996.bib>`__)
133 99 Object-oriented languages with multiple inheritance and automatic
134 100 conflict resolution typically use a linearization of superclasses
135 101 to determine which version of a property to inherit when several
@@ -148,11 +114,7 @@ Keith Playford and P. Tucker Withington at OOPSLA 1996
148 114
149 115 https://dl.acm.org/citation.cfm?id=236337.236343
150 116
151   -**Discovering the way programmers think about new programming environments**
152   -(by Joseph Dumas and Paige Parsons - Communications of the ACM June
153   -1995
154   -`bib <../_static/documentation/dumas1995.bib>`__)
155   -
  117 +**Discovering the way programmers think about new programming environments** (by Joseph Dumas and Paige Parsons - Communications of the ACM June 1995 `bib <../_static/documentation/dumas1995.bib>`__)
156 118 An interesting usability study of a prototype development
157 119 environment for the Dylan programming language is presented
158 120 here. This study's purpose is to determine just how close the

Tip: You can add notes to lines in a file. Hover to the left of a line to make a note

Something went wrong with that request. Please try again.