Logtalk

Logtalk is een open source objectgerichte extensie naar PROLOG.
Download nu

Logtalk Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Paulo Moura
  • Uitgever website:
  • http://www.logtalk.org/

Logtalk Tags


Logtalk Beschrijving

Logtalk is een open source objectgeoriënteerde uitbreiding Prolog. Logtalk is een open source objectgeoriënteerde uitbreiding van de Prolog programmeertaal. Integreren logisch programmeren met objectgeoriënteerde en het event-driven, is compatibel met de meeste Prolog compilers.Logtalk ondersteunt zowel prototypes en klassen. Bovendien ondersteunt componenten gebaseerde programma's middels categorie gebaseerde samenstelling. Hier zijn een aantal belangrijke eigenschappen van "Logtalk": Scheiding tussen interface en implementatie: · Predicate richtlijnen (verklaringen) kan worden opgenomen binnen protocols (interfaces), die door een object kan worden geïmplementeerd. Parametric objecten: · Objectnamen kunnen samengestelde termen die vrije variabelen die kunnen worden gebruikt om doel predikaten parametriseren. Ondersteuning voor zowel-class-based en prototype-gebaseerde systemen: · U kan hebben, in dezelfde toepassing,-klasse op basis van hiërarchieën (met concretisering en specialisatie relaties) en-prototype op basis van hiërarchieën (met extensie relations). Ondersteuning voor meerdere objecthiërarchieën: · Geen behoefte om te worden beperkt tot een enkele lange hiërarchie geworteld in een aantal generieke object. Private, protected en public erfenis: · Logtalk ondersteunt private, protected en public erfenis op een manier die vergelijkbaar is met C. Anderzijds kan elke entiteit betrekking gekwalificeerd via een scope zoekwoord. Private, protected en public object predikaten: · Stel de reikwijdte van uw object predikaten om uw protocol ontwerp aan te passen en laat de runtime-systeem af te dwingen uw keuzes. Statische en dynamische objecten: · Objecten kunnen statisch of dynamisch zijn. Statische objecten worden gedefinieerd bronbestanden die worden samengesteld en op dezelfde wijze als Prolog bestanden geladen. Dynamisch object kan ofwel worden gedefinieerd bronbestanden of gecreëerd bij uitvoering. Statische en dynamische object predikaten: · Een statisch object kan zowel statische als dynamische predikaten bevatten. Een pre-processor, zodat we standaard Prolog syntax kunt gebruiken: · Logtalk maakt gebruik van standaard Prolog syntaxis met de toevoeging van een paar exploitanten en richtlijnen voor een vlotte leercurve. Event-driven programmering: · Predicaten kan impliciet worden aangeroepen wanneer een gespiede gebeurtenis plaatsvindt, waardoor programmeeroplossingen welk object koppelen te minimaliseren. Bovendien events ondersteuning voor gedragsverandering reflectie. Component-gebaseerde programmering: · Predicaten kunnen worden ingekapseld binnen categorieën, die vrijwel met elk object kunnen worden ingevoerd, zonder gedupliceerde code en ongeacht objecthiërarchieën. Derhalve kunnen objecten worden gedefinieerd via samenstelling categorieën, die als fijnkorrelig eenheden code hergebruik. Multi-erfenis support: · Logtalk ondersteunt multi-erfenis van zowel protocol en implementatie. Een doel kunnen verschillende protocols implementeren en strekken, gespecialiseerd of instantiëren meerdere objecten. Multi-erfenis conflicten worden impliciet opgelost door de Logtalk lookup algoritmen of expliciet door het gebruik van predikaat-richtlijnen. Goed optreden: · Logtalk code is gecompileerd met behulp van dezelfde technieken die u gebruikt om efficiënte Prolog code te schrijven. Daarnaast worden methode lookups gecached door de Logtalk runtime engine, sterk verbeteren van de prestaties. Benchmark-resultaten voor een aantal Prolog compilers zijn hier beschikbaar. Nauwe integratie met de ISO Prolog Standard: · Logtalk is ontworpen voor naadloze integratie met elk Prolog compiler die voldoet of volgt de ISO standaard Prolog. Compatibel met de meeste Prolog compilers: · Logtalk interfaces met een specifiek Prolog compiler via een minimale configuratie bestand waardoor het compatibel met vrijwel elke moderne compiler. Automatische generatie van XML-documentatie-bestanden: · Logtalk genereert automatisch een documentatiemap in XML-formaat voor elke gecompileerde object, protocol of categorie. Het systeem omvat alle noodzakelijke XSL (T) bestanden en scripts om te zetten documenteren bestanden naar (X) HTML en PDF. · Logtalk draait op bijna elke computer met een Prolog compiler (de belangrijkste ontwikkelomgeving is een Apple PowerBook G4 MacOS X). De interface tussen Logtalk en een specifieke Prolog compiler vindt plaats via een configuratiebestand. · Dit bestand bevat een aantal Logtalk specifieke predikaten en implementaties voor ISO Prolog standaard predikaten niet beschikbaar zijn in de Prolog compiler. Bij het schrijven van Logtalk heb ik geprobeerd om de Prolog ISO-standaard te volgen waar mogelijk. Capaciteiten die nodig zijn door Logtalk die niet zijn gedefinieerd in het deel I van de ISO-norm zijn: toegang tot predikaat eigenschappen (dynamisch, statisch, built_in): · Op voorwaarde dat uw favoriete prolog deze hierboven genoemde mogelijkheden heeft, is het maken van een configuratiebestand heel eenvoudig. Het LOGTALK-pakket bevat al configuratiebestanden voor de meest voorkomende prologecompilers. Voor optimale prestaties vereist Logtalk dat de Prolog-compiler het eerste argumentindexering ondersteunt voor zowel statische als dynamische code. LogTalk-ontwikkeling en testen wordt momenteel uitgevoerd met behulp van de volgende prologecompilers (in alfabetische volgorde): · GNU PROLOG 1.2.18 · SWI PROLOG 5.4.7 · YAP 4.5.7 · Daarom zijn dit waarschijnlijk uw beste keuzes voor het uitvoeren van Logtalk (op voorwaarde dat u vrij bent om een van deze compilers te gebruiken). Bovendien loopt Logtalk met weinig of geen wijzigingen met de volgende prologecompilers (in alfabetische volgorde): · ALS PROLOG 3.1 · AMZI! PROLOG 6.22 ~ 7.X · Binprolog 8.x ~ 10.x · B-PROLOG 4.0, 5.0, 6.X · Ciao Prolog 1.10p5 · Eclipse 5.5 ~ 5.8 · IF / PROLOG 5.X · Jiprolog 3.0.1-2 · K-PROLOG 5.1.2A · LPA MACPROLLOLD321.25 · LPA WINPROLL324.0X · MASTERPROLLGOLD 4.1 · Open Prolog 1.1B10 · Prologii 4.5 · Qu-Prolog 6.7 · Quintus Prolog 3.3 ~ 3.5 · Sicstus Prolog 3.8 ~ 3.12.x · XSB 2.6 ~ 2.7 Wat is er nieuw in deze release: · Deze release-functies ondersteunen voor Lambda-uitdrukkingen, ondersteuning voor het gebruik van de Set_Logtalk_flag / 2 binnen entiteiten, verbeterd


Logtalk Gerelateerde software