Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/andrewchambers/qc
quick c
https://github.com/andrewchambers/qc
c compiler
Last synced: 2 months ago
JSON representation
quick c
- Host: GitHub
- URL: https://github.com/andrewchambers/qc
- Owner: andrewchambers
- License: mit
- Created: 2016-02-16T06:09:27.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2022-03-19T22:49:08.000Z (almost 3 years ago)
- Last Synced: 2024-05-21T06:16:28.845Z (8 months ago)
- Topics: c, compiler
- Language: C
- Homepage:
- Size: 194 KB
- Stars: 34
- Watchers: 7
- Forks: 4
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- AwesomeCompiler - qc
README
# Quick C
qc is a c frontend for the awesome [QBE](http://c9x.me/compile/) ssa backend written by Quentin Carbonneaux.
The frontend itself is written in the [Myrddin](https://myrlang.org) programming
language, a language by Ori Bernstein that is under heavy development, and also rocks.# Project Goals
- Give QBE a serious C frontend to use for testing.
- Make Myrddin self hosting language, even if it depends on some C code.
- Allow Myrddin programs to embed C code without depending on the system C compiler.
- Spread awareness of the Myrddin programming language.# Status
The compiler itself is nearly complete enough to start compiling real programs. My first target will be my old [self hosting C compiler](https://github.com/andrewchambers/c). Currently, more than 5k LOC from that project can be built with qc + qbe.
There is not much work required to complete that goal, though there will be a steady grind of bug fixes to make it a reality.
# Building
You must have the Myrddin programming language installed, then building is a single command.
`mbld`
The compiler itself should work on linux, macos, freebsd, openbsd and plan9. Though qbe can only target a subset of those platforms.
# Running tests
`mbld test`
# Contact
IRC: irc.eigenstate.org in #myrddin (nick: ac)