Logtalk

Screenshot Software:
Logtalk
Szczegóły programowe:
Wersja: 2.44.1
Filmu: 14 Apr 15
Wywoływacz: Paulo Moura
Licencja: Wolny
Popularność: 1

Rating: nan/5 (Total Votes: 0)

Logtalk jest open source obiektowego rozszerzenie do języka programowania Prolog. Integracja programowanie logiczne z programowania obiektowego i zdarzeniami, jest kompatybilny z większością kompilatory Prologu.
Logtalk obsługuje oba prototypy i klas. Ponadto, obsługuje programowanie na bazie komponentów poprzez skład kategorii oparte

Opis .

  • Rozstanie między interfejsem i realizacji:
  • dyrektyw predykatu (deklaracje) może być zawarty wewnątrz protokołów (interfejsów), które mogą być realizowane przez dowolny obiekt.

  • obiekty bbli parametryczne:

  • Nazwy
  • obiektu może być złożone zawierające wolne terminy zmienne, które mogą być używane do parametrize predykatów obiektu.

  • Wsparcie dla systemów opartych zarówno klasy i na bazie prototypu:
  • Być może, w tej samej aplikacji, opartych na hierarchii klasy (z konkretyzacji i specjalizacją stosunki prototyp) i hierarchie oparte (z relacji rozszerzeń).

  • Wsparcie dla wielu hierarchii obiektów:
  • Nie trzeba być ograniczone do jednego długiego hierarchię zakorzenioną w pewnym obiektu ogólnego.

  • prywatne, chronione i dziedziczenie publiczne:
  • Logtalk obsługuje private, protected i dziedziczenie publiczne w sposób podobny do C. Co więcej, każda relacja podmiot może być zakwalifikowane przy użyciu słowa kluczowego zakresu.

  • prywatnych bbli, chronione i predykaty obiektów publicznych:
  • Ustaw zakres swojej obiektu predykatów, aby dopasować swój projekt protokołu i niech system Runtime dochodzić swoich wyborów.

  • Statyczne i dynamiczne obiekty:
  • Obiekty mogą być statyczne lub dynamiczne. Obiekty statyczne zdefiniowane są w plikach źródłowych, które są skompilowane i ładowane w taki sam sposób, jak plików startowych. Dynamiczny obiekt może być albo zdefiniowane w plikach źródłowych lub tworzone w czasie wykonywania.

  • predykaty bbli Statyczne i dynamiczne obiektów:
  • Każdy obiekt może zawierać zarówno statyczne predykaty statyczne i dynamiczne.

  • pre-procesor, dzięki czemu możemy użyć standardowej składni Prolog:
  • Logtalk wykorzystuje standardową składnię Prolog z dodatkiem kilku operatorów i dyrektyw dla gładkiej krzywej uczenia się.

  • Programowanie zdarzeniowe:
  • predykaty można niejawnie wywołana gdy wystąpi szpiegował wydarzeniem, pozwalając rozwiązań programowych, które minimalizują sprzęgło obiektu. Ponadto wydarzenia wspierać refleksji behawioralnej.

  • Programowanie
  • komponentowe:
  • Predykaty może być zamknięty wewnątrz kategorii, które można praktycznie importowanych przez dowolny obiekt bez powielania kodu, niezależnie od hierarchii klas. Tak więc obiekty mogą być określone przez skład kategorii, które działają jako jednostki drobnoziarnistej kod ponownego użycia.

  • Obsługa wielu dziedziczenia:
  • Logtalk obsługuje multi-dziedzictwo zarówno protokołu i realizacji. Obiekt może realizować kilka protokołów i rozszerzenia, specjalizujemy lub instancję kilka obiektów. Konflikty Wielu spadkowe rozwiązywane są w sposób dorozumiany przez algorytmy Logtalk odnośników lub bezpośrednio za pomocą dyrektyw orzeczone.

  • Dobre wyniki:
  • Kod Logtalk jest skompilowany przy użyciu tych samych technik, które można użyć do napisania efektywnego kodu Prolog. Ponadto, metoda sprawdzania adresów są buforowane przez silnik wykonawczego Logtalk, znacznie poprawia wydajność. Wyniki testów dla niektórych kompilatory Prologu są dostępne tutaj.

  • Ścisła integracja z Prologu normą ISO:
  • Logtalk przeznaczony jest do płynnej integracji z dowolnym kompilatorem Prolog, który odpowiada lub ściśle podąża za Prolog normą ISO.

  • Kompatybilny z większością kompilatory Prologu:
  • interfejsy Logtalk z konkretnego kompilatora Prolog poprzez minimalnego pliku konfiguracyjnego, co zapewnia zgodność z niemal każdym nowoczesnym kompilatora.

  • Automatyczne generowanie plików dokumentacji XML:
  • Logtalk automatycznie generuje plik dokumentacji w formacie XML dla każdego obiektu skompilowanego, protokołu lub kategorii. System zawiera wszystkie niezbędne XSL (T) pliki i skrypty do konwersji plików do dokumentowania (X) HTML i PDF.
  • Logtalk działa na prawie każdym komputerze z kompilator Prolog (główne środowisko programistyczne jest G4 Apple PowerBook systemem MacOS X). Interfejs między Logtalk i konkretnego kompilatora Prolog jest realizowane za pomocą pliku konfiguracyjnego.
  • Plik ten zawiera pewne konkretne predykaty Logtalk i implementacje standardu ISO Prolog orzeczników niedostępny w kompilator Prolog.

  • W piśmie Logtalk starałem się postępować zgodnie ze standardem ISO Prolog w miarę możliwości. Możliwości potrzebne Logtalk, które nie są określone w części I normy ISO to:

  • dostęp do źródłowych właściwości (dynamiczny, statyczny, built_in):
  • Pod warunkiem, że twoja ulubiona Prolog ma takich możliwości, o których mowa powyżej, dzięki czemu plik konfiguracyjny jest bardzo proste. Pakiet Logtalk zawiera już pliki konfiguracyjne dla najbardziej popularnych kompilatorów Prologu. Aby uzyskać optymalną wydajność, Logtalk wymaga, że ​​kompilator Prolog obsługuje indeksowanie pierwszego argumentu zarówno kodu statycznej i dynamicznej.

  • Logtalk developerski i testowanie jest obecnie wykonywane przy użyciu następujących kompilatorów startowych (w kolejności alfabetycznej):
  • GNU Prolog 1.2.18
  • SWI Prolog 5.4.7
  • YAP 4.5.7
  • W związku z tym, są to prawdopodobnie najlepszy wybór na prowadzenie Logtalk (pod warunkiem, że masz prawo do korzystania z tych kompilatorów).

  • Ponadto Logtalk działa z małym lub bez modyfikacji z następujących kompilatory Prologu (w kolejności alfabetycznej):
  • 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 MacProlog32 1.25
  • LPA WinProlog32 4.0x
  • MasterProlog 4.1
  • Otwórz Prolog 1.1b10
  • PrologII 4.5
  • QU-Prolog 6.7
  • Quintus Prolog 3.3 ~ 3.5
  • SICStus Prolog 3.8 ~ 3.12.x
  • 2.6 ~ 2.7 XSB

