Opa (programming language)

Opa
Paradigmmulti-paradigm: functional, imperative
DeveloperMLstate
First appeared2011
Stable release
1.1.1 (stable) / March 8, 2014 (2014-03-08)[1][2]
Typing disciplinestatic, strong, inferred
OSLinux, OS X, Windows
LicenseMIT License, AGPLv3
Websiteopalang.org
Influenced by
OCaml, Erlang, JavaScript
Preview warning: Page using Template:Infobox programming language with unknown parameter "genre"

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 Node.js on the server and JavaScript on the client, with the compiler automating all communication between the two.[3][4] Opa implements strong, static typing, which can be helpful in protecting against security issues such as SQL injections and cross-site scripting attacks.[5]

The language was first officially presented at the OWASP conference in 2010,[6] and the source code was released on GitHub[7] 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.

  1. ^ "Release 1.1.1 · MLstate/opalang". GitHub. Retrieved 2021-01-29.
  2. ^ "Some great news on Opa". Retrieved 2021-01-29.
  3. ^ Adam Koprowski (24 February 2012). "Node.js vs. Opa: Web Framework Showdown". developer.com.
  4. ^ Opa actually supports various server-side backends, Nodejs being the most popular one
  5. ^ Robertson, William; Giovanni, Vigna (2009). "Static Enforcement of Web Application Integrity Through Strong Typing". SSYM'09 Proceedings of the 18th Conference on USENIX Security Symposium.[permanent dead link]
  6. ^ "OPA: Language Support for a Sane, Safe and Secure Web, at OWASP 2010". OWASP. June 2010.
  7. ^ "GitHub repository". GitHub.

© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search