433
Interpreted programming languages have the advantage of being more portable
and easier to code and implement. For example, reading a file in C++ may require 15
lines of code, whereas in Python, the same job can be done with one line of instruction. In addition, due to its ease of use, automatic memory management, and platform independence, even people without a programming background can perform
data analytics tasks without dealing with the details of machine architecture and
performance issues which makes them better suited for the scientific community
(Millman & Aivazis 2011). However, the biggest drawback of interpreted languages
is that they often execute slower compared to compiled languages. This is because
the compiled languages check the code for syntax and type errors, translate the code
to machine interpretation at the compile stage and convert it to a platform-specific
binary executable before executing them. Thus, the compiled languages are faster
since the source code is already converted into native platform specific code and the
code can be directly executed without any more translation. On the other hand, the
interpreter of interpreted languages will run through the code line by line and execute
each command by checking for inconsistencies on the fly. Moreover, the translation
to machine code will happen at the execution time making them slower. However,
due to the new technologies such as just-in-time compilation (Akeret et al. 2015) and
parallelization approaches (Rubinsteyn et al. 2012), interpreted languages are closing the gap of the performance issues.
Programming Languages for FEW Nexus Research: As opposed to software
engineering, in data analytics, several aspects should be considered when selecting
a programming language for data analytics. First, some programming languages
have a faster learning curve than others. Particularly for scientists from other scientific disciplines than computer science, learning the language quickly and creating
prototypes and doing analysis without considering the underlying data structure and
memory management is important. Thus, such languages reduce the time for scientists to analyze their data instead of learning to manage the language structure.
Second, due to their popularity, some languages have great learning tools as well as
online communities for users to ask questions and get their answers quicker. Also,
there are many tutorials that can be leveraged by users’ own problems that are
widely available for free. Finally, some languages have a wide variety of ready-touse packages that can simply be downloaded and used.
Two such languages are R Python (n.d.) and Python R Web Site (n.d.). R is a
scripting language that is widely used by statisticians and especially the data manipulation and statistics tools in R are strong. Since R comes with its own Integrated
Development Environment (IDE), users can also leverage the benefits of code
completion and syntax highlighting when writing their code. When working with
geospatial data and doing geostatistical analysis, R provides lots of packages that
can be used.
Python is another language that can be used for FEW Nexus research. Python is
more flexible since it supports a better/faster execution times, more efficient algorithms and the availability of parallelization approaches. In addition, since it is a programming language, it has a bigger community online, and there are thousands of
packages that are specialized in almost all fields in the scientific community. As of
16 Computing
Précédent

- 439/686

Suivant