LINGO and Programming Terminology

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.