Leonardus
Loading...
Searching...
No Matches
EXAMPLES

Introduction

There is a collection of examples in the directory Examples.

From the git repository

To run one of them in the shell, use:

‍../Examples> ../lb Hanoi.leo

All examples can be executed with:

‍make runxtest

From the docker image

To run one of them in the shell, use:

‍../Examples> lb Hanoi.leo

or by using the Linux shebang:

‍../Examples> ./Hanoi.leo

List of Examples

ArrayEqual.leo

A procedure arrayeq to compare array contents.
This is not a deep comparison; the contents of the arrays are compared
with the build-in eq operator.

Caesar.leo

Demonstrates Caesar decryption

Complex.leo

Demonstrates a prototype-based object (PTBO) to create a
data type Complex.

EgyptianFraction.leo

Demonstrates the representation of a rational
number in the interval [0,1] as a sum of unit fractions (fractions with numerator 1).
However, the computed representation is not always the shortest possible.

EndDictOperator.leo

A simple example of how to implement one operator with others.
The enddict procedure is equivalent to the >> operator.

ExtendedEuclidean.leo

Demonstrates the usage of the Extended Euclidean Algorithm, implemented as xgcd.

Factorial.leo

Demonstrates the implemented 128-Bit integer size.
The definition of the factorial procedure is a fragment from the Green Book.

Factors.leo

Demonstrates a procedure factors,
that generates a list of all factors of an integer X > 0 and places the list on the stack.

FibonacciGoldenRatio.leo

The list of the first 51 Fibonacci numbers.
Using the leodict algorithm with an exponentiation of the golden ratio.

FibonacciRecursive.leo

A compact but inefficient recursive way to print the first 20 Fibonacci numbers.
(copied from Wikipedia). It also demonstrates a statistics snapshot at program end.
This script can be executed by Ghostscript, if one removes the shebang.

Hanoi.leo

Demonstrates stack objects in a procedure hanoi,
which solves the mathematical puzzle Tower of Hanoi recursively.

ListComprehension.leo

Demonstrates semantics similar to Python's list comprehension

MonteCarlo.leo

Demonstrates the approximation of pi with a simple
Monte Carlo simulation of random points within a circle.

NCat.leo

A procedure ncat to concatenate strings.
It demonstrates an implementation using only stack manipulation and the putinterval operator.
This could replace the concat operator, making the LeoScript core code smaller.
Source: stackoverflow luser droog

PyMapFunction.leo

Demonstrates semantics similar to Python's map() function on lists with a lambda

PyUnpacking.leo

Demonstrates semantics similar to Python's unpacking operator

StatisticsOOP.leo

Demonstrates a prototype-based object (PTBO) encapsulation using the
calculation of measures of statistical dispersion in descriptive statistics.