Co nowego w tym wydaniu:

  • Zmodyfikowane wiadomość mechanizm wysyłania zadzwonić do & quot; przed & quot; Przed wykonaniem obsługi zdarzeń metody lookup. Zmiana ta nie powinna mieć wpływu na istniejący kod, ale pozwala trochę ciekawych aplikacji (np nie zamiast wyrzucania wyjątku, gdy wiadomość nie jest zrozumiałe).
  • Więcej spójna obsługa flag kompilatora między ustawiania wartości flag przy kompilacji / ładowania pliku, a podczas korzystania z set_logtalk_flag / 2 wbudowany predykat: w obu przypadkach ustawienie & quot; smart_compilation & quot; Flaga wyłączy & quot; czyste & quot; Flaga i ustawiania & quot; czyste & quot; Flaga wyłączy & quot; smart_compilation & quot; Flaga. Również ustawienie & quot; debug & quot; Flaga będzie wyłączyć oba & quot; smart_compilation & quot; i & quot; czyste & quot; flagi.
  • Umożliwia miękkie-cut konstrukcja kontrola, (* - & gt;) / 2, gdy natywnie obsługiwane przez back-end Prolog kompilator, do wykorzystania w organizmie reguł gramatycznych (po uwaga Daniel Diaz dyskutując GNU Wsparcie Prolog dla konstrukcji sterowania miękkie-cut).
  • Poprawiono błąd Logtalk kompilatora, gdy & quot; source_data & quot; Flaga jest z back-end Prologu kompilatorów, gdzie nie jest to możliwe, aby odzyskać pozycję okres odczytu.
  • Poprawiono błąd w kompilacji meta_non_terminal / 1 dyrektywy, jeżeli tylko pierwsza meta-pogląd nie być prawidłowo przetwarzane.
  • Aktualizacja pliku konfiguracyjnego Eclipse do wykrycia, gdy działa na systemach 64-bitowych systemu Windows i do ignorowania eksportu nie i nie źródłowych operatora przy wstępnej obróbki lib / 1 dyrektywy.
  • Aktualizacja ramy testów jednostkowych drukować komunikaty zawierające więcej informacji o nieudanych testów jednostkowych.
  • Dodane orzecznik Split / 4 (do podziału listy do podlist przy określonej długości) do & quot; & quot ;, listp & quot; & quot ;, listy i & quot; difflist & quot; podmioty biblioteki.
  • Aktualizacja & quot; cc & quot; Przykład z definicją dla powłoki / 2 orzecznika dla CxProlog.
  • Zmiana nazwy obiektów w & quot; mi & quot; Przykładem uniknąć konfliktu nazw podczas uruchamiania testów jednostkowych przykładów.
  • Poprawiono błąd w instalatorze systemu Windows, który uniemożliwiał wykrycie YAP 64 bitów wersjach. Dzięki Stepan Ipatov w raporcie.
  • Poprawiono błąd w instalatorze systemu Windows, który uniemożliwiał użytkownikom dostosowywanie katalog instalacyjny. Dzięki Daniel Moniz do raportu o błędzie i Gavin Lambert do diagnozowania błędów.
  • Aktualizacja skrypt instalacyjny Windows dla poprawy wykrywania XSB i domyślne zainstalować tylko pliki poszczególnych użytkowników po uruchomieniu przez użytkownika innego niż administrator na komputerze, na którym jest już zainstalowany Logtalk.
  • Dodane podstawowe wsparcie dla LaTeX-a & quot; oferty & quot; pakiet. Dodano notatki na quot i; wybite & quot; i & quot; texmates & quot; Pakiety LaTeX.
  • Dodane notatki na edytorze tekstu Textastic iPad.
  • Dodane podstawowe kolorowanie składni i wsparcie dla zwijania edytorze tekstu UltraEdit.
  • Aktualizacja TextMate bundle, aby wyłączyć automatyczne poprawki wcięcia wprowadzone w wersji rozwojowej TextMate 2.0.

