Skip to content

Commit 67557bc

Browse files
authored
Update 2023-09-20-strong-arrows-gradual-typing.markdown (#1744)
1 parent 1f2b181 commit 67557bc

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

_posts/2023-09-20-strong-arrows-gradual-typing.markdown

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ In this article, we will discuss how the proposed type system will tackle gradua
1616

1717
The type system we are currently researching and developing for Elixir is based on set-theoretic types, which is to say its operations are based on the fundamental set operations of union, intersection, and negation.
1818

19-
For example, the atom `:ok` is a value in Elixir, that can be represented by the type `:ok`. All atoms in Elixir as represented by themselves in the type system. A function that returns either `:ok` or `:error` is said to return `:ok or :error`, where the `or` operator represents the union.
19+
For example, the atom `:ok` is a value in Elixir, that can be represented by the type `:ok`. All atoms in Elixir are represented by themselves in the type system. A function that returns either `:ok` or `:error` is said to return `:ok or :error`, where the `or` operator represents the union.
2020

2121
The types `:ok` and `:error` are contained by the type `atom()`, which is an infinite set representing all atoms. The union of the types `:ok` and `atom()` can be written as `:ok or atom()`, and is equivalent to `atom()` (as `:ok` is a subset of `atom()`). The intersection of the types `:ok` and `atom()` can be written as `:ok and atom()`, and is equivalent to `:ok`.
2222

0 commit comments

Comments
 (0)