Neptune is a new programming language inspired mainly by smalltalk and C/C++ but also taking ideas from many other places. It is, in short, a dynamically typed object-oriented language with an optional static type system. It is similar in many ways to smalltalk but has a C-like syntax. The language was designed by Esmertec AG in Århus, Denmark. Esmertec Denmark is now closed but work has started on a new implementation at sourceforge.


I’ ve written about it in these posts:

  • Types #2: more about the type system, including the void type and protocol literals.
  • Types: an overview of the static type system
  • Selectors: about selector objects, a dynamic representation of method names, which is a very powerful abstraction.
  • Characters: about a neat way to specify character literals in neptune.
  • Why Neptune?: A post that tries to explain why we decided to switch from using smalltalk to designing our own language.
  • Traits: How traits work in neptune.
  • Exceptions: About neptune’s exception mechanism which has some unusual features
  • Using: How neptune’s using statement works
  • Brevity: An example of how you could represent a simple concept in neptune, demonstrating various language features
  • C# 3.0: A look at some new features in C# that look very similar to features in neptune.
  • Constructors: How constructors work.
  • Interpol: About neptune’s approach to string construction: string interpolation.
  • Structs and Memory: Describes a tool I’ve written to make it easier to work with external C structures from neptune. Describes neptune’s interface to external calls and external memory.

I’ll keep this list updated as I write new posts.

4 Responses to Neptune

  1. Pingback: What is neutrino? » Hummus and Magnets

  2. Pingback: Elsewhere » Hummus and Magnets

  3. Pingback: Constructors #2 » Hummus and Magnets

  4. Pingback: Bytecode » Hummus and Magnets

Leave a Reply

Your email address will not be published. Required fields are marked *