FeatherweightTypeInference/README.md
Andreas Stadelmeier 061340de90
Create README.md
2021-12-02 03:04:00 +01:00

632 B

Typeinference for Featherweight Java

Try it here

Input Examples

class Identity extends Object{
  id(a){
    return a;
  }
}

class Overloading extends Object{
  m(a, b){return a;}
  m(a,b){return b;}
}

class TestOverloading extends Object{
  test(a){
    return new Test().m(this,a);
  }
}
class List<A extends Object> extends Object{
  A head;
  List<A> tail;
  add( a){
    return new List(a, this);
  }
  get(){
    return this.head;
  }
}

class PrincipleType extends Object {
  function(a){
    return a.add(this).get();
  }
}