Coder Social home page Coder Social logo

nanopass's Introduction

This is a scheme compiler for my study.
It runs on OS X (Intel) only.

How to compile fib.

in gauche
> (load "./compiler.scm")
> (x86 (cg-top (code-generation-form (immediate-literal-form (assignmentless-form (analyzed-form (cps-form (core-form (local-form (macroless-form (append-library '(letrec ((fib (lambda (n) (if (= n 0) n (if (= n 1) n (+ (fib (- n 1)) (fib (- n 2)))))))) (fib 35)))))))))))))

a.out will be created.

References.

[1] Summer Scheme Workshop; Compiling Scheme, http://www.cs.indiana.edu/eip/compile/
[2] Ur-Scheme, http://www.canonical.org/~kragen/sw/urscheme/
[3] An Incremental Approach to Compiler Construction, http://www.cs.indiana.edu/~aghuloum/
[4] The 90 Minute Scheme to C compiler, http://www.iro.umontreal.ca/~boucherd/mslug/meetings/20041020/minutes-en.html
[5] scheme -> LLVM, http://www.ida.liu.se/~tobnu/scheme2llvm/

nanopass's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.