2014-03-01 6:24 GMT+09:00 John Grosen <[email protected]>: >> On Friday, February 28, 2014 at 11:15 AM, Matthieu Monrocq wrote: >> >> Maybe one way of preventing completely un-annotated pieces of data would be >> a lint that just checks that at least one property (Send, Freeze, ...) or a >> special annotation denoting their absence has been selected for each >> public-facing type. By having a #[deriving(...)] "mandatory", it makes it >> easier for the lint pass to flag un-marked types without even having to >> reason whether or not the type would qualify. > > I generally like this idea; however, I find it a bit strange `deriving` > would still be implemented as an attribute given its essential nature in the > language. Haskell, of course, has `deriving` implemented as a first-class > feature — might Rust be interested in something like that? > > Food for thought, at least.
I second to this. Indeed, we already have similar concerns about externally-implemented `#[deriving]` (#11813, and somewhat tangently, #11298), as syntax extensions don't have any clue about paths. -- -- Kang Seonghoon | Software Engineer, iPlateia Inc. | http://mearie.org/ -- Opinions expressed in this email do not necessarily represent the views of my employer. -- _______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
