SWI-Prolog

Software screenshot:
SWI-Prolog
Software informatie:
Versie: 7.2.3 / 7.3.6-dev Bijgewerkt
Upload datum: 1 Oct 15
Ontwikkelaar: Jan Wielemaker
Licentie: Gratis
Populariteit: 99

Rating: 1.0/5 (Total Votes: 1)

Het is handig logisch programmeren doeleinden, kunstmatige intelligentie en computationele taalkunde

Wat is nieuw in deze release:.

  • De nieuw type dict en syntaxis levert zowel tijd en ruimte efficiënt naam-waarde kaarten met een aangename syntax.
  • Dientengevolge was het noodzakelijk om de lijst constructor replace (H, T) van de (ook gebruikt door Mercury) [|]. (H, T). Dat lijkt drastisch, maar in de praktijk alleen van invloed op een paar programma's, met name functor doen (Term, F, A) op de lijsten te selecteren en vervolgens de verdere verwerking op F == '.' Een == 2. Om de lijsten te zetten meer in een speciale constructie, [] is nog steeds de lege lijst, maar niet meer hetzelfde als '[]', dat wil zeggen, [] is niet atoom.
  • De syntaxis & quot; ... & quot; nu toegewezen aan strings. Snaren zijn compatibel met Eclipse (met dank aan Joachim Schimpf voor alle gesprekken). Traditionele code-lijsten zijn gebouwd met behulp van .... De vlaggen double_quotes en back_quotes beheersen dit gedrag.
  • Dankzij Torbjorn Lager, we hebben & quot; Pengines & quot ;, Prolog zoekmachines op het web. Dit zorgt voor een generieke API om comfortabel te praten met een Prolog server van JavaScript en andere Prolog gevallen. Het stelde SWISH, SWI-Prolog in je browser (http://swish.swi-prolog.org) als http://lpn.swi-prolog.org (Leer Prolog Now! Met ingebouwde SWISH).
  • Markus Triska toegevoegd clp (b), de boolean constraint solver, verbeterde zijn CLP (FD) en was voor een aantal verbeteringen aan de toplevel omgaan met beperkingen.
  • Met dank aan Matt Lilley en Mike Elston, is er CQL, een DSL (Domain Specific Language) voor het omgaan met SQL. CQL is ontwikkeld in een omgeving waar complexe SQL-databases zijn de norm en ondersteunt daarom een ​​groot deel van SQL en kunnen omgaan met tafels met duizenden kolommen en andere dingen die de ocasional SQL gebruiker niet verwachten.
  • Matt Lilley verbeterde netwerkondersteuning aanzienlijk, waaronder veel betere ondersteuning voor SSL en algemene ondersteuning voor zowel HTTP en SOCKS proxy servers.
  • Veel mensen hebben verstrekt add-ons (verpakkingen), die afhankelijk zijn van SWI-Prolog versie 7.

Wat is nieuw in versie 7.2.1 / 7.3.3-dev:

  • Het nieuwe type dict en syntaxis levert zowel tijd en ruimte efficiënt naam-waarde kaarten met een aangename syntax.
  • Dientengevolge was het noodzakelijk om de lijst constructor replace (H, T) van de (ook gebruikt door Mercury) [|]. (H, T). Dat lijkt drastisch, maar in de praktijk alleen van invloed op een paar programma's, met name functor doen (Term, F, A) op de lijsten te selecteren en vervolgens de verdere verwerking op F == '.' Een == 2. Om de lijsten te zetten meer in een speciale constructie, [] is nog steeds de lege lijst, maar niet meer hetzelfde als '[]', dat wil zeggen, [] is niet atoom.
  • De syntaxis & quot; ... & quot; nu toegewezen aan strings. Snaren zijn compatibel met Eclipse (met dank aan Joachim Schimpf voor alle gesprekken). Traditionele code-lijsten zijn gebouwd met behulp van .... De vlaggen double_quotes en back_quotes beheersen dit gedrag.
  • Dankzij Torbjorn Lager, we hebben & quot; Pengines & quot ;, Prolog zoekmachines op het web. Dit zorgt voor een generieke API om comfortabel te praten met een Prolog server van JavaScript en andere Prolog gevallen. Het stelde SWISH, SWI-Prolog in je browser (http://swish.swi-prolog.org) als http://lpn.swi-prolog.org (Leer Prolog Now! Met ingebouwde SWISH).
  • Markus Triska toegevoegd clp (b), de boolean constraint solver, verbeterde zijn CLP (FD) en was voor een aantal verbeteringen aan de toplevel omgaan met beperkingen.
  • Met dank aan Matt Lilley en Mike Elston, is er CQL, een DSL (Domain Specific Language) voor het omgaan met SQL. CQL is ontwikkeld in een omgeving waar complexe SQL-databases zijn de norm en ondersteunt daarom een ​​groot deel van SQL en kunnen omgaan met tafels met duizenden kolommen en andere dingen die de ocasional SQL gebruiker niet verwachten.
  • Matt Lilley verbeterde netwerkondersteuning aanzienlijk, waaronder veel betere ondersteuning voor SSL en algemene ondersteuning voor zowel HTTP en SOCKS proxy servers.
  • Veel mensen hebben verstrekt add-ons (verpakkingen), die afhankelijk zijn van SWI-Prolog versie 7.

Wat is nieuw in versie 7.2.0 / 7.3.1-dev:

  • Het nieuwe type dict en syntaxis levert zowel tijd en ruimte efficiënt naam-waarde kaarten met een aangename syntax.
  • Dientengevolge was het noodzakelijk om de lijst constructor replace (H, T) van de (ook gebruikt door Mercury) [|]. (H, T). Dat lijkt drastisch, maar in de praktijk alleen van invloed op een paar programma's, met name functor doen (Term, F, A) op de lijsten te selecteren en vervolgens de verdere verwerking op F == '.' Een == 2. Om de lijsten te zetten meer in een speciale constructie, [] is nog steeds de lege lijst, maar niet meer hetzelfde als '[]', dat wil zeggen, [] is niet atoom.
  • De syntaxis & quot; ... & quot; nu toegewezen aan strings. Snaren zijn compatibel met Eclipse (met dank aan Joachim Schimpf voor alle gesprekken). Traditionele code-lijsten zijn gebouwd met behulp van .... De vlaggen double_quotes en back_quotes beheersen dit gedrag.
  • Dankzij Torbjorn Lager, we hebben & quot; Pengines & quot ;, Prolog zoekmachines op het web. Dit zorgt voor een generieke API om comfortabel te praten met een Prolog server van JavaScript en andere Prolog gevallen. Het stelde SWISH, SWI-Prolog in je browser (http://swish.swi-prolog.org) als http://lpn.swi-prolog.org (Leer Prolog Now! Met ingebouwde SWISH).
  • Markus Triska toegevoegd clp (b), de boolean constraint solver, verbeterde zijn CLP (FD) en was voor een aantal verbeteringen aan de toplevel omgaan met beperkingen.
  • Met dank aan Matt Lilley en Mike Elston, is er CQL, een DSL (Domain Specific Language) voor het omgaan met SQL. CQL is ontwikkeld in een omgeving waar complexe SQL-databases zijn de norm en ondersteunt daarom een ​​groot deel van SQL en kunnen omgaan met tafels met duizenden kolommen en andere dingen die de ocasional SQL gebruiker niet verwachten.
  • Matt Lilley verbeterde netwerkondersteuning aanzienlijk, waaronder veel betere ondersteuning voor SSL en algemene ondersteuning voor zowel HTTP en SOCKS proxy servers.
  • Veel mensen hebben verstrekt add-ons (verpakkingen), die afhankelijk zijn van SWI-Prolog versie 7.

Wat is nieuw in versie 6.6.6 / 7.1.37:

  • De verwerking van # !, bindend Een bestand aan een tolk in Unix niet langer probeert slim te zijn over de verwerking van opties om de tolk te zijn. Het effect van deze wijziging is afhankelijk van de Unix-versies:. Sommige alleen passeren de eerste optie, anderen pakken alle opties in één en nog anderen passeren de opties na het breken van hen
  • De Proloog vlag argv levert alleen argumenten die niet zijn verwerkt door Prolog.
  • De init file .plrc (pl.ini op Windows) wordt niet meer gezocht in de working directory om veiligheidsredenen.

Wat is nieuw in versie 6.6.6 / 7.1.31:

  • De verwerking van # !, bindend Een bestand aan een tolk in Unix niet langer probeert slim te zijn over de verwerking van opties om de tolk te zijn. Het effect van deze wijziging is afhankelijk van de Unix-versies:. Sommige alleen passeren de eerste optie, anderen pakken alle opties in één en nog anderen passeren de opties na het breken van hen
  • De Proloog vlag argv levert alleen argumenten die niet zijn verwerkt door Prolog.
  • De init file .plrc (pl.ini op Windows) wordt niet meer gezocht in de working directory om veiligheidsredenen.

Wat is nieuw in versie 6.4.0:

  • Bijgewerkt de RDF library naar versie 3. Iedereen zorg over RDF werd waarschijnlijk al met de ontwikkeling van versie om deze reden. Toegevoegd snel parsers voor ntriples, Turtle en Trig formaten.
  • De invoering van quasi offerte voor een soepele en veilige opname van de externe taal snippets
  • Upgrade van PlDoc aan de gemeenschappelijke markdown constructies te accepteren.
  • Veel verbeteringen aan de development tools, HTTP bibliotheken clib pakket. enz. Betere ondersteuning voor Unix daemon processen (syslog, UID / GID management, enz.)
  • Een start voor de locale behandeling van (ondersteuning van formaat / 3, met name het schrijven van locale specifieke grote getallen.
  • Veel stabiliteit stuff. vaste crashes, draagbaarheid patches, bouwen systeem verbeteringen, etc

Wat is nieuw in versie 6.2.0:

  • Eerste versie van de 'pack' package manager
  • Betere bronbestand hanteren, met name mbt. : - Onder (File)
  • .
  • Veel verbeteringen aan de debugger, het verbeteren van de bron handling en de logica die beslist over welke poorten zijn verborgen.
  • Windows-versie nu te bouwen met behulp van het MinGW compiler project, resulterend in 10-20% speedup. Verbeteringen aan swipl-win.exe console. Copy / paste en kleur ondersteuning

Wat is nieuw in versie 6.0.0:

  • Dynamic just-in-time indexeren op meerdere argumenten .
  • geabstraheerd veel van de ontwikkeling API's, het ondersteunen van de PDT IDE.
  • Veel opruimen, bug-fixes, etc.

Wat is nieuw in versie 5.11.20.

  • Minder trail-stack gebruik
  • Zorg generationele garbage collection.

Wat is nieuw in versie 5.11.10:

  • Verminder trail-stack gebruik. (deels)
  • Zorg generationele garbage collection.

Wat is nieuw in versie 5.11.9:

  • Verminder trail-stack gebruik. (deels)
  • Zorg generationele garbage collection.

Wat is nieuw in versie 5.10.0:

  • Alle platforms gebruiken nu consistente naamgeving. Het SWI-Prolog executable heet swipl, de linker swipl-ld en de resouce-file manager swipl-rc.
  • New stack geheugenbeheer die is gebaseerd op de stack-verschuiving plaats van het toewijzen van de stapels spaarzaam in het virtuele adres ruimte. Deze verandering zorgt voor een veel betere schaalbaarheid van het aantal draden, zodat we ook verwijderd van de oude thread-count limiet van 100. De stack-limieten kunnen nu worden verhoogd en verlaagd bij runtime met set_prolog_stack / 2.
  • De standaard stack-size-limieten zijn nu 128MB per stapel op 32-bit en 256Mb op 64-bits hardware.
  • Uitgebreide lek en stress-testen hebben vaste een aantal lekken en ras voorwaarden, waardoor het systeem veel robuuster in 24x7 server setup.
  • Er is een begin gemaakt om te voorkomen dat met behulp van de C-stack voor recursief in termen. Dit maakt de verwerking van veel dieper genest voorwaarden en biedt een schone uitzondering als er onvoldoende middelen om de term te doorkruisen. Er is nog veel te doen op dit gebied.
  • SWI-Prolog 5.10.0 introduceert veilige verwijzingen naar de database termen (assertz / 2, recordz / 3) en stromen (open / 3).
  • Het aantal variabelen in clausules is nu beperkt tot 1000000000; dit was 65535. Daarnaast is het systeem biedt sierlijke uitzonderingen bij het ondervinden van resource-fouten of proberen om illegale termen zoals cyclische voorwaarden gelden.
  • Compatibiliteit om zowel YAP en SICStus wordt versterkt.

Wat is nieuw in versie 5.8.2:

  • SCHOONMAAKBEURT: Implementatie en documentatie van het signaal interface.
  • FIXED:. Gebruik --nopce / - st voor het (dis) waardoor graphics
  • FIXED: GC-bug; weglaten strippen uwrite-bit uit argument stapel
  • GEWIJZIGD: Verwijderd de proloog vlag abort_with_exception; Het wordt niet meer gebruikt.
  • FIXED: Vermijd impasse terwijl het proberen om af te sluiten na een fatale fout
  • .
  • GEWIJZIGD: is_set / 1 maakt nu gebruik van een soort / 2. Daardoor worden niet-gedeelde variabelen als andere elementen; de volgorde N * log (N) en het gezegde kan een resource-fout terug.
  • FIXED: Na: -.. module (x), het uitvoeren van doel-uitbreiding ten opzichte van x module
  • SCHOONMAAKBEURT: Item # 547:. Goed citeren undefined predikaten en alternatieven
  • DOC: Verduidelijk current_arithmetic_function / 1
  • .
  • DOC: Zorg voor de beschikbaarheid snippit voor C-functies
  • FIXED: Vorige vereenvoudiging bedorven variabele admin van de compiler. Ook toegevoegd testcase.
  • FIXED: Bug # 436: het verenigen van een variabele met zichzelf creëert een referentie lus
  • .

Wat is nieuw in versie 5.7.14:

  • FIXED: cross-referencer te onderscheiden: van 0 in meta-predikaat verklaringen
  • Reinigen: Met meta_predicate voor predsort / 3
  • GEWIJZIGD: maak / 0 nu alleen scans voor verwijzingen naar ongedefinieerde predikaten in de modules die ze bevatten. De list_undefined / 0 nog steeds zoekt wereldwijd.
  • VERBETERD: CLP (FD):. Arc-consistente global_cardinality / 2 als paren zijn in eerste instantie de grond
  • FIXED: Handvat (multifile) predikaten voor die enkele clausules hun lichaam in een andere module en een aantal in het gelijk. Matt Lilley.
  • TOEGEVOEGD:% [& # X3c; n & # x3e;] f formaat naar format_time / 3 om te gaan met fracties van seconden. Gebruikt door nieuwe debug extensies.
  • TOEGEVOEGD: debug_message_context (+ | -Context) om extra context voor debug-berichten (zoals een time-stempel) opgeven
  • .
  • FIXED: Maak apply_macros doen zijn doel expansie in het kader van het systeem module
  • VERBETERD: CLP (FD): Sneller global_cardinality / 2 als Key-Num paren zijn grond
  • .
  • FIXED: handvat operator-prioriteit in het antwoord afdrukken. Markus Triska.
  • VERBETERD: Gebruik toplevel afdrukopties voor achtergebleven doelen, opschonen implementatie
  • VERBETERD: Maak term_variables en term_attvars efficiënt als een lijst wordt gegeven (met name term_attvars (Term, []))
  • .
  • VERBETERD: Zorg opgenomen database nieuwe term-walker code
  • VERBETERD: Eerste opstelling van een skelet voor het doorkruisen van het gebied met behulp van een eenvoudige lus in plaats van een recursieve procedure. Nu in gebruik term_variables / 2 en aanverwante predikaten. Het schema lijkt voldoende, maar de gesegmenteerde stack code moet aanzienlijk worden geoptimaliseerd. Zoals, term_variables / 2 enigszins trager (5%), maar kan diepgeneste termen omgaan met veel minder geheugen en zonder stack overflows.
  • TOEGEVOEGD: term_attvars / 2 voor betere ondersteuning van copy_term / 3. Na het gesprek met Markus Triska.
  • TOEGEVOEGD: del_attrs / 1 verwijderen * alle * attributen. Vereenvoudigt copy_term / 3.

Wat is nieuw in versie 5.7.12:

  • Prestatieverbetering op grotere programma's is tussen de 10 en 40 %, afhankelijk van de programmering stijl. Met name de constraint solvers aanzienlijk profiteren. Kleine programma's tonen soms veel groter snelheidswinst.
  • Sinds 5.7.4, bijgewerkt module systeem
  • Veel opruimen in naamgeving en modularisering van de codebase.

Vergelijkbare software

Rockefeller
Rockefeller

13 May 15

Math.js
Math.js

9 Feb 16

bignumber.js
bignumber.js

10 Dec 15

BioRuby
BioRuby

19 Jul 15

Reacties op SWI-Prolog

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!