You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
*[Num reform](https://github.com/rust-lang/rfcs/blob/master/text/0418-struct-variants.md): Strips down `std::num` to minimally support generic primitive numbers, without supporting a full mathematical hierarchy.
77
+
78
+
*[Higher-ranked trait bounds](https://github.com/rust-lang/rfcs/blob/master/text/0387-higher-ranked-trait-bounds.md): Add the ability to have trait bounds that are polymorphic over lifetimes. Necessary for unboxed closures.
*[Multiple lifetime bounds](https://github.com/rust-lang/rfcs/blob/master/text/0192-bounds-on-object-and-generic-types.md): Removes special cases from the type system and makes more complex lifetime relationships be expressed that were previously only inferable.
83
+
84
+
74
85
75
86
## New RFC's
87
+
*[Macro reform](https://github.com/rust-lang/rfcs/pull/453): Prepares macros for 1.0 stabilization. Renames `macro_rules!` to `macro!`, and introduces more robust support for module importing and exporting.
88
+
89
+
*[Change integer fallback RFC to suggest `i32` instead of `int` as the fallback](https://github.com/rust-lang/rfcs/pull/452): Changes the fallback for performance and portability.
90
+
91
+
*[Un-feature-gate if let and tuple indexing](https://github.com/rust-lang/rfcs/pull/450): The features are well-behaved and used by many projects; ship 'em!
92
+
93
+
*[Prohibit unused type parameters in impls](https://github.com/rust-lang/rfcs/pull/453): Require that every impl type parameter appears textually within the input type parameters of the trait reference or the impl self type.
94
+
95
+
*[ES6-style unicode string escaping](https://github.com/rust-lang/rfcs/pull/446): Remove `\u203D` and `\U0001F4A9` unicode string escapes, and add ECMAScript 6-style `\u{1F4A9}` escapes instead. Strong positive feedback, some concern with how it interacts with format strings.
96
+
97
+
*[extension trait conventions](https://github.com/rust-lang/rfcs/pull/445): Establishes a definition and naming convention for extension traits: traits which aren't intended for generic programing, but instead extending existing types. If extending a `Foo`, use `FooExt`. If Extending a `Foo`'s when they impl another trait like `Add`, use `FooAddExt`.
98
+
99
+
*[cmp and ops reform](https://github.com/rust-lang/rfcs/pull/439): Refactors `Cmp` and the operator overloading traits. Generally positive feedback. Highlights include:
100
+
* Make basic unary and binary operators work by value and use associated types.
101
+
* Generalize comparison operators to work across different types; drop Equiv.
102
+
* Refactor slice notation in favor of range notation so that special traits are no longer needed.
103
+
* Add IndexSet to better support maps.
104
+
* Clarify ownership semantics throughout.
105
+
106
+
*[Change precedence of `+` in type grammar](https://github.com/rust-lang/rfcs/pull/438): Update type grammar to make `+` have lower precedence, consistent with the expression grammar, resolving a grammatical ambiguity.
107
+
108
+
*[Relocate and improve c_str](https://github.com/rust-lang/rfcs/pull/435):
109
+
* Move the c_str module out of std to rid the latter of type dependencies on libc.
110
+
* Split the current CString into a low-level type CStrBuf and a length-aware CString to make computation costs explicit.
111
+
* Provide custom destructors and purpose-specific, mnemonically named constructors.
112
+
* Add some methods and trait implementations to make the types more useful.
113
+
* Remove the Clone implementation due to lack of purpose.
114
+
Lots of discussion of how to structure libc, not a lot of consensus.
115
+
116
+
*[rename `lifetime` to `scope`](https://github.com/rust-lang/rfcs/pull/431): Highly controversial. Some community members argue that this change in terminology has been much more effective when introducing the actual concepts to newbies. Others argue that scope is already a well established concept in programming languages.
117
+
118
+
*[Finalizing more naming conventions](https://github.com/rust-lang/rfcs/pull/430): finalizes a few long-running de facto conventions, including capitalization/underscores, and the role of the unwrap method. Generally positive feedback, some discussion of naming consts like enum variants.
0 commit comments