Ruby, R og MATLAB

Vi skal nå se nærmere på tre nyttige verktøy for enhver programmerer, nemlig Ruby, R og MATLAB.

Ruby er et såkalt objektorientert programmeringsspråk som har syntaks tydelig inspirert av Smalltalk og Perl. R er et annet programmeringsspråk som også fungerer som et eget system for beregning av statistikk og grafikk. Her får du ikke et grafisk brukergrensesnitt som med f.eks. Statistica, men må skrive inn kommandoer for å gjennomføre ting. Det siste vi skal se på er MATLAB, som for de fleste er kjent som et matematikkprogram med sitt eget skriptspråk basert på programmeringsspråket C. MATLAB har mange nyttige funksjoner!

  • Ruby: Objektorientert programmeringsspråk som minner om Perl og Smalltalk
  • R: Programmeringsspråk med eget system for beregning av statistikk
  • MATLAB: Matematikkprogram med eget skriptspråk basert på C

Programmeringsspråket Ruby

Det objektorienterte programmeringsspråket Ruby byr altså på et språk som kombinerer diverse syntaks som er inspirert av Perl, og Smalltalks objektorienterte finesser. Ruby har også en rekke fellestrekk med programmeringsspråk som Python, Dylan, Lisp og CLU. Dette er et programmeringsspråk som er tolket, og hoveddelen av implementasjonen er gratis/fri programvare. Ruby ble lansert i 1995 av utvikleren Yukihiro Matsumoto, og er bygget på refleksiv, objektorientert, imperativ og funksjonell programmering. Det er Ruby License (GPLv2, 2-clause BSD license) som står for lisensieringen av Ruby. Det tok Matsumoto to år å utvikle Ruby, og navnet er – morsomt nok – en referanse til programmeringsspråket Perl.

Matsumoto ønsket å lage et programmeringsspråk som bestod av minst mulig overraskelser, noe som innebærer at Ruby er fri for inkonsekvenser og feller som ofte finnes i andre programmeringsspråk. Ruby er for øvrig objektorientert, noe som innebærer at hver eneste bit data tilsvarer et objekt. Det inkluderer også typer som av andre programmeringsspråk gjerne defineres som primitive datatyper (f.eks. heltall). Alle funksjonene er såkalte metoder, og variablene refererer til objektene (heller enn objektet selv). Syntaks for prosedyrer inkluderes, men de skrives utenfor selvdefinerte klasser som gjøres av klassetypen Object. Slike prosedyrer er synlige for øvrige klasser, siden Object er en foreldreklasse.

Bli kjent med R

Programmeringsspråket R er også et system som brukes til beregning av statistikk så vel som grafikk, og ble utviklet av Robert Gentleman og Ross Ihaka for University of Auckland. Som nevnt er ikke brukergrensesnittet til R grafisk, noe som betyr at kontroll av alle beregninger skjer ved at du skriver inn kommandoer. Det var programmeringsspråket S som var modellen når R ble utviklet, som også benyttes i statistikkpakken S-Plus. R videreutvikles i dag av R Development Core Team under navnet R Project, og navnet stammer fra forbokstaven i navnet til utviklerne Ross og Robert. I dag er R standard i utviklingen av statistisk teknikk.

R som programmeringsspråk er kraftig objektorientert, samtidig som språket er fleksibelt. Dette skyldes i stor grad den store tilgjengeligheten av skreddersydde pakker («packages»), som det finnes mer enn 5 000 av. Disse kan enkelt legges til systemets grunnversjon som er standard ved førstegangs installasjon. Dette gjør det mulig å skreddersy sin egen versjon av R-systemet, slik at det passer behovene best mulig. R (og S for den saks skyld) skiller seg fra mange andre statistikkpakker fordi at du får et eller flere workspaces, der du blant annet kan se på datasett og tidligere resultater, samt få egne funksjoner.

MATLAB

Det var Cleve Moler ved University of New Mexico, som først startet å utvikle MATLAB sent på 70-tallet. MATLAB står for «Matrix Laboratory» og er et svært omfattende matematikk-relatert program som har sitt egne skriptspråk som baseres på programmeringsspråket C. Moler hadde et ønske om å gi studentene sine tilgang til EISPACK og LINPACK uten at de skulle trenge å lære seg Fortran først. Denne fordelen gjorde raskt at MATLAB ble etterspurt av mange andre universiteter og læresteder. Med MATLAB fås det tilgang til plotting av data og funksjoner, enkel manipulering av matriser, implementering av algoritmer og grensesnitt mot mange øvrige programmeringsspråk.

Leave a Reply

Your email address will not be published. Required fields are marked *