24 Days of Hello World Swift

Today is the day I introduce what I believe will be the youngest language in this series. The new language from Apple, called Swift. This is a compiled language, created for iOS, OS X, watchOS and tvOS development, designed to work with Cocoa/Cocoa Touch frameworks and the body of existing Objective-C code. Compared to Objective-C it is safer and more concise. Core concepts supported is notably dynamic dispatch, late binding, extensible programming and similar features. These are concepts that made Objective-C flexible, but Swift is designed to address problems with performance and safety trade-offs. This includes addressing null pointer problems and optimization that can flatten out method calls. It also introduced an extensibility system, which apple refer to as “protocol-oriented programming” ...

December 14, 2015 · 3 min · Leif Larsen

24 Days of Hello World C++

In today’s post I want to introduce a language that has inspired many newer languages, C++. This is a general-purpose language, with imperative, object-oriented and generic programming features. It also provides support for low-level memory manipulation. Key strengths is software infrastructure and resource-constrained applications, such as desktop applications, servers and performance-critical applications (telephone switches, space probes etc.). Today there exists many implementation of the C++ standard, and it is available on many platforms. It is standardized by the ISO (International Organization for Standardization), where the most recent version was published in December 2014. ...

December 13, 2015 · 4 min · Leif Larsen

24 Days of Hello World Lisp

Day 13, only 11 days left until Christmas, which means another language! Today I am looking into the language family Lisp, and more specifically the dialect Common Lisp. Being one of the earliest programming languages it pioneered many ideas in computer science, such as tree data structures, automatic storage management, dynamic typing, recursion and more. Lisp derives from “LISt Processor”, and linked lists is one of the major data structures used. In fact, the source code itself is made up of lists. Source code from Lisp applications can be manipulated as data structures, which allow programmers to create new syntax or new domain.specific languages embedded in Lisp, using macros. ...

December 12, 2015 · 3 min · Leif Larsen

24 Days of Hello World Pascal

In todays post I look into Pascal. This is a small and efficient language, using structured programming and data structuring it encouraged good programming practices. Unlike most languages in the C family, Pascal allows nested procedure definitions and also declarations inside subroutines. The syntax can then be simple and coherent, and a program is syntactically nearly identical to a single procedure. History Pascal was designed by Niklaus Wirth, and published in 1970. It was named in honor of the mathematician and philosopher Blaise Pascal, and was largely intended to teach students structured programming. There was however other uses as well. It was the primary high-level language used for development in the Apple Lisa and the Machintosh. ...

December 11, 2015 · 2 min · Leif Larsen

24 Days of Hello World Clojure

As I mentioned in yesterday’s post, today will be about a functional language, called Clojure. This dynamic language targets the Java Virtual Machine. Designed to be general-purpose language, it combines approachability and interactive abilities of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is compiled into JVM bytecode, but remains dynamic. It provides access to the Java framework. Clojure is a dialect of LISP, and like LISP, it treats code as data. ...

December 10, 2015 · 3 min · Leif Larsen