Reto: p10-t5-jison-infix2egg

Reto: p10-t5-jison-infix2egg

Añada objetos y el punto/dot . a su lenguaje de infijo. Algo similar a esto:

begin
  let a = {
    c:1,
    gc: function() { this.c },
    sc: function(val) { c = val },
    inc: function() { this.c = this.c+1 }
  };
  print(a.c); # 1
  a.sc(4);
  print(a.c); # 4
  a.inc(); 
  print(a.c)  # 5
end

Debería ser posible combinar tanto en el lado izquierdo de una asignación como en el derecho los operadores punto y de indexación. Esto es, poder escribir expresiones como:

a[x+y].c[4].d = b[i][j].z

Recursos