github

vasyop / miniC-hosting

  • понедельник, 11 февраля 2019 г. в 00:17:22
https://github.com/vasyop/miniC-hosting

JavaScript
A simple stack-based virtual machine that runs C in the browser.



What is it?

  1. A simple stack-based virtual machine that runs C (missing features below) in the browser.

  2. The beginning of an interactive tutorial that covers C, how the VM works, and how the language is compiled.

Why?

This project is made as an experiment to see if C can be learned easier if the lower level is covered in paralel.

Can I see it?

Demo: https://vasyop.github.io/miniC-hosting

Tutorial (for people with 0 programming experience) :

Consider supporting

Missing language features

  • operator new is working (like in C++), no malloc

  • static arrays and structs (dynamic arrays and pointer to structs work fine).

  • Arrays of structs (arrays of pointers to structs works fine).

  • for, switch statements

  • preprocessor directives

  • bit operators

  • only bool,int,char as primitive types and they all have the same size in memory

  • ++,--,ternary

  • union,enum

  • global variables

  • macros

  • delete / delete[]

  • function overloading