Här är ett axplock från den senaste veckans presentationer av nya programmeringsspråk. Tre nya funktionella språk delar scenen med ett mer traditionellt:

Eta är funktionellt på Javaplattformen

Eta är en dialekt av det funktionella språket Haskell som kan använda Javabibliotek och har hög typsäkerhet. Det körs alltså på Javaplattformen och kan till viss del liknas vid Scala.

Variabler är oföränderliga (immutable) som standard. Det är sannolikt ett främmande koncept för dem som inte är bekanta med funktionell programmering, men nämns ofta som en stor fördel av dem som är det. Eta finns i en väldigt tidig version, 0.0.5.

Läs också: Javascript-utvecklare – följ de här reglerna för snyggare och renare kod

Lux är också funktionellt

Liksom Eta är Lux funktionellt och körs på Javaplattformen. Det är inspirerat av Haskell, Clojure, ML och kanske framför allt av Lisp. Ett exempel på det senare är användningen av makron.

Till skillnad från till exempel Clojure är Lux statiskt typat. Det finns dessutom konstruktioner för att hantera samtidighet. Det aktuella versionsnumret för Lux är 0.5

Lambdascript hänger på trenden

Trots det fyndiga namnet Lambdascript handlar det om ett språk som bygger på Python. Tanken är att tillföra funktionella konstruktioner som är influerade av Haskell till Python.

Ett mål med språket är att kunna skriva moduler som kan användas i vanliga Pythonprogram. Språket är så färskt att det ännu inte finns någon publik version tillgänglig.

Läs också: Utvecklare – det här behöver du ha koll på 2017

Nim tar det bästa från flera språk

Tänk dig enkelheten från Googles Go kombinerad med den säkra minneshanteringen i Rust och de snabba utvecklingscykler som kan fås med Python. Krydda anrättningen med metaprogrammering som i Lisp, alltså att kunna hantera program som data. Det senare kanske kan liknas vid ett slags superfunktionell programmering?

Hur som helst, resultatet blir språket Nim som finns i en tidig version 0.16. Som standard producerar Nimkompilatorn C-kod, men den kan också spotta ur sig C++, Objective-C, Javascript, med flera språk. Exekverbara programfiler kan skapas utan några externa beroenden.