Co nowego w wersji 2.44.0:

  • Zmienione semantyka uzupełniając kategorie umożliwiające łatanie zarówno predykatywnych deklaracje i definicje orzeczone uzupełniane obiektów. Osiąga się to poprzez zapewnienie, że deklaracje orzecznik i definicja wyszukiwań zaczynają się kategorii uzupełniających przed patrząc na samym obiekcie lub uzupełnione do swoich jednostek powiązanych.
  • Zaktualizowany kompilator Logtalk aby wygenerować ostrzeżenie podczas kompilowania uzupełniającą kategorię dla uzupełnione obiektu, który został skompilowany ze wsparciem dla uzupełnienia kategorie wyłączony.
  • Poprawiono błąd w przetwarzaniu meta-meta-zaproszeń do predykatów, gdy z kontekstu powołanie będzie ustawione na & quot; to & quot; zamiast & quot; nadawcy & quot; gdy meta-argumentem był jednym z :: / 2, {} / 1,

Co nowego w wersji 2.43.3:

  • Zmienione kompilator, aby wziąć pod uwagę zastosowania / Dyrektywa 2 przy kompilacji połączeń do refleksji wbudowanych metod. Ta zmiana rozszerza semantykę rozchodów / dyrektywy 2 i pozwala na łatwiejszą migrację z prostych aplikacji Prologu do Logtalk.
  • Aktualizacja realizacja predicate_property / 2 wbudowanej metody, dodając Zakres / 1 własność.
  • Zaktualizowany kompilator Logtalk, aby dodać informacje o nazwę pliku źródłowego, katalog pliku źródłowego i opcji do pliku źródłowego kompilatora generowanych plików Prologu. W poprzednich wersjach, informacja ta została zarejestrowana tylko podczas ładowania pliku źródłowego. Zmiany upraszczają tworzenie aplikacji, gdzie biblioteki Logtalk są skompilowane i wstępnie załadowane.
  • Zaktualizowany kompilator Logtalk wydrukować nazwę obiektu haka użytego w kompilacji plików źródłowych, gdy & quot; hak & quot; flag kompilatora jest określona.
  • Aktualizacja wbudowanego debuggera w celu uniknięcia niepotrzebnych punktów wyboru stworzone przez back-end Prologu kompilatory których chowa / 1 wdrożenia nie skorzystać z logicznych semantyki aktualizacji do rozmowy deterministyczny.
  • Poprawiono błąd w module obsługi kompilator wykonawczego Logtalk, gdzie nie udało się dekompilować wewnętrzne identyfikatory podmiotu podczas rzucania wyjątków egzystencję podmiot.
  • Aktualizacja Lean Prolog plik konfiguracyjny, dodanie indeksu / 1 dyrektywy dla niektórych dynamicznych orzeczników stosowanych przez wewnętrzne tabel Logtalk wykonawczych.
  • Aktualizacja plików integracyjnych SWI-Prolog do testowania za dostępność dyrektywy index / 1, który jest nieaktualnych przez nowego eksperymentalnego wsparcia SWI-Prolog do indeksowania wielu argumentów just-in-time.
  • Dodane predykatów podciąg / 4 (do generowania podsekwencje listy przy określonej długości), zastąpienie / 4 (do wymiany elementów na liście), a hamming_distance / 3 do biblioteki & quot; listp & quot; i & quot; lista & quot; podmioty.
  • Dodane euclidean_norm / 2, chebyshev_norm / 2, manhattan_norm / 2, euclidean_distance / 3, chebyshev_distance / 3, manhattan_distance / 3, a scalar_product / 3 predykaty do biblioteki & quot; numberlistp & quot; i & quot; numberlist & quot; podmioty.
  • Poprawiono kilka głupich błędów w definicji znaku & quot; & quot; Celem biblioteki predykatów is_bin_digit / 1, is_octal_digit / 1, is_dec_digit / 1, a is_hex_digit / 1.
  • Aktualizacja biblioteki & quot; all_loader.lgt & quot; Ładowarka do pliku również załadować & quot; meta_compiler_loader.lgt & quot; Plik ładowarka.

