Skip to content

Commit

Permalink
doc: fix build and linkcheck errors
Browse files Browse the repository at this point in the history
  • Loading branch information
cgay committed May 16, 2024
1 parent d21d018 commit ba5a810
Show file tree
Hide file tree
Showing 80 changed files with 310 additions and 341 deletions.
8 changes: 5 additions & 3 deletions documentation/source/about/examples/hello_world.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,11 @@ The canonical "Hello World" program in Dylan.
format-out("Hello!\n");
.. hint:: The `dylan new application </package/dylan-tool/index.html#dylan-new-application>`_
command will create these files for you, along with a test suite and
build files.
.. hint:: The `deft new application
<https://opendylan.org/package/deft/index.html#deft-new-application>`_
command (called ``dylan new application`` in Open Dylan 2024.1 and
older releases) will create these files for you, along with a test
suite and build files.

How it works
============
Expand Down
3 changes: 1 addition & 2 deletions documentation/source/about/examples/macros.rst
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,5 @@ See also:
in common-dylan is a simple example of making a new top-level "define" form.
* :drm:`Built-in macros <Built-In_Macros_and_Special_Definitions>` -- Many of
the basic features of Dylan are implemented as macros.
* The `Dylan Macro System </articles/macro-system.html>`_ article by Dustin
Voss.
* The :doc:`Dylan Macro System </articles/macro-system>` article by Dustin Voss.
* The :drm:`Macros` chapter in the :drm:`DRM <Index>`.
18 changes: 9 additions & 9 deletions documentation/source/articles/beyond-java.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ The Java Age
We have been living through the Java age. It is somewhat of an understatement
to say that there has been a great deal of interest in the `Java programming
language
<http://web.archive.org/web/20030409041302/http://java.sun.com/docs/books/jls/html/index.html>`_
<https://web.archive.org/web/20030409041302/http://java.sun.com/docs/books/jls/html/index.html>`_
-- although as far as hype goes `XML
<http://web.archive.org/web/20030409041302/http://www.xml.org/>`_ is now
<https://web.archive.org/web/20030409041302/http://www.xml.org/>`_ is now
overshadowing it. Initially Java, outside `Sun Microsystems
<http://web.archive.org/web/20030409041302/http://www.sun.com/>`_ at least, was
<https://web.archive.org/web/20030409041302/http://www.sun.com/>`_ at least, was
seen as a programming language purely for the Internet. In particular, it came
with a virtual machine that could be embedded in web browsers and a security
model to control the activity of Java programs running in such browsers.
Expand All @@ -31,12 +31,12 @@ These days, however, Java has moved on and developers are using the language
for all sorts of applications. Java is perceived as a reasonable general
purpose programming language -- one that is good enough. The tools are
evolving. JIT compilers like `Sun's Hotspot
<http://web.archive.org/web/20030409041302/http://www.javasoft.com/products/hotspot/>`_
<https://web.archive.org/web/20030409041302/http://www.javasoft.com/products/hotspot/>`_
are making Java code run faster. UML-based design tools like `Rational Rose
<http://web.archive.org/web/20030409041302/http://www.rational.com/products/rose/index.jtmpl>`_
<https://web.archive.org/web/20030409041302/http://www.rational.com/products/rose/index.jtmpl>`_
are finding Java's rigid syntax amenable to round-trip engineering. EJB-based
Application Servers like `BEA's WebLogic
<http://web.archive.org/web/20030409041302/http://www.bea.com/>`_ are providing
<https://web.archive.org/web/20030409041302/http://www.bea.com/>`_ are providing
the background of services needed for many kinds of business applications.

So what's the problem?
Expand Down Expand Up @@ -71,7 +71,7 @@ Java. This need not mean going back to C++. After all, Java's popularization of
garbage collection and pointer-free programming has probably significantly
advanced the cause of reliable software. This also does not mean stepping
sideways to `C#
<http://web.archive.org/web/20030409041302/http://msdn.microsoft.com/vstudio/nextgen/technology/csharpintro.asp>`_
<https://web.archive.org/web/20030409041302/http://msdn.microsoft.com/vstudio/nextgen/technology/csharpintro.asp>`_
-- a similar language with many of the same problems.

The alternative programming language that I'm proposing in this article is
Expand All @@ -90,12 +90,12 @@ An Example
==========

