Move the diagram out of the repo (#816)

This commit is contained in:
Ara Adkins 2020-06-08 14:48:39 +01:00 committed by GitHub
parent 033db71100
commit 456bfc887b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 6 additions and 18 deletions

4
.gitattributes vendored
View File

@ -1,4 +0,0 @@
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.jpeg filter=lfs diff=lfs merge=lfs -text

View File

@ -148,11 +148,6 @@ git clone https://github.com/luna/enso.git
git clone git@github.com:luna/enso.git
```
As we include some binary files in the repository as part of our documentation
you will need [Git LFS](https://git-lfs.github.com/) to clone these files
correctly. When adding new binary files to the repository, please make sure that
they are tracked using Git LFS.
### Building Enso
There are multiple projects in this repository, but all can be built, run and
tested using `sbt`. As long as your configuration is correct, with the correct

View File

@ -110,7 +110,7 @@ This logic is encapsulated in the `ArgumentSorterNode`.
## Definition-Site Argument Suspension
Enso allows functions to define certain arguments as `Suspended`, so that when
these are passed to a function, the corresponding expressions are not evaluated
at the call side, but are instead passed to the function as closures for
at the call site, but are instead passed to the function as closures for
evaluation at the function's discretion.
Therefore, all application arguments are actually treated as thunks and only
@ -151,4 +151,4 @@ The following diagram summarizes all the nodes participating in a function
call. The entry points to this system are `ApplicationNode` (for in-language
function calls) and `InteropLibrary<Function>` (for polyglot function calls).
![diagram](resources/function-call-diagram.png)
![Function Call Flow](https://user-images.githubusercontent.com/5780639/84035237-5c2d9800-a993-11ea-826d-72f3ddffcb54.png)

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:210debbe192901fc1c8a0354ce9ce980ee6b8bd1c988c87c267aba3a4bf5980d
size 371892

View File

@ -76,11 +76,11 @@ working with types. These are listed below.
| `!` | `> :`, `> ->` | 2 | Left | Combines the left operand with the right operand as an error value. |
| `->` | `> :` | 1 | Left | Represents a mapping from the left operand to the right operand (function). |
| `<:` | `> !`, `< \|`, `> in` | 4 | Left | Asserts that the left operand is structurally subsumed by the right. |
| `~` | `== <:` | 4 | None | Asserts that the left and right operands are structurally equal. |
| `~` | `== <:` | 4 | Left | Asserts that the left and right operands are structurally equal. |
| `;` | `< :`, `> =` | -2 | Left | Concatenates the left and right operand typesets to create a new typeset. |
| `\|` | `> <:`, `> !`, `> in`, `> :` | 6 | None | Computes the union of the left and right operand typesets. |
| `&` | `= \|` | 6 | None | Computes the intersection of the left and right operand typesets. |
| `\` | `< \|`, `> <:` | 5 | None | Computes the subtraction of the right typeset from the left typeset. |
| `\|` | `> <:`, `> !`, `> in`, `> :` | 6 | Left | Computes the union of the left and right operand typesets. |
| `&` | `= \|` | 6 | Left | Computes the intersection of the left and right operand typesets. |
| `\` | `< \|`, `> <:` | 5 | Left | Computes the subtraction of the right typeset from the left typeset. |
| `:=` | `< :`, `> =`, `> ;` | -1 | Left | Creates a typeset member by assigning a value to a label. |
Solving this set of inequalities produces the _relative_ precedence levels for