Co nowego w wersji 2.43.1:

  • Zmienione kompilator, aby wziąć pod uwagę zastosowania / Dyrektywa 2 przy kompilacji połączeń do wbudowanych metod bazy danych. Ta zmiana rozszerza semantykę rozchodów / dyrektywy 2 i pozwala na łatwiejszą migrację z prostych aplikacji Prologu do Logtalk.
  • Dodano eksperymentalną obsługę za pomocą szablonu źródłowe jako argumentu do coinductive / 1 dyrektywy. Ten szablon pozwala na podanie których argumenty są istotne dla coinductive sukcesu. W oparciu o podobnej funkcjonalności znaleźć na na Feliks Kluźniak za DRA meta-tłumacza.
  • Ulepszona obsługa debugowania coinductive predykatów podczas korzystania z Logtalk wbudowany debugger.
  • Usunięto obsługę coinduction dla CxProlog. Obecna wersja tego kompilatora brakuje soft-cut wbudowany orzecznika lub konstrukcji sterowania, który jest obecnie wymagane przez eksperymentalnej realizacji coinduction.
  • Zniesione wieloletnie ograniczenia nie pozwalające na definicję użytkownika predykatów otoki dla bagof / 3 i setof / 3 wbudowanych metod, gdy celem argumentem może używają ^ / 2 kwantyfikatora.
  • Dodano wsparcie dla & quot; ^ & quot; meta-meta-orzecznik Argument tryb Specifier sugerowane przez Jana Wielemaker i znaleźć na SWI-Prolog 11.05.25. Tryb ten jest przydatny, gdy specyfikator opakowań dla definiowania / 3 i setof / 3 wbudowanych metod bagof gdy celem argumentem może używają ^ / 2 kwantyfikatora.
  • Dodane & quot; prolog_compiler & quot; i & quot; prolog_loader & quot; flag kompilatora, które pozwalają na przekazanie opcji do back-end Prolog kompilatora wbudowanych predykatów skompilować na dysku i wczytać (opracowanie) Prolog flagę. Domyślna wartość dla obu flag jest pusta lista.
  • Poprawiono błąd przy kompilacji połączenia do Prolog Proprietary wbudowanym meta orzeczników, gdzie kompilator Logtalk może próba przetworzenia niż argumenty meta jako cele. Ten błąd objawia się tylko w niektórych back-end Prologu kompilatorów, takich jak Eclipse.
  • Poprawiono błąd w przetwarzaniu dyrektyw kompilacji warunkowej.
  • Poprawiono błąd uniemożliwiający przechodząc aliasów / 3 dyrektywy w sprawie połączeń do create_object / 4, create_category / 4, a create_protocol / 3 wbudowane predykaty.
  • Usunięto z wbudowaną obiektu & quot; logtalk & quot; z decompile_predicate_head / 4 i decompile_predicate_indicator / 4 przestarzałe metody.
  • Usunięto wsparcie dla długo nieaktualnych Logtalk metapredicate / 1 dyrektywy.
  • Poprawiono błąd wydajności podczas buforowania połączeń do kategorii orzeczników w którym buforowane wpisy mogłyby być bardziej szczegółowe niż to konieczne w przypadku pracy z kategorii parametrycznych.
  • Ulepszone buforowanie & quot; Super & quot; domaga się od ciągu prototypów. Wcześniej wszystkie buforowane wpisy będą specjalizuje przez wartość & quot; samo & quot; w celu należytego rozpatrzenia szczególnych przypadkach, gdy obiekt obie instancję i specjalizuje się inne obiekty.
  • Zaktualizowany kompilator Logtalk aktywować żadnych deklaracji operatora znajdują się dyrektywami zakres bazowych podczas kompilacji podmiotów, które zawierają wskazówki.
  • Lepsza wydajność podczas korzystania coinductive orzeczników back-end Prolog kompilatory takie jak SICStus Prolog, które nie dostarczają konstrukt kontroli cięcia miękkich, ale zapewniają miękkie-cut wbudowaną meta-orzecznika (jeśli / 3).
  • Poprawiono błąd, w którym raport fałszywych ostrzeżeń kompilacji / ładowania może być wydrukowany, gdy plik źródłowy został skompilowany / załadowany z flagą kompilatora & quot; raport & quot; wyłączone.
  • dodał & quot; streamvars & quot; biblioteki obiektów, pochodzących z istniejącego & quot; assignvars & quot; kategoria biblioteki, wyposażony wsparcie dla dodawania i usuwania warunki (które mogą być zmienne) z & quot; strumienia & quot; zmienna.
  • Aktualizacja & quot; coinduction & quot; Przykładem, wykorzystując zwiększoną coinductive / 1 dyrektywy i rozszerzenie liczby poszczególnych przykładów, które mogą być uruchamiane za pomocą SICStus Prolog. Dodano model sprawdzanie przykład, za pomocą coinduction, coroutining, i ograniczenia, wniesionego przez Neda Saeedloei.
  • Aktualizacja quot i; metapredicates & quot; Przykład z przykładowy kod ilustrujący jak zdefiniować owijarki do / 3 i setof / 3 wbudowanych metod bagof gdy meta-argumentem może zawierać zmienne egzystencjalnie wykwalifikowanych.
  • Aktualizacja & quot; cc & quot; Przykładem, korygowania definicje kilku źródłowych back-end Prologu kompilatorów i dodając kilka podstawowych testów jednostkowych.
  • Aktualizacja quot i; kodowania & quot; Przykład z ograniczonym wsparciem dla Lean Prologu.
  • Dodano brakujące wpisy na meta_non_terminal / 1 dyrektywy, a za połączenie // N nieterminalny do & quot; pomóc & quot; np.
  • Dodane parser dla PDDL 3.0 plików, wniesionego przez Roberta Sasak.
  • Kod Dodane składane wsparcie dla edytora tekstu SubEthaEdit. Dodano wsparcie dla zwijania warunkowych bloków kompilacji do edytorów tekstu Kate, Vima i TextMate.
  • Aktualizacja skryptów integracyjnych w celu załadowania pliku ścieżki biblioteki przed załadowaniem Logtalk kompilatora / czas pracy. Zmiana ta ma na celu uproszczenie ładowanie plików bibliotek i przykład z plików ustawień. Ponadto, również szukać w katalogu instalacyjnym Logtalk w $ HOME / akcję, gdy zmienna LOGTALKHOME nie jest zdefiniowana. Dzięki VAtor Santos Costa za sugestię.
  • Aktualizacja instalatora systemu Windows w celu wsparcia Lean Prolog i wykrywania Yap 64 bitów wersje.

