Seed (programming)

{{Short description|JavaScript interpreter and library}}

{{Other uses|Seed (disambiguation)}}

{{More citations needed|date=March 2012}}

{{Infobox software

| name = Seed

| developer = Robert Carr, Matt Arsenault and Tim Horton

| released = {{Start date and age|2008|11|08}}

| latest release version = 3.8.1

| latest release date = {{Start date and age|2013|04|16}}

| programming language = C

| size =

| language = English

| genre = Interpreter, library

| license = GNU LGPL

| website = {{URL|https://wiki.gnome.org/Projects/Seed}}

}}

Seed is a JavaScript interpreter and a library of the GNOME project to create standalone applications in JavaScript.{{cite web|url=https://arstechnica.com/information-technology/2009/01/javascript-gtk-bindings/|title=Building desktop Linux applications with JavaScript|website=Ars Technica|date=19 January 2009 }} It uses the JavaScript engine JavaScriptCore of the WebKit project. It is possible to easily create modules in C.

Seed is integrated in GNOME since the 2.28 version and is used by two games in the GNOME Games package.[http://www.hortont.com/blog/2009/07/seed-the-module/ Seed, the module!] {{webarchive|url=https://web.archive.org/web/20090815155008/http://www.hortont.com/blog/2009/07/seed-the-module/ |date=2009-08-15 }} It is also used by the Web web browser for the design of its extensions. The module is also officially supported by the GTK+ project.[http://www.gtk.org/language-bindings.html GTK+ binding list] {{webarchive|url=https://web.archive.org/web/20110402012219/http://www.gtk.org/language-bindings.html |date=2011-04-02 }}

Hello world in Seed

This example uses the standard output to output the string "Hello, World".

  1. !/usr/bin/env seed

print("Hello, world!");

A program using GTK+

This code shows an empty window named "Example".

  1. !/usr/bin/env seed

Gtk = imports.gi.Gtk;

Gtk.init(Seed.argv);

var window = new Gtk.Window({title: "Example"});

window.signal.hide.connect(Gtk.main_quit);

window.show_all();

Gtk.main();

Modules

To use a module, just instantiate a class having for name imports. followed by the name of the module respecting the case sensitivity.

  • The modules using [https://wiki.gnome.org/Projects/GObjectIntrospection GObject Introspection], who starts by [http://devel.akbkhome.com/seed/index.shtml imports.gi.]{{dead link|date=March 2018 |bot=InternetArchiveBot |fix-attempted=yes }} :
  • Gtk
  • Gst
  • GObject
  • Gio
  • Clutter
  • GLib
  • Gdk
  • WebKit
  • GdkPixbuf, [http://devel.akbkhome.com/seed/GdkPixbuf.shtml GdkPixbuf]{{dead link|date=March 2018 |bot=InternetArchiveBot |fix-attempted=yes }}
  • Libxml
  • Cairo
  • DBus
  • MPFR
  • Os (system library)
  • Canvas (using Cairo)
  • multiprocessing
  • [http://library.gnome.org/devel/seed/stable/readline-module.html readline] {{Webarchive|url=https://web.archive.org/web/20091109222941/http://library.gnome.org/devel/seed/stable/readline-module.html |date=2009-11-09 }}
  • ffi
  • sqlite
  • [http://library.gnome.org/devel/seed/stable/Sandbox-module.html sandbox] {{Webarchive|url=https://web.archive.org/web/20091109222315/http://library.gnome.org/devel/seed/stable/Sandbox-module.html |date=2009-11-09 }}

List of the Seed versions

The names of the versions of Seed are albums of famous rock bands.

class="wikitable"

! Version

! Code Name

! Release Date

--

|0.1

|

|8 November 2008

--

|0.3

|Wednesday Morning 3AM

|2 January 2009

--

|0.5

|Transformer

|16 April 2009

--

|0.6

|Beatles for Sale

|29 April 2009

--

|0.7

|Another Side of Bob Dylan

|13 May 2009

--

|0.8

|Bringing It All Back Home

|29 May 2009

--

|0.8.5

|Self Portrait

|10 July 2009

--

|2.27.90

|London Calling

|10 August 2009

--

|2.27.91

|Yellow Submarine

|21 August 2009

--

|2.27.92

|Metal Machine Music

|7 September 2009

--

|2.28.0

|The Rise and Fall of Ziggy Stardust and the Spiders

|21 September 2009

--

|2.29.2

|Never Mind the Bollocks

|16 November 2009

--

|2.29.3

|

|30 November 2009

--

|2.29.4

|

|17 December 2009

--

|2.29.5

|Icky Thump

|1 January 2010

--

|2.29.5.1

|Achtung Baby

|1 January 2010

--

|2.29.5.2

|Third Stage

|7 January 2010

--

|2.29.5.3

|Twist and Shout

|11 January 2010

--

|2.29.90

|Fort Nightly

|8 February 2010

--

|2.29.91

|Greatest Hits

|23 February 2010

--

|2.30.0

|Piano Man

|29 March 2010

--

|2.31.1

|The Black Album

|29 March 2010

--

See also

{{Portal|Free and open-source software}}

References

{{Reflist}}

{{Refbegin}}

  • {{cite book|last=Anwari|first=Mohammad|date=1 January 2013|title=GNOME 3 Application Development Beginner's Guide

|chapter=3 Programming Languages|publisher=Packt|oclc=852469655|isbn=9781849519427}}

{{Refend}}