Skip to content
/ krapu Public

Krapu is an imperative interpreted programming language with optional static typing, heavily inspired by Rust. Written as a university course project for learning how to implement programming languages.

License

Notifications You must be signed in to change notification settings

atarv/krapu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

krapu

Ryhmä

Kääntäminen ja ajaminen

Varmista, että sinulla on asennettuna stack. Jos ei, noudata asennusohjeita. Toimivuus on todettu ainoastaan Linuxilla (AMD64), mutta hyvällä tuurilla toimii luultavasti muillakin alustoilla.

Suorittamalla komennon stack run -- -r Git-hakemiston juuressa tulkki kääntyy ja käynnistyy REPL:iin, johon voi kirjoittaa esimerkiksi lauseen println("Hei, maailma!"); varmistuakseen siitä, että ohjelma tosiaan kääntyi.

Esimerkkiohjelmia löytyy kansiosta test/examples ja niitä voi ajaa antamatta yhtäkään lippua tulkille, esim. stack run -- test/examples/factorial.krap. Tulkille annettavissa olevista lipuista saa lyhyen ohjeistuksen ajamalla stack run -- --help.

Tulkin testit voi ajaa komennolla stack test.

Lähdekieli

Lähdekieleen toteutetut ominaisuudet on listattu tiedostossa suunnitelma.md (vain merkityt valintaruudut toteutettu). Suunnitelmassa esitellyt esimerkkiohjelmat eivät välttämättä käänny, sillä joitakin ominaisuuksia puuttuu. Johdatus lähdekieleen ja sen ominaisuuksiin löytyy tiedostosta test/examples/learn.krap.

About

Krapu is an imperative interpreted programming language with optional static typing, heavily inspired by Rust. Written as a university course project for learning how to implement programming languages.

Resources

License

Stars

Watchers

Forks