2 research outputs found

    BooPT: Implementasjon av Package Templates for Boo

    Get PDF
    Denne masteroppgaven ser pÄ programmeringssprÄket Boo med spesiell vekt pÄ det dets mekanismer for metaprogrammering og for Ä kunne utvide sprÄket selv med nye mekanismer. Boo er et objektorientert sprÄk med en Python-liknede syntaks, og er basert pÄ .NET-rammeverket. Det har dessuten spesielt interessante mekanismer for metaprogrammering: metametoder, makroer og syntaktiske attributter, som behandles og utfÞres under kompileringen og som har tilgang til kompilatorens datastrukturer (det abstrakte syntakstreet). Denne oppgaven vurderer hvor kraftige disse metamekanismene er og spesielt i hvilken grad de er egnet til Ä implementere en modulariseringsmekanisme kalt Package Templates (PT). Denne tilrettelegger for gjenbruk av samlinger av klasser (kalt templater) ved at templater mÄ "instansieres" under kompilering fÞr de kan brukes i et program. I en instansiering kan de tilpasses forskjellige bruksomrÄder gjennom blant annet omnavning, utvidelser og sammenslÄing av klasser fra forskjellige instansieringer. Oppgaven beskriver en implementasjon, kalt BooPT, der Boo sine metaprogrammeringsmekanismer benyttes til Ä lage en enkel variant av PT for Boo, og konkluderer med at disse er bÄde fleksible og velegnede til en slik implementasjon
    corecore