>>108916886
>binary code is what a physical machine uses to execute programs
>assembly language is used to describe in text form the binary code
>use an operational language to represent C-like code
You can do all that in Lisp. Blub programmers, I swear.
You can create an assembly DSL in Lisp. Let's use x86 as an example
(x86-executable
(label abc)
(mov eax ebx)
(jump abc))
You can create a C-like DSL in Lisp.
(c-function
(parameters
(a in uint32_t)
(b in uint32_t)
(c out uint32_t)
(d out uint32_t))
(code
(+ a b c)
(* a b d)))
Notice how you can make it even better than C itself, you can have two return values, HLSL/GLSL style.
Then you can create a Lisp program which takes the C DSL, type checks it, compiles it and emits the assembly DSL, then use another Lisp program which takes the assembly DSL and produces the final executable which runs in bare metal.