stamourv/picobit

语言: C

git: https://github.com/stamourv/picobit

一种用于微控制器的紧凑方案系统
A Compact Scheme System for Microcontrollers
README.md (中文)

这是一个非常小的Scheme系统,设计用于小型运行 微控制器,目前是PIC18和ARM。

它包括

  • 字节码编译器,它将Scheme源代码编译为字节码。   字节码编译器使用Racket运行,通常在a上运行   PC /工作站。
  • 一个字节码解释器,可以编译为在a上运行   微控制器,或者在一些常见的操作系统上运行   至少GNU / Linux(Windows支持暂时没有经过测试,   但是,特别是网络部分可能无法正常工作   框)。它是用(大多数)便携式C语言编写的。

用法:

  1. 安装Racket(需要运行字节码编译器)      racket-lang.org
  2. 构建VM:      使  这将使用默认配置构建VM(工作站,  没有抄袭)。要为其他体系结构配置VM,或使用  不同的选择,运行      提供帮助  来自`vm'目录。

注意:构建VM需要gawk。

  1. 编译一个Scheme程序:      ./picobit prog.scm
  2. 运行生成的程序:      ./picobit-vm prog.hex

注意:`p'脚本是编译和运行程序的快捷方式:      ./p prog.scm  相当于      ./picobit prog.scm; ./picobit-vm prog.hex

也可以看看:

  • 描述PICOBIT的论文已提交给IFL 2009: http://www.ccs.neu.edu/home/stamourv/papers/picobit.pdf     演示文稿中的幻灯片: http://www.ccs.neu.edu/home/stamourv/slides/picobit-ifl09.pdf
  • S3(小型方案堆栈):针对小型的方案TCP / IP堆栈     嵌入式应用 http://www.ccs.neu.edu/home/stamourv/papers/s3.pdf     演示文稿中的幻灯片: http://www.ccs.neu.edu/home/stamourv/slides/s3-sw08.pdf

PICOBIT是BIT和PICBIT系统的后代。你可以找到  描述这些系统的论文: http://w3.ift.ulaval.ca/~dadub100/

历史:

Marc Feeley最初在2006年左右写了PICOBIT。  Vincent St-Amour在2008年接管了开发。  Jim Shargo于2011年在Racket的一个港口工作。  Racket端口于2011年6月完成。  Peter Zotov(whitequark)于2011年8月将PICOBIT移植到ARM。

许可:

PICOBIT是根据GPLv3发布的。

本文使用googletrans自动翻译,仅供参考, 原文来自github.com

en_README.md

This is a very small Scheme system designed to run on small
microcontrollers, currently PIC18 and ARM.

It consists of

  • a bytecode compiler which compiles Scheme source code to bytecode.
    The bytecode compiler is run using Racket, usually on a
    PC/workstation.

  • a bytecode interpreter which can be either compiled to run on a
    microcontroller, or to be run on some common operating systems, at
    least GNU/Linux (Windows support hasn't been tested in a while,
    though, and especially the networking part might not work out of the
    box). It is written in (mostly) portable C.

USAGE:

  1. Install Racket (needed to run the bytecode compiler)
    racket-lang.org

  2. Build the VM:
    make
    This will build the VM with the default configuration (workstation,
    no deubgging). To configure the VM for another architecture, or with
    different options, run
    make help
    from the `vm' directory.

Note: gawk is required to build the VM.

  1. Compile a Scheme program:
    ./picobit prog.scm

  2. Run the resulting program:
    ./picobit-vm prog.hex

Note: The `p' script is a shortcut for compiling and running programs:
./p prog.scm
is equivalent to
./picobit prog.scm ; ./picobit-vm prog.hex

SEE ALSO:

PICOBIT is a descendant of the BIT and PICBIT systems. You can find
papers describing these systems at:
http://w3.ift.ulaval.ca/~dadub100/

HISTORY:

Marc Feeley originally wrote PICOBIT around 2006.
Vincent St-Amour took over development in 2008.
Jim Shargo worked on a port to Racket in 2011.
The Racket port was completed in June 2011.
Peter Zotov (whitequark) ported PICOBIT to ARM in August 2011.

LICENCE:

PICOBIT is released under the GPLv3.