Open Juancete opened 5 months ago
@Juancete pero eso no es una StackOverflowException
propia de Wollok?
En la prueba el stack trace es como lo imaginaba:
wollok:pepita> pepita.comer(1)
✗ Evaluation Error!
wollok.lang.StackOverflowException wrapping TypeScript RangeError: Maximum call stack size exceeded
at src.pepita.pepita.comer(cantidad) [src/pepita.wlk:4]
at src.pepita.pepita.comer(cantidad) [src/pepita.wlk:4]
at src.pepita.pepita.comer(cantidad) [src/pepita.wlk:4]
at src.pepita.pepita.comer(cantidad) [src/pepita.wlk:4]
...
Lo que entiendo que molesta es el wrapping TypeScript RangeError: Maximum call stack size exceeded
, no?
Eso debería ser fácil de tocar, porque se pregunta acá: https://github.com/uqbar-project/wollok-ts/blob/ddd7ed35970fc8c44e6d4133d506fde6092b0de7/src/interpreter/runtimeModel.ts#L378-L382
Pero quiero estar seguro de cuál es el mensaje que nos gustaría mostrar 🤓
Hola @PalumboN
Si, saltó durante una explicación de manejo de errores. el "wrapping TypeScript RangeError" sonaba turbio para los pibes que no tenían idea de qué hay atrás del lenguaje. Me parece que cuanto más oculto queda el detalle de implementación para quienes están iniciando en el tema es más claro. Igualmente es una opinión propia pero todo es discutible. Si nos es útil para trazar errores lo dejamos tal como está.
Al ejecutar el siguiente código de este método
El error que arroja es
El error que debería arrojar tendría que ser propio de Wollok.