izpis_h1_title_alt

Prevajalnik iz Haskell Core v JavaScript
ID BAJT, ANDRAŽ (Avtor), ID Kukar, Matjaž (Mentor) Več o mentorju... Povezava se odpre v novem oknu

.pdfPDF - Predstavitvena datoteka, prenos (446,77 KB)
MD5: C6A0F4408A53BDD19790785488694E7B
PID: 20.500.12556/rul/1a6a4c2d-2e91-4582-a896-371751972bc1

Izvleček
Zasnovali in implementirali smo prevajalnik iz Haskellove vmesne kode Haskell Core v JavaScript. Cilj prevajalnika je možnost uporabe visokonivojskih zmogljivosti Haskella za razvoj JavaScript aplikacij. V uvodu spoznamo prednosti in slabosti obeh jezikov ter razkorak med njima. Predstavili smo posebnosti in semantiko jezika Haskell Core ter podrobneje samo implementacijo prevajanja posameznih konstruktov. Razložili smo ne-striktnost in njeno simuliranje v striktnem jeziku, definirali smo sistem in predstavitev algebraičnih podatkovnih tipov ter primerjavo vzorcev. Zasnovali smo lastno vmesno kodo kot korak med ne-striktnim funkcijskim jezikom in striktnim imperativnim. Razvili smo tudi potreben sistem izvajanja za JavaScript in delovanje prevedenih programov preverili v več spletnih brskalnikih.

Jezik:Slovenski jezik
Ključne besede:prevajalnik, Haskell, Haskell Core, JavaScript, funkcijsko programiranje
Vrsta gradiva:Diplomsko delo/naloga
Organizacija:FRI - Fakulteta za računalništvo in informatiko
Leto izida:2014
PID:20.500.12556/RUL-29533 Povezava se odpre v novem oknu
Datum objave v RUL:22.09.2014
Število ogledov:2453
Število prenosov:418
Metapodatki:XML RDF-CHPDL DC-XML DC-RDF
:
Kopiraj citat
Objavi na:Bookmark and Share

Sekundarni jezik

Jezik:Angleški jezik
Naslov:A compiler for Haskell Core targeting JavaScript
Izvleček:
We designed and implemented a compiler for Haskell's immediate representation Haskell Core to JavaScript. Purpose of this compiler is the ability to use high level Haskell to develop JavaScript applications. We introduce ups and downs of both languages as well as the gap between them. We present features and semantics of the language Haskell Core and implementation of compilation of separate constructs in more detail. We explain non-strictness and its simulation in a strict language, define a system and representation for algebraic datatypes as well as pattern matching. We designed immediate representation to serve as a step between a non-strict functional language and a strict imperative one. We also developed the required runtime system for JavaScript and tested the compiled programs in several web browsers.

Ključne besede:compiler, Haskell, Haskell Core, JavaScript, functional programming

Podobna dela

Podobna dela v RUL:
Podobna dela v drugih slovenskih zbirkah:

Nazaj