Co nowego w wersji 2.43.0:.

  • Dodano eksperymentalną obsługę Lean Prolog
  • Zmienione raportowanie błędów przez kompilator Logtalk i wykonywania. Wszystkie terminy wyjątków użyć teraz, gdy jest to możliwe, błędów (Error, logtalk (bramki, Entity))
  • Format. Zmieniono wewnętrzne sprawdzanie błędów w obsłudze, jeśli to wykonalne, nowy '' $ lgt_must_be wewnętrzne / 2-3 predykatów.
  • Dodane & quot; optymalizacji & quot; flaga, której wartość domyślna to & quot; & quot ;. na Flaga ta pozwala na wyłączenie istniejących optymalizacje dla np Zadania debugowania (
  • obecnie realizowane optymalizacje obejmują usuwanie nadmiarowych połączeń do prawdziwej / 0 z treści zebranych punktach bazowych i usuwanie
  • redundantne połączenia z (=) / 2 z organizmu klauzul generowanych przez ekspansję reguł gramatycznych).
  • Dodane & quot; source_data & quot; flaga, której wartość domyślna to & quot; & quot ;. na Z ta flaga ustawiona na & quot; & quot ;, na Logtalk będzie na bieżąco informacje reprezentowane za pomocą trybu / 2,
  • Informacje / 1-2, używa / 2 i use_module / 2 dyrektyw PLUS Karta lokalizacja źródła (w tym nazwy pliku źródłowego i numery linii), przydatne zarówno do debugowania
  • i do integracji z narzędziami programistycznymi. Flaga ta może być wyłączona w celu wytworzenia bardziej zwarty kod. Parameter_names / 1 obiekt i
  • Nieruchomość kategoria jest usuwany w celu uniknięcia zwolnień.
  • Wdrożone chronione / 1/1 i prywatnej własności obiektów, protokołów i kategorii. Wraz z publicznym / 1 majątku, te właściwości,
  • umożliwia listę predykatów zadeklarowanych w jednostce być dostępne dla refleksyjnych obliczeń. Wdrożone oświadcza / 2, określa / 2, obejmuje / 3,
  • i zapewnia / 3 właściwości dostępu do właściwości orzeczników deklarowanych i zdefiniowanych w obrębie jednostki. Deklaracja właściwości obejmują line_count / 1, numer linii dyrektywy zakres orzecznik. Właściwości Definicja obejmuje line_count / 1, numer linii głowy pierwszego
  • punkt dla orzecznika i number_of_clauses / 1, liczba klauzul orzecznika. Realizowane również zastosowania eksperymentalnych / 3 i właściwości use_module / 3.
  • Dodane nieruchomości źródłowe, redefined_from / 1, co pozwala zapytań o obiekcie lub kategorii, która zawiera definicję źródłowe, że jest na nowo.
  • Dodano loaded_file / 3 orzecznik do & quot; logtalk & quot; wbudowany w obiekt, który uzupełnia istniejące loaded_file / 2 orzecznik i daje dostęp do
  • wyraźne opcje używane, gdy plik został skompilowany i załadowany.
  • Zaimplementowano wsparcie kompilator meta_non_terminal / 1 dyrektywy i rozmowy // N wbudowaną nieterminalny.
  • Zmniejsz kompilację zasad gramatyki poprzez usunięcie wsparcia dla czynienia z nieterminalnymi zakresu i istnieniu błędów na reguły gramatyki,
  • Poziom zamiast poziomu bazowego. Mimo, że funkcja ta może być pomocna podczas debugowania zasady gramatyki, to skomplikowane integracji Logtalk z Prolog-natywnych narzędzi programistycznych.
  • Zaktualizowany kompilator Logtalk w celu ratowania miejsc klauzul jednostki i udostępniać te informacje do back-end kompilatory Prolog.
  • Zaktualizowany kompilator Logtalk, aby uniknąć generowania niepotrzebnych klauzul catch-all dla deklaracji wewnętrznych predykatu i tabele definicji dla jednostek dynamicznych.
  • Zaktualizowany kompilator Logtalk w celu wykluczenia z wykorzystaniem Multifile predykaty za złamanie obiektu hermetyzacji. Głównym oświadczenie,
  • musi istnieć podmiot, zawierający zarówno zakres i Multifile dyrektywę dla orzecznika. Ponadto, określając klauzule o Multifile
  • Podmiot :: funktora / Arity nie odpowiada Multifile / 1 dyrektywy będzie teraz prowadzić do błędu kompilacji, a nie po prostu ostrzeżenie.
  • Usunięto ograniczenie Logtalk kompilator, że zmuszony sąsiadujące ze sobą / 1/1 i dynamicznych dyrektyw poprzedzać połączenia do deklarowanych orzeczników.
  • Ulepszona Raport Logtalk kompilator misspelt połączeń do nie-terminali zasad gramatyki.
  • Możliwość korzystania z:. Kontroli / 1 budowy na ciele zasad gramatyki,
  • Gdy debugowanie wiadomości określone w dyrektywach używa / 2, wiadomość jest teraz drukowane w sposób dorozumiany kwalifikacje jak w kod źródłowy napisany przez użytkownika.
  • Zmienione wewnętrzne predykaty stosowane w realizacji wbudowanych wielowątkowości orzeczników w celu ułatwienia integracji z

  • Narzędzia
  • debugowania wysokiego szczebla, które wymagają dekompilacji wygenerowanego kodu Prologu.
  • Poprawiono błąd wprowadzony w Logtalk 2.42.4 sprawie sporządzania orzeczników jednostki, które wymagają synchronizacji predykatów. Ten błąd spowodowało połączeń
  • są wykonane, a nie do nie-zsynchronizowane form predykatów, które objawiają się w przypadkowych uszkodzeń celów nici.
  • Poprawiono błąd, w którym dawna skompilowane runtime meta-call w kategorii zostaną skompilowane jako wezwanie do orzecznika obiektu
  • importowanie kategorię, a nie jako wezwanie do lokalnego kategorii orzecznika.
  • Poprawiono błąd, w którym dawna ustawione wartości flag podmiotu lokalnie za pomocą set_logtalk_flag / dyrektywa 2 będzie nie być zapisany w jednostce
  • Kod skompilowany.
  • Poprawiono błąd, gdy dawna zniesienie dynamicznego orzecznik w obiekcie nie prototypu gdzie zniesienia / 1 metodę uda bez
  • orzecznik jest faktycznie zniesione.
  • Poprawiono błąd w ustawieniu odpowiedniego kontekstu wykonania podczas wywoływania meta-argument, że wymaga kompilacji wykonania w ramach
  • & quot; nadawca & rdquo;.
  • Poprawiono błąd w kompilacji jednoznaczne wykwalifikowanych połączeń do modułu meta-orzeczników, gdzie moduł kwalifikacje zostaną usunięte z
  • zestawiane połączenia. Zauważ, że te połączenia będą korzystać Logtalk meta-orzeczone semantyki (czyli meta-argumenty zostaną powołani w ramach
  • rozmówcy) zamiast zwykłych modułów Prolog meta-orzecznik semantyki.
  • Poprawiono błąd, w którym stosy coinduction nie została zainicjowana przy użyciu

