Proof-of-concept extension of GCC 4.7 and 4.8 with Guile 2.0. See https://gcc.gnu.org/ml/gcc/2012-02/msg00323.html .

Ludovic Courtès ed1f66c513 Add (gcc gimple) and a cgraph/GIMPLE test. 7 years ago
build-aux 86e06d641f Use `gitlog-to-changelog' to produce a ChangeLog upon `make dist'. 7 years ago
examples 195702efd9 Use a GPLv3+ header in all Scheme files. 7 years ago
m4 79350d1b2a Initial commit. 7 years ago
src ed1f66c513 Add (gcc gimple) and a cgraph/GIMPLE test. 7 years ago
tests ed1f66c513 Add (gcc gimple) and a cgraph/GIMPLE test. 7 years ago
.gitignore ed1f66c513 Add (gcc gimple) and a cgraph/GIMPLE test. 7 years ago
AUTHORS 79350d1b2a Initial commit. 7 years ago
COPYING 79350d1b2a Initial commit. 7 years ago
Makefile.am ed1f66c513 Add (gcc gimple) and a cgraph/GIMPLE test. 7 years ago
README e576c3ecc8 Update `README'. 7 years ago
configure.ac beb8003a6d Add a test suite framework. 7 years ago

README

Guile-GCC
-===========-

Extend GCC with Guile and be happier.

Happy birthday Guile 2.0!

This code was initially written in less than a week as part of the “Neat
hacks for a birthday” operation to celebrate the first anniversary of
GNU Guile 2.0:
.

It contains bindings for subsets of important GCC internal programming
interfaces, which are illustrated by the example Scheme plug-ins under
‘examples/’.

Use of Scheme allows for interesting things such as the embedded
domain-specific language (EDSL) in the (gcc) module that allows
code-generating code to be written very concisely, as opposed to having
series of ‘build’ calls to create and connect ‘tree’ objects.

Future work includes extending the (ice-9 match) pattern matcher found
in Guile to support tree and gimple objects in a simple way.

16 February 2012.