C compiler with embedded metalanguage.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Theo Souchon 38b6693d23 Changing the readme преди 2 години
media Modification of the README.md преди 2 години
parsimonyLibrary Update dynamicObject.mc преди 2 години
tests-c added comments where the test fails преди 3 години
tests-cpp test folders преди 3 години
tests-err updated comments преди 3 години
tests-gnu deleted *.out files преди 3 години
tests-parsimony Simplification of dynamicObject.mc преди 2 години
tests-std deleted *.out files преди 3 години
.gitignore append part almost done & beginning of map function преди 2 години
AUTHORS Add AUTHORS and .gitignore преди 3 години
LICENSE Initial commit преди 3 години
Makefile Adding flags for HOMEBREW and update of the gitignore преди 2 години
README.md Changing the readme преди 2 години
buffer.h Initial import of framework. преди 3 години
ccmeta-input.txt new input file with dynamic C expression преди 3 години
ccmeta.leg Simplification of dynamicObject.mc преди 2 години
debug.c added a file to help debug преди 3 години
dotest updated dotest преди 3 години
object.c Fix code преди 2 години
protoNumber.txt Total independence of parsimony преди 2 години
scope.c updated scopes to be easier to manipulate преди 3 години
testPars.sh new test file and some advances in realObject преди 2 години

README.md

CCMETA

C compiler with embedded metalanguage.

Table of contents

  1. Architecture
  2. Build the project
  3. Usage
  4. Help

Architecture

alt text

Go to the table of contents

Build the project

Requirements

Please install peg/leg manually or with a package manager, for example with Homebrew:

$ brew install peg

Please install the Boehm-Demers-Weiser conservative garbage collector manually or with a package manager, for example with Homebrew:

$ brew install bdw-gc

Makefile

Compatible with the homebrew installed on the apple silicon ship

Build

$ make

Clean

$ make clean

Test

$ make test

Go to the table of contents

Usage

How it works

You can pass your program:

  • via an input file
$ ./ccmeta < file
  • via a file
$ ./ccmeta file

Check each test file to get an idea of how parsimony works

Go to the table of contents

Help

peg/leg

$ man peg

Go to the table of contents