[rust-dev] Keyword cleanup

Brian Anderson banderson at mozilla.com
Tue Apr 17 14:41:34 PDT 2012

On 04/17/2012 08:53 AM, Benjamin Striegel wrote:
> There was an exchange on IRC last week about removing some keywords. It
> seemed a bit too broad and open-ended to open an issue for it, but I
> didn't want it to get lost entirely.
> pcwalton:we could get rid of "resource" and "be", maybe "while" and
> "log", although "trait" will add another
> pcwalton:maybe unifying import and use like we talked about
> graydon:'as' can go if we pick up go's expr.(type) syntax
> pcwalton:yes
> pcwalton:I like that syntax
> graydon:is 'tag' still listed? looks like in my docs. it should be
> 'enum' now
> pcwalton:"note" might be better done as a special kind of class
> pcwalton:just RAII-based
> pcwalton:notes sitting on your stack print themselves out during
> unwinding, but hide otherwise
> graydon:maybe. that's how it was done in monotone (where I copied the
> feature from)
> graydon:'block' is a dead keyword, you can remove that
> graydon:as is 'obj'
> graydon:'syntax' is likely to prove redundant, or might if we shift
> around the order of evaluating attributes and/or make "activating a
> compiler plugin" something you can do via attributes.
> graydon:pcwalton: 'in' is also dead, I think. 'with' could probably be
> turned into something symbolic w/o much work.

Based on this conversation pcwalton, niko and I filed a bunch of new 
papercut issues:

* Remove `be`
* Implement `assert` in the library
* Rename `cont` to `next`
* Remove `do` loops
* Use go's casting syntax
* Implement `fail` in the library
* Remove `while`

And here are some old ones that cover the same territory

* Implement `log` in the library
* Implement `note`


More information about the Rust-dev mailing list