Mauricio Chara
Calle 64 c - norte # 10a - 08
Popayán, Cauca 190001
(+57) 315 377 4638
pmadmauricio@gmail.com
Larry programming
language
February 26, 2020
What is Larry?
Larry is the design of an object-oriented programming language, created in the year 2020.
It is designed by Mauricio Chara, and has not been developed yet.
Larry is used to:
● Mobile apps
● Desktop applications
● Web applications
● Web servers and application servers
● Games and more.
Why create Larry?
Larry is the design of a digital programming language, with a human interface and not a
machine approach.
2
Larry Getting Started
Larry quick start
In Larry, each application (thin dish) begins with a class name (recipe), and that class (recipe)
must match the file name.
We create our first Larry recipe, called MyRecype.larry, which can be made in any text editor (like
Vim).
The file must contain a "Hello world" message, which is written with the following code:
Don't worry if you don't understand the code above; We will discuss it in detail in later chapters.
For now, let's run the previous code.
Save the code in the text editor as "MyRecipe.larry". Open the linux terminal, navigate to the
directory where you saved your file and type "larryc MyRecipe.larry":
This will compile your code. If there are no errors in the code, the command prompt will take you
to the next line. Now, type "larry MyRecipe" to test the application (thin dish):
3
The fine dish served by Larry should be:
Congratulations! Chef, has written and executed his first fine dish in Larry.
4
Larry Syntax
In the previous chapter, we created a Larry file called MyRecipe.larry, and used the following
code to print "Hello, World!" on the screen:
Example Explained
Each line of code that runs in Larry must be within a recipe. In our example, we named the recipe
MyRecipe. A recipe should always start with a first capital letter.
Note: Larry is case sensitive: "MyRecipe" and "myrecipe" have a different meaning.
The name of the larry file must match the name of the recipe. When saving the file, save it with
the recipe name and add ".larry" to the end of the file name. To run the above example on your
computer, make sure larry is installed correctly: Go to the Beginning Chapter for information on
how to install Larry. The output must be:
Input language
Larry allows you to configure the input language to work in several languages. Type or use voice
commands in each language.
For example, configuring Larry to work in Spanish and English is relatively simple and you can
even include a key so that voice commands can easily work in the different selected languages.
5
To start, add the following settings:
Install the output device
Larry allows you to configure the output device that visually represents information, to work with
all electronic display technologies.
Some of the technologies supported by Larry:
● Computer screen or computer monitor; output device that visually represents
information.
○ Flat screen, used in computers and televisions.
○ Wide screen, own format of cinematic projection rooms.
○ Touch screen, screen that allows data entry by touch contact on its surface.
○ Auto-microscopic screen, close to 3D screens.
○ 3D screen, screen that reproduces stereoscopic vision.
○ Transparent augmented reality screen, mixes volume sensation («3D») with real
objects.
○ By display technology
■ Monochrome monitor or phosphor screen; One of the first types of
computer screen.
■ Interferometric modulator screen, used, for example, in mobile phones.
■ Plasma screen, image generating device based on plasma discharge.
■ LCD screen (Liquid Crystal Display); Thin and flat screen formed by a
number of pixels placed in front of a light source.
■ LED display, electronic display with LED technology.
■ Projection screen, surface used to project images.
To start using the display technologies set the following settings:
6
My first recipe in Larry
A Larry recipe (or simply recipe), is an orderly description of a computational algorithm. It
consists of one or several snacks with which a fine dish is made (application of Larry):
Main snack
A snack is a code snippet within a recipe, performs a specific task and is relatively independent
of the rest of the code.
Snacks run when they are called from other snacks. A snack entry point is any recipe that has a
snack main.
Show message
Inside the snack main (), we can use the screen ingredient to call your printing method and print
a line of text on the standard screen:
Congratulations! You have understood Larry's basic syntax.
7
Larry Comments
Comments can be used to explain the Larry code and make it more readable.
Comments from a single line in Larry begin with two slashes (//).Larry ignores any text between
// and the end of the line (it will not be executed).
This example uses a single-line comment before a line of code:
This example uses a single-line comment at the end of a line of code:
Comments enriched in Larry
Whether you use HTML, JSON, XML or another as a text structuring language, Larry's rich
comments are easy to use. To use a structuring language, do the following: Start <? HTML>: and
end: <HTML>. They must be inside: Start / * and end *?
Full example of a rich comment:
8
Congratulations! You have understood how to make reviews for your recipes and snacks in
Larry.
9
Larry Ingredients
The ingredients (variables) are the raw material of the recipes (classes) in Larry.
In Larry, there are different types of variables, for example:
● Text
● Number
● Boolean
Declaring (Creating) Ingredients
Larry was created with a main objective and is to remunerate the creators of ingredients, snacks
and recipes with money through a legal business model through the Larry store. Nowadays the
big manufacturers of fine dishes (Digital applications) face financial crisis due to the great cost
of creating Ingredients (Primitive data types), snacks (Functions), recipes (Classes) and also
showcases (User Interfaces).
To create a Ingredient, you must install the supplier and then use the Ingredient:
10
11
In the previous code we found some interesting data closely related to the ingredient bill.
The utility of generating the invoice at development time is to control the consumption of
physical and logical resources of a computer system through object-oriented accounting. Larry
gives the chef freedom of development but also provides important information within the
technical specification of the ingredient to select wisely the perfect ingredient among two or
billions of alternatives in an open market.
When compiling the Calculator recipe, the following fine dish will be generated:
Show ingredients
The print () method of the screen ingredient is often used to display ingredients.
To combine text and an ingredient, use the character , (the list separator).
The general rules for building names for Ingredients (unique identifiers) are:
- Names may contain letters, digits, underscores and dollar signs.
- Names must start with a letter.
- Names must begin with a lowercase letter and cannot contain blank spaces.
- The names are case sensitive ("myVar" and "myvar" are different ingredients).
12
- Reserved words (such as Larry keywords) cannot be used as names.
Congratulations! You have understood how to create and combine ingredients for your recipes
and snacks in Larry.
Larry Data Types
In Larry every ingredient is an object.
One of Larry's philosophies is to create fine dishes (digital applications) optimized for devices
and high performance for consumer customers.
At present, the reason why digital applications resulting from powerful programming languages
are very heavy (Consume too many physical and logical resources), is because of the manual
manipulation of RAM (Memory overflow).
The philanthropist Larry team has created the Larry store with the aim of eliminating technical
complexity when starting a new project, although it is not denied that the main reason is to
eliminate the manual creation of the basic services of any project.
Abstract fine dishes (abstract digital applications) are available for download by chefs
(developers), they are solid structures that define ingredients, recipes and snacks with a high
standard of quality in the implementation of Engineering.
An abstract fine plate (abstract digital application) is not executable. It is a development
interface that allows you to build complex digital applications in a short time by stripping the
technical details of low level. Better explained, it is a lot that is acquired to build a house with the
structure (Division) Initial. By using an abstract fine plate (abstract digital application) you do
not work on all the physical and logical resources of the machine (terrain) but on predefined
(limited) physical and logical resources. Through the object-oriented accounting implemented
13
by Larry, it is possible to control in detail the compact growth of the fine plate (digital
application).
Examples of abstract fine dishes (abstract digital applications):
- Business Category:
- Abstract word processor [Lot [100 RAM credits, 50 processor credits]]
- Abstract spreadsheet [Lot [150 RAM credits, 100 processor credits]]
- Abstract slides [Lot [120 RAM credits, 110 processor credits]]
- Abstract email [Lot [20 RAM credits, 80 processor credits]]
- Abstract calculator [Lot [5 RAM credits, 25 processor credits]]
- Entertainment:
- Abstract action game [Lot [200 RAM credits, 220 processor credits]]
- Abstract adventure game [Lot [200 RAM credits, 220 processor credits]]
- Photography:
- Abstract photo editor [Lot [200 RAM credits, 250 processor credits]]
14
Complete example of an abstract fine plate (abstract digital application):
Abstract Social Network for Larry
An abstract social network is a social structure composed of a set of recipes, snacks,
ingredients that are related according to, multiple computational algorithms (professional
relationship, friendship, kinship, etc.)
15
16
Larry Operators
Larry mathematical philosophy is different from that of other digital programming languages.
For Larry, Mathematics is the logical and physical order of the elements that make up a system.
Larry is the founder of object-oriented Arithmetic, which consists of an open philosophy
calculator.
Addition
Addition is a basic operation of the arithmetic of natural, integer, rational, real and complex
numbers; by its naturalness, which is represented by the "+" sign, which easily combines two or
more numbers to obtain a final or total amount:
17
When compiling and executing the previous code, the following happens:
Object Oriented Addition
The object-oriented addition in Larry is a basic operation of ingredient arithmetic; Due to its
naturalness, it is represented by the "add" snack:
18
When compiling and executing the previous code, the output is as follows:
19
Object-oriented arithmetic will be implemented to add extra functionality to the vehicle, which
allows audio playback:
When executing the following code, the changes will be reflected:
20
subtraction
Subtraction or subtraction is an arithmetic operation that is represented by the “subtraction”
snack, represents the operation of removing objects from a collection:
When executing the previous code, the following is displayed:
21
Multiplication
Multiplication is a binary operation that is established in a numerical set, such as natural
numbers, is to add a number as many times as another number indicates.
22
When executing the previous code the result is as follows:
23
Object Oriented Multiplication
Object-oriented multiplication is a procedure that consists of doubling or repeating several
times one or a set of objects:
When compiling and executing the previous code, the result is as follows:
24
In object-oriented multiplication the order of the factors alters the result:
After compiling and executing the previous code, the changes are reflected:
25
In Arithmetic with Baldor's philosophy, any number multiplied by zero gives zero. In
object-oriented Arithmetic, any object multiplied by zero gives the same object as a product:
When executing the previous code, the following are generated:
26
The following example allows me to create clones of an ingredient and experiment with the
original ingredient. Larry creates a dependency on the cloned objects with the original object, so
that any change in the original ingredient affects the clones.
Now, the following code clones an original ingredient and adds the clones to the company.
27
División
Division is a mathematical or arithmetic operation that consists in finding out how many times a
number (the divisor) is contained in another number (the dividend):
28
29
When compiling and executing the previous code, the following is generated:
Object Oriented Division
Object-oriented division is the action of grouping objects within a dynamic structure:
30
When executing the previous code, the following happens:
Now a more common example to better understand how Larry uses the object-oriented division
to group ingredients into a dynamic structure:
31
When executing the previous code the result is:
Increase
Increase the value of an ingredient by 1 within a context:
32
When executing the previous code, the following happens:
Decrement
decreases the value of an ingredient by 1 within a context:
33
When executing the following code, the value passes the following:
Congratulations! You have understood how to work with Larry operators.
34
Larry comparison operators
The comparison operators are used to compare two or more values:
Equal to
Through equality operators we can verify if two values are equal (operator ==) in a context:
35
When executing the previous code, the following happens:
Not equal
Through inequality operators we can verify if two values are unequal (operator !=) In a context:
36
When compiling and executing the previous code, the following happens:
Greater than
Through the operator (operator >) we can verify if an ingredient is greater than another
ingredient in a context:
37
When executing the previous code the reaction is:
Less than
Through the operator (operator <) we can verify if an ingredient is smaller than another
ingredient in a context:
38
When executing the previous code, the following happens:
Greater than or equal to
>= Greater than or equal to x >= y
Less than or equal to
<= Less than or equal to x <= y
39
Logical and
Returns true if both statements are true x < 5 && x < 10
Logical or
Returns true if one of the statements is true x < 5 || x < 4
Logic reasoning
Logical reasoning is a process of logic through which, based on one or more judgments, the
validity, possibility or falsity of a Larry instruction is derived:
40
After compiling and executing the previous code, the following happens:
Congratulations! You have understood how to work with Larry's comparison operators.
41
Conditions in Larry
You should not use ingredients, snacks, recipes or other service improperly. For example, you
should not interfere with such Services or attempt to access them using a method other than
the interface and the instructions provided by the chef (developer). You can only use the
ingredients, snacks, recipes and other services to the extent that the terms and conditions,
including the laws and control regulations allow, you can suspend or cancel the ingredients,
snacks, recipes or other services if you do not know you comply with the policies or conditions
or if it is considered that the conduct may be malicious.
The use of ingredients, snacks, recipes or other services developed by other chefs (developers)
does not make you the owner of any of their intellectual property rights or the content you
access. You can only use the ingredient, snack, recipe or other service if authorized by its owner
or if permitted by law. These conditions do not grant you the right to use the trademarks or
logos used in our Services.
42
When compiling and executing the previous code, the following happens:
43
Larry has the following conditional statements:
- Use if to specify a block of code to be executed, if a specified condition is true:
- Use else to specify a block of code to be executed, if the same condition is false
44
- Use else if to specify a new condition to test, if the first condition is false
45
Select object oriented
Switch Case is a type of selection control mechanism used to allow the value of an ingredient or
expression to change the flow of program execution control through the search and the map:
46
47
Loops in Larry.
Java While Loop
The while loop loops through a block of code as long as a specified condition is true:
The Do/While Loop
The do/while loop is a variant of the while loop. This loop will execute the code block once,
before checking if the condition is true, then it will repeat the loop as long as the condition is
true.
48
Larry For Loop
Larry For Loop
When you know exactly how many times you want to loop through a block of code, use the for
loop instead of a while loop:
49
Larry recipe.
A Larry recipe (or simply recipe), is an orderly description of a computational algorithm. It
usually consists first of a list of necessary ingredients, followed by a series of instructions with
which a fine dish is made.
Larry recipes and dishes
Larry is an object-oriented programming language.
Everything in Larry is associated with recipes and dishes, along with its ingredients and snacks.
For example: in real life, a car is an object (Fine plate). The car has attributes (Ingredients), such
as weight and color, and methods (Snacks), such as driving and braking.
A recipe is like an object constructor, or a "computational algorithm" to create objects (fine
plates).
Create a recipe
To create a class, use the keyword recipe
50
Create a plate
In Larry, a dish is created from a recipe. We have already created the recipe called MyRecipe, so
we can now use this to create dishes.
To create a MyRecipe dish, specify the name of the recipe, followed by the name of the dish.
51
Multiple dishes
You can create multiple dishes from a recipe:
Using multiple recipes
You can also create a recipe dish and access it in another recipe. This is often used for better
organization of recipes (one recipe has all the ingredients and snacks, while the other class has
the main () (Entrance point)).
Remember that the name of the Larry file must match the name of the recipe. In this example,
we have created two files in the same directory / folder:
52
53
Recipe ingredients in Larry
An ingredient is a variable that is part of a recipe. In Larry, for example, a recipe specifies which
ingredients are necessary to prepare a particular dish. Many commercial products contain a
"secret ingredient" that differentiates them from competing products.
Access to ingredients
You can access the ingredients by creating a recipe dish and using the dot syntax (.):The
following example will create a recipe plate MyRecipe, with the name myDish. We use the
ingredient x on the plate to print its value:
54
Modify ingredients:
You can also modify the values of the ingredients:
55
56
Multiple ingredients
You can specify as many ingredients as you want:
57
Snack
Snacks are used to solve a specific problem, they have a minimum amount of code.
greet () prints a text (the action), when called. To call a snack, type the name of the snack
followed by two parentheses () and a semicolon;
58
Access the snacks from a plate.
59
60
Larry Constructors
A constructor is a special Indian snack Larry used to cook dishes. The builder is called when a
recipe dish is created. It can be used to set initial values for dish ingredients:
Constructor with parameters
Builders can also take parameters, which are used to initialize the ingredients.
The following example adds an integer as a parameter to the constructor.
61
Encapsulation
Better control of recipes, ingredients, snacks and other services.Recipe ingredients can be read
only or write only.Dynamic encapsulation: the chef (Developer) can change the context and thus
change the access modifiers.
Access modifiers introduce us to the concept of encapsulation. The encapsulation somehow
seeks to control access to the data that make up a dish or instance, in this way we could say
that a recipe and therefore its dishes that make use of access modifiers (especially private) are
encapsulated dishes.
62
The access modifiers allow to give a higher level of security to our fine dishes by restricting
access to different ingredients, snacks, other services making sure that the chef (developer)
must comply with a technical specification to access the information.
Technical specification
The technical specifications is where the standards, requirements and procedures to be used
and applied in all computational algorithms within Larry are defined.
63
Access Modifiers
public
- recipe: yes
- package: yes
- sub recipe: yes
- all: yes
protected
- recipe: yes
- package: yes
- sub recipe: yes
- all: not
default
- recipe: yes
- package: yes
- sub recipe: not
- all: not
64
privated
- recipe: yes
- package: not
- sub recipe: not
- all: not
65
Larry Store
Larry Store is a digital distribution platform. This platform allows chefs (developers) to browse
and download recipes (Computational Algorithms), ingredients (Excellent quality raw material),
snacks (High quality functions), abstract fine dishes (High quality abstract applications) and
more.
The Larry API is a library of prewritten recipes, included in the Larry development
environment.The store contains snacks to manage tickets, database programming and much,
much more.The store is divided into packages and recipes. Which means you can install a
single recipe (along with its ingredients and snacks) or a complete package that contains all the
recipes that belong to the specified package.
To use a recipe or a store package, you must use the install keyword:
66
Inheritance in Larry
In Larry, it is possible to inherit attributes and methods from one class to another. We group the
"inheritance concept" into two categories:
● subclass (child) - the class that inherits from another class
67
● superclass (parent) - the class being inherited from
To inherit from a class, use the extends keyword.
68
Mauricio Chara
Calle 64 c - norte # 10a - 08
Popayán, Cauca 190001
(+57) 315 377 4638
pmadmauricio@gmail.com
Larry is an open book and has no end. But here Larry's initial design ends.