Programming Langauges

Programming language in computer programming is needed for the same reason you need a natural language in your everyday life to communicate and simplify things.

Programming languages are an interface between humans and computer, they allow us to communicate with computers to do awesome things.

This article guides you to build C, C++, Java, Node.js and Do applications for eSOMiMX6 device(s).

C

C is a programming language initially developed by Dennis Ritcher between 1969 and 1973 at Bell Labs, and used to re-implement the Unix operating system.

C has been standardized by the American National Standards Institute (ANSI) since 1989 (see ANSI C) and subsequently by the International Organization for Standardization (ISO).

C is a structured programming language. The language was designed to support cross-platform programming. Compilers, libraries and interpreters of other languages are often implemented in C.

Quickly develop and run C applications on eSOMiMX6 devices using our release package and installation manual available in our developer site.

/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2014.03_linux/bin/arm-linux-gnueabihf-gcc-4.8.3 [Program-File-Name] -o [Binary-Name]

Snippet:

C++

In 1979, Bjarne Stroustrup, a Danish computer scientist, began work on “C with Classes”, the predecessor to C++. In 1983, “C with Classes” was renamed to “C++”, adding new features that included virtual functions, function name and operator overloading, references, constants, type-safe free-store memory allocation (new/delete), improved type checking, and BCPL style single-line comments with two forward slashes (//).

Furthermore, it included the development of a standalone compiler for C++, Cfront. In 1985, the first edition of The C++ Programming Language was released, which became the definitive reference for the language, as there was not yet an official standard. The first commercial implementation of C++ was released in October of the same year.

C++ is an object-oriented programming language. It was designed with a bias toward system programming and embedded, resource-constrained and large systems, with performance, efficiency and flexibility of use as its design highlights.

Quickly develop and run C++ applications on eSOMiMX6 devices using our release package and installation manual available in our developer site.

Snippet:

/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2014.03_linux/bin/arm-linux-gnueabihf-g++ [Program-File-Name] -o [Binary-Name]

JAVA

James Gosling, Mike Sheridan, and Patrick Naughton initiated the Java language project in June 1991. Java was originally designed for interactive television, but it was too advanced for the digital cable television industry at the time. The language was initially called Oak after an oak tree that stood outside Gosling’s office. Later the project went by the name Green and was finally renamed Java. Gosling designed Java with a C/C++-style syntax that system and application programmers would find familiar.

Java is a general-purpose computer programming language that is class-based. It is both compiled and interpreted. It is intended to let application developers “write once, run anywhere” (WORA). The compiled Java code can be run on any platform.

Quickly develop and run JAVA applications on eSOMiMX6 devices using our release package and installation manual available in our developer site.

Snippet:

# javac [Program-File-Name]

# java [Class-Name]

Node.js

Node.js was originally written by Ryan Dahl in 2009, about thirteen years after the introduction of the first server-side JavaScript environment, Netscape’s LiveWire Pro Web. The initial release supported only Linux and Mac OS X. Its development and maintenance was led by Dahl and later sponsored by Joyent.

Node.js is an open-source, cross-platform JavaScript run-time environment for executing JavaScript code server-side. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient.

Quickly develop and run Node.js applications on eSOMiMX6 devices using our release package and installation manual available in our developer site.

Snippet:

# node [Program-File-Name]

Python

Python was conceived in the late 1980s, and its implementation began in December 1989 by Guido van Rossum at Centrum Wiskunde & Informatica in the Netherlands as a successor to the ABC language capable of exception handling and interfacing with the Amoeba operating system.

Python is a widely used high-level programming language for general-purpose programming. It is an interpreted language.

Quickly develop and run python applications on eSOMiMX6 devices using our release package and installation manual available in our developer site.

Snippet:

# python [Program-File-Name]

Go

Golang is a programming language initially developed at Google in year 2007 by Robert Griesemer, Rob Pike, and Ken Thompson. Go programming language is a statically-typed language with syntax like that of C. It provides garbage collection, type safety, dynamic-typing capability, many advanced built-in types such as variable length arrays and key-value maps. It also provides a rich standard library.

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multi core and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It’s a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

Quickly develop and run Go applications on eSOMiMX6 devices using our release package and installation manual available in our developer site.

Snippet:

$ env GOOS=linux GOARCH=arm GOARM=7 go build [Program-File-Name]

The video demonstrates a simple hello world application, written in C, C++, Java, Node.js, Python and Go, running on eSOMiMX6 device.

Please visit our developer website to get step by step instructions on building and running programming languages on our eSOMiMX6 board.

For further assistance and queries get in touch with sales@e-consystems.com