Loglan'82: Różnice pomiędzy wersjami

Z Lem
Skocz do: nawigacji, wyszukiwania
Linia 1: Linia 1:
 +
 
Mamy nadzieję, że informacje zawarte na tych stronach okażą się  interesujące dla:   
 
Mamy nadzieję, że informacje zawarte na tych stronach okażą się  interesujące dla:   
 
* '''Ambitnych programistów''' -- język Loglan'82 oferuje garść konstrukcji i rozwiązań nieznanych w innych językach programowania :
 
* '''Ambitnych programistów''' -- język Loglan'82 oferuje garść konstrukcji i rozwiązań nieznanych w innych językach programowania :
 
::* Jeśli chcesz świadomie zarządzać pamięcią obiektów i uniknąć przy tym niebezpiecznego zjawiska ''wiszacych referencji'' to spróbuj instrukcji '''kill'''( ),   
 
::* Jeśli chcesz świadomie zarządzać pamięcią obiektów i uniknąć przy tym niebezpiecznego zjawiska ''wiszacych referencji'' to spróbuj instrukcji '''kill'''( ),   
 
::* Jeśli oprogramowanie, które tworzysz ma służyć obliczeniom współbieżnym, lub rozproszonym lub jakiejś ich kombinacji to wybierz Loglan'82 z jego jednym modelem obejmującym wszystkie te rozdaje obliczeń, zredukuje to znacznie koszty opanowania programowania współbieżnego i/lub rozproszonego,   
 
::* Jeśli oprogramowanie, które tworzysz ma służyć obliczeniom współbieżnym, lub rozproszonym lub jakiejś ich kombinacji to wybierz Loglan'82 z jego jednym modelem obejmującym wszystkie te rozdaje obliczeń, zredukuje to znacznie koszty opanowania programowania współbieżnego i/lub rozproszonego,   
::* Na pewno warto zapoznać sie z protokołem obcego wołania metod wątku A podczas wykonywania instrukcji wątku B, jest to oryginalny wynalazek znany jak dotąd tylko w Loglanie,   
+
::* Na pewno warto zapoznać sie z ''protokołem obcego wołania'' metod wątku A podczas wykonywania instrukcji wątku B, jest to oryginalny wynalazek znany jak dotąd tylko w Loglanie,   
::* Jeśli masz zamiar zaprogramować obliczenia quasi-współbieżne to zapoznaj sie z współprogramami ('''coroutines''')  
+
::* Jeśli masz zamiar zaprogramować obliczenia quasi-współbieżne to zapoznaj się z współprogramami ('''coroutines''')  
 
* '''Nauczycieli''' -- Loglan'82 jest dobrym wyborem:
 
* '''Nauczycieli''' -- Loglan'82 jest dobrym wyborem:
 
::* jeśli chcesz przedstawić wszystkie narzędzia i metody programowania obiektowego unikając przy tym przechodzenia od jednego do kolejnego języka programowania dla zilustrowania kolejnych narzędzi programowania obiektowego.
 
::* jeśli chcesz przedstawić wszystkie narzędzia i metody programowania obiektowego unikając przy tym przechodzenia od jednego do kolejnego języka programowania dla zilustrowania kolejnych narzędzi programowania obiektowego.
Linia 16: Linia 17:
  
  
may find interest in Loglan'82 as it is a product of studies. Many scientific problems were solved before we defined the language and its semantics. Some open problems are still open.
+
\end{itemize}
+
  
 
    
 
    
Linia 32: Linia 32:
  
  
Język programowania obiektowego, powstał w wyniku poszukiwania odpowiedzi na kilka problemów:
+
   
* czy można połączyć dwie metody tworzenia modułów: zagnieżdżanie oraz dziedziczenie? Zanim zezwoliliśmy na zagnieżdżanie i dziedziczenie klas musieliśmy odpowiedzięc na kolejne pytania  
+
::* Jak zapewnić statyczne dowiązanie wystapienia identyfikatora z wystąpieniem odpowiedniej deklaracji?
+
::* Jak określić, która klasa jest dziedziczona przez ...?
+
* Czy zarządzanie pamięcią obiektów musi doprowadzać do zjawiska  wiszących referencji? Czy zaśmiecanie pamięci może być skutecznie zwalczane przez jej odśmiecanie tj. garbage collection? Czy można bezpiecznie i efektywnie usuwać obiekty już niepotrzebne?
+
  
  
  
 
[[Category: Loglan'82]]
 
[[Category: Loglan'82]]

Wersja z 20:18, 5 lut 2013

Mamy nadzieję, że informacje zawarte na tych stronach okażą się interesujące dla:

  • Ambitnych programistów -- język Loglan'82 oferuje garść konstrukcji i rozwiązań nieznanych w innych językach programowania :
  • Jeśli chcesz świadomie zarządzać pamięcią obiektów i uniknąć przy tym niebezpiecznego zjawiska wiszacych referencji to spróbuj instrukcji kill( ),
  • Jeśli oprogramowanie, które tworzysz ma służyć obliczeniom współbieżnym, lub rozproszonym lub jakiejś ich kombinacji to wybierz Loglan'82 z jego jednym modelem obejmującym wszystkie te rozdaje obliczeń, zredukuje to znacznie koszty opanowania programowania współbieżnego i/lub rozproszonego,
  • Na pewno warto zapoznać sie z protokołem obcego wołania metod wątku A podczas wykonywania instrukcji wątku B, jest to oryginalny wynalazek znany jak dotąd tylko w Loglanie,
  • Jeśli masz zamiar zaprogramować obliczenia quasi-współbieżne to zapoznaj się z współprogramami (coroutines)
  • Nauczycieli -- Loglan'82 jest dobrym wyborem:
  • jeśli chcesz przedstawić wszystkie narzędzia i metody programowania obiektowego unikając przy tym przechodzenia od jednego do kolejnego języka programowania dla zilustrowania kolejnych narzędzi programowania obiektowego.
  • Jak się mozna przekonać z programowaniem w Loglanie mozna połączyć analizę wymagań i weryfikację oprogramowania względem wymagań.
  • Badaczy -- Ponieważ język programowania obiektowego, powstał w wyniku poszukiwania odpowiedzi na kilka problemów:
  • czy można połączyć dwie metody tworzenia modułów: zagnieżdżanie oraz dziedziczenie? Zanim zezwoliliśmy na zagnieżdżanie i dziedziczenie klas musieliśmy odpowiedzięc na kolejne pytania
  • Jak zapewnić statyczne dowiązanie wystapienia identyfikatora z wystąpieniem odpowiedniej deklaracji?
  • Jak określić, która klasa jest dziedziczona przez ...?
  • Czy można odziedziczyć klasę A w funkcji j?
  • Czy zarządzanie pamięcią obiektów musi doprowadzać do zjawiska wiszących referencji? Czy zaśmiecanie pamięci może być skutecznie zwalczane przez jej odśmiecanie tj. garbage collection? Czy można bezpiecznie i efektywnie usuwać obiekty już niepotrzebne?



\section{Why Loglan?} We recommend Loglan'82 to those who are investigating. For the language came out as the result of research on questions like: \begin{itemize}

\item is it possible to inherit from a class in a function?

\item how to define inheritance when the extended class is not a brother of the present class? \item is it possible to keep the scheme of accessing to non-local ... \item how to define coroutines in a consistent manner? \item is it possible to define semantics of concurrent and of distributed programming in a uniform way? \item is it possible to deallocate objects ina a safe and efficient way? \end{itemize}