Skip to content

Commit 2ea6a5a

Browse files
Abhikgitbook-bot
Abhik
authored andcommittedMar 21, 2025··
GitBook: No commit message
1 parent 9b90ac9 commit 2ea6a5a

9 files changed

+132
-89
lines changed
 

‎.gitbook/assets/IRM.pdf

1.95 MB
Binary file not shown.

‎README.md

+23-87
Large diffs are not rendered by default.

‎SUMMARY.md

+7-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
# Table of contents
22

3-
* [2023 Medley Interlisp Project Annual Report](README.md)
4-
* [Page](page.md)
3+
* [Introduction](README.md)
4+
* [Getting Medley Up and Running](getting-medley-up-and-running.md)
5+
* [Understanding and Navigating the Interface](understanding-and-navigating-the-interface.md)
6+
* [Reading LISP Syntax](reading-lisp-syntax.md)
7+
* [Atoms, Functions and Lists](atoms-functions-and-lists.md)
8+
* [Build Your First Interactive Program](build-your-first-interactive-program.md)
9+
* [All About Files](all-about-files.md)

‎all-about-files.md

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
description: >-
3+
The goal of this chapter to introduce the file system, the file browser, how
4+
to save and load files. File formats.
5+
---
6+
7+
# All About Files
8+

‎atoms-functions-and-lists.md

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Atoms, Functions and Lists
2+
3+
#### Atoms
4+
5+
The smallest parts of our code are called atoms. We use them as building blocks for larger tasks. They can be identifiers, symbols, and data. Some atoms are built into the language and help with common tasks, like + for addition. Others are defined by the programmer, like the names of variables or functions.
6+
7+
As we continue, we’ll learn how to combine basic atoms to create more complex logic and programs. 
8+
9+
Note: Don't confuse atoms with operators and syntax elements, which are structural tools that tell the computer how to read our code. In contrast, atoms are the smallest pieces of code in relation to the task at hand.
10+
11+
#### Functions
12+
13+
Functions are reusable tasks broken down into steps for computers to understand. A function is made of three key components:
14+
15+
(1) A name so we can call it. Calling a function tells the computer to start the task. \[Add: How to define a function in Interlisp]
16+
17+
(2) A set of directions telling the computer how to perform the task. \[Add: What marks the beginning and end of arguments in a function?]
18+
19+
(3) Optional parameters that let us change one or more criteria of a task without having to change the underlying flow of logic. \[Add: Where to add parameters]
20+
21+
Functions help us organize our code and save us the trouble of repeating ourselves. Think of them as an easy way to ask the computer to complete a complex task. Rather than describing the task every time, we describe it once and call it by its name when needed. A good practice is to make function names simple but descriptive. 
22+
23+
#### Lists
24+
25+
Lists are ordered groups of atoms enclosed in parentheses. They are fundamental to LISP, as you might have guessed, since LISP is an abbreviation for List Processing. They are how we do things rather than what we do. Lists can contain instructions, data, and other lists. 
26+
27+
One of LISP's special powers is homoiconicity, the ability to treat both code and data as data (inside lists). Programming languages let us automate changing our data. In LISP, we can treat our logic as data and automate its modification as well. Cool!
28+
29+
To wrap your head around the relationship between atoms, lists, and functions, consider this: We can build functions by combining atoms into a list. Our function can be given a name. This name, a symbol, can be used as an atom alongside other atoms in a new list.
30+
+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
description: >-
3+
The goal of this chapter is to let readers build a small interface and/or
4+
interactive elements like buttons right away.
5+
---
6+
7+
# Build Your First Interactive Program
8+

‎getting-medley-up-and-running.md

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Getting Medley Up and Running
2+
3+
#### Using Medley Online vs Using Medley Locally
4+
5+
* Why choose one over the other?
6+
7+
#### How to Install Medley
8+
9+
* What installation options are available? Which one should you choose and why?
10+
* What do you need to download and install before installing Medley?
11+
* How do you install Medley in your OS?
12+
* How can you find your installation directory?
13+
* How can you change your installation directory?
14+
15+
#### Running Medley Locally
16+
17+
* How can you run Medley locally after installing?
18+
* Flags
19+
20+
#### Running Medley Online
21+
22+
* What do the Medley Online starter options mean?
23+
* Key points to remember when using Medley Online.
24+

‎reading-lisp-syntax.md

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
description: >-
3+
The goal of this chapter is to help readers understand how to read Lisp code
4+
by introducing its key syntax elements and delimiters such as () and '
5+
---
6+
7+
# Reading LISP Syntax
8+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Understanding and Navigating the Interface
2+
3+
#### Breaking down the interface
4+
5+
* What are the components making up the interface you see on screen when you first start Medley?
6+
* What do these components do?
7+
* What do different texts on the screen mean?
8+
9+
#### Navigating the Interface
10+
11+
* How do you move around and interact with the interface?
12+
* Differences in interactions between modern operating systems and Medley?
13+
* Mouse movement
14+
* How can you organize the interface?
15+
16+
#### Interacting with Windows
17+
18+
#### Interacting with Menus
19+
20+
#### What to Do If Things Break
21+
22+
* What to do when you're stuck or when things stop working?
23+
* How to break out of loops?
24+
* Keyboard Shortcuts

0 commit comments

Comments
 (0)
Please sign in to comment.