Frege

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 11. června 2016; kontroly vyžadují 3 úpravy .
Frege
Jazyková třída funkční , s líným hodnocením
Objevil se v 2011  ( 2011 )
Autor Ingo Wechsung
Přípona souboru .fr
Uvolnění
Typový systém statický , silný , s odvozením typu
Byl ovlivněn Java a Haskell
Licence BSD licence
webová stránka github.com/frege/frege
OS multiplatformní

Frege je funkcionální programovací jazyk blízký Haskellu , implementovaný nad JVM a umožňuje vám používat jakékoli Java knihovny .

Historie

Když mluvíme o historii jazyka Frege, Ingo Wechsung vzpomíná, jak se v letech 2003-2004 seznámil s konceptem odvození typu v ML , a poté si přečetl článek Simona Peyton-Jonese , který měl příklad implementace kontroly typu v Haskell . Jako programátor v Perlu začal Ingo nejprve experimentovat s implementací tohoto algoritmu v Perlu . Výsledná implementace typovaného lambda kalkulu (Frege 1) se ukázala být pro praktické použití příliš pomalá [2] .

V letech 2006-2007 začal Ingo pracovat na překladači Frege 2, přepsaném v Javě pro rychlost . Frege začal jako experimentální vzdělávací projekt, jehož účelem bylo studovat koncepty moderního funkcionálního programování . V roce 2007 začal Ingo blogovat na fregepl.blogspot.com [3] , kde popisuje své experimenty [2] .

Výsledný jazyk se nevyznačoval čistotou konceptu a nebyl ani jazykem s přísným hodnocením , ani jazykem s líným hodnocením . Autor si poté stanovil za cíl implementovat podmnožinu Haskellu, čehož bylo víceméně dosaženo do května 2011, kdy byl Frege zveřejněn na google kódu [2] .

V roce 2015 proběhl mezi účastníky konference JavaOne průzkum, jaký alternativní jazyk Java , který běží nad JVM , preferují. První místo obsadil Frege [4] .

Srovnání s Haskellem

Příklady

modul ahoj kde pozdrav přítele = "Dobrý den, " ++ příteli ++ "!" hlavní argumenty = dělat println (pozdrav "Svět")

Poznámky

  1. Vydání 3.24 – 2018.
  2. 1 2 3 Paul Krill. Frege se připojuje ke Scale, Clojure mezi funkční jazyky Java . InfoWorld (2. října 2014). Datum přístupu: 21. ledna 2016. Archivováno z originálu 28. ledna 2016.
  3. Programovací jazyk Frege: Co je frege (nebo co to bude)? . fregepl.blogspot.ru (28. září 2007). Získáno 23. ledna 2016. Archivováno z originálu 4. března 2016.
  4. JavaOne porovnával popularitu jazyků běžících na virtuálním stroji Java  // Open Systems. - 2015. - č. 11 . Archivováno z originálu 26. ledna 2016.

Literatura

Odkazy