Since, according to `Samuel Johnson
<http://web.archive.org/web/20030409041302/http://www.samueljohnson.com/>`_,
<https://web.archive.org/web/20030409041302/http://www.samueljohnson.com/>`_,
"example is always more efficacious than precept", I will examine a real
programming task that is made more awkward by Java and more elegant by Dylan.

In the last few years I've personally been working on some `CORBA
<http://web.archive.org/web/20030409041302/http://www.corba.org/>`_
<https://web.archive.org/web/20030409041302/http://www.corba.org/>`_
projects. In particular, I've written compilers in both Dylan and Java for
CORBA's Interface Definition Language (IDL), so I feel able to show how a
language like Dylan can simplify application development compared to Java. In
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,6 @@ anywhere inside a body.

--------------

`Next -- Conditions and Multiple Values: The Quadratic
Formula <2-quadratic.html>`_
:doc:`Next -- Conditions and Multiple Values: The Quadratic Formula <2-quadratic>`

Copyright © 1995 Paul Haahr. All rights reserved.
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,6 @@ predicates end in question marks, as we can see from ``negative?`` and

--------------

`Back -- A Simple Function: Distance <1-distance.html>`_ | `Next -- Iteration and Sequences: Dot Product <3-dot-product.html>`_
:doc:`Back -- A Simple Function: Distance <1-distance>` | :doc:`Next -- Iteration and Sequences: Dot Product <3-dot-product>`

Copyright © 1995 Paul Haahr. All rights reserved.
Original file line number Diff line number Diff line change
Expand Up @@ -521,7 +521,6 @@ readable and maintainable.

--------------

`Back -- Conditions and Multiple Values: The Quadratic
Formula <2-quadratic.html>`_
:doc:`Back -- Conditions and Multiple Values: The Quadratic Formula <2-quadratic>`

Copyright © 1995 Paul Haahr. All rights reserved.
17 changes: 9 additions & 8 deletions documentation/source/articles/procedural-dylan/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,14 @@
Procedural Dylan
================

.. toctree::
:hidden:
:maxdepth: 2

1-distance
2-quadratic
3-dot-product

or How to write Pascal programs in Dylan
----------------------------------------

Expand All @@ -19,13 +27,6 @@ addition to one's bag of tricks.
This essay is intended to be used as a tutorial introduction and not as
a complete reference work. To avoid bogging down the discussion, much
has been omitted and some details have been ignored. For more complete
information, see the `Dylan Reference Manual </books/drm/>`__.

.. toctree::
:titlesonly:

1-distance
2-quadratic
3-dot-product
information, see the `Dylan Reference Manual </books/drm/>`_.

Copyright © 1995 Paul Haahr. All rights reserved.
30 changes: 17 additions & 13 deletions documentation/source/building-with-duim/callbacks.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ Adding Callbacks to the Application
***********************************

At this point, the task list manager still does very little. If you try
running the code (as described in `Starting the
application <improve.html#starting-the-application>`_), and interacting with any of the
running the code (as described in :ref:`starting-the-application`), and interacting with any of the
elements in the GUI (clicking on a button, choosing a menu command, and
so on), then only the "not yet implemented" message is displayed. This
section shows you how to remedy this situation, by adding callback
Expand Down Expand Up @@ -54,7 +53,9 @@ just using gadgets, then you only ever need to use callbacks.

.. index::
single: task list manager; underlying data structures for tasks


.. _defining-the-underlying-data-structures-for-tasks:

Defining the underlying data structures for tasks
=================================================

Expand Down Expand Up @@ -150,8 +151,8 @@ ensure that information about tasks is passed to the ``task-list`` pane
correctly. Make these changes to the existing definition in the file
``frame.dylan``.

In `Gluing the final design together <menus.html#gluing-the-new-design-together>`_, the
definition of ``task-list`` was given as:
In :ref:`menus--gluing-it-together`, the definition of ``task-list`` was
given as:

.. code-block:: dylan
Expand Down Expand Up @@ -371,7 +372,9 @@ developing application, or in completely different applications.
single: file handling in DUIM applications
single: handling files in the task list manager
single: task list manager; handling files


.. _handling-files-in-the-task-list-manager:

Handling files in the task list manager
---------------------------------------

Expand All @@ -383,7 +386,7 @@ essential in even the most trivial application.

.. index::
single: DUIM applications; file handling in

