Currently I am thinking and searching for the adequate programming languages for a project (more than one programming language will be used).
Questions: Is there a big mistake presented in my list (other than my belief of go as a suitable language)? Any tipps before I start?
project: opensource project with semantic web (including rdf/owl, topicmaps), web applications and services, machine learning. distributed system. working version by late August 2011 mathematics/logic and speed is important, as well as fast network transfer data will be up to 64GB
requirements: 1) open source languages only
my beliefs (which are subjective but will probably/quite certainly not change): 1) go is a good programming language at the moment/future. this is my belief and 'bet' at the moment.
Programming Languages in this precedence:
A1) go (golang.org) reasons: my belief, should be fast in the future (now execution time ist about twice as long as a java programm) fast growing community. hopefully improves in the next 12 months. used as a general programming language and for web related stuff. (I want to get away from the java virtual machine, partly because of my beliefs partly because of my privious experience)
A2) java resons: there are many important programs and libraries available, e.g. Jena, Pellet, XML Calabash, etc. go is given a strong precedance, but second choice is java.
A3) haskell reason: if haskell is not too slow and a functional approach is a good choice, haskell is chosen. I think go and haskell together is a better option than erlang or other functional programming languages. (this may present a believe)
A4) R reason: for problems where mathematics and statistic count, e.g. maschine learning. there are very good packages available for this in R. R is partly more a collection of packages than a programming language.
B1) C / C++ reason: if for some subsystem written in go/java/haskell/R is to slow, C and C++ are considered.
B2) Prolog reason: I think in a lot of situations, haskell is a better option, but prolog is supposed to be faster in some cases and also a good option. there is are many libraries available for prolog.
C1) Python reason: I think go and the rest of the mentioned languages are a better option. could be used for some natural language processing.
C2) Perl
C3) PHP good for cms integration, e.g. drupal
mathematia: is very suitable where R has limits. but it's not open source and many researchers back R.
Ruby: I am not familiar with Ruby therefore it is not included, some of my friends swear on it.
Not considers because of the requirement to use open source languages: C#, F#, etc.
some PAPERS and LINKS, that could be interesting: http://prs.ism.ac.jp/web/packages/sets/sets.pdf (if you search for the title with quotes you can find the coresponding paper)
http://finzi.psych.upenn.edu/R/library/sets/html/fuzzyinference.html
http://cran.r-project.org/web/views/MachineLearning.html
http://tmra.de/2010/documents/TMRA2010_proceedings.pdf
Three papers are possibly interesting: Topic Maps Graph Visualization & Suggested GTM (it's use to transfrom a natural question to an answer), A new approach to semantic integration, Defining Domain-Specific Facets for Topic Maps with TMQL Path Expressions. At least those papers are free to download ;-)