Hva er språkorientert programmering?
Språkorientert programmering (LOP) er en type programmeringsspråk som er definert av brukeren, avhengig av domenet han programmerer for. Domenet er viktig for å definere språkorientert programmering, så det må oppgis spesifikt når brukeren begynner å bruke dette språket. LOP er normalt basert på en større type programmeringsspråk, men dette er ikke alltid tilfelle. LOP er laget spesielt for et domene og har mange tilpassede områder, så dette språket er vanligvis dårlig til å skalere opp for store og komplekse problemer. Før dette språket er brukbart, må brukeren også definere og kompilere språket manuelt.
I bred forstand kan programmeringsspråk skilles opp i enten domenespesifikt eller generelle språk. Språkorientert programmering tilhører førstnevnte, noe som betyr at den må spesifiseres for et bestemt domene. Dette domenet refererer til hvor programmet skal brukes og hvilken type problemer språket vil jobbe med og løse. Selv om dette ikke er så allsidig som et generelt språk, gjør det ofte programmering enklere å fullføre.
Flertallet av språkorienterte programmeringsspråk er først basert på et større generelt programmeringsspråk. Dette fordi det er lettere å bygge et språk som er basert på et annet, og en bruker som er kjent med det generelle språket, bør finne det lettere å starte med LOP. Den primære forskjellen mellom LOP og det opprinnelige generelle språket er kodene, og mange aspekter av programmeringsspråket er basert på koder brukeren spesifiserer at han vil bruke, og formaterer språket til brukerens spesifikasjoner.
Å være domenespesifikk og basert på brukerens spesifikasjoner gir mange fordeler, men en av ulempene med dette systemet er mangelen på skalering. Når det gjelder mindre problemer, bør språkorientert programmering ikke ha noen problemer med å jobbe med og løse problemet. Samtidig er større problemer vanligvis mer intensive enn dette språket er i stand til å håndtere, og det er vanligvis bedre å holde seg til et større generelt språk hvis skalering er nødvendig.
Et annet problem med språkorientert programmering er arbeidet som trengs før språket kan brukes. Et programmeringsspråk er normalt tilgjengelig for bruk med lite eller ingen arbeid, men LOP krever at brukeren spesifiserer koder og seksjoner, som kan ta tid. Det større problemet er at brukeren må bygge en tilpasset kompilator for å få programmeringsspråket til å fungere, og dette kan være vanskelig for en ny bruker.