Skip to content

The backbone implementation of the cornerstone compiler framework.

Notifications You must be signed in to change notification settings

kasrasadeghi/cornerstone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cornerstone

Cornerstone is a compiler framework. You can use it to build compilers easily. I'm using it to build the Backbone compiler easily.

TL;DR

curl https://github.com/kasrasadeghi/cornerstone/blob/master/installer.sh | bash
cornerstone/build.sh cornerstone/examples/hello_world
./hello_world

Install

Make sure you read installer.sh first.

curl https://github.com/kasrasadeghi/cornerstone/blob/master/installer.sh | bash

To not directory use master's installer, use this:

curl https://github.com/kasrasadeghi/cornerstone/blob/8745b545b2b30ce6683a6b1f077ecf9de4f10052/installer.sh | bash

They both clone cornerstone and cornerstone-cpp directly from master.

Dependencies

might need to install:

  • CMake
  • Clang, LLVM

probably already have:

  • GNU Make
  • Bash
  • A computer
  • Curl/wget

Backbone

Backbone is the backbone of the Cornerstone compiler framework. It's the language the compiler framework is written it. It's compiler is written using the framework. It's compiler is all you need to write to bootstrap yourself into the Cornerstone ecosystem. The cpp implementation of both a part of the Cornerstone compiler framework and the full Backbone compiler is provided in cornerstone-cpp and utilized in installer.sh.

Some examples of backbone are provided in examples/.

Further Reading

Repository Listing

This is the central repo for the Cornerstone compiler framework. It contains the implementation of Cornerstone in the Backbone programming language. Backbone is implemented using a bootstrapping implementation. The current reference bootstrapping implementation is cornerstone-cpp.

Other repos are listed below.

  • backbone, the original backbone compiler, written in C. This is the first project in the chronology of the cornerstone project.
  • cornerstone-cpp, the bootstrapping implementation of the Backbone programming language. Used to compile the Cornerstone project in this repository and currently used to run examples for the Backbone language.
  • backbone-tests, contains code for testing both the Backbone compiler implementation
  • ktodo, is a webkit-based todo viewer and manager.

Other partial implementations for exploratory work are listed below. These may be interesting for people looking for implementations in different languages or styles. Most implementations contain at least the parser, some have varying amounts of the compiler passes and compliance with the cpp implementation.

About

The backbone implementation of the cornerstone compiler framework.

Resources

Stars

Watchers

Forks

Packages

No packages published