EMMAWiki/TermsAndConcepts/ForDevelopers/ProgrammingLanguages: Difference between revisions

From BRF-Software
Jump to navigation Jump to search
imported>MichaelDondrup
No edit summary
imported>MichaelDondrup
No edit summary
Line 7: Line 7:


To provide interactive functionality with a web-browser we unfortunately have to use :( JavaScript :-( . The JavaScript implementations of many browser differ and this is a real mess. JavaScript is the main cause why EMMA does not work with the AnyBrowser.
To provide interactive functionality with a web-browser we unfortunately have to use :( JavaScript :-( . The JavaScript implementations of many browser differ and this is a real mess. JavaScript is the main cause why EMMA does not work with the AnyBrowser.
By use of fancy [http://www.java.sun.com Java] applets we try to raise the level of interaction to its limit. We also use some Java for doing [[CodeGeneration]].
Another interesting language is [http://www.w3.org/TR/xslt XSLT] which is in fact a fully functional functional programming language for transforming XML documents. It is used for [[CodeGeneration]] of the O2DBI backend.
= Other languages =
These are document languages which are used in EMMA
* HTML - guess why (BTW: we are actually using XHTML which is the XML version of HTML)
* XML - MAGE-ML is an example. Also O2DBI uses XML documents for defining the class structure
* CSS 2.0 - For creating our stylish web-interface
* DTD - to define and validate XML-documents

Revision as of 14:15, 21 April 2005

TermsAndConcepts: Programming Languages

EMMA is mainly written in object-oriented Perl. Perl is an iterpreted language which is commonly used for building web-applications. From our point of view the major strengths of perl are string processing, databse accessibility and web-applications, but it lacks structured data-types and number crunching capabilities. EMMA relies on numerous third party perl modules to complement this.

The analysis functions are implemented using the statistical environment R. R has excellent support for many statistical methods and the Bioconductor project provides loads of functionality for microarray data analysis within R.

To provide interactive functionality with a web-browser we unfortunately have to use :( JavaScript :-( . The JavaScript implementations of many browser differ and this is a real mess. JavaScript is the main cause why EMMA does not work with the AnyBrowser.

By use of fancy Java applets we try to raise the level of interaction to its limit. We also use some Java for doing CodeGeneration.

Another interesting language is XSLT which is in fact a fully functional functional programming language for transforming XML documents. It is used for CodeGeneration of the O2DBI backend.

Other languages

These are document languages which are used in EMMA

  • HTML - guess why (BTW: we are actually using XHTML which is the XML version of HTML)
  • XML - MAGE-ML is an example. Also O2DBI uses XML documents for defining the class structure
  • CSS 2.0 - For creating our stylish web-interface
  • DTD - to define and validate XML-documents