Spring til indhold

Scala (programmeringssprog)

Fra Wikipedia, den frie encyklopædi
Version fra 25. nov. 2009, 00:47 af Jensep (diskussion | bidrag) Jensep (diskussion | bidrag) (Tilf. eksempel og frameworket 'Lift'.)

Scala er et fler-paradigmatisk programmeringssprog, der både integrerer egenskaber fra objektorienteret og funktionel programmering. Navnet stammer for det første fra det italienske ord scala, der oversættes til trappe, og refererer til at man med sproget træder op på et nyt niveau af programmering[1]. For det andet henviser det til det engelske ord for skala (scale), der indikerer at sproget kan bruges til projekter i enhver tænkelige skala.

Platform

Scala er dybt inspireret af Java og er fuldt ud kompatibel med Javas Virtual Machine (JVM). Ud over Javas objektorienterede struktur, benytter scala sig af funktionelle begreber såsom currying, pattern-matching og anonyme funktioner[Disse udtryk bør uddybes]. Scala er som Java statisk typet. Sproget er udgivet under BSD.

Historie

Scala er udviklet og udtænkt af Martin Odersky, der er ansat på École Polytechnique Fédérale de Lausanne (EPFL) i Schweiz. Udviklingen begyndte i 2001, og udgivet i slutningen af 2003 / starten af 2004[2]. Scala er løbende blevet udviklet, og er i oktober 2009 nået til version 2.7.7.

Hello World eksempel

 object HelloWorld extends Application {
   println("Hello World!")
 }

eller

 object HelloWorld {
   def main(args : Array[String]) {
     println("Hello World!")
   }
 }

Disse to eksempler kan kompileres ved hjælp af scalas compiler ved at skrive følgende i en konsol (det antages at filen er døbt "HelloWorld.scala"):

> scalac HelloWorld.scala

For at eksekvere programmet tilføjes på ny linje:

> scala -classpath . HelloWorld

Frameworks der benytter Scala

  • Lift er et omfattende framework, der er beregnet til at skabe web-applikationer. Lift selv fremhæver sikkerhed, vedligeholdelse og performance, som nogle af deres primære fokuspunkter[3].

Se også

Eksterne henvisninger

Kilder

  1. ^ Frequently Asked Questions - General | The Scala Programming Language
  2. ^ Martin Odersky et al., An Overview of the Scala Programming Language
  3. ^ http://liftweb.net/