Aviva Directory » Computers & Internet » Programming » Opa

Created in 2010, Opa is a multi-paradigm, functional, imperative programming language.

Released as open-source in 2011, its framework is currently licensed under the MIT License, while the compiler is under the GNU Affero General Public License so that Opa applications can be released under any license, open-source or proprietary. Opa was influenced by Erlang, JavaScript, and OCaml, and supports Linux, macOS, and Windows platforms.

Generally used in scalable web applications, Opa can be used for both client-side and server-side scripting, with complete programs in Opa are compiled to Node.js on the server and JavaScript on the client, with the compiler automates the communication between the server and client.

Opa is made up of a web server, a database, and a distributed execution engine. Opa code is compiled to JavaScript using Node.js on the server-side, and to JavaScript using jQuery for cross-browser compatibility on the client-side, so that users are not required to install a plugin in their browser.

Opa is a functional language, with a static type system with type inference. It also has imperative qualities and is able to communicate using message passing, similarly to Erlang. The language includes several structures and functions common in web development, such as first-class objects, like HTML and parsers. Due to the strong relationship between the language and web concepts, Opa is intended for web applications as opposed to desktop applications.

Appropriate resources for this category are those related to the Opa programming language. These may include the language itself, any implementations or dialects, IDEs, editors, or tools designed to facilitate Opa programming, or Opa user groups, forums, tutorials, guides, or informational sites.



Recommended Resources

Search for Opa on Google or Bing