atarionline.pl Prolog/ micro-Prolog - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1:
         
        CommentAuthorGeorge
      • CommentTime29 Sep 2009 12:03
       
      Czy istnieje implementacja Prologu lub micro-Prologu na nasz ulubiony komputer? Czytałem o microPrologu na ZX-Spectrum, a chciałem się pobawić Prologiem na Atari.

      G.
      • 2:
         
        CommentAuthorKaz
      • CommentTime29 Sep 2009 12:27
       
      W miare kompletna liste jezykow programowania na Atari znajdziesz tutaj:

      ->link<-

      oraz tutaj:

      ->link<-

      Prologu nie widze. Jezeli nie jest wymieniony we wspolczesnych opracowaniach to albo w ogole go nie ma, albo bylo to "dawno i nieprawda" - czyli trzeba przejrzec stare amerykanskie magazyny o Atari :)
      • 3:
         
        CommentAuthorCosi
      • CommentTime29 Sep 2009 13:01 zmieniony
       
      Kiedyś Wojciech Zientara w artykule o językach programowania na Atari wymieniał Prolog. Muszę poszukać, to było w którymś Bajtku z 1991 roku.

      PS. Bajtek 7/91. Podobno Prolog był dostępny na kartridżu i kasetach.
      • 4:
         
        CommentAuthorKaz
      • CommentTime29 Sep 2009 13:21
       
      To ewidetnie trzeba przeszukac stare pisemka amerykanskie, pewnie znajdzie sie i opis i moze nawet jakies programy.
      • 5:
         
        CommentAuthorCosi
      • CommentTime29 Sep 2009 13:47
       
      Tak przy okazji: mam gdzieś "implementację" Prologu w języku Logo :-D Nie wiem tylko czy wierną.
      • 6:
         
        CommentAuthorGeorge
      • CommentTime29 Sep 2009 17:38
       
      Sprawdziłem atarimagazines i nie znalazłem.

      Co do implementacji prologu w logo, to raczej nie wyobrazam sobie, ale z checia spojrze.
      Czytałem o implementacji zółwia w Prologu.
      • 7:
         
        CommentAuthorKaz
      • CommentTime29 Sep 2009 18:47
       
      Poszedlem tropem Zientary, ktory napisal, ze piraci gieldowi mieli Prolog. Przeszukalem wszystkie posiadane przez nas katalogi (Olbit, Megabajt, Hobbit, Bajt, Atarmam):

      ->link<-

      Nigdzie nie znalazlem wzmianki o Prologu.
      • 8:
         
        CommentAuthorsikor
      • CommentTime29 Sep 2009 20:42
       
      W "The Blue Book for the Atari Computers", edycja 1983/1984 też nie ma wzmianki o prologu, a ta książeczka jest w miarę kompletna na ówczesny czas. Jeśli już - szukać od 1984 roku wzwyż.
      • 9:
         
        CommentAuthorCosi
      • CommentTime29 Sep 2009 22:25
       
      George: przejrzałem ten plik i to nie jest Prolog. Ale można tak z ciekawości obejrzeć.
      Ładowanie:
      z poziomu DOSa LOGO
      po załadowaniu LOAD "D:PROLOG
      Smacznego!
      • 10:
         
        CommentAuthorGeorge
      • CommentTime30 Sep 2009 11:02
       
      Dzięki za "ProLOG" :)
      To ciekawe - myslalem, ze na Atari wszystko jest :)
      • 11:
         
        CommentAuthorGeorge
      • CommentTime30 Sep 2009 11:04
       
      A nie masz jakiegos opisu do tego "prologa" ?
      • 12:
         
        CommentAuthorKaz
      • CommentTime14 Sep 2010 12:35
       
      Odwiezam temat, moze ktos znalazl u siebie Prolog dla Atari?
    1.  
      Tylko ZX-Spectrum Micro-Prolog i Commodore C64 Prolog64
    2.  
      Czy ktoś obczaja Micro-Prolog w wersji ZX Spectrum, CP/M lub MS-DOS. Chodzi o to, że nie wiem jak wczytać tam SIMPLE. Przy wprowadzaniu reguł wyskakuje Error: 2. W Bajtku pisali o tym, żeby wpisać komendę LOAD SIMPLE i wczytać z magnetofonu ale gdzie znaleźć SIMPLE? Na stronie World of Spectrum przy obrazie Micro-Prolog widać na screenach, że ktoś też nie wiedział jak skorzystać z tego języka bo wyskakiwał mu komunikat Error: 2 przy próbie wprowadzania reguł.
      • 15: CommentAuthorbruno_j
      • CommentTime3 May 2020 20:23 zmieniony
       
      Paul Laughton: Another thing, for O.S.S., I did a language called Prolog, which they sold minimal copies of.

      Kevin Savetz: Prolog for the Atari?

      PL: Prolog for the Atari.

      KS: I don't think I'm aware of that. When I think of O.S.S., I think of BASIC/A+ and Action! and things like that. I know a little bit about Prolog, I read a couple of books about it for the IBM PC in the nineties. Was it basically compatible with that same sort of language?

      PL: Well it was compatible through the lines of Prolog. It had special functions in it to do graphics and things like that. It was asically a standard Prolog image. I think there was another Prolog written for the Atari 800 besides the one I wrote.

      KS: Because you need competition in the busy Prolog programming space.

      PL: If you look up, maybe, O.S.S. Prolog.

      KS: I'll have to research this later. Interesting.

      ->link<-

      [Edit]
      Opisy Prolog dla Atari ST, XPro i MProlog
      ->link<-
      • 16:
         
        CommentAuthorKaz
      • CommentTime16 Apr 2026 10:57 zmieniony
       
      Z mojej analizy wynika, że Zientara, wspominając w Bajtku 7 z 1991 roku o języku Prolog na cartridge'u i na kasecie, najprawdopodobniej pomylił Prolog z Pilotem. Obie nazwy są w miarę podobne. Prologu, jak dotychczas, ani mnie, ani innym poszukującym nie udało się jednak znaleźć. A nawet wzmianki o takiej implementacji dla małego Atari. Z kolei Pilot faktycznie na Atari istniał na obu nośnikach: ->link<- . Kolejna przesłanka uprawdopodabniająca taką pomyłkę: na liście Zientary jest nieistniejący język tu Prolog, a nie ma istniejącego języka Pilot.

      A co do meritum: Prolog na Atari już jest! W wersji micro-Prolog (jak na ZX Spectrum). Poniżej ekran ze spisem komend po wpisaniu polecenia HELP. Wkrótce więcej informacji na stronie głównej AtariOnline.pl.
      • 17:
         
        CommentAuthorjhusak
      • CommentTime16 Apr 2026 16:58
       
      Ech... Prolog i Programowanie w Logice... Kto się na tym nie wyłożył na INF... W tym języku kryje się spora dawka teorii.
      • 18: CommentAuthorgregor2
      • CommentTime16 Apr 2026 19:35 zmieniony
       
      Jeśli chodzi o PROLOG, to była wersja na Apple II. Mam do niej nawet dokumentację, niestety w języku francuskim. Zdaje się, że większość dokumentacji była po francusku, bo głównie rozwijany był właśnie we Francji i Kanadzie.
      PROLOG był napisany w specjalnym języku Candide i do działania potrzebował wirtualnej maszyny Micromegas. Na Apple II stacje dysków były używane jako pamięć wirtualna.
      Podobno jedna z pierwszych maszyn, na której uruchomiono Prolog, była ODRA i wychodzi, że jak dotychczas jedyna znana kopia oryginalnego kodu źródłowego (z malymi zmianami dla ODRY) ktory byl rozeslany do wielu krajow zachowała się w Polsce.
    3.  
      Fakt. Prolog zawsze miał opinię „języka, na którym ludzie się wykładają” I coś w tym jest, bo to zupełnie inne podejście niż imperatywne myślenie, bardziej matematyka i logika niż pisanie programu krok po kroku.

      Co do historii to masz rację, że bardzo silny ośrodek rozwoju był we Francji (np. prace zespołu Alain Colmerauer w Université d'Aix-Marseille), ale początki są trochę bardziej mieszane bo współtwórcą był też Robert Kowalski w UK. Kanada i Francja faktycznie mocno pchnęły to dalej w latach 70./80.

      Ten wątek z Apple II i VM Micromegas brzmi jak jedna z ciekawszych implementacji. Prolog miał wtedy masę bardzo egzotycznych runtime’ów, często z własnymi maszynami wirtualnymi i kombinowaniem z pamięcią (zwłaszcza na 8-bitowcach).

      Jest też wersja na BBC i dla mnie najważniejsza ta na ZX-Spectrum.
      • 20:
         
        CommentAuthorjhusak
      • CommentTime16 Apr 2026 20:25 zmieniony
       
      W Prologu pokładano olbrzymie nadzieje (sztuczna inteligencja, dowodzenie twierdzeń, wnioskowanie). Życie zdecydowało inaczej.
      • 21: CommentAuthorgregor2
      • CommentTime16 Apr 2026 22:37 zmieniony
       
      Ale Robert Kowalski wlasnie byl wspoltworca na Université d'Aix-Marseille.


      "Zainteresowanie Alaina Colmerauera algorytmami parsowania i przetwarzaniem języka naturalnego (np. automatyczne tłumaczenie i system pytań i odpowiedzi) doprowadziło do rozwoju języka programowania Prolog. W 1967 roku uzyskał doktorat z gramatyki precedensowej na Uniwersytecie w Grenoble. Następnie przeniósł się na Uniwersytet w Montrealu, gdzie zaprojektował język przepisywania drzew o nazwie Q-systems, który został wykorzystany w Projekcie Automatycznego Tłumaczenia do zbudowania automatycznego systemu tłumaczenia z języka angielskiego na francuski. Colmerauer uważał Q-systems za przodka Prologu. Na Colmerauera i jego zespół wpłynęły również inne prace, takie jak artykuł Roberta Floyda „Nondeterministic Algorithms”, praca J. Alana Robinsona nad logiką rezolucji oraz praca Roberta Kowalskiego nad SL-resolutin. Kowalski odwiedził drużynę w Marsylii na tydzień w 1971 roku i dwa miesiące w 1972 roku."

      PROLOG 0
      "W 1971 roku zespół skonstruował „prymitywny system komunikacji w języku naturalnym” wykorzystujący Q-systems do opisu aspektów języka naturalnego oraz dowód twierdzeń napisany w języku ALGOL-W. Jednak w 1972 roku wpadli na kilka pomysłów, które doprowadziły do ​​stworzenia nowego języka programowania, który mógł obsługiwać oba rodzaje obliczeń:

      „Spośród wszystkich systemów rezolucji zaimplementowanych przez Philippe'a,SL-resolution R. Kowalskiego i D. Kuehnera wydawała się najciekawsza. Jej tryb działania, oparty na stosie, był podobny do zarządzania wywołaniami procedur w standardowym języku programowania i dlatego był szczególnie dobrze przystosowany do przetwarzania niedeterminizmu poprzez cofanie się (backtracking) à la Robert Floyd [1967], a nie przez kopiowanie i zapisywanie rezolwentów. Rezolucja SL stała się następnie przedmiotem rozprawy Philippe'a na temat przetwarzania równości formalnej w automatycznym dowodzeniu twierdzeń [Roussel 1972]. Równość formalna jest mniej ekspresywna niż równość standardowa, ale można ją przetwarzać wydajniej. Teza Philippe'a doprowadziła do wprowadzenia predykatu dif (dla ≠) do pierwszej wersji Prologu”.
      „Po odejściu Roberta, Alain ostatecznie znalazł sposób [który nazwał gramatykami metamorfozy] na tworzenie wydajnych analizatorów. Powiązał predykat binarny N(x,y) z każdym symbolem nieterminalnym N gramatyki, co oznaczało, że x i y są ciągami terminalnymi, dla których istnieje ciąg u zdefiniowany przez x = uy i można go wyprowadzić z N. Reprezentując x i y za pomocą list, każdą regułę gramatyki można zakodować za pomocą klauzuli zawierającej dokładnie taką samą liczbę literałów, jak liczba wystąpień symboli nieterminalnych. W ten sposób możliwe było obejście się bez konkatenacji list. (Ta technika jest obecnie znana jako „technika list różnicowych”). Alain wprowadził również dodatkowe parametry do każdego symbolu nieterminalnego, aby propagować i obliczać informacje. Podobnie jak w systemach Q, analizator nie tylko weryfikował poprawność zdania, ale także wyodrębniał formułę reprezentującą zawartą w nim informację. Nic nie stało już na przeszkodzie stworzeniu systemu komunikacji człowiek-maszyna opartego wyłącznie na „logice”.”
      „Podjęto drakońską decyzję: kosztem niezupełności wybraliśmy rozwiązanie liniowe z unifikacją tylko między nagłówkami klauzul. Nieświadomie odkryliśmy strategię, która jest zupełna, gdy używane są tylko klauzule Horna. Robert Kowalski zademonstrował to później i wraz z Maartenem van Emdenem zdefiniował współczesną semantykę punktów stałych w programowaniu klauzul Horna.
      • 22: CommentAuthorzbyti
      • CommentTime16 Apr 2026 22:59 zmieniony
       
      @gregor2 nie w temacie, ale dość istotne, przynajmniej dla mnie ;)

      masz listę bugów 65816 którymi możesz się podzielić? i jesteś pewien, że w obecnie produkowanych prockach nadal one występują?

      nie piszę prywatnie na AOL bo się pogubimy co w wątku jest prywatne a co nie ;)

      jakbyś miał coś na podstawie czego można napisać jakiś zestaw testów to było by fajnie - z drugiej strony wydaje mi się, że ten procek już powinien być rozpoznany po tylu latach, ale nie mam doświadczenia w pisaniu emulacji takich wynalazków, więc jak masz jakąś wiedzę to by się przydało zrobić testy tego co mamy.
      • 23: CommentAuthorgregor2
      • CommentTime18 Apr 2026 09:28
       
      @zbyti Wyslalem Ci powiadomienie na priv.
      Coc nie wiem czy to tutaj dziala. W kazdym razie zobacz w temacie "szukam programow do przetestowania symulatora 65816" w kategori Programowanie / Programming .
      • 24: CommentAuthorzbyti
      • CommentTime18 Apr 2026 09:58
       
      @gregor2 dzięki, mam tę wiadomość :]
      • 25: CommentAuthorgregor2
      • CommentTime20 Apr 2026 19:51 zmieniony
       
      Jesli kogos interesuja poczatki j, PROLOG to tu jest wiele ciekawych informacji
      https://softwarepreservation.computerhistory.org/prolog/
      • 26: CommentAuthorgregor2
      • CommentTime26 Apr 2026 15:15
       
      Choc sprawa wygadala beznadziejnie udalo sie odnalesc te wersje PROLOG dla AppleII.
      Ciekawe ze dziala na moim AppleII Europlus, a nie uruchamia sie na emulatorze AppleWin ;)
      Przy okazji udalo sie ustalic ze istnieje jeszcze inny PROLOG dzialajacy na AppleII (Small PROLOG)ale ten z kolei wymaga karty z procesorem z80 i systemu CP/M.
      Wersja Small PROLOG dla systemu CP/M powinna dzialac tez na innych komputerach.

      Podaje link do wersji pod CP/M moze komus sie przyda np. jesli ma stacje dyskow z systemem CP/M do Atari
      http://cpmarchives.classiccmp.org/ftp.php?b=cpm%2Fmirrors%2Foak.oakland.edu%2Fpub%2Fcpm%2Fprolog