Introduction (Lepton EDA Scheme Reference Manual 1.9.18)

## Introduction ¶

### About Lepton EDA ¶

Lepton EDA is a suite of free software tools for designing electronics. It provides schematic capture, netlisting into over 30 netlist formats, and many other features. It was forked from the gEDA/gaf suite (part of gEDA, please see below) by most of its main developers in late 2016.

### About gEDA ¶

gEDA, or GPL Electronic Design Automation, is a suite of free software tools for designing electronics. The gEDA project has produced and continues working on a full GPL’d suite and toolkit of Electronic Design Automation (EDA) tools. These tools are used for electrical circuit design, schematic capture, simulation, prototyping, and production.

The gEDA project was started because of the lack of free EDA tools for POSIX systems with the primary purpose of advancing the state of free hardware or open source hardware. The suite is mainly being developed on the GNU/Linux platform with some development effort going into making sure the tools run on other platforms as well.

### About the Lepton EDA Scheme API ¶

The Lepton EDA Scheme API, documented in this manual, is a set of Scheme functions which can be used to enhance Lepton applications by adding new functionality or modify existing behaviour.

Lepton EDA (formerly gEDA) has always used a Scheme interpreter for interpreting configuration files, managing keybindings in lepton-schemactic (formerly gschem), and implementing netlist exporter backends in gnetlist. However, for a long time the utility of embedding a Scheme interpreter was diminished by the lack of a low-level API for inspecting and modifying schematic documents. The Scheme types and functions documented here were added to gEDA and later to Lepton to address that need.

Lepton uses the Guile Scheme implementation (otherwise known as the GNU Ubiquitous Intelligent Language for Extensions) as its embedded Scheme. For more information about Guile, please visit http://www.gnu.org/s/guile/.

### Getting Additional Help ¶

If you think you have found a bug, please file a bug report: https://github.com/lepton-eda/lepton-eda/issues. Please add the tag ‘`scheme-api`’. It will help us to fix your bug quickly if you can describe in detail how to reproduce the bug.

If you have a question about using Lepton EDA, or about extending Lepton using Scheme, you may wish to send a message to one of the gEDA mailing lists (‘`geda-user`’ or ‘`geda-help`’) which can be accessed from the main gEDA website: http://www.geda-project.org/. Currently, Lepton doesn’t have an own mailing list. You may also find additional information in the Lepton EDA wiki.

### We Need Feedback! ¶

If you find a typographical error in this manual, or if you have thought of a way to make this manual better, we would love to hear from you! Please submit a bug report: https://github.com/lepton-eda/lepton-eda/issues, with the tag ‘`scheme-api`’.