Skip to content

Fix typos #2880

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 17, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/docs/reference/phantom-types.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ When saying that they have no effect on the runtime we do not only mean side eff
like IO, field mutation, exceptions and so on. We also imply that if a function receives
a phantom its result will not be affected by this argument.

As phantom do not live at runtime they cannot be subtypes of `scala.Any`, which deffines
As phantom do not live at runtime they cannot be subtypes of `scala.Any`, which defines
methods such as `hashCode`, `equals`, `getClass`, `asInstanceOf` and `isInstanceOf`.
All these operations cannot exist on phantoms as there will not be an underlying object
instance at runtime. At first glace this could look like a limitation, but in fact not
instance at runtime. At first glance this could look like a limitation, but in fact not
having `asInstanceOf` will make constraints more reliable as it will not be possible to
downcast a phantom value to fake an evidence.

Expand Down