Logtalk

Screenshot Software:
Logtalk
Detalii soft:
Versiune: 3.38 Actualizat
Incarca data: 4 May 20
Producător: Logtalk
Licenţă: Gratuit
Popularitate: 25
Dimensiune: 20008 Kb

Rating: 4.0/5 (Total Votes: 4)


        Logtalk este un limbaj de programare logică orientat pe obiect care poate utiliza majoritatea implementărilor Prolog ca un compilator de back-end. Ca limbă multi-paradigmă, Logtalk include suport atât pentru prototipuri, cât și pentru clase, protocoale (interfețe), programare bazată pe componente, prin compoziție bazată pe categorii, programare bazată pe evenimente și programare multi-threading la nivel înalt.
    

Ce este nou în această ediție:

* ÎMBUNĂTĂȚIT: Evitați avertismentele directivei meta_predicate / 1 direcționate atunci când meta-apelul real nu împărtășește variabilele clauza capului.


* IMPROVED: Permite utilizarea expresiilor lambda în regulile de gramatică fără a fi nevoie de un wrap `call // 1`.


* FIXED: bug-ul de optimizare în compilarea unui meta-argument de închidere atunci când obiectivul rezultat este un apel la un predicat încorporat Prolog datorită inserării unei definiții a predicatului utilizatorului.


* FIX: Bug de optimizare în compilarea unui meta-argument de închidere atunci când obiectivul rezultat este un apel către un construct de control Prolog `: / 2`.

Ce este nou în versiunea 3.19:

* ADDED: Suport pentru definirea predicatelor suplimentare adăugate pentru prologul pentru scame
verificarea obiectivelor care sunt întotdeauna adevărate sau false la fișierele adaptorului utilizând
cârlig predicat `` $ lgt_candidate_tautology_or_falsehood_goal_hook '/ 1`.


* ADDED: Modul de proprietate a obiectelor pentru obiectele care rezultă din compilație
din modulele Prolog.


* ADĂUGAT: Eroare comodă aruncând metode integrate `syntax_error / 1` și
`System_error / 0`. Aceste metode aruncă termenii de excepție standardi "error / 2"
și sunt echivalente cu o secvență de apeluri de tip `context / 1` și` throw / 1`.


* REMOVED: Suport pentru Logtalk 2.x `calls / 1`,` uses / 1`, și
directivelor "alias / 3".


* REMOVED: Suport pentru constructul de control logtalk 2.x `: / 1` depreciat.


* REMOVED: Suport pentru Logtalk 2.x "necunoscut", "singletons",
"tmpdir" și "versiuni".

Ce este nou în versiunea 3.14:

NEW: Suport pentru variabilele _parametru_ care oferă o alternativă la
"parametru / 2" și "this / 1" metode integrate pentru a accesa parametrii entității.
Variabilele de parametru sunt variabile utilizate în identificatorul parametric al entității
care încep și se termină cu o subliniere ("_VariableName_"). Orice apariție
a unei variabile de parametru într - o clauză a entității este implicit unificată cu
parametru al entității. Aceasta permite adăugarea, rearanjarea parametrilor entității sau
eliminat fără a necesita modificări ale clauzelor care le privesc.
Variabilele parametrilor sunt acceptate numai pentru entitățile parametrice definite în secțiunea

Ce este nou în versiunea 3.13:

NEW: Suport compilator pentru detectarea apelurilor la predicate statice locale fără clauze de potrivire )

Ce este nou în versiunea 3.11.1:

* IMPROVED: Mesajele de avertizare și de eroare ale compilatorului pentru a le face mai uniforme pentru a facilita parsarea de către editori și IDE-uri și pentru a evita imprimarea unor termeni potențial mari.


* IMPROVED: Compilatorul nu mai necesită apeluri către baza de date și predicatele de reflexie, unde primul argument este un termen care trebuie să fie împachetat cu ajutorul unui constructor de control bypass pentru compilatorul `{} / 1`.


* IMPROVED: verificarea erorilor de compilator pentru apelurile de bază ale bazei de date și a predicatelor de reflexie, unde primul argument este un termen cu calificări pentru module.


* IMPROVED: Minimizați numărul de reîncărcări de fișiere declanșate de apelurile la predicatele `logtalk_make / 0-1`.


* FIXED: Caz în care predicatele logaltk_make / 0-1 nu ar reîncărca un fișier a cărui compilare a generat o eroare de compilator.

Ce este nou în versiunea 3.11: p>

* CHANGED: predicatul încorporat `current_event / 5` pentru a întocmi întotdeauna primul argument când este chemat cu acesta nelegat.


* ADDED: Suport pentru suprascrierea directorului implicit de zgârieturi prin definirea
biblioteca alias `scratch_directory` într-un fișier de inițializare Prolog
(presupuse a fi încărcate înainte de încărcarea Logtalk). După o discuție cu
Douglas R. Miles privind susținerea instalării Logtalk într-un director pentru citire
și execută simultan mai multe instanțe Logtalk fără conflict.


* ADĂUGAT: O metodă de "context / 1" construită în contextul de execuție pentru a oferi acces
la un context de executare a apelurilor predicate. Utilizat în principal pentru furnizarea unei prestabilite
context de eroare atunci când argumentele predicate de verificare a tipului.


