Games Marketplace - Odealo
0.00 25 (Click on the icon to view details)

SIMULA

This page is a translation of the original work by Jarek Sklenar that can be found at http://staff.um.edu.mt/jskl1/asu/index.html

 

Other recommended articles and pages
BUY POE CURRENCY BUY DIABLO 4 GOLD
DIABLO 4 TRADING BUY WOW CLASSIC GOLD

 

Strona poświęcona językowi SIMULA

(c) Jarek Sklenar

"To było ulepszenie przewyższające większość swoich następców"
(komentarz Tony'ego Hoare na temat Algol 60)

Zorientowana Symulacja Obiektów (Object Oriented Simulation - OOS) może zostaż uznana za specjalny przypadek Programowania Obiektowego (Object Oriented Programming [OOP]). Niektóre reguły takie jak istnienie zmiennej liczby obiektów zakłócających, były standardowo używane w symulacji środowiska od dawna, często przy użycie innej terminologii. Język SIMULA (wcześniej nazywany SIMULA 67) to pierwszy prawdziwy język programowania obiektowego. Będąc raczej starym, wciąż posiada większość (a wszystkie istotne) mechanizmy oraz zasady OOP. Za wyjątkiem języka programowania Beta to koncepcyjne podzbiory języka SIMULA, którego standard został zdefiniowany w 1967 roku.  Niektóre sprawy, takie jak klasy, dziedziczenie, metody wirtualne itp. zostały zdefiniowane w SIMULA na długo zanim zostały ponownie odkryte dzięki rozkwicie OOP w latach 80-tych. Aby dowiedzieć się więcej o SIMULA, odwiedź stronę ASU (Stowarzyszenie użytkowników SIMULA [Association of SIMULA Users]) z dalszymi referencjami.

SIMULA była krytykowana za to, że z jednej strony jest tam wysoki poziom zaawansowania języka sam w sobie, a z drugiej, połaczony z raczej ogarniczonymi możliwościami symulacji, za wyjątkiem kontroli czasu. Brak wsparcia narzędzi symulacji, takich jak przejrzyste zbieranie statystyk, kolejki zaawansowane bardziej niż podstawowe listy dostępne w klasie systemowej Simset, generowanie raportów i tym podobne spowodowane są faktem, iż język formalnie został zamrożony w 1968 roku. Ta decyzja była kontrowersyjna. Plusem jest to, że istnieje jedynie jedna SIMULA z minimalnymi różnicami między wdrożeniami. Z drugiej strony przyszły rozwój stałbył trudny. A zatem SIMULA jest bardziej tłem OOP do tworzenia narzędzi symulacji, aniżeli całkowicie user-friendly środowiskiem symulacji. Prawdopodobnie najbardziej znanym z takich narzędzi jest DEMOS (Birtwistle 1979). Demos nie jest podklasą systemu klas symulacji, a zatem użytkownicy nie mogę użtywać procesów symulacji. Jestem przekonany, że orientowanie procesu dyskretnej symulacji jest nabardziej zaawansowanym i najnaturalniejszym sposobem tworzenia modeli symulacji. Klasowy proces Symulaction jest pierwszą nadklasą tego typu. 
Ułatwienia obsługi procesów w symulacji są więc rodzajem standardu, który został skopiowany w wielu późniejszych narzędziach do symulacji. Metoda udogodnienia procesów obsługi symulacji jest zatem rodzajem standardu, będącym kopiowanym w wielu późniejszych narzędziach symulacji. Aby utrzymać procesy Simulation dostęnymi bez żadnych restrykcji, napisałem proste rozszczerzenia dla Simulation, które czyni je bardziej przyjazne użytkownikowi. Istnieją dwie główne klasy:

  • Statsim deklaruje klasy dla statystycznie oberwowanych obiektów (z lub bez czasu) wspólnie ze zmienną losową wraz z tabelą rozkładu empirycznego. Obiekty statystyczne mogą generować histogram oraz zapisywać rozkład (cdf) w pliku. Empiryczne obiekty o losowej liczbie mogą to załadować, więc możliwym jest użycie symulacji w innych modelach. Procedury dla niektórych teoretycznych losowanych rozkładów również są dostępne.
  • Questim deklaruje klasy dla symulacji sieci kolejkowych. Są tam klasy dla ogólnego klienta, rozmaite typy kolejek, wielokanałowy serwer oraz cała stacja obsługi pojedynczej kolejki. Oprócz zwykłych statystyk dotyczących długości kolejki, czasu oczekiwania, wykorzystania serwerów itp. Można również uzyskać koszty oczekiwania i świadczenia usług.

Narzędzie to nazywam QUESIM. Wejdź na stronę główną QUESIM, aby dowiedzieć się więcej i je pobrać.

Wspaniałe wydarzenie w historii SIMULA jest tutaj: możesz uzyskać bezpłatny port CIM SIMULA dla Windows, który jest bardzo łatwy w instalacji i obsłudze. Petr Novak, absolwent Uniwersytetu Karola w Pradze (pod kierunkiem Evzena Kindlera), stworzył port, który jest niewiarygodnie krótki (wszystko w jednej dyskietce !!) i który może zostać zainstalowany przez każdego w zaledwie kilka minut. Aby pobrać port CIM / win32, odwiedź stronę Cim 3.33 (port dla 32-bitowej wersji systemu Windows). Zauważ, że ta wersja SIMULA wykorzystuje całą pamięć i zawiera uatrakcyjniony terminal klasy do sterowania ekranem tekstowym, wliczając w to mysz. Grafika jest obecnie niedostępna. Studenci UOM mogą uzyskać port bezpośrednio - skontaktuj się ze mną.

Możesz także przejrzeć dokument Wprowadzenie do OOP w SIMULA na podstawie wykładu wygłoszonego na Uniwersytecie Maltańskim z okazji 30-lecia SIMULA.

Aby dowiedzieć się więcej o historii Simuli, dostępne są dwa bardzo ciekawe artykuły:

Holmevik, J.R. (1994). „Kompilacja SIMULA: historyczne badanie genetyki technologicznej”. IEEE Annals of the History of Computing, 16 (4), s. 1 25-37, 1994. Artykuł został również zaprezentowany na 18. Konferencji ASU w 1992 r. I opublikowany w biuletynie SIMULA Vol.20 (1), październik 1992 r.

Dzięki uprzejmemu zezwoleniu pana Holmevika możesz pobrać lokalną kopię jego pracy Compiling SIMULA.

Krogdahl, S. (2003). „Narodziny Simuli” Artykuł ten został opublikowany w trakcie konferencji HiNC 1 w Trondheim, czerwiec 2003 r. (IFIP WG 9.7, we współpracy z IFIP TC 3). Redakcja: Janis A. Burbenko jr., John Impagliazzo, Arne Sølvberg.