Co nowego w wersji 2.42.4:

  • Ta wersja zawiera kompilator, wykonawcze i multi- gwintowania optymalizacji wydajności, poprawia się komunikaty o błędach kompilator / 1 dyrektyw zsynchronizowane / 1 i dynamicznych, dodaje wsparcie dla zachowania informacji zakres operatora i wyprowadzanie te informacje automatycznie generowanych plików XML dokumentowania, dodaje nowe predykaty użytkowe do obiektu logtalk, poprawia kilka programowania przykłady, obejmuje obejście deinstalatora błąd SWI-Prolog na Windows i oferuje aktualizacje przenośności dla Qu-Prolog, SICStus SWI-Prologu, Prolog, XSB i YAP.

Co nowego w wersji 2.42.3:

  • Ta wersja dodaje wsparcie dla połączeń dynamicznych predykatów w Kontekst-his cali do od wewnątrz kategorii, dodaje wsparcie dla głowy skompilowane klauzuli, zawiera poprawki i ulepszenia wbudowanego debuggera, zawiera ulepszone biblioteki i przykłady, dodaje wsparcie dla indexicals podczas używania (FD) bibliotekę SICStus Prolog CLP, dodaje eksperymentalny przykład za pomocą przypisanych zmiennych wewnątrz obiektów i kategorii i oferuje aktualizacje przenośności dla Eclipse, GNU Prolog, SICStus Prolog i SWI-Prologu.

