*** Welcome to piglix ***

Opa (programming language)

Opa
Opa logo cloud.png
Paradigm multi-paradigm: functional, imperative
Developer MLstate
First appeared 2011
Stable release
1.1.0 (stable) / February 13, 2013; 3 years ago (2013-02-13)
Typing discipline static, strong, inferred
OS Linux, OS X, Windows
License MIT License, AGPLv3
Website opalang.org
Influenced by
OCaml, Erlang, JavaScript

Opa is an open-source programming language for developing scalable web applications.

It can be used for both client-side and server-side scripting, where complete programs are written in Opa and subsequently compiled to Nodejs on the server and JavaScript on the client, with the compiler automating all communication between the two. Opa implements strong, static typing, which can be helpful in protecting against security issues such as SQL injections and cross-site scripting attacks.

The language was first officially presented at the OWASP conference in 2010, and the source code was released on GitHub in June 2011, under a GNU Affero General Public License. Later, the license changed to the MIT license for the framework part (library) and AGPL for the compiler so that applications written in Opa can be released under any license, proprietary or open source.

Opa consists of a web server, a database and distributed execution engine. Code written in Opa is compiled to JavaScript using Node.js on the server side and to JavaScript using jQuery for cross-browser compatibility on the client side. The advantage of the approach compared to certain Rich Internet Application (RIA) platforms is that users are not required to install a plugin in their browser. Opa shares motivations with web frameworks, but takes a different approach. Its designers assert that this helps Opa to avoid many security issues, like SQL injections or cross-site scripting (XSS) attacks.


...
Wikipedia

...