[ Home ]
2D
2D animation consists of shapes and bitmaps. A shape can be a rectangle, circle, oval, or an arbitrary set of line segments connected together. A bitmap is a 2-dimensional array of pixels (tiny colored dots). An example of a bitmap is an icon on your desktop that you double-click on to start up an application.
3D
3D animation is used by most modern video games. The characters and scenery in the game appear lifelike, and each character and stationary object is composed of dozens (or hundreds) of tiny triangles connected together. Every vertex of every triangle has 3 co-ordinates: x, y, and z. Every visible triangle has a solid color or a texture.
Array
A contiguous piece of data in memory that contains one or more array elements (numbers or characters). A special case of an array is a string, a set of characters.
Binary Operators
Operators such as + and - which act on 2 operands (numbers).
Bit
Stands for "binary digit," can be either a one or a zero (on or off).
Byte
A set of 8 bits. Used to represent a single character (letter, digit, or punctuation mark).
Code Editor
The software application that programmers use to enter, edit, and debug their programs. Most modern code editors (including Vecscript) feature syntax highlighting, whereby different types of program entities appear in different colors. Examples of program entities include keywords (if, while, for, etc.), identifiers (words made up by the programmer as names for variables and methods), and operators (+, -, *, /,…).
Compiler
A program which translates source code (the human-readable code entered by the programmer) into machine code (all ones and zeros that the computer understands, in the case of a native-code compiler) or an intermediate language in the case of Vecscript.
Debug
The process of detecting, tracking down and fixing those erroneous parts of a computer program which cause it to malfunction.
Download
The process of transferring data, such as the VEC code of a given board game, from the web server to the client computer (the user's computer).
FAQ
Frequently Asked Questions: many web sites have lists of these, as many users tend to have the same questions as other users, which cuts down on time-consuming technical support duties.
Forum
A place on a web site where users can post questions or comments about that web site's software product, and other users can supply answers to those questions or more feedback to those comments. Fosters a sense of community for that site's users.
Free Form
A code editor in which the program code is typed in by the programmer just as in a typical word processor, i.e. WYSIWYG (what you see is what you get).
Go
The most popular board game in Japan. The object of the game is to surround empty squares and your opponent's squares, in order to increase your territory.
HTML
Hyper-Text Markup Language: the language of web pages (parts of web sites). Usually contains mostly text and graphics. The actual HTML code itself is in the form of a text file, a long string of characters (letters, digits, punctuation marks, spaces, and new-line characters).
Java
A popular programming language by Sun Microsystems; features cross-platform support, so that a single program written in Java can run on multiple operating systems.
Keyboard Aid
The purpose of this feature is to make the mundane chore of code entry easier. For example, the coding convention in Vecscript is to use all lowercase letters (except that class names start with an uppercase letter), and identifiers composed of multiple words, such as my-string, include hyphens to separate the individual words in the identifier. Since the hyphen key is hard to type for many users, when Keyboard Aid is enabled, the hyphen as well as the letter immediately after it can be entered by typing that letter while holding down the shift key. Another nifty Keyboard Aid feature is to enable the user to enter parentheses (the most commonly used characters in the Vecscript language) by typing commas and periods, which are much less often used in the language.
Knowledgebase
Typically a large database of technical articles (related to Vecset in this case); searchable by entering keywords and phrases, like Google.
Linked List
A list of zero or more list nodes. Each list node can be an atom (a simple number or character), or another linked list.
List Node
Composed of 4 parts: a 16-bit header, a 32-bit left pointer, and a 32-bit right pointer. The right pointer usually points to (or refers to) the next list node in the parent linked list. The left pointer contains data (a number) if this list node is an atom, or points to another list node (the first list node in the child linked list) if this list node represents another linked list (as opposed to an atom).
Main Memory
See RAM.
Object Oriented
Most modern programming languages are object-oriented. This quality has 3 criteria: 1) encapsulation, whereby data structures and code which acts on those data structures are stored in modules, or units; 2) inheritance, whereby classes or modules can inherit properties from their parent class, and a hierarchy of classes exist; 3) polymorphism, which is the ability of objects belonging to different data types to respond to method calls of methods of the same name, each one according to an appropriate type-specific behavior.
Operator/Operand
Examples of operators include arithmetical operators such as +, -, * (multiplication), and / (division). Operands are usually numbers acted upon by their associated operators.
Peer-to-Peer
Type of computer networking in which every computer can connect with every other computer in the immediate vicinity, as opposed to client-server, in which every client computer connects with just one other computer, called the server.
Pointer
A 32-bit number (4 bytes) which points to (refers to) another location in memory. Every pointer in memory (in fact every byte, or character, in memory) has its own memory address (location in memory), which is itself a pointer (but almost always different from the actual contents of that memory location which is doing the pointing).
Popup Menu
In many Windows applications (but not in Macs), clicking the right mouse button displays a popup menu, or list of commands relating to the object clicked upon.
RAM
Random Access Memory: an enormous quantity of bits (ones and zeros) that can be accessed by the Central Processing Unit (CPU, or brain of the computer) in an exceedingly short period of time, like a billionth of a second. Most new computers nowadays have a gigabyte of RAM (one billion bytes, or 8 billion bits).
Ratings/Rankings
A rating is a number that goes up when you win and down when you lose. For example, average tournament chess players have a rating of approx. 1400, and grand masters have a rating above 2000. A ranking equals one if you're the best, 2 if you're second best, all the way down to say 100 if you're the worst out of a group of 100 players.
Real-Time
Real-time games, as opposed to email-based games, happen instantaneously. As soon as you make a move, your opponent sees the result of your move and immediately goes about making his/her own move. With email-based games, on the other hand, typically only one move by each player (or a small no. of moves) is made in each 24-hour period.
Reusable Software Components
Built-in Windows reusable software components include labels, edit boxes, buttons, check boxes, and radio buttons. Vecset components include, at the lowest level: Card objects (playing cards, player pieces, etc.); and at higher levels: Card-stack objects (a stack of Card objects); Board-grid objects (a 2-dimensional table or grid of Card-stack objects); Rack-grid objects (examples: a Scrabble rack, the dummy in bridge); and Table-grid (similar to Board-grid except that row heights and column widths may vary and adjacent cells, or Card-stacks, may be merged into one cell).
Runtime
A program which takes as input the Virtual Environment Code (VEC) code and executes it. In the case of a game, the Runtime displays the game board on the current user's computer screen and when it's that user's turn, it takes as input that user's keystrokes and mouse clicks and carries out the user's move. Then it communicates that move to the Game Server, and the next player takes a turn, and so on.
Source Code
Human-readable code used to instruct the computer to carry out the desired actions of a given computer program, as opposed to the ones and zeros of machine code.
String
A set of characters (letters, digits, and punctuation marks). Each character is one byte (or 8 bits) long, and all characters occupy a contiguous stretch of main memory (exception: Vecscript strings longer than 240 bytes are split into as many 240-byte sections as needed).
Structure Editor
A code editor in which the currently highlighted user selection always corresponds to either a list of lower-level program entities or a single program entity without any children (lower level entities). In the example of Vecscript, the arrow keys are used to traverse the program tree, highlighting different entities or lists of entities. This type of code editor is easier to use for newbie programmers, since in the Vecscript example, they can always press question mark (?) to bring up a popup menu of allowable program entities depending on the current program context.
Syntax
A property of programming languages that defines how the terminal symbols of the language (terminal symbols include words such as if, while, for, str, count, ivalue, etc. and constants such as 123, -99, 47.155, etc.) are put together. For a concrete example of the syntax of the English language, sentences are composed of a subject followed by an object, and the object always contains a verb.
Text Cursor
The flashing vertical bar that appears in the current Windows control (a control is an edit box, or a memo box: a multi-line edit box). The text cursor only appears in the Windows control that has the input focus, meaning that if the user presses a key on the keyboard, that key will be inserted at the text cursor, and the text cursor will move one character to the right.
VEC
Virtual Environment Code: an Intermediate Language which is sort of halfway between a high-level language (the human-readable programming language such as Vecscript) and machine language, which is all ones and zeros.
XML
Extensible Markup Language: a relatively recent invention which lets programmers store program data in text files and communicate this data to other programs.