All Projects → utam0k → R9cc

utam0k / R9cc

Licence: mit
Toy C compiler

Programming Languages

rust
11053 projects

Labels

Projects that are alternatives of or similar to R9cc

Cperl
A perl5 with classes, types, compilable, company friendly, security
Stars: ✭ 125 (-10.07%)
Mutual labels:  compiler
Instapack
All-in-one TypeScript and Sass compiler for web applications! 📦 🚀
Stars: ✭ 131 (-5.76%)
Mutual labels:  compiler
Koto
A simple, expressive, embeddable programming language, made with Rust
Stars: ✭ 134 (-3.6%)
Mutual labels:  compiler
Phplrt
PHP Language Recognition Tool
Stars: ✭ 127 (-8.63%)
Mutual labels:  compiler
Ocaml Protoc
A Protobuf Compiler for OCaml
Stars: ✭ 129 (-7.19%)
Mutual labels:  compiler
Naskah
Bahasa pemrograman dengan sintaks Bahasa Indonesia (Programming language with Indonesian syntax) 🇮🇩
Stars: ✭ 132 (-5.04%)
Mutual labels:  compiler
Ghc Grin
GRIN backend for GHC
Stars: ✭ 123 (-11.51%)
Mutual labels:  compiler
Prance
Resolving Swagger/OpenAPI 2.0 and 3.0 Parser
Stars: ✭ 133 (-4.32%)
Mutual labels:  compiler
Jphp
JPHP - an implementation of PHP on Java VM
Stars: ✭ 1,665 (+1097.84%)
Mutual labels:  compiler
Lesscpy
Python LESS compiler
Stars: ✭ 133 (-4.32%)
Mutual labels:  compiler
Grain
The Grain compiler toolchain and CLI. Home of the modern web staple. 🌾
Stars: ✭ 2,199 (+1482.01%)
Mutual labels:  compiler
Pl0 Compiler
Compiler written for PL0 programming Language. Written in C, for COP3402 class from UCF.
Stars: ✭ 128 (-7.91%)
Mutual labels:  compiler
Solang
First fully featured programming language for Stack Overflow Driven Development
Stars: ✭ 133 (-4.32%)
Mutual labels:  compiler
Asterius
A Haskell to WebAssembly compiler
Stars: ✭ 1,799 (+1194.24%)
Mutual labels:  compiler
Tendra
The TenDRA Project
Stars: ✭ 134 (-3.6%)
Mutual labels:  compiler
Mcscript
A programming language for Minecraft Vanilla
Stars: ✭ 124 (-10.79%)
Mutual labels:  compiler
Tinyscript
自制的一个编译器, 用于学习,完整实现了词法分析,语法分析,中间代码(SSA)生成,机器码生成,和基于寄存器的虚拟机
Stars: ✭ 132 (-5.04%)
Mutual labels:  compiler
English Script
🖊 English as a programming language
Stars: ✭ 136 (-2.16%)
Mutual labels:  compiler
Nim
Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
Stars: ✭ 12,270 (+8727.34%)
Mutual labels:  compiler
Hivemind
a multi-syntax language
Stars: ✭ 133 (-4.32%)
Mutual labels:  compiler

r9cc C Compiler

r9cc is a toy project of compiler.
This is the 9cc Rust version.

Usage

Rust 2018 edition is required.

  • Compile
$ cargo run c_file_path
  • Test
$ make test

Current status

  • [x] Four arithmetic operations
  • [x] Logical operation
  • [x] Local variable
  • [x] Global variable
  • [x] Function call
  • [x] Function definition
  • [x] Array
  • [x] Pointer
  • [x] ++/--
  • [x] char/int type
  • [x] String literal
  • [x] Strunct
  • [x] extern
  • [x] Comment
  • [x] #include
  • [x] #define
  • [x] __LINE__

Design

If you want more information, I think you should refer to README.md of 9cc.

Reference

Special thanks to 9cc and author rui314

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].