Co nowego w wersji 2.42.2:

  • Wersja ta poprawia zestawienie połączeń do modułu predykatów , poprawia kontrolę meta-argumentów połączeń meta-bazowych, poprawia obsługę wyrażeń lambda, zawiera kompilatora dla połączeń do biblioteki meta-orzeczników, dodaje nowe biblioteki rejestrację zdarzeń, stosunków pracy z interwałów czasowych, a przy użyciu liczników całkowitych, poprawia istniejące przykłady i biblioteki, dodaje wsparcie dla korzystania z pakietu SyntaxHighlighter JavaScript oparte, i oferuje aktualizacje przenośności, GNU Prolog Prolog, Qu-Prolog, SWI SICStus-Prolog i XSB.

Co nowego w wersji 2.42.1:

  • Ta wersja dodaje wsparcie dla nowego trybu meta-kwantyfikatorów wskaźniki, umożliwiające obsługę więcej Prolog Proprietary wbudowane meta-orzeczników.
  • Wsparcie został dodany do wykrywania i raportowania brakuje dynamicznych / 1 oraz sąsiadujące ze sobą / 1 dyrektywy.
  • Nowa flaga szarpie został dodany.
  • Dwa błędy źródłowe meta-kompilacji zostały skorygowane.
  • Niektóre przykłady zostały zaktualizowane.
  • aktualizacje Przenośność zostały wykonane dla B-Prolog, SICStus SWI-Prologu, Prolog, XSB i YAP.

Inne programy z deweloperem Paulo Moura

Logtalk
Logtalk

11 Mar 16

Komentarze do Logtalk

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!