Snobol: Różnice pomiędzy wersjami

[wersja nieprzejrzana][wersja nieprzejrzana]
Usunięta treść Dodana treść
YurikBot (dyskusja | edycje)
m robot dodaje: uk:Снобол
Joee (dyskusja | edycje)
m +linki
Linia 6:
* z idei zawartych w algorytmie Markowa.
 
'''Snobol''' powstał w ''Bell Telephone Laboratories'' w 1962 r. Pierwsza jego realizacja została stworzona na maszynie [[IBM]] 7090. Około roku 1965 r. powstał ''Snobol3''. Dalsze prace nad rozwojem '''Snolol'''a doprowadziły do powstania w 1968 r. języka ''Snobol4''.
 
Rozwój idei zawartych w języku '''Snobol''' oraz ukierunkowanie prac na większą uniwersalność doprowadziły do powstania nowych języków takich jak [[Icon]].
Linia 64:
* wyrażenie : expresion
* lista : list
[[Programista]] może wyprowadzać własne [[Typ (informatyka)|typy danych]].
 
== Składnia ==
Linia 71:
* kontynuacja instrukcji wymaga w kolejnym wierszu umieszczenia znaku + lub .,
* zapis wyrażenia wymaga oddzielenia spacjami operatorów i argumentów, np. 'A+B' jest błędne i należy pisać 'A + B',
* [[Instrukcja (informatyka) | instrukcja]] bez [[Etykieta (informatyka)|etykiety]] musi się rozpoczynać spacją (pierwszy znak wiersza), gdyż w przeciwnym przypadku pierwszy wyraz instrukcji będzie zinterpretowany jako [[Etykieta (informatyka) | etykieta]],
* brak struktur sterujących: [[pętla (programowanie)|pętle]] realizuje się za pomocą skoków do [[Etykieta (informatyka) | etykiety]], instrukcję warunkową poprzez odpowiednie frazy F i S pola skoku,
* i wiele innych.
Linia 81:
Procesor '''Snobol'''a to aparat uzgadniania. Aby skutecznie pisać programy w tym języku należy zrozumieć działanie aparatu przeszukiwania wzorca i sposoby jego sterowania. Aparat ten jest analogiczną procedurą do działania aparatu wnioskowania w języku [[Prolog]].
 
Tak więc podobnie jak w [[Prolog|Prologu]] program jest tłumaczony na [[Kod bajtowy | kod wewnętrzny]] ''procesora Snobola'' a nie na [[kod maszynowy | kod wewnętrzny]] maszyny. W implementacjach kompilatorów procesor jest włączany do kodu wynikowego i interpretuje swój język wewnętrzny będący wynikiem translacji ''kodu źródłowego w '''Snobol'''u'' na ''kod wewnętrzny procesora '''Snobol'''a''. Działanie procesora '''Snobol'''a opiera się o predykaty, tzn. funkcje, które mogą bądź generować sukces (powodzenie), bądź mogą zawodzić. Dostępne są również predykaty standardowe, którymi można wpływać na przebieg procesu uzgadniania. Istnieje tu więc pewna analogia do aparatu wnioskowania [[Prolog|Prologu]].
 
'''Snobol''' zawiera mechanizm automatycznej regeneracji pamięci dynamicznej.
Linia 91:
== Implementacja dla komputera Odra 1305 ==
 
W [[Polska | Polsce]] zrealizowano dystrybucję ''Spitbol''a dla komputerów [[Odra 1305]] w ''Instytucie Fizyki [[Uniwersytet Jagielloński | Uniwersytetu Jagiellońskiego]]'' pracującą pod systemem [[GEORGE 3]] w oparciu o pierwszą, autorską wersję Macro-Spitbol dla maszyn serii [[ICL]] 1900. Wersja 4.1 uruchomiona została 1983 r.
 
== Przykład ==