Dette emnet er erstattet av IN2040 – Funksjonell programmering.

Scheme og DrRacket

Programmeringsspråket vi bruker i INF2810 er Scheme (en variant av Lisp) og vi anbefaler at du bruker programmeringsomgivelsen DrRacket. Alle studentmaskinene ved IfI har DrRacket installert. Det kan lastes ned til egen maskin fra www.racket-lang.org.

Det er viktig å merke seg at DrRacket har støtte for flere ulike dialekter av Scheme, så det første vi må gjøre er å velge riktig innstilling for språk (hvis ikke det allerede har blitt gjort). Dette gjør man via "Language" i menylinjen, og i vårt tilfelle skal valget være R5RS.

Litt om bruk: DrRacket har to hovedvinduer som kan være åpne samtidig eller hver for seg. I det øverste (når begge er åpne) kan du skrive inn kode du ønsker å lagre. I det nederste vinduet finner du den den såkalte REPL'en (read-eval-print-loop) der du kan kjører koden og lese av resultatene. REPL'en er slags interaktiv "kommandolinje" for Scheme-interpreteren som evaluerer koden du skriver inn. Det kan være verdt å bruke litt tid på å lese seg opp på grunnleggende bruk i DrRacket-manualen.

For de som måtte være vant til å bruke Emacs som editor kan man kanskje kjenne igjen visse likheter med hvordan DrRacket er organisert. Dersom du heller vil bruke Emacs som editor står du naturligvis fritt til det. Simen (Heggestøyl) har skrevet litt om kombinasjonen Scheme og Emacs her.

 

PS: R5RS står for Revised 5 Report on the Algorithmic Language Scheme og er navnet på standarden som beskriver den Scheme-varianten som er mest utbredt og som også vi skal bruke.

 

PPS: DrRacket støtter også språket Racket som er annen Scheme-dialekt og en utvidelse av den nyere spesifikasjonen R6RS, men det er altså ikke dette språket vi bruker i INF2810.

Av Erik Velldal
Publisert 10. jan. 2013 15:52 - Sist endret 10. jan. 2013 15:53