Strawberry Prolog
Encyclopedia
Strawberry Prolog is a dialect
Programming language dialect
A dialect of a programming language is a variation or extension of the language that does not change its intrinsic nature. With languages such as Scheme and Forth, standards may be considered insufficient, inadequate or even illegitimate by implementors, so often they will deviate from the...

 of the Prolog
Prolog
Prolog is a general purpose logic programming language associated with artificial intelligence and computational linguistics.Prolog has its roots in first-order logic, a formal logic, and unlike many other programming languages, Prolog is declarative: the program logic is expressed in terms of...

 programming language
Programming language
A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely....

. Its syntax
Syntax of programming languages
In computer science, the syntax of a programming language is the set of rules that define the combinations of symbols that are considered to be correctly structured programs in that language. The syntax of a language defines its surface form...

 is very close to that of ISO-Prolog but it has many extensions which are not part of the standard. The main idea of Strawberry Prolog is to be very easy to use and that is why some universities
University
A university is an institution of higher education and research, which grants academic degrees in a variety of subjects. A university is an organisation that provides both undergraduate education and postgraduate education...

 use it for their Prolog courses.

History

Strawberry Prolog is produced by the Institute of Mathematics and Informatics at Bulgarian Academy of Sciences
Bulgarian Academy of Sciences
The Bulgarian Academy of Sciences is the National Academy of Bulgaria, established in 1869. The Academy is autonomous and has a Society of Academicians, Correspondent Members and Foreign Members...

. The first version was released in 1996. The leader of the Strawberry team is Dimiter Dobrev.

Some extensions

  • Global variables
  • Arrays
  • Definition of functions and Built-in predicates
  • Prolog CGI Scripts
  • OLE Automation - COM and ActiveX
  • Strawberry Prolog as OLE server
  • Databases through ODBC

Download

The compiler
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...

 can be downloaded from the Strawberry Prolog website. A restricted edition is available as freeware
Freeware
Freeware is computer software that is available for use at no cost or for an optional fee, but usually with one or more restricted usage rights. Freeware is in contrast to commercial software, which is typically sold for profit, but might be distributed for a business or commercial purpose in the...

.

Sample programs

  • Chess.spj — Chess Playing Program. You can play against the computer. This program is included in the standard installation of Strawberry Prolog. You will find it in the folder Games.
  • Fractals.pro — You will see an infinite fractals field in which you can move and even get lost. The goal is to find the target place in the field. This is a clever program which uses the pseudo-random numbers
    Pseudorandom number generator
    A pseudorandom number generator , also known as a deterministic random bit generator , is an algorithm for generating a sequence of numbers that approximates the properties of random numbers...

     in order to generate infinite but constant fractals field where you can come back and to find there the same picture as before. This sample demonstrate the graphical power of Strawberry Prolog. You will find it in the folder Programs in the standard installation of the Light edition.

Debugger

Strawberry Prolog has a unique debugger
Debugger
A debugger or debugging tool is a computer program that is used to test and debug other programs . The code to be examined might alternatively be running on an instruction set simulator , a technique that allows great power in its ability to halt when specific conditions are encountered but which...

. You can watch the execution of your program in the Proof Tree window
Window (computing)
In computing, a window is a visual area containing some kind of user interface. It usually has a rectangular shape that can overlap with the area of other windows...

.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK