<?xml version="1.0" encoding="utf-8"?>
<Gradivo ID="160914" NadgradivoID="0" NRID="24920761" OceID="0" DomainUrl="https://repozitorij.uni-lj.si/" IzpisPolniUrl="https://repozitorij.uni-lj.si/IzpisGradiva.php?lang=slv&amp;id=160914" StOgledov="987" StPrenosov="183" StOcen="0" VsotaOcen="0" DatumIzvoza="2026-08-08 16:29:29" OcenaSkupna="0" StPodgradiv="0" StudijskiProgramEvsID="1000407" JeIndeksirano="0" JeVecAvtorjev="0" DovoliZahtevkeZaDostop="0">
  <PID Url="http://hdl.handle.net/20.500.12556/RUL-160914">20.500.12556/RUL-160914</PID>
  <Naslov>Implementacija razširljivega mixfix razčlenjevalnika</Naslov>
  <Podnaslov></Podnaslov>
  <TujJezik_Naslov>An implementation of an extensible mixfix parser</TujJezik_Naslov>
  <TujJezik_Podnaslov></TujJezik_Podnaslov>
  <Opis>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.</Opis>
  <TujJezik_Opis>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&#039;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.</TujJezik_Opis>
  <KljucneBesede>
    <Beseda>razčlenjevalnik</Beseda>
    <Beseda>programski jezik</Beseda>
    <Beseda>funkcijsko programiranje</Beseda>
    <Beseda>mixfix</Beseda>
    <Beseda>OCaml</Beseda>
  </KljucneBesede>
  <TujJezik_KljucneBesede>
    <Beseda>parser</Beseda>
    <Beseda>programming language</Beseda>
    <Beseda>functional programming</Beseda>
    <Beseda>mixfix</Beseda>
    <Beseda>OCaml</Beseda>
  </TujJezik_KljucneBesede>
  <Potrjeno>true</Potrjeno>
  <JeZaklenjeno>false</JeZaklenjeno>
  <JeRecenzirano>false</JeRecenzirano>
  <Zaloznik></Zaloznik>
  <Izvor></Izvor>
  <Jezik ID="1060" ISO639-3="slv">Slovenski jezik</Jezik>
  <TujJezik ID="1033" ISO639-3="eng">Angleški jezik</TujJezik>
  <Povezave></Povezave>
  <Pokrivanje></Pokrivanje>
  <CasovnoPokritje></CasovnoPokritje>
  <AvtorskePravice></AvtorskePravice>
  <VrstaGradiva ID="mb11" DRIVER="info:eu-repo/semantics/bachelorThesis">Diplomsko delo/naloga</VrstaGradiva>
  <DatumVstavljanja>2024-09-05 12:40:00</DatumVstavljanja>
  <DatumObjave>2024-09-05 12:40:03</DatumObjave>
  <DatumSpremembe>2024-10-11 06:52:27</DatumSpremembe>
  <DatumTrajnegaHranjenja>0000-00-00 00:00:00</DatumTrajnegaHranjenja>
  <LetoIzida>2024</LetoIzida>
  <LetoIzidaDo>0</LetoIzidaDo>
  <KrajIzida></KrajIzida>
  <LetoIzvedbe>0</LetoIzvedbe>
  <KrajIzvedbe></KrajIzvedbe>
  <Opomba></Opomba>
  <StStrani></StStrani>
  <StevilcenjeNivo1></StevilcenjeNivo1>
  <StevilcenjeNivo2></StevilcenjeNivo2>
  <Kronologija></Kronologija>
  <Patent_Stevilka></Patent_Stevilka>
  <Patent_DatumVeljavnosti>0000-00-00</Patent_DatumVeljavnosti>
  <VerzijaDokumenta>NiDoloceno</VerzijaDokumenta>
  <StatusObjaveDrugje>NiDoloceno</StatusObjaveDrugje>
  <VrstaStroskaObjave>NiDoloceno</VrstaStroskaObjave>
  <DatumPoslanoVRecenzijo>0000-00-00</DatumPoslanoVRecenzijo>
  <DatumSprejetjaClanka>0000-00-00</DatumSprejetjaClanka>
  <DatumObjaveClanka>0000-00-00</DatumObjaveClanka>
  <EmbargoDo></EmbargoDo>
  <VrstaEmbarga ID="1" Naziv="Takojšnja javna objava" OpenAIREDostop="openAccess"></VrstaEmbarga>
  <Osebe>
    <Oseba ID="73542" Ime="Aljaž" Priimek="Medič" AltIme="" VlogaID="70" VlogaNaziv="Avtor" ConorID="" Afiliacija="" ArrsID="0" ORCID=""></Oseba>
    <Oseba ID="28197" Ime="Andrej" Priimek="Bauer" AltIme="" VlogaID="991" VlogaNaziv="Mentor" ConorID="" Afiliacija="" ArrsID="0" ORCID=""></Oseba>
  </Osebe>
  <Identifikatorji>
    <Identifikator ID="16" Sifra="VisID" Naziv="VisID" URL="">37600</Identifikator>
    <Identifikator ID="3" Sifra="CobissID" Naziv="COBISS_ID" URL="https://plus.cobiss.net/cobiss/si/sl/bib/211106563">211106563</Identifikator>
  </Identifikatorji>
  <Datoteke>
    <Datoteka ID="189737" DatotekaNRID="13904836" NamenDatotekeID="2" NamenDatoteke="Predstavitvena datoteka" FormatDatotekeID="2" FormatDatoteke=".pdf" MIME="application/pdf" IkonaFormata="pdf.png" IkonaFormataPolniUrl="https://repozitorij.uni-lj.si/teme/rulDev/img/fileTypes/pdf.png" VelikostDatoteke="450706" VelikostDatotekeKratko="440,14 KB" DatumVstavljanja="2024-09-05 12:40:04" JeZbrisana="false" JeJavnoVidna="true" JeIndeksirana="true" JeVidno="true" VidnoOd="01.01.1970" Zaporedje="0">
      <Naziv>Medic_Aljaz_-_Implementacija_razsirljivega_mixfix_razclenjevalnika.pdf</Naziv>
      <OrgNaziv>Medic_Aljaz_-_Implementacija_razsirljivega_mixfix_razclenjevalnika.pdf</OrgNaziv>
      <URL></URL>
      <Opis></Opis>
      <OpisTujJezik></OpisTujJezik>
      <UrlObdelave></UrlObdelave>
      <FrekvencaAzuriranjaID>1</FrekvencaAzuriranjaID>
      <Verzija></Verzija>
      <MD5>DCD7D590E5058C311A8DC5F1A3D35543</MD5>
      <SHA256>0f367d1178f41a20aa0aa751b10487a06a46b5d98f882946b3fc5636695ca22f</SHA256>
      <UUID>33fc6ba9-6b73-11ef-b232-0050569b8976</UUID>
      <PID></PID>
      <PrenosPolniUrl>https://repozitorij.uni-lj.si/Dokument.php?lang=slv&amp;id=189737</PrenosPolniUrl>
      <Vsebine>
        <Vsebina TipVsebine="GoloBesedilo" JezikID="1060" Oznaka="" Dolzina="76656"></Vsebina>
      </Vsebine>
    </Datoteka>
  </Datoteke>
  <Organizacije>
    <Organizacija OrganizacijaID="25" Kratica="FRI" ZavodEvsID="0000066" Logo="" LogoPolniUrl="https://repozitorij.uni-lj.si/teme/rulDev/img/logo/">Fakulteta za računalništvo in informatiko</Organizacija>
  </Organizacije>
  <OrganizacijeVira>
  </OrganizacijeVira>
  <MetodeZbiranjaPodatkov>
  </MetodeZbiranjaPodatkov>
  <TipologijaDela ID="2.11" Koda="2.11" Naziv="Diplomsko delo" SchemaOrg="Thesis"></TipologijaDela>
  <Ostalo>
    <StIrodsDatotek>0</StIrodsDatotek>
    <StDatotekPodTrajnimEmbargom>0</StDatotekPodTrajnimEmbargom>
    <StDatotekZOmejenimDostopom>0</StDatotekZOmejenimDostopom>
  </Ostalo>
</Gradivo>
