Skip to content

Blog post on DOT #397

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 6 commits into from
Feb 4, 2016
Merged

Blog post on DOT #397

merged 6 commits into from
Feb 4, 2016

Conversation

odersky
Copy link
Contributor

@odersky odersky commented Feb 3, 2016

Comments solicited, but not merge yet.

inconsistencies, at least not by a local analysis that does not need
to look at the whole program. What's worse, once you have an
inconsistent set of definitions you can use these definitions to
"prove" their own consistency - much like an mathematical theory that
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

an -> a

trait Sub2 extends Base { type A = Int }

Now, if you combine `Sub1` and `Sub2` in one class, you get a conflict, since the type `A` is supposed to be equal to both `String` and `Int`. If you do
not detect the conflict and assume the equalities at face value you

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Now, if you combine Sub1 and Sub2 in one class" is a crucial step and I guess readers will want to know more precisely what you mean here, e.g. some Scala code like trait Bad extends Sub1 with Sub2.

@SethTisue
Copy link
Member

You might consider putting the "Why is This Important?" section first, not last, if you want that section to be widely read. In the current order, a lot of general/casual readers will bail during the calculus section.

## Difficulties

Formulating the precise soundness theorem and proving it was unexpectedly hard,
because it uncovered a problem complex that had not been
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"a problem complex" ? Do you mean "a complex problem" ?

@odersky
Copy link
Contributor Author

odersky commented Feb 3, 2016

@SethTisue It's a concern but it would be difficult to change the flow now. Let's leave it as it is.

@odersky
Copy link
Contributor Author

odersky commented Feb 3, 2016

I believe it's ready to merge now, unless there are further change requests.

odersky added a commit that referenced this pull request Feb 4, 2016
@odersky odersky merged commit 22dd9cf into scala:master Feb 4, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants