LiveCode
An editor has nominated this article for deletion. You are welcome to participate in the deletion discussion, which will decide whether or not to retain it. |
Paradigm | Object-oriented |
---|---|
Developer | Runtime Revolution, Ltd |
First appeared | 1993 |
OS | iOS, Mac OS X, Mac OS 9, Microsoft Windows, Linux, Solaris |
License | Proprietary |
Website | www.runrev.com |
Influenced by | |
HyperTalk |
The LiveCode programming language (formerly the "Revolution" programming language) is a commercial Cross-platform rapid application development language inspired by Hypercard's programming language HyperTalk. It is developed and sold by Runtime Revolution Ltd., based in Edinburgh, Scotland. The language was first introduced in 2001 and has tens of thousands of users.
LiveCode runs on iOS, Android, Mac OS X, Windows 95 through Windows 7, and many variations of Unix, including Linux, Solaris, and BSD. It can be used for both desktop and server/CGI applications. The first version for iOS (iPhone and iPad) was released in December 2010. It is the most widely used Hypercard/HyperTalk clone, and the only one that runs on all major operating systems.
LiveCode allows developers to create applications that run in any environment, using a compile-free workflow. Developers can reuse the same code across multiple devices and platforms from a single code base. LiveCode uses a high level, English-like programming language that is dynamically typed. The sensible programming language and compile-free workflow allow for logical code that is self-documenting and easy for casual programmers to comprehend. For example:
repeat ten times
put "Hello world at" && the time & return after field 1
wait two seconds
end repeat
Will place ten lines of "Hello world at 9:00 AM" into the first field.
While its natural-language syntax appeals to beginners, the language contains advanced features including associative arrays, regular expressions, QuickTime multimedia, support for a variety of SQL databases, and TCP/IP libraries. The LiveCode engine supports a variety of graphics formats, anti-aliased vector graphics, embedded web browsers. Yet, accessing these higher-level functions is still quite easy.
For example, to load the contents of a web page into a variable takes one line of code:
put url "http://www.yahoo.com" into MyVariable
To upload a file via FTP is similar:
put url "binfile:picture.jpg" into url "ftp://john:passwd@ftp.example.net:2121/picture.jpg"
The 1900 built-in language terms and keywords may be extended by external libraries written in C and other lower level languages.
LiveCode project files are binary-compatible across platforms. They inherit each platform's unique look and feel and behaviors with no modification. For example, buttons, scrollbars, progress bars and menus behave correctly without any intervention on the part of the developer.
Compiling a standalone produces a single-file executable (minimum size ~1.5MB) for each platform targeted. There is no separate runtime necessary.
The Wikipedia article on Hypercard, being at root quite similar, contains a more detailed discussion about the basics of the development environment and scripting language. LiveCode is a much richer and far more powerful evolution of that original program, supporting multiple platforms, devices and many fundamental language extensions such as object-oriented behaviors.
See also
- Runtime Revolution, the company that makes LiveCode
- HyperCard
External links
- Brigham Young University Programming in LiveCode course
- Network World Review of LiveCode
- LiveCode Google Group
- LiveCode Journal webzine for LiveCode developers
- GLX Framework 3rd party application framework for LiveCode
- Remo 3rd party IDE for LiveCode
- revIgniter 3rd party Web Application Development Framework for LiveCode
- Hyperactive Software Articles on LiveCode including converting HyperCard stacks
- Tips and Tricks List of tips and tricks for using LiveCode
- NativeSpeak I18N/Localization for LiveCode
- Mirye Software Publishing publisher of LiveCode
- Article: Extending the LiveCode Message Path Review of the LiveCode message hierarchy with details on extending it with frontScript, backScripts, and libraries
- LiveCode discussion forums
- LiveCode lessons
- RunRev Ltd. maker of LiveCode