Re: [OE] Built-ins machine_*
- Posted by ghaberek (admin) Mar 24, 2021
- 816 views
mitgedanken said...
Why are functions and procedures which use machine_* only are not buil-in?
That's a good question for which I don't have an immediate and straight-forward answer.
Doing some searching I did find this discussion: Adding a Builtin to EUPHORIA
I'd have to say it's several different reasons:
- Adding new built-ins requires more changes to the parser code to look for the routine name as built-ins are basically keywords.
- Adding new machine_func/proc routines only requires adding a new ordinal number to the backend machine function.
- Rob Craig was the sole developer for Euphoria and may have made decisions only he needed to understand.
- Decisions may have been made in the past for legacy reasons that are no longer relevant, like DOS support.
Ideally, I'd say that built-ins should be core language features like append() as opposed to optional library features like regex and sockets.
-Greg