     o "{ AssignList , }",                       -> new ObjectNode $2
     o "{ IndentedAssignList , }",               -> new ObjectNode $2
   ]
-
-  # Class definitions have optional bodies of prototype property assignments,
-  # and optional references to the superclass.
-  Class: [
-    o "CLASS SimpleAssignable",                            -> new ClassNode $2
-    o "CLASS SimpleAssignable EXTENDS Value",              -> new ClassNode $2, $4
-    o "CLASS SimpleAssignable IndentedAssignList",         -> new ClassNode $2, null, $3
-    o "CLASS SimpleAssignable EXTENDS Value IndentedAssignList", -> new ClassNode $2, $4, $5
-  ]
-
+  
   # Assignment of properties within an object literal can be separated by
   # comma, as in JavaScript, or simply by newline.
   AssignList: [

  IndentedAssignList: [
    o "INDENT AssignList OUTDENT",              -> $2
    o "INDENT AssignList , OUTDENT",            -> $2
  ]

  # The three flavors of function call: normal, object instantiation with `new`,

  AssignObj: [
    o "Identifier ASSIGN Expression",           -> new AssignNode new ValueNode($1), $3, 'object'
    o "AlphaNumeric ASSIGN Expression",         -> new AssignNode new ValueNode($1), $3, 'object'
    o "Comment"
  ]