* ADDED: Suport pentru tipărirea mesajelor de tip `debug` și` debug (_) `. Aceste
mesajele sunt tipărite, în mod implicit, atunci când este activat stegul `debug`.


* ADĂUGAT: Proprietatea `include fișierul` la 'logtalk :: loaded_file_property / 2`
predicat pentru a permite enumerarea, prin backtracking, a tuturor fișierelor incluse de către a
fișierul încărcat (utilizând directivele "include / 1").

Ce este nou în versiunea 3.10.7:

* RENAMED: Obiectivul "logtalk_make / 1`" lipsă "pentru a" verifica ".


* ADĂUGAT: Sprijin pentru extinderea țintelor `logtalk_make / 1` cu definirea utilizatorului
acțiunile care utilizează noul predicat multifile "logalk_make_target_action / 1".


* ADĂUGAT: Compilator scuame pentru tatuajele și obiectivele minciunii entității.
În prezent sunt verificate apelurile către unificarea, comparația și tipul Prolog
testarea predicatelor încorporate. Sugestii de Barry Evans

Ce este nou în versiunea 3.10.5:

* FIXED: Regresia introdusă în versiunea 3.10.2 când execuția meta-apel metode construite în context.

* FIX: Eșecul compilatorului care rezultă din aplicarea controalelor de portabilitate la apelurile la predicatele încorporate și la funcțiile găsite în clauzele auxiliare (generate de obicei de mecanismul de extindere a termenului). puternic> în versiunea 3.10.3:

* IMPROVED: Cod simplificat generat pentru predicatele multifile.


* FIXED: Regresie în versiunea precedentă în compilarea multifilelor
clauze predicate care fac apeluri la construcțiile de control `:: / 1-2`.

Ce este nou în versiunea 3.09.1:

* ADDED: Suport pentru obiectele `number_of_rules / 1` și` number_of_user_rules / 1`
și proprietățile categoriei.


* ADDED: Suport pentru proprietatea predicatelor `number_of_rules / 1`.


* ADĂUGAT: Detectarea directivelor "meta_predicate / 1" care specifică în mod greșit un obiectiv
meta-argument care este de fapt o închidere transmisă meta-predicatului "call / 2-N"
apeluri. Mulțumită lui Arun Majumdar pentru raport.


* ADĂUGAT: Detectarea directivelor de aplicare a predicatului lipsă în prezența lui

Ce este nou în versiunea 3.09.0:

* CHANGED: home directory
când nu este găsit în directorul de pornire sau în directorul de utilizare Logtalk.
Setarea parametrului `settings_file` pentru a 'restricționa' acum restricționează căutarea
un fișier de setări în directorul utilizatorului Logtalk și în directorul de domiciliu al utilizatorului.
Aceste modificări sunt utile atunci când o echipă împarte o instalare Logtalk cu ambele
variabilele de mediu "LOGTALKHOME" și "LOGTALKUSER" care indică
același director. Mulțumită lui Barry Evans pentru sugestie

Ce este nou în versiunea 3.08.0:

* CHANGED: Asigurați-vă că în mesajele de eroare și de avertizare ale compilatorului informațiile despre fișiere și linii sunt întotdeauna ultima linie pentru problema raportată.

Ce este nou în versiunea 3.07.0:

* ADDED: Un flag "unicode" numai pentru citire pentru a descrie compilamentul Prolog din backend
suport pentru standardul Unicode.


* ADĂUGAT: Sprijin pentru instanțierea argumentului `++` (la sol) și `--` (nelegat)
(declarate ca operatori de prefix) pentru utilizarea cu predicatul `mode / 2`
directivă.


* ADDED: Suport pentru specificarea determinismului `one_or_error` în` mode / 2`
directive directe. Util pentru documentarea predicatelor de verificare de tip.


* IMPROVED: Detectarea încercărilor de a apela scopuri cuantificate existențial în afara
amploarea apelurilor "bagof / 3" și "setof / 3`.


* FIX: Când compilați directivele `uses / 2`, nu creați o clauză de legătură pentru
runtime de utilizare a predicatelor încorporate în "utilizator" atunci când nu este definit niciun altui alias.


* FIX: Când propagați o eșec de compilare pentru un fișier în fișierele părinte,
asigurați-vă că strămoșii fișierelor vor fi reîncărcați începând cu strămoșul de sus
de către mecanismul de realizare.


* FIX: Evitați reîncărcarea redundantă a fișierelor atunci când apelați "logalk_make / 0" sau
`logtalk_make / 1` cu ținta` all`.


* FIXED: Detectarea predicatelor lipsă în apelurile `^ ^ / 1` în timpul apelului
`logtalk_make / 1` cu ținta` lipsă`.

* FIXED: Bug în API-ul de reflecție în cazul în care există unele referințe încrucișate
informațiile nu au fost înregistrate. Mulțumită lui Edward Schwartz pentru raportul de eroare.

Ce este nou în versiunea 3.06.2:

