Last updated
GIMP's Script-Fu is based on TinyScheme
Developer(s) Dimitrios Souflis, Kevin Cozens, Jonathan S. Shapiro
Stable release
1.41 / April 14, 2013 (2013-04-14)
Type Programming language
License BSD License
Website tinyscheme.sourceforge.net

TinyScheme is a free software implementation of the Scheme programming language with a lightweight Scheme interpreter of a subset of the R5RS standard. It is meant to be used as an embedded scripting interpreter for other programs. Much of the functionality in TinyScheme is included conditionally, to allow developers to balance features and size/footprint.

Free software software licensed to preserve user freedoms

Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, not price: users—individually or in cooperation with computer programmers—are free to do what they want with their copies of a free software regardless of how much is paid to obtain the program. Computer programs are deemed free insofar as they give users ultimate control over the first, thereby allowing them to control what their devices are programmed to do.

Scheme is a programming language that supports multiple paradigms, including functional and imperative programming. It is one of the three main dialects of Lisp, alongside Common Lisp and Clojure. Unlike Common Lisp, Scheme follows a minimalist design philosophy, specifying a small standard core with powerful tools for language extension.

TinyScheme is used by the GNU Image Manipulation Program (GIMP) starting with version 2.4, released in 2007. GIMP previously used SIOD. [1]

GIMP Open source image retouching and editing tool

GIMP is a free and open-source raster graphics editor used for image retouching and editing, free-form drawing, converting between different image formats, and more specialized tasks.

Scheme In One Defun, or humorously Scheme In One Day (SIOD) is a programming language, a dialect of the language Lisp, a small-size implementation of the dialect Scheme, written in C and designed to be embedded inside C programs. It is notable for being perhaps the smallest practical implementation of a Lisp-like language. It was written by George J. Carrette originally. It is free and open-source software released under a GNU Lesser General Public License (LGPL).

TinyScheme was used as the core of Direct Revenue's adware, making it the world's most widely distributed Scheme runtime. [2]

Direct Revenue was a New York City company which distributed software that displays pop-up advertising on web browsers. It was founded in 2002 and funded by Insight Venture Partners, known for creating adware programs. Direct Revenue included Soho Digital and Soho Digital International. Its competitors included Claria, When-U, Ask.com and products created by eXact Advertising. The company's major clients included Priceline, Travelocity, American Express, and Ford Motors. Direct Revenue's largest distributors were Advertising.com and 247 Media. In October 2007, Direct Revenue closed its doors.

Related Research Articles

Adware, or advertising-supported software, is software that generates revenue for its developer by automatically generating online advertisements in the user interface of the software or on a screen presented to the user during the installation process. The software may generate two types of revenue: one is for the display of the advertisement and another on a "pay-per-click" basis, if the user clicks on the advertisement. The software may implement advertisements in a variety of ways, including a static box display, a banner display, full screen, a video, pop-up ad or in some other form.

Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991, Python's design philosophy emphasizes code readability with its notable use of significant whitespace. Its language constructs and object-oriented approach aim to help programmers write clear, logical code for small and large-scale projects.

In computing, a Trojan horse, or Trojan, is any malware which misleads users of its true intent. The term is derived from the Ancient Greek story of the deceptive wooden horse that led to the fall of the city of Troy.

SourceForge Web-based source code repository

SourceForge is a web-based service that offers software developers a centralized online location to control and manage free and open-source software projects. It provides a source code repository, bug tracking, mirroring of downloads for load balancing, a wiki for documentation, developer and user mailing lists, user-support forums, user-written reviews and ratings, a news bulletin, micro-blog for publishing project updates, and other features.

In computer science, an interpreter is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program. An interpreter generally uses one of the following strategies for program execution:

  1. Parse the source code and perform its behavior directly;
  2. Translate source code into some efficient intermediate representation and immediately execute this;
  3. Explicitly execute stored precompiled code made by a compiler which is part of the interpreter system.

Tiny BASIC is a dialect of the BASIC programming language that can fit into as little as 2 or 3 KB of memory. This small size made it invaluable in the early days of microcomputers in the mid-1970s, when typical memory size was only 4 to 8 KB. To meet these strict size limits, math was purely integer based and it lacked arrays.

Jython is an implementation of the Python programming language designed to run on the Java platform. The implementation was formerly known as JPython until 1999.

A thumbnail gallery post (TGP) is a common type of ad-driven website that provides links to free Internet pornography. In affiliate marketing terms, TGPs are the affiliates that drive new traffic to the product producers, paysites. Paysites offer free hosted galleries (FHGs) in an effort to attract paying customers, and it is these FHGs, as well as chains of TGPs, that a TGP links to.

Raster graphics editors can be compared by many variables, including availability.


GIMPshop is a modification of the free and open source graphics program GNU Image Manipulation Program (GIMP), with the intent to replicate the feel of Adobe Photoshop. Its primary purpose is to make users of Photoshop feel comfortable using GIMP. According to the developer, Scott Moschella:

My original purpose for GIMPshop was to make the GIMP accessible to the many Adobe Photoshop users out there. I hope I’ve done that. And maybe along the way, I can convert a Photoshop pirate into a GIMP user.

ImgBurn ripping and writng software

ImgBurn is an optical disc authoring program that allows the recording of many types of CD, DVD and Blu-Ray images to recordable media. Starting with version, ImgBurn can also burn files and data directly to CD or DVD. It is written in C++. It supports padding DVD-Video files so the layer break occurs on a proper cell boundary.

OpenRaster is a file format proposed for the common exchange of layered images between raster graphics editors. It is meant as a replacement for later versions of the Adobe PSD format. OpenRaster is still in development and so far is supported by a few programs. The default file extension for OpenRaster files is ".ora".

A potentially unwanted program (PUP) or potentially unwanted application (PUA) is software that a user may perceive as unwanted. It is used as a subjective tagging criterion by security and parental control products.


  1. "GIMP - Script-Fu Migration Guide". gimp.org. Retrieved November 5, 2011.
  2. Davidoff, Sherri (12 January 2009). "Interview with an Adware Author". philosecurity. Retrieved 19 March 2014.