LibreLogo
   HOME

TheInfoList



OR:

LibreLogo is an
integrated development environment An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
(IDE) for computer programming in the programming language
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
, which works like the language
Logo A logo (abbreviation of logotype; ) is a graphic mark, emblem, or symbol used to aid and promote public identification and recognition. It may be of an abstract or figurative design or include the text of the name it represents as in a wordma ...
using interactive vector turtle graphics. Its final output is a
vector graphics Vector graphics is a form of computer graphics in which visual images are created directly from geometric shapes defined on a Cartesian plane, such as points, lines, curves and polygons. The associated mechanisms may include vector display a ...
rendition within the LibreOffice suite. It can be used for education and
desktop publishing Desktop publishing (DTP) is the creation of documents using page layout software on a personal ("desktop") computer. It was first used almost exclusively for print publications, but now it also assists in the creation of various forms of online c ...
.


History

Logo toolbar and interpreter was programmed by László Németh, and help with integration was provided by András Tímár. It was released as an extension to LibreOffice before code was merged into LibreOffice 4.2.3.3 main code in 2014. The lightweight implementation (1,400 lines in Python-PyUNO) uses the embedded
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
to give a simplified programming interface to the vector graphics of LibreOffice for graphic design and education (including teaching of word processing).


Installation

''LibreLogo'' is embedded in every version of LibreOffice after 4.2.3.3, released in 2014. It can also be installed as an extension for earlier versions. Its main UI is a toolbar in Writer ().


Usage

Touching the up arrow on the Logo toolbar activates the turtle, then the source code is typed directly onto the same page. The graphic is in Scalable Vector Graphics (SVG) format and can be copied and pasted into other documents. The syntax of LibreLogo is similar to
UCBLogo UCBLogo, also termed Berkeley Logo, is a programming language, a dialect of Logo (programming language), Logo, which derived from Lisp (programming language), Lisp. It is a dialect of Logo intended to being a “minimum Logo standard.” It has ...
. It supports the ¨word syntax for strings, the 'word' notation, and importantly,
recursion Recursion (adjective: ''recursive'') occurs when a thing is defined in terms of itself or of its type. Recursion is used in a variety of disciplines ranging from linguistics to logic. The most common application of recursion is in mathematics ...
. Commands can be entered in the toolbar, or
compiled In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
and run from the
Writer A writer is a person who uses written words in different writing styles and techniques to communicate ideas. Writers produce different forms of literary art and creative writing such as novels, short stories, books, poetry, travelogues, p ...
page.


Hello world example

Here is a
"Hello, World!" program A "Hello, World!" program is generally a computer program that ignores any input and outputs or displays a message similar to "Hello, World!". A small piece of code in most general-purpose programming languages, this program is used to illustra ...
example.
circle 10cm
fillcolor 'blue' pencolor 'red' pensize 2 circle 5cm
forward 200 right 89 circle 5
repeat 88  forward 200 right 89 fill
repeat 9  label 'Hello, World!' right 20 repeat 100  penup position any pendown pensize random 10 fillcolor any square 20 + random 100 


Gallery

File:LibreLogo Chess board.png,
Chessboard A chessboard is a used to play chess. It consists of 64 squares, 8 rows by 8 columns, on which the chess pieces are placed. It is square in shape and uses two colours of squares, one light and one dark, in a chequered pattern. During play, the bo ...
File:LibreLogo Logo posters.jpg, Logo posters File:LibreLogo Turtle graphics.png, Turtle graphics


See also


References

;Bibliography
Berlin 2012 Libre Office Conference


External links

*

(en) other languages supported
ebook- Text book for Secondary School students
(hu) Supported by Hungarian government.
Tutorial
College level notes {{Lisp programming language Free software programmed in Python Free integrated development environments for Python Linux integrated development environments Windows integrated development environments Software using the GPL license Software using the LGPL license Software using the Mozilla license