He estado experimentando con operadores en el lenguaje Io. Todo funciona bien en el cli, pero en cuanto pongo mi código en los archivos, me encuentro con problemas.Io operadores, parece que no pueden crearlos en un archivo
Aquí hay un pequeño ejemplo (la creación de un operador +++ que hace lo mismo que +)
OperatorTable addOperator("+++", 3) # Say that +++ should be an operator
Number +++ := method(v, call target + v) # Define the slot +++ on numbers
(30 +++ 40) println # Try it out!
Como se ha mencionado, esto funciona bien en la línea de comandos, pero no funciona cuando intento ejecutar en un archivo Supongo que tiene algo que ver con el hecho de que el archivo ha sido preparsed, antes de que se defina el operador, pero ¿cómo podría solucionarlo?
Gracias, eso explica el problema. ¿Cómo se supone que debemos manejar eso? Una cosa que puedo pensar es crear un archivo principal que primero define todos los operadores que quiero usar y luego carga el resto de los archivos en mi proyecto. – Jakob
Exactamente. –
jer