[Mono-dev] gmcs and The Future

Federico Di Gregorio fog at initd.org
Wed Feb 4 05:18:57 EST 2009


Il giorno mer, 04/02/2009 alle 22.56 +1300, Scott Peterson ha scritto:
>                                Da: 
> Scott Peterson
> <scott at ssblack.co.nz>
>                        Rispondi-a: 
> scott at ssblack.co.nz
>                                 A: 
> mono-devel-list at lists.ximian.com
>                           Oggetto: 
> [Mono-dev] gmcs and The Future
>                              Data: 
> Wed, 4 Feb 2009 22:56:40 +1300
> (10.56 CET)
> 
> 
> Generic type variance has landed in gmcs SVN [1]. This is a C# 4
> feature. It can be enabled by passing -langversion:future. While type
> variance is cool, I want to talk about -langversion:future. I see this
> as being a sentinel langversion for features as yet unreleased by
> Microsoft. Those features could be announced additions to the language
> (as with generic type variance, or the "dynamic" keyword) but they
> need not be. Mcs has done an excellent job of tracking the official C#
> language, and it will continue to do so, but the Mono project has a
> world-class compiler entirely at its disposal. We need not confine
> ourselves to the blessed specs of Microsoft or Ecma. We could "trick
> out" C#, indulging in sugars of our own device, so long as we keep our
> creations in -langversion:future. Those projects which are willing to
> sacrifice compatibility with csc in order to partake of our forbidden
> fruit can write code in this New C#. This C#++. This
> -langversion:future.

I have just one comment: use two different keywords, one for future
features "blessed" by MS and one (-langversion:mono maybe?) for features
that are specific of mcs implementation. This will make possible to
differentiate code that probably will be compatible with csc and VS from
code that will absolutely need mcs (unless the people at MS start
tracking mono features, eheh :).)

federico

-- 
Federico Di Gregorio                         http://people.initd.org/fog
Debian GNU/Linux Developer                                fog at debian.org
INIT.D Developer                                           fog at initd.org
 If a process is potentially good, but 90%+ of the time smart and
  well-intentioned people screw it up, then it's a bad process.
                                                          -- Steve Yegge
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Questa =?ISO-8859-1?Q?=E8?= una parte del messaggio
	firmata digitalmente
Url : http://lists.ximian.com/pipermail/mono-devel-list/attachments/20090204/dcfcb8a1/attachment-0001.bin 


More information about the Mono-devel-list mailing list