Knowledge (XXG)

Lingo (programming language)

Source 📝

527:), which provided programmatic extensions to Director. For example, controlling external media devices such as CD-ROM and Video tape players through Macintosh SerialPort. XObject API was openly available to developers and media device producers, which added to the popularity and versatility of Lingo. Macromind was very active in positioning the XObject API as standard for external media devices to collaborate through Lingo; and its interest as a standard achieved a lot of involvement from prominent and burgeoning media product companies through an ad hoc group called the Multimedia Association. 22: 832: 457:
scripts are attached to a sprite or inserted into a frame. Sprite behaviors are often used to give control of the sprite's properties and movement. Frame behaviors can be used to create a pause or delay within a certain frame in the score. Behaviors make it easy to program in an object-oriented way,
479:
command. These objects can control sprites and other media remotely, without being attached to any one sprite, may be used to control data or other non-displayed items, and are useful for recursion routines such as pathfinding. A Parent script can be used to create or destroy an object at any time,
505:
property which references another object (usually also a script, although other objects such as cast members can also be ancestors). Properties and methods of the ancestor are inherited by the parent. Behavior scripts are also a kind of ancestor of the sprites to which they are attached, since
488:
handlers, where other objects can input raw data and receive answers back, without knowing the inner workings of the box. Using the strengths and ease-of-use of Director's programming methodology, with the advantages of OOP makes for a powerful and fast programming environment.
331:, which led to the language's extensibility through External Factories (XFactories) or XObjects. For Director 3.13 and later versions, extensibility occurred via a different type of plug-in called an XTRA, based upon the Microsoft Component Object Model (COM). 243:
by multimedia authors of tutorials and presentations. However, 10% of the users were game developers who took a wider interest in the other 90% of its abilities, including their own function extensions by creating their own XFactories/XObjects.
464:
scripts are not attached to sprites nor can they be instantiated as Objects. They are available throughout the program (movie) and are especially useful for holding global handlers and initializing global variables at the start or end of the
219:
in 1989, and first released with Director 2.2. Jeff Tanner developed and tested Lingo for Director 2.2 and 3.0, created custom XObjects for various media device producers, language extension examples using XFactory including the XFactory
557:
Imaging Lingo was introduced with Director 8.0, and allowed developers to write high-performance image manipulation commands using a simple syntax. There are some similarities to functions of image applications (like
224:(API), and wrote the initial tutorials on how to use Lingo. Dave Shields tested and documented Object-based Lingo for Director 3.13 and 4.0. He ran build scripts to create weekly releases for testing, originated the 578:
3D engine that could be scripted with Lingo. Lingo was updated substantially to support the new 3D objects and now includes a full-featured set of 3D commands. An Xtra was also created to enable use of the
239:
Lingo was quickly adopted by burgeoning multimedia community during the 1990s and the already popular Director product. Initially, about 90% of the users only used 10% of Lingo's features; primarily
339:
Although it is still possible to use the verbose syntax, the current version of the language fully supports OO dot syntax, so that the code looks more like standard programming languages such as
625:
LINGO is also a programming language for solving linear, nonlinear and integer optimization problems, first developed in 1988 by LINDO Systems Inc. This language is still in production.
566:
3.0 with the BitmapData class. As this included more sophisticated commands, Director was also updated to allow conversion between the BitmapData object and its own Image objects.
458:
as you can directly see the relationship between the programming and the item they are attached to. They can also control or interact with other sprites, making them a true object.
595:
These other languages are perhaps not as well known as the Macromedia language. However, a legal anomaly remains in the UK that the trademark of the word 'Lingo' is held by
173: 39: 169: 156:
Lingo is the primary programming language on the Adobe Shockwave platform, which dominated the interactive multimedia product market during the 1990s. Various
603:
A language called Lingo was released for software development under Windows. This version was designed as a compilable high level programming language.
484:
Behavior and parent scripts encourage good object-oriented programming. Movie scripts are not as OOP-oriented. However, they can still be used to make
444:
There are 4 types of Lingo scripts in Director, each with a specific purpose. Each type of script may be added to certain types of compatible objects.
498: 786: 541:
Starting with Director version 4.0, Lingo was extensible through a new improved class of external plugin called Xtras. Xtras were developed in
86: 58: 272:
When Lingo was created, a verbose syntax was designed to mimic spoken language, so it would be easy for new users. Users could write
733: 678: 402:
This format uses elements of the Director Object Model, introduced in Director MX 2004. The syntax in prior versions would be like:
221: 105: 65: 43: 72: 877: 779: 506:
properties and methods of the behavior can be accessed by reference to the sprite itself. In this case, it is a kind of
54: 257: 122: 622:. This language was named Lingo and is significant because its makers successfully obtained a trademark in the UK. 32: 212: 130: 256:
Lingo is embedded into Adobe Director, and can be added as scripts on objects or on the timeline. Lingo is an
772: 816: 562:), that make it easy to create dynamic, code-based visual effects. Image manipulation was also added into 546: 245: 180:
series. Hundreds of free online video games were developed using Lingo, and published on websites such as
161: 157: 79: 549:(COM). The standardization with COM helped attract developers to creating a market for such plug-ins. 523:
Lingo 3.0 was also extensible through External Factories (XFactories) or XObjects (later replaced by
507: 196: 138: 756: 229: 126: 674: 668: 142: 580: 327:
Lingo was also initially very robust by providing object generation through a notion called
200: 165: 803: 795: 536: 524: 192: 188: 150: 737: 177: 811: 134: 871: 563: 203:
and 3D object manipulation. 3D meshes can also be created on the fly using Lingo.
720: 705: 693: 654: 642: 21: 856: 851: 340: 225: 846: 607: 559: 273: 261: 216: 480:
freeing them from the confines of the score that a Behavior is limited to.
451:
scripts work only with their member, not all events can be used with them.
324:
statements reference frames in Director's Score, not specific code lines.
320:
statements, the "to" is optional, and unlike other programming languages,
721:
Macromedia Director 8.5 Shockwave Studio for 3D: Training from the Source
615: 611: 199:, and other data processing tasks. Lingo supports specialized syntax for 181: 575: 146: 542: 344: 764: 584: 236:
disks of Macromedia Director that were shipped to the duplicator.
137:(formerly Macromedia Director). Lingo is used to develop desktop 768: 15: 619: 228:
KnowledgeBase, created examples of how to write Lingo XTRA
475:(create instances of) an object into a variable using the 187:
Lingo can be used to build user interfaces, to manipulate
501:
by a slightly idiosyncratic system: a script can have an
643:
Macromedia Shockwave for Director User's Guide, Volume 1
264:-like verbose syntax, OO dot syntax, and inheritance. 160:
were developed with Lingo during the 1990s, including
839: 802: 694:
Macromedia Director 8: Creating Powerful Multimedia
46:. Unsourced material may be challenged and removed. 670:New Perspectives on Dreamweaver CS3, Comprehensive 350:The equivalent in new scripting style would be: 614:processor developed by Linn Smart Computing in 780: 8: 510:, as one sprite may have several behaviors. 655:Macromedia Shockwave for Director, Volume 1 830: 787: 773: 765: 106:Learn how and when to remove this message 761:, at Adobe.com, Director Support Center 716: 714: 706:Inside Macromedia Director 6 with Lingo 635: 583:3D Physics engine, and later the AGEIA 7: 44:adding citations to reliable sources 734:"Rekursiv Project - Lingo Language" 14: 673:. Cengage Learning. p. 429. 667:Kelly Hart; Mitch Geller (2008). 222:application programming interface 55:"Lingo" programming language 606:A programming language based on 248:is a prominent example of this. 20: 31:needs additional citations for 736:. June 7, 2007. Archived from 708:, New Riders Pub., 01-Jan-1997 645:, New Riders Pub., 01-Jan-1996 1: 260:(OOP) language, and supports 537:Adobe Shockwave § Xtras 258:object-oriented programming 894: 574:Director 8.5 introduced a 534: 232:in C++, and assembled the 828: 276:-like sentences such as: 723:, Macromedia Press, 2002 587:engine, in Director 11. 404: 352: 278: 170:Mia's Language Adventure 174:Mia's Science Adventure 158:graphic adventure games 817:Adobe Shockwave Player 610:was developed for the 547:Component Object Model 497:Lingo supports object 246:The Journeyman Project 211:Lingo was invented by 162:The Journeyman Project 696:, Prentice Hall, 2001 657:, Hayden Books, 1996 597:Linn Smart Computing 545:using the Microsoft 508:multiple inheritance 471:scripts are used to 197:3D computer graphics 139:application software 40:improve this article 878:Scripting languages 184:and Shockwave.com. 143:interactive kiosks 127:scripting language 865: 864: 116: 115: 108: 90: 885: 834: 833: 789: 782: 775: 766: 760: 759: 757:Official website 742: 741: 730: 724: 718: 709: 703: 697: 691: 685: 684: 664: 658: 652: 646: 640: 504: 435: 432: 429: 426: 423: 420: 417: 414: 411: 408: 398: 395: 392: 389: 386: 383: 380: 377: 374: 371: 368: 365: 362: 359: 356: 330: 312: 309: 306: 303: 300: 297: 294: 291: 288: 285: 282: 242: 213:John H. Thompson 201:image processing 178:Didi & Ditto 166:Total Distortion 131:John H. Thompson 111: 104: 100: 97: 91: 89: 48: 24: 16: 893: 892: 888: 887: 886: 884: 883: 882: 868: 867: 866: 861: 835: 831: 826: 798: 796:Adobe Shockwave 793: 755: 754: 751: 746: 745: 740:on 7 June 2007. 732: 731: 727: 719: 712: 704: 700: 692: 688: 681: 666: 665: 661: 653: 649: 641: 637: 632: 593: 591:Other languages 572: 555: 539: 533: 521: 516: 502: 495: 442: 437: 436: 433: 430: 427: 424: 421: 418: 415: 412: 409: 406: 400: 399: 396: 393: 390: 387: 384: 381: 378: 375: 372: 369: 366: 363: 360: 357: 354: 337: 328: 314: 313: 310: 307: 304: 301: 298: 295: 292: 289: 286: 283: 280: 270: 254: 241:go to the frame 240: 209: 193:vector graphics 189:raster graphics 151:Adobe Shockwave 123:object-oriented 112: 101: 95: 92: 49: 47: 37: 25: 12: 11: 5: 891: 889: 881: 880: 870: 869: 863: 862: 860: 859: 854: 849: 843: 841: 837: 836: 829: 827: 825: 824: 819: 814: 812:Adobe Director 808: 806: 800: 799: 794: 792: 791: 784: 777: 769: 763: 762: 750: 749:External links 747: 744: 743: 725: 710: 698: 686: 679: 659: 647: 634: 633: 631: 628: 627: 626: 623: 604: 592: 589: 571: 568: 554: 551: 535:Main article: 532: 529: 520: 517: 515: 512: 494: 491: 482: 481: 466: 459: 452: 441: 438: 405: 353: 336: 333: 279: 269: 268:Verbose syntax 266: 253: 250: 208: 205: 135:Adobe Director 114: 113: 28: 26: 19: 13: 10: 9: 6: 4: 3: 2: 890: 879: 876: 875: 873: 858: 855: 853: 850: 848: 845: 844: 842: 838: 823: 820: 818: 815: 813: 810: 809: 807: 805: 801: 797: 790: 785: 783: 778: 776: 771: 770: 767: 758: 753: 752: 748: 739: 735: 729: 726: 722: 717: 715: 711: 707: 702: 699: 695: 690: 687: 682: 680:1-4239-2531-9 676: 672: 671: 663: 660: 656: 651: 648: 644: 639: 636: 629: 624: 621: 617: 613: 609: 605: 602: 601: 600: 598: 590: 588: 586: 582: 577: 569: 567: 565: 561: 553:Imaging Lingo 552: 550: 548: 544: 538: 530: 528: 526: 518: 514:Extensibility 513: 511: 509: 500: 492: 490: 487: 478: 474: 470: 467: 463: 460: 456: 453: 450: 447: 446: 445: 439: 403: 351: 348: 346: 342: 334: 332: 325: 323: 319: 277: 275: 267: 265: 263: 259: 251: 249: 247: 237: 235: 234:Golden Master 231: 227: 223: 218: 214: 206: 204: 202: 198: 194: 190: 185: 183: 179: 175: 171: 167: 163: 159: 154: 152: 148: 144: 140: 136: 132: 129:developed by 128: 124: 121:is a verbose 120: 110: 107: 99: 88: 85: 81: 78: 74: 71: 67: 64: 60: 57: –  56: 52: 51:Find sources: 45: 41: 35: 34: 29:This article 27: 23: 18: 17: 821: 738:the original 728: 701: 689: 669: 662: 650: 638: 596: 594: 573: 564:ActionScript 556: 540: 522: 496: 485: 483: 476: 472: 468: 461: 454: 448: 443: 401: 349: 338: 326: 321: 317: 315: 271: 255: 238: 233: 210: 186: 155: 118: 117: 102: 93: 83: 76: 69: 62: 50: 38:Please help 33:verification 30: 525:Lingo Xtras 499:inheritance 493:Inheritance 133:for use in 857:Adobe Inc. 852:Macromedia 840:Developers 630:References 341:JavaScript 335:Dot syntax 287:visibility 226:Macromedia 176:, and the 66:newspapers 847:MacroMind 608:Smalltalk 560:Photoshop 486:black-box 440:Scripting 274:HyperTalk 262:Smalltalk 217:MacroMind 153:content. 96:June 2016 872:Category 804:Software 616:Scotland 612:Rekursiv 519:XObjects 503:ancestor 455:Behavior 252:Features 230:plug-ins 182:Miniclip 576:DirectX 422:visible 370:visible 329:factory 207:History 147:CD-ROMs 80:scholar 677:  469:Parent 465:movie. 410:sprite 388:_movie 376:_movie 358:sprite 293:sprite 82:  75:  68:  61:  53:  822:Lingo 585:PhysX 581:Havok 531:Xtras 473:birth 462:Movie 434:frame 394:frame 318:go to 311:frame 125:(OO) 119:Lingo 87:JSTOR 73:books 675:ISBN 449:Cast 425:then 373:then 299:then 195:and 149:and 59:news 543:C++ 477:new 431:the 345:C++ 343:or 316:In 308:the 284:the 215:at 42:by 874:: 713:^ 620:UK 618:, 599:. 570:3D 428:go 419:). 407:if 382:go 367:). 355:if 347:. 322:go 305:to 302:go 290:of 281:if 191:, 172:, 168:, 164:, 145:, 141:, 788:e 781:t 774:v 683:. 416:5 413:( 397:) 391:. 385:( 379:. 364:5 361:( 296:5 109:) 103:( 98:) 94:( 84:· 77:· 70:· 63:· 36:.

Index


verification
improve this article
adding citations to reliable sources
"Lingo" programming language
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
object-oriented
scripting language
John H. Thompson
Adobe Director
application software
interactive kiosks
CD-ROMs
Adobe Shockwave
graphic adventure games
The Journeyman Project
Total Distortion
Mia's Language Adventure
Mia's Science Adventure
Didi & Ditto
Miniclip
raster graphics
vector graphics
3D computer graphics
image processing

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.