Skip to content
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

Clarify Rust's relationship to OO in the FAQ #35568

Closed
brson opened this issue Aug 10, 2016 · 1 comment
Closed

Clarify Rust's relationship to OO in the FAQ #35568

brson opened this issue Aug 10, 2016 · 1 comment

Comments

@brson
Copy link
Contributor

brson commented Aug 10, 2016

What is or isn't OO is a complex topic, one that requires a lot of nuance to explain. There are many different conceptions of what OO means. The FAQ doesn't do a good job of making the Rust OO situation clear.

There are two questions on this subject:

They are both rather bare and kinda don't answer the questions, at least not in a satisfying way.

I'd expect them to acknowledge that defining OO is difficult, means different things to different people, various OO concepts can be expressed in various ways with various degrees of fidelity, that if OO means e.g. 'structural inheritance' then basically Rust is not OO, but if that's what you really want then consider this pattern. It might even start off firmly by saying something like 'No, Rust is not an object-oriented language in the way that Java or Smalltalk are; rather, it is a multi-paradigm language that solves some problems using techniques from object-oriented languages, while the solutions to other problems draw influence from other paradigms. Many object-oriented patterns can be represented - some idiomatically, some not - in Rust, but in different forms than one might expect' etc.

cc rust-lang/prev.rust-lang.org#467 @AndrewBrinker @JinShil

@brson
Copy link
Contributor Author

brson commented Aug 12, 2016

Belongs over yonder: rust-lang/prev.rust-lang.org#476

@brson brson closed this as completed Aug 12, 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

No branches or pull requests

1 participant