Această versiune continuă lucrul la îmbunătățirea instrumentelor pentru dezvoltatori sponsorizarea companiei Kyndi, Inc. Aceasta include o nouă versiune a instrumentului de împachetare pentru portarea aplicațiilor simple Prolog și îmbunătățiri și remedii pentru instrumentele lgtunit și diagrame. De asemenea, include noi teste de unitate, corecții de compilatoare și documentație și o actualizare de compatibilitate pentru Lean Prolog.

Ce este nou în versiunea 3.04.1: * FIXED: Bug compilator unde un predicat care este expandat pe termen prin apelarea metodei `compile_aux_clauses / 1` ar putea fi interpretat eronat ca fiind discontinuu.


* FIXED: Apelurile la predicatul built-in "threaded_notify / 1" din pseudo-obiectul "user" nu trebuie să necesite un argument legat ca pe documentație.


* FIX: Apelurile la predicatele built-in `object_property / 2` and category_property / 2`, cu argumentele proprietăților` number_of_clauses / 1` sau `number_of_user_clauses / 1` ca fiind deterministe.

nou în versiunea 3.03.0:

* ADDED: Sprijin pentru un nou "logtalk_make / 1` target,` missing`, pentru a lista entitățile și predicatele lipsă. Disponibil și prin intermediul comenzii rapide `{?}`.

* ADĂUGAT: Sprijin pentru un nou obiectiv logaltk_make / circular, circular, pentru a lista referințele circulare (având în vedere obiectivele de trimitere a mesajelor) între perechi și trio-uri de obiecte. Disponibil și utilizând "{@}" comanda rapidă.

* IMPROVED: Adăugați un hash de directoare la numele fișierului intermediar Prolog pentru a evita coliziunile numelui de fișier când colectați toate fișierele intermediare din același director pentru încorporare. În prezent, este nevoie de ECLiPSe, GNU
Prolog, JIProlog, Quintus Prolog, SICStus Prolog, SWI-Prolog, XSB sau YAP ca și compilator de backend.

* FIXED: eroare de optimizare a apelului Meta-predicat atunci când un meta-argument este fie o închidere precompilată, fie o închidere pentru un scop numit în contextul
"utilizator" pseudo-obiect. De asemenea, se aplică o verificare mai strictă a erorilor la închiderea meta-argumentelor.

* FIXED: Imprimarea destulă a identificatorilor parametrici de obiecte și parametri în mesajele de eroare și de avertizare.

Ce este nou în versiunea 3.02.2:

* FIXED: Eroare la verificarea erorii în expresiile lambda folosind 'true / 0` ca lambda
poartă. Mulțumită lui Boris Vassilev pentru raportul de eroare.


* FIXED: Predicatul logtalk_make / 1` va reuși (după ce a tipărit un avertisment
mesaj) atunci când este apelat cu un argument non-instanțiat sau un argument invalid în loc de
în caz contrar. la
a generat fișiere Prolog intermediare folosind un predicat multifilament pentru o mai bună
încorporarea experienței. În mod special, aceasta face mai ușor să faceți încorporarea incrementală.


* ÎMBUNĂTĂȚITATE: Predicatele de făcut acum, de asemenea, reîncărcați fișierele părinte ale fișierelor
erorile de compilare sau încărcare. Acest lucru asigură că, atunci când un fișier defect anulează
compilarea tuturor fișierelor dintr-un fișier încărcător, fișierele afișate după defecțiuni
fișierul va fi compilat atunci când fișierul defect este fix și sunt predicatele făcute
numit.

Ce este nou în versiunea 3.02.1:

* IMPROVED: Intrările de tabelă de execuție pentru fișierele încărcate sunt acum adăugate la fișierele Prolog generate intermediar utilizând un predicat multifile pentru o experiență de încorporare mai bună. În mod special, aceasta face mai ușor să faceți încorporarea incrementală.
 * ÎMBUNĂTĂȚITĂ: Predicțiile de făcut acum, de asemenea, reîncărcați fișierele părinte ale fișierelor cu erori de compilare sau de încărcare. Acest lucru asigură că, atunci când un fișier defect anulează compilarea tuturor fișierelor dintr-un fișier încărcător, fișierele listate după fișierul defect vor fi compilate atunci când fișierul defect este fixat și se vor apela predicatele făcute.

Ce este nou în versiunea 3.01.2:

Această versiune completează implementarea statică de legare; adaugă suport pentru utilizarea denumirilor de fișiere ca-este cu predicatele de compilare și încărcare; remediază erorile compilatorului; include actualizări ale documentației; îmbunătățește instrumentele de depanare, testare și documentare; adaugă un nou set de teste unitare pentru verificarea conformității Prolog cu standardele oficiale și de facto; Actualizați colorarea sintaxei pentru toți editorii de texte acceptate și indicatorii de sintaxă; și include actualizări de compatibilitate pentru ECLiPSe, JIProlog și YAP.

Cerințe :

Compilator compatibil Prolog.

Software similare

Alte software-uri de dezvoltator Logtalk

Logtalk
Logtalk

3 May 15

Comentarii la Logtalk

Comentariile nu a fost găsit
Adauga comentarii
Porniţi pe imagini!