Binding (this) with ES6 Class Methods

In CoffeeScript I have long been accustomed to using the fat arrow to bind a class method to a class instance:

class MyClass

  nothingSpecial: ->
    console.log 'I am nothing special'

  somethingSpecial: =>
    console.log 'I am a bit special'

Then after compiling we get this nice addition to the MyClass constructor:

MyClass = (function() {
  function MyClass() {
    this.somethingSpecial = bind(this.somethingSpecial, this); // <- wonderful

  MyClass.prototype.nothingSpecial = function() {
    return console.log('I am nothing special');

  MyClass.prototype.somethingSpecial = function() {
    return log('I am a bit special');

I was hoping ES6 would have this same feature, but it did not seem to be working for me. After a little searching, I learned that (at the time of this writing) it is possible, though as an experimental feature in ES6+ (supported by Babel). You can read a bit more about it here.

Long story short, this will work:

class MyClass {
  somethingSpecial = (e) => {
     console.log('I am a bit special');

... when you have experimental features turned on.

As mentioned on the babel website, "These proposals are subject to change so use with extreme caution. Babel may update without warning in order to track spec changes", bummer, so I won't be using it in production anytime soon. In the meantime, you can use a helper function such as underscore's bindAll in your constructor, in order to simplify things.

Questions, comments, improvements?