There are three methods and two functions necessary for handling files.
The methods handle GUI-specific operations involved in loading and
saving files. The functions deal with the basic task of saving data
Expand Down Expand Up @@ -825,7 +828,7 @@ itself. Note that the ``task-list-modified?`` slot of the ``<task-list>`` is
set to ``#f``, reflecting the fact that the task list is loaded, but
unchanged. This does not have to be done explicitly by ``load-task-list``,
since ``#f`` is the default value of this slot, as you can see from its
definition in `Defining the underlying data structures for tasks`_.
definition in :ref:`defining-the-underlying-data-structures-for-tasks`.

The file is opened for reading using the ``with-open-file`` macro. It is
then read a line at a time, setting the local variables ``name`` and
Expand Down Expand Up @@ -998,8 +1001,7 @@ As with other DUIM methods you have seen, ``frame`` and ``task-list`` are
specified using known slot values about the gadget supplied to
``frame-add-task``, and the frame that contains the gadget. The ``name``
and ``priority`` values are specified by calling the ``prompt-for-task``
method defined in `Creating a dialog for adding new
items <improve.html#creating-a-dialog-for-adding-new-items>`_. This method displays a dialog into which
method defined in :ref:`improve--creating-a-dialog-for-new-items`. This method displays a dialog into which
the user types the text for the new task and chooses the priority, both
of which values are returned from ``prompt-for-task``.

Expand Down Expand Up @@ -1192,7 +1194,7 @@ section, together with a brief description of each one:

Two methods are defined that deal with updating the GUI whenever a
change is made to the task selection state. This method is described
in `Enabling and disabling buttons in the interface`_.
in :ref:`enable-disable-buttons`.

``refresh-task-frame``

Expand Down Expand Up @@ -1296,6 +1298,8 @@ in `DUIM support for adding and removing tasks`_.

Add the code for these methods to ``frame.dylan``.

.. _enable-disable-buttons:

Enabling and disabling buttons in the interface
-----------------------------------------------

Expand All @@ -1317,8 +1321,8 @@ method requires a slightly different definition, and the second method
is not required at all.

The ``note-task-selection-change`` method defined on ``<task-frame>``
is called by ``refresh-task-frame``, described on `Refreshing the
list of tasks <callbacks.html#refreshing-the-list-of-tasks>`_. The
is called by ``refresh-task-frame``, described in `Refreshing the
list of tasks <#refreshing-the-list-of-tasks>`_. The
refresh-task-frame method is called whenever the list of tasks needs
to be refreshed for whatever reason. This happens most commonly after
adding or removing a task from the list, or loading in a new task list
Expand Down
12 changes: 5 additions & 7 deletions documentation/source/building-with-duim/commands.rst
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@ Changes to button definitions

The definition of each button in the definition of ``<task-frame>`` needs
to be modified compared to their definition in the Task List 1 project,
as described in `Gluing the new design together <improve.html#gluing-the-new-design-together>`_.
as described in :ref:`improve--gluing-it-together`.

Broadly speaking, you need to update the ``command:`` keyword/argument
pair for each button gadget, and you need to redefine the activate
Expand Down Expand Up @@ -395,9 +395,7 @@ instance of ``<gadget>``. This change results in these new definitions:
command-enabled?(frame-remove-task, frame) := task ~= #f;
end method note-task-selection-change;
For details about ``note-task-selection-change``, see `Enabling and
disabling buttons in the interface <callbacks.html#enabling-and-disabling-buttons-in-the-interface>`_. See `A
task list manager using command tables <source.html#a-task-list-manager-using-command-tables>`_ for the
complete source code for the Task List 2 project.


For details about ``note-task-selection-change``, see
:ref:`enable-disable-buttons`. See
:ref:`task-list-manager-using-command-tables` for the complete source code for
the Task List 2 project.
4 changes: 3 additions & 1 deletion documentation/source/building-with-duim/design.rst
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,9 @@ box at the appropriate position in the call to ``vertically``.
single: examples; using contain to run
single: running examples interactively using contain
single: contain to run examples interactively


.. _using-contain-to-run-examples-interactively:

Using contain to run examples interactively
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Expand Down
40 changes: 22 additions & 18 deletions documentation/source/building-with-duim/improve.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Improving The Design
********************

The simple layout hierarchy described in `Creating the basic sheet
hierarchy <design.html#creating-the-basic-sheet-hierarchy>`_ has a
hierarchy <design#creating-the-basic-sheet-hierarchy>`_ has a
number of problems associated with it, all of which revolve around the
fact that the task list manager does not yet look very much like a
standard Windows application. Although it is a simple design that does
Expand Down Expand Up @@ -76,7 +76,9 @@ Make sure that this file is the last one listed in the project window.
.. index::
single: applications; starting
single: starting an application


.. _starting-the-application:

Starting the application
------------------------

Expand Down Expand Up @@ -173,7 +175,9 @@ defined, to make the task list manager do something more substantial.
.. index::
single: defining; frame classes
single: frame classes; defining


.. _defining-a-new-frame-class:

Defining a new frame class
--------------------------

Expand Down Expand Up @@ -253,7 +257,7 @@ radio box, and the list box from the initial design:
Note that the definition of each element is identical to the
definitions included in the original layout described in `Creating the
basic sheet hierarchy
<design.html#creating-the-basic-sheet-hierarchy>`_ (except that
<design#creating-the-basic-sheet-hierarchy>`_ (except that
activate callbacks have been added to the code). Adding ``(frame)``
immediately after the name of each pane lets you refer to the frame
itself within the frame definition using a local variable. This means
Expand All @@ -266,7 +270,7 @@ the frame itself.
In addition, you need to define the layout in which to place these
panes. This is itself just another pane, and its definition is again
identical to the original layout described in `Creating the basic
sheet hierarchy <design.html#creating-the-basic-sheet-hierarchy>`_,
sheet hierarchy <design#creating-the-basic-sheet-hierarchy>`_,
with one exception; rather than defining each element explicitly, you
just include a reference to the relevant pane that you have already
defined using normal slot syntax, thus:
Expand Down Expand Up @@ -379,8 +383,8 @@ robust, making it easier to modify and, eventually, maintain.

If you want to try running your code, remember that you need to define
some additional methods to create a frame instance and exit it cleanly.
Methods for doing this were provided in `Starting the
application`_. If you define these methods now, you
Methods for doing this were provided in :ref:`starting-the-application`.
If you define these methods now, you
can create running versions of each successive generation of the
application as it is developed.

Expand Down Expand Up @@ -520,6 +524,8 @@ design.
.. index::
single: task list manager; intermediate design

.. _improve--gluing-it-together:

Gluing the new design together
------------------------------

Expand Down Expand Up @@ -611,7 +617,7 @@ has reduced to a single column layout whose children are ``task-list`` and
The definition for the new design of the frame class now looks as
follows (button definitions vary slightly for the Task List 2 project,
see `A task list manager using command tables
<source.html#a-task-list-manager-using-command-tables>`_):
<source#a-task-list-manager-using-command-tables>`_):

.. code-block:: dylan
Expand Down Expand Up @@ -671,12 +677,14 @@ see `A task list manager using command tables
Note that this definition does not incorporate the original ``task-text``
pane defined in `Defining a new frame class`_. In fact, this part of the
original interface is handled differently in the final design, and is
re-implemented in `Creating a dialog for adding new items`_.
re-implemented in :ref:`improve--creating-a-dialog-for-new-items`.

.. index::
single: creating; basic sheet hierarchy
single: dialogs; for requesting information, creating


.. _improve--creating-a-dialog-for-new-items:

Creating a dialog for adding new items
--------------------------------------

Expand Down Expand Up @@ -716,14 +724,10 @@ new task.
Add this method to ``frame.dylan``.

.. note:: The definition of the ``prompt-for-task`` method uses the
``<priority>`` type. Note that this type is defined in `Defining
the underlying data structures for tasks
<callbacks.html#defining-the-underlying-data-structures-for-tasks>`_. Until
the relevant code in `Defining the underlying data structures for
tasks
<callbacks.html#defining-the-underlying-data-structures-for-tasks>`_
is added to your project, any attempt to build it will generate a
serious warning.
``<priority>`` type. Note that this type is defined in
:ref:`defining-the-underlying-data-structures-for-tasks`. Until the relevant
code in :ref:`defining-the-underlying-data-structures-for-tasks` is added
to your project, any attempt to build it will generate a serious warning.

.. code-block:: dylan
Expand Down
Loading

0 comments on commit ba5a810

Please sign in to comment.