Skip to content

Update influence list #19235

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
Jan 6, 2015
Merged

Update influence list #19235

merged 1 commit into from
Jan 6, 2015

Conversation

brendanzab
Copy link
Member

* C++: references, RAII, smart pointers, move semantics, monomorphisation
* ML Kit and Cyclone: memory region systems
* Haskell: typeclasses, type families, rank-n polymorphism
* Swift: `if let` bindings
Copy link
Contributor

Choose a reason for hiding this comment

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

I think tuple indexing (or at least the syntax for it) was also inspired by Swift.

Copy link
Member Author

Choose a reason for hiding this comment

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

I am kind of hesitant about that... SML has had tuple indexing for forever, even if it was in a different syntax.

Copy link

Choose a reason for hiding this comment

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

This should perhaps be if let expressions rather than bindings?

Copy link
Member Author

Choose a reason for hiding this comment

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

It seems that the swift docs call them 'optional bindings'.

@brendanzab
Copy link
Member Author

I'm also wondering how much the previous languages are really of note in the Rust of today. The language was most likely quite different than it is today.

@brendanzab
Copy link
Member Author

Where do slices come from?

@brendanzab brendanzab force-pushed the reference branch 2 times, most recently from b555c9d to 1b21fe0 Compare November 23, 2014 13:35
@brendanzab
Copy link
Member Author

Ok, I did some considerable re-arranging. Please review!

@brendanzab
Copy link
Member Author

I felt like the quotes no longer really reflected Rust's main concerns, so I removed them.

@brendanzab
Copy link
Member Author

Some other questions:

Could some folks clarify why Python and C# are there?

Where did unsafe come from? Was that from Modula-3's unsafe modules?

@nodakai
Copy link
Contributor

nodakai commented Nov 23, 2014

I thought unsafe came from C# but I'm no historian...

It's possible that C# adapted unsafe from Modula.

@brendanzab
Copy link
Member Author

cc. @bstrie

@0x00b1
Copy link

0x00b1 commented Nov 28, 2014

Unicode Annex #31 rather than PEP #3131 should receive credit for the identifier pattern.

It’d be useful from an academic perspective to include appropriate references.

@steveklabnik
Copy link
Member

I like this, but I'll note that the second section doesn't have which ideas came from which language. Also, this should probably be squashed.

@brendanzab
Copy link
Member Author

Working on providing an update now.

@Gankra
Copy link
Contributor

Gankra commented Jan 2, 2015

@bjz status?

@brendanzab
Copy link
Member Author

@gankro updated! Sorry for the wait.

alexcrichton added a commit to alexcrichton/rust that referenced this pull request Jan 6, 2015
@bors bors merged commit 144f4b8 into rust-lang:master Jan 6, 2015
@brendanzab brendanzab deleted the reference branch January 6, 2015 21:07
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.

9 participants