Upload
sameer-aum
View
219
Download
0
Embed Size (px)
Citation preview
7/30/2019 LINGO and Programming Terminology
1/6
1
LINGO & PROGRAMMING TERMINOLOGY
Arguments: information that gives further clarification to a command.
For example: go [whichframe]
set [what] to [what]
Arguments are values that are passed onto parameters (see parameters).
Commands: instructions that tell your movie to act on something or do something
while the movie is playing.
For example: beep tells Director to make a beep sound.
go tells Director to jump to a certain frame/marker or movie.
Comments: notes you can place within a script that help explain statements or
provide other general information about the content of a script. These notes areignored by the computer when executing the script. A double dash (--) is placed
before a comment to identify it as such. It is a good idea to provide a comment
before defining a global variable so it is clear what the variable is.
For example
-- hiScore records the highest score achieved in the game
global hiScore
Conditional statements: statements in programming that allow you to test for
conditions (such asTRUE/FALSE) and execute commands based on those
conditions
For example:
if soundBusy(1) then go the frame
The condition was not written as soundBusy(1) = TRUE. By leaving out the value
(i.e. = TRUE), Lingo assumes a TRUE value.
Constant: data that doesn't change during a movie - has a 'constant' value.
For example: FALSE, EMPTY
member(1).text = "empty" puts the word 'empty' into the text cast member.member(1).text = EMPTY clears everything (all text) from the cast member
Events: actions that occur while a movie is playing.
For example: exitFrame is when the playback head exits a frame
mouseUp is when the mouse button is released
Expression: segments of code that result in a value, for example 1 + 1.
Expressions exist within statements.
7/30/2019 LINGO and Programming Terminology
2/6
2
Function: Lingo that provides information on a particular state or condition/value.
For example: the time returns the current time
the name of memberreturns the cast member's name
the key returns the key that was pressed last.
A function (or top-level function) can also instruct a movie to do something while themovie is playing. These functions always have parentheses occur at the end of the
function. For example, calling the top-level list can have the syntax list().
Handlers: grouping of Lingo intended for execution as a unit, begins with a
keyword on. Event handlers are a unit of code that executes when an event occurs
For example: on mouseUp
: on enterFrame
Keywords: the 'nouns' of programming - help further define aspects of scripting.
For example: the, cast, field, end
List: a particular type of variable that can contain several discrete units of data at
once. Each unit, known as entries, can be manipulated without affecting the others.
Known as Arrays in JavaScript Syntax.
There are 2 types of lists:
Linear l ist :is a series of single values in sequence. Each item, separated by a
comma, is a single unit of data.e.g. ["Advanced Multimedia", "Computer-Aided Design", "Digital Design Techniques"]
Property l ist :contains 2 units of data for each entry, separated by a colon (:) One
unit is the value (data to be stored, retrieved or modified), while the other serves as a
property (another value used primarily for organising purposes).
e.g. ["Jack":95, "Jill":50, "Peter":65, "Sarah":75]
Loops: the process of continually repeating a section of a script/movie, while acertain condition is true or for a specified number of times.
Example 1
repeat while the mouseDown
nothing
end repeat
Example 2
repeat with x = 1 to 10
sprite(x).visible = 1end repeat
7/30/2019 LINGO and Programming Terminology
3/6
3
You can exit a loop by using - exit repeat.
Messages: are notices that Director sends to scripts when specific events occur in a
movie. To run the appropriate set of Lingo statements at the right time, Director mustdetermine what is occurring in the movie and which Lingo to run in response to the
event. Director sends messages to indicate when specific events occur in a movie,
such as when sprites are clicked, keyboard keys are pressed, a movie starts, the
playback head enters or exits a frame. Handlers within scripts contain instructions
that run when a specific message is received.
For example, when the playback head enters a specific frame, the enterFrame event
occurs and Director sends an enterFrame message. If a script contains an on
enterFrame handler, the statements within that handler will run, because the handler
received the enterFrame message.
Methods: terms that either instruct a movie to do something while the movie is
playing or return a value, and are called from an object. For example isBusy (in MX
2004+) in the context ofsound(1).isBusy(), is a sound channel method that
determines if a sound if playing (TRUE) or not playing (FALSE) in channel 1. Is
similar to a function but is always called from an object.
Object-Oriented Programming (OOP): a programming approach that groups
together data and procedures (sequences of instructions ) into a single unit (an
object). Lingo is an OOP language.
Object: any unit of Lingo script that is designed to both receive input and produce a
result. Each event handler is an object, since it takes input (message of an event)
and produces something (whatever scripted actions it contains).
Operator: a character or word that acts or 'operates' on one or more elements. They
can be used for calculations (+, - , /, *), assignment of values (=, to, into) or
comparison (, =, )
For example: x = 10
put 10 into x
Logical operators:: combine Boolean values and produce a Boolean result. A
Boolean value isTRUE (=1) orFALSE (=0). In Lingo, positive or negative integers
is TRUE, 0 is FALSE. Important terms used in logical operators includeAND, OR,
NOT.
7/30/2019 LINGO and Programming Terminology
4/6
4
Concatenation operators: used to combine strings. These include & and &&.
&& combines the strings with a space in-between them.
For example:
put "dean" && "utian"
-- "dean utian"
Parameters: Are variables used to give added flexibility to handlers/behaviors.
For example:
-- sprite behavior to follow cursor horizontally
on exitFrame me
sprite(me.spriteNum).locH = the mouseH
end
The term me is a parameter that together with spriteNum indicates the sprite number
to which the behavior is attached. The word me has no special magic and the above
behavior would work in exactly the same way ifme was replaced by deano.
Parameters can be changed when calling a handler (referring to a handler in code).
For example
on calcVolume value1, value2, value3
put value1 * value2 * value3
end
You can then pass on values (arguments) to parameters by typing the following in
the Message window:
calcVolume 2, 2, 3
-- 12
Properties: attributes that define an object. Sprites, cast members, even behaviors
can have properties. For example, colorDepth is a property of a bitmap cast
member. You can set properties of scripts by using property variables (see variables
below).
Procedural programming: code structured as a list of instructions telling a
computer, step-by-step, what to do, usually having a linear order of execution from
the first statement to the second and so on to the end.
Statement: One executable line of Lingo.
Symbol: are user-defined constants and have a # at the start of the name. They
7/30/2019 LINGO and Programming Terminology
5/6
5
combine the speed of integers and the descriptive property of strings. Comparisons
using symbols can usually be performed very quickly, providing more efficient code.
For example, the statement
userLevel = #beginner
runs more quickly than the statementuserLevel = "beginner"
Symbols can't contain spaces or punctuation. A string can be converted to a symbol
by using thesymbol() function, and can be converted back to a symbol by using
the string() function.
For example
x = symbol("beginner")
put x
-- #novice
x = string(#beginner)
put x
-- "beginner"
Variable: a storage 'holder' for data that can change/vary in a movie. Variables exist
entirely in RAM. There are different data types of values variables can hold:
Data Types:
in tegers:whole numbers e.g. 1, -5
f loats:decimal point numbers e.g. 1.5, -0.89
st r ings:text e.g. "dean", "Multimedia design"
symbo ls: e.g. #dean, #123
boleans:e.g. TRUE orFALSE, 1 or0
l is ts:hold multiple pieces of data at once, which can be integers, floats, strings,
symbols or a combination of all. e.g. [1, 2, 3], ["abc", 1.2, #name]
Loc al variables- holds data available in current handler being executed.
Global variables- holds data whose value can change and be accessed throughout
the movie. Globals must be declared as such using the global keyword.
Property variables- hold data only for the particular object it is attached to. Like
globals, properties need to be declared, using the propertykeyword.
Assigning a value to a variable:
put value into variable -- old, dated approach
7/30/2019 LINGO and Programming Terminology
6/6
6
set variable to value -- verbose approach
variable = value -- best approach
Rules for variable names
They have to be single words, you cannot have spaces in a variable name.
You cannot start a variable name with a number.
Variables cannot have ? character in the name.