Content deleted Content added
No edit summary |
Undid revision 753829737 by 46.47.83.110 (talk) |
||
Line 1:
{{Infobox programming language
| name = Opa
| logo = [[File:Opa logo cloud.png|frameless]]
| paradigm = [[multi-paradigm programming language|multi-paradigm]]: [[functional programming|functional]], [[imperative programming|imperative]]
Line 15:
}}
'''Opa
It can be used for both [[client-side scripting|client-side]] and [[server-side scripting]], where complete programs are written in Opa and subsequently compiled to [[Nodejs]] on the [[server (computing)|server]] and [[JavaScript]] on the [[client (computing)|client]], with the [[compiler]] automating all communication between the two.<ref>{{cite web |author=Adam Koprowski|url=http://www.developer.com/open/opa-vs.-node.js-javascript-framework-comparison.html|title=Node.js vs. Opa: Web Framework Showdown|publisher=developer.com|date=24 February 2012}}</ref><ref>Opa actually supports various server-side backends, Nodejs being the most popular one</ref> Opa implements [[Strong typing|strong]], [[static typing]], which can be helpful in protecting against security issues such as [[SQL injection]]s and [[cross-site scripting]] attacks.<ref>{{cite journal|url=http://www.mendeley.com/research/static-enforcement-of-web-application-integrity-through-strong-typing/|title=Static Enforcement of Web Application Integrity Through Strong Typing|last1=Robertson |first1=William |last2=Giovanni |first2=Vigna |year=2009|journal=SSYM'09 Proceedings of the 18th conference on USENIX security symposium}}</ref>
|