[rust-dev] Older RFCs for discussion next week

Nick Cameron lists at ncameron.org
Sun Jul 27 09:41:41 PDT 2014

Hi, here are the recommendations for discussion at next weeks meetings.

As usual, if you have comments on any of these RFCs, please add them to the
discussion on the PR; please don't reply to this message.

In the future the primary method of sending this message will be via our
discourse instance at discuss.rust-lang.org (technical problems prevented
that this week).

Cheers, Nick

Proposed for discussion at Rust meeting

https://github.com/rust-lang/rfcs/pull/136 - Ban private items in public
APIs - glaebhoerl
    Not much to add to the title. For example using a private struct as a
type in a public function.
    We have a lint for part of this already.
    Apparently this is used as a hack for some kind of fine-grained privacy
for traits. Seems like we should address that properly.
    Mostly negative feedback, but (I think) only because of the hacks it
would break.
    Discuss again (previously discussed last week)

https://github.com/rust-lang/rfcs/pull/114 - Unboxed closures - nmatsakis
    A lot of discussion, pretty much all about the details. General
sentiment that we want this.
    Recommend we accept - is this the right RFC to accept, I've not  really
been keeping track - pnkfelix, pcwalton - is there something  which
supersedes this? I think this needs a small update to reflect some  of the
later comments.

https://github.com/rust-lang/rfcs/pull/117 - Rename unsafe to trusted -
    Loads of opinion in the thread (162 comments!). Note that Niko has an
upcoming RFC (127, below) with the concept of unsafe/trusted traits where
the  keyword  `trusted` makes a lot more sense than `unsafe`, so we could
save a  keyword here.

https://github.com/rust-lang/rfcs/pull/127 - Opt-in builtin traits, take 2:
default and negative impls - nmatsakis
    Unsafe (trusted) traits (see also 117, above) which express an
invariant to the compiler and default impls - which must be opted out of,
rather than in.

https://github.com/rust-lang/rfcs/pull/132 - UFCS - nmatsakis
    Universal function call syntax. Use <T as Trait>::Foo syntax for
specifying the trait as well as the concrete type for a function call.
    Previously discussed as an older RFC.

https://github.com/rust-lang/rfcs/pull/135 - where clauses - nmatsakis
    Allow specifying bounds on type parameters in a where clause as well as
inline. This is more expressive and neater in the presence of many type
parameters or bounds.
    Mostly positive feedback. Some worries around having inline bounds and
where clauses. Some worries about the 'multiple dispatch' part of the

Proposed for discussion at triage

https://github.com/rust-lang/rfcs/issues/121 - some questions about the RFC
process - pnkfelix
    These need answers for clarification on the process.

https://github.com/rust-lang/rfcs/issues/158 - Should we track incomplete
ideas here instead of in the rust issue tracker? - erikt
    I think the answer is 'use discourse'. We should make sure that is the
answer, make it official in the thread and perhaps add some text to the RFC
repo readme, then close.

https://github.com/rust-lang/rfcs/pull/172 - Exponentiation syntax sugar -
    Sugar for the pow function.
    Backwards compatible.
    Recommend close and/or postpone.

https://github.com/rust-lang/rfcs/pull/174 - value type parameters - zoxc
    Parameterise by values as well as types.
    Recommend postpone.

https://github.com/rust-lang/rfcs/pull/175 - Field offsets - zoxc
    I don't understand very well what is proposed, sorry.
    Recommend postpone or close - not great motivation, doesn't seem to
merit prioritisation before 1.0.

Discussed and postponed for more feedback

https://github.com/rust-lang/rfcs/pull/101 - Allow multiple (fixed-size)
subslices borrows in one pattern - krdln
    Allows matching several parts of a vec in one pattern. Adds `xs..n`
syntax to match a fixed size slice (and changes variable sized slice
pattern syntax to `xs..` from `..xs`).
    Not much feedback - all positive or corrected later to be positive.
Seems like a small generalisation with no downsides.
    If we change the syntax as recommended for existing patterns (i.e.,
`..xs` to `xs..`) then the rest should be backwards compatible, I think.

https://github.com/rust-lang/rfcs/pull/116 - Feature gate import shadowing
- Kimundi
    Forbid or deprecate name collision of imported names.
    Positive feedback.
    Recommend: lets do this! Might need to tidy up the RFC, but nothing
major (hopefully). Need to decide whether to depricate via a feature gate
or just get rid. Would be good to assess how much damage this will cause.

https://github.com/rust-lang/rfcs/pull/129 - refine the `asm!` extension -
    A string/format! based method of doing inline asm.
    Not much feedback.
    Seems like we could do better with our inline asm, not sure if this is
the right approach.
    Recommend: probably close, but worth discussing first.

Proposed for discussion at some point

https://github.com/rust-lang/rfcs/pull/22 - Deserializing to a stream of
tagged values - erikt
    Changes to the deserialisation framework. Allows for decoding into an
enum. No commentary for or against.
    erikt to update?

Actions agreed

https://github.com/rust-lang/rfcs/pull/17 - Iterable trait family - erikt
    aturon to comment
    acrichto to close

https://github.com/rust-lang/rfcs/pull/88 - Macro syntax to count sequence
repetitions - Eridius
    pnkfelix + jclements to keep pushing on getting more explanation

https://github.com/rust-lang/rfcs/pull/16 - attributes on statements and
    huon has updated
    need more discussion on edge cases - see RFC - pnkfelix (and others)

https://github.com/rust-lang/rfcs/pull/113 - Provide a common API across
`Option` and the `Ok` and `Err` variants of `Result` - bjz
    Make Option and Result more consistent.
    Positive feedback for the idea, some discussion on the specifics.
    I believe this was discussed before and we were going to flesh it out a
bit more. Could bjz and aturon update us on progress?
    To be closed, more RFCs coming from aturon.

https://github.com/rust-lang/rfcs/pull/123 - Rename Share to Threadsafe -
    Rename share.
    Bit of a bikeshed here, some support also for `sync`, `concurrent`, etc.
    nmatsakis to merge

https://github.com/rust-lang/rfcs/pull/130 - RFC to remove some special
treatment of Box by borrow checker - nmatsakis
    Make Box a little bit more like a normal struct, but also make it less
expressive. Removes the special ability for the borrow checker to
distinguish parts of a boxed value.
    Pretty much no feedback.
    czwarich to implement and report back
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/rust-dev/attachments/20140727/3c06a02b/attachment.html>

More information about the Rust-dev mailing list