Programspråk

språk som en människa använder för att skapa datorprogram

Programspråk, eller programmeringsspråk, är ett formellt språk som en människa använder för att skapa datorprogram.

Exempelkod skriven i programmeringsspråket Java. Programmet skriver ut meddelandet "Hello World!".

Datorers grundspråk kallas maskinkod och består av ettor och nollor, som datorns centralprocessor (eller motsvarande enhet i kringutrustning) direkt kan tolka. Eftersom programmering på den nivån är svår och tidskrävande, och lätt leder till fel, har man tagit fram olika sorters programspråk, där man använder kodord för att beskriva vad datorn skall göra och som tillåter att text, siffror och räkneoperationer skrivs in ungefär som i kommunikation mellan människor. Ett skilt datorprogram används sedan för att översätta denna mer läsbara kod till maskinkod.

Datorprogrammets källkod, som skrivits för hand, måste alltså i de flesta fall översättas till maskinkod innan programmet skall köras. För assembler (som ganska direkt motsvarar maskinkoden, men med kodord, variabelnamn och en del andra abstraktioner) görs översättningen med en assemblator. För högnivåspråk använder man en kompilator (en del kompilatorer skapar assemblerkod som ett mellansteg). Maskinkoden lagras sedan i en exekverbar binärfil.

Vissa programspråk är inte avsedda att kompileras: ett interpreterat språk, tolkas (interpreteras) under själva exekveringen (när man "kör" programmet). Det finns även språk som kan kompileras allteftersom programmet körs, med hjälp av en JIT-kompilator, och språk som kompileras till en snabbtolkad bytekod.

En del programspråk är konstruerade för att ganska noga följa datorernas typiska sätt att arbeta. Nyttan är framförallt att programmeraren då har bättre kontroll över den maskinkod som kommer att skapas då programmet kompileras. Sådana språk kallas för maskin- eller hårdvarunära språk eller lågnivåspråk, med assembler som typexemplet. Motsatsen är högnivåspråk. Den mesta källkoden skrivs med högnivåspråk.

Man brukar även skilja mellan funktionella språk och objektorienterade språk. Ytterligare en uppdelning är mellan imperativa språk och deklarativa språk.

Det är 4:e generationens programspråk man talar om i vardagligt tal.

Lista över programspråk redigera

Det har skapats ett otal programmeringsspråk. Här är en alfabetisk lista på en del av dem.

Se även redigera

Externa länkar redigera