diplomsko delo
Povzetek
V diplomskem delu je predstavljena implementacija programskega jezika z razširljivim mixfix razčlenjevalnikom. Novonastali jezik, imenovan Mixfix, je osnovan na podlagi jezika MiniHaskell, ki je del knjižnice plzoo, napisane v programskem jeziku OCaml. V delu so najprej predstavljeni različni načini, kako obstoječi programski jeziki pomagajo uporabnikom pri neposrednem izražanju svojih idej, nato pa je predstavljen Mixfix in njegov način za definiranje poljubnih operatorjev. V nadaljevanju so povzete prilagoditve jezika MiniHaskell, predvsem na nivoju leksične analize. Pred opisom implementacije razčlenjevalnika so podani kratek pregled precedence in asociativnosti ter algebraične strukture monada, ki je osnova za monadično programiranje, v katerem je razčlenjevalnik napisan. Razlagi monade sledi opis kombiniranja manjših razčlenjevalnikov v večje enote, ki so na koncu združeni v en sam razčlenjevalnik za jezik, ki je prilagodljiv preko uporabniško definiranih operatorjev.
Ključne besede
razčlenjevalnik;programski jezik;funkcijsko programiranje;mixfix;OCaml;računalništvo;matematika;interdisciplinarni študij;univerzitetni študij;diplomske naloge;
Podatki
| Jezik: |
Slovenski jezik |
| Leto izida: |
2024 |
| Tipologija: |
2.11 - Diplomsko delo |
| Organizacija: |
UL FRI - Fakulteta za računalništvo in informatiko |
| Založnik: |
[A. Medič] |
| UDK: |
004.43:51(043.2) |
| COBISS: |
211106563
|
| Št. ogledov: |
120 |
| Št. prenosov: |
30 |
| Ocena: |
0 (0 glasov) |
| Metapodatki: |
|
Ostali podatki
| Sekundarni jezik: |
Angleški jezik |
| Sekundarni naslov: |
An implementation of an extensible mixfix parser |
| Sekundarni povzetek: |
This thesis details the implementation of a programming language equipped with an extensible mixfix parser developed using the OCaml programming language. The newly created language, named Mixfix, is derived from MiniHaskell, part of the plzoo library. The document begins by examining various methods by which existing programming languages facilitate the direct expression of user ideas. Following this examination, it introduces Mixfix and its unique mechanism for defining arbitrary operators, illustrating the language's adaptability. The thesis then summarizes adaptations made to MiniHaskell, particularly at the lexical analysis level. Before describing the implementation of the parser, it provides a brief overview of precedence, associativity, and the algebraic structure of monads, which form the basis for the monadic programming within which the parser is developed. The explanation of monads is followed by a description of how smaller parsers are combined into larger units. These are ultimately integrated into a single, flexible parser for the language, configurable through user-defined operators. |
| Sekundarne ključne besede: |
parser;programming language;functional programming;mixfix;OCaml;computer science;computer and information science;computer science and mathematics;interdisciplinary studies;diploma; |
| Vrsta dela (COBISS): |
Diplomsko delo/naloga |
| Študijski program: |
1000407 |
| Konec prepovedi (OpenAIRE): |
1970-01-01 |
| Komentar na gradivo: |
Univ. v Ljubljani, Fak. za računalništvo in informatiko |
| Strani: |
1 spletni vir (1 datoteka PDF (52 str.)) |
| ID: |
24920761 |