You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The compiler currently is orchestrated via a small bash script, which passes the ssa output generated by the compiler binary into qbe, and then uses clang to compile the resulting assembly file (along with the libgc.a static lib) into an executable.
To move off of this shell script, Abra needs a way of calling external commands from within its runtime, and obtaining the response values as well as stdout/stderr. The API for this could be modeled after rust's std::process::Command, but it could also be streamlined since Abra is a more high-level language.
For now, since there's no notion of non-blocking IO in Abra, this would be a blocking operation, but that's fine. If I ever get around to implementing threads/fibers, I'll tackle non-blocking IO then.
The text was updated successfully, but these errors were encountered:
The compiler currently is orchestrated via a small bash script, which passes the
ssa
output generated by thecompiler
binary intoqbe
, and then usesclang
to compile the resulting assembly file (along with thelibgc.a
static lib) into an executable.To move off of this shell script, Abra needs a way of calling external commands from within its runtime, and obtaining the response values as well as stdout/stderr. The API for this could be modeled after rust's
std::process::Command
, but it could also be streamlined since Abra is a more high-level language.For now, since there's no notion of non-blocking IO in Abra, this would be a blocking operation, but that's fine. If I ever get around to implementing threads/fibers, I'll tackle non-blocking IO then.
The text was updated successfully, but these errors were encountered: