“Asi64 extends Racket to become a 6502 assembler. No need for scripting languages or half baked macro systems here - you have literally all of Racket and its amazing macro system on your side. “
Emphasis added. This is already the approach taken by numerous teams for high-productivity or safety-critical development extracted to languages such as C (Galios’ Ivory comes to mind). High-level assemblers have existed from Hyde’s HLA to Microsoft’s CoqASM. Doing it in Racket is a nice, middle ground with a lot of power and maybe easier, learning curve.
“It also has direct support for Vice, a popular Commodore 64 emulator, passing your labels and breakpoints along enabling a fluid programming and debugging cycle. “
Icing on the cake. I recall this technique having a lot of use in embedded and hardware development to catch obscure, low-level errors. Faster than with native hardware if the native is old or embedded. Cheaper if an ASIC. Accurate emulators are always worth considering for debugging hardware.
Good title choice.
“Asi64 extends Racket to become a 6502 assembler. No need for scripting languages or half baked macro systems here - you have literally all of Racket and its amazing macro system on your side. “
Emphasis added. This is already the approach taken by numerous teams for high-productivity or safety-critical development extracted to languages such as C (Galios’ Ivory comes to mind). High-level assemblers have existed from Hyde’s HLA to Microsoft’s CoqASM. Doing it in Racket is a nice, middle ground with a lot of power and maybe easier, learning curve.
“It also has direct support for Vice, a popular Commodore 64 emulator, passing your labels and breakpoints along enabling a fluid programming and debugging cycle. “
Icing on the cake. I recall this technique having a lot of use in embedded and hardware development to catch obscure, low-level errors. Faster than with native hardware if the native is old or embedded. Cheaper if an ASIC. Accurate emulators are always worth considering for debugging hardware.