Pipedija - tautosaka, gandai, kliedesiai ir jokios tiesos! Durniausia wiki enciklopedija durnapedija!


Modula: Skirtumas tarp puslapio versijų

Iš Pipedijos - durniausios enciklopedijos.
Jump to navigation Jump to search
(Naujas puslapis: '''Modula''' - tokia programavimo kalba, tiksliau gi netgi kelios skirtingos modulos, nes pradžioje buvo pirma, paskui antra, o dar paskui - netgi ir trečia. Visos šitos tebu...)
 
 
1 eilutė: 1 eilutė:
'''Modula''' - tokia [[programavimo kalba]], tiksliau gi netgi kelios skirtingos modulos, nes pradžioje buvo pirma, paskui antra, o dar paskui - netgi ir trečia. Visos šitos tebuvo išties bandymas pagerinti [[Pascal]] taip, kad šis tiktų profesionaliems programuotojams, o ne tik teoretizavimams ir vaikų mokinimui.
'''Modula''' - tokia [[programavimo kalba]], tiksliau gi netgi kelios skirtingos modulos, nes pradžioje buvo pirma, paskui antra, o dar paskui - netgi ir trečia. Visos šitos tebuvo išties bandymas pagerinti [[Pascal]] taip, kad šis tiktų profesionaliems programuotojams, o ne tik teoretizavimams ir vaikų mokinimui.


Pati pirma Modula kalba iš esmės nuo Pascal tesiskyrė tiktai tuo, kad turėjo modulius - todėl ir buvo pavadinta Modula. Faktiškai daugiau skirtumų nelabai ir buvo. Galima čia netgi sakyti, kad vėlesnės Pascal realizacijos, kaip kad [[Borland]] gamintas Turbo Pascal, išties visus tuos dalykus, kurie buvo toje Modula kalboje, irgi realizavo, nes skirtumai buvo greičiau formalūs, nei realūs.
Pati pirma Modula kalba iš esmės nuo Pascal tesiskyrė tiktai tuo, kad turėjo modulius - todėl ir buvo pavadinta Modula. Faktiškai daugiau skirtumų nelabai ir buvo. Galima čia netgi sakyti, kad vėlesnės Pascal realizacijos, kaip kad [[Borland]] gamintas [[Turbo Pascal]], išties visus tuos dalykus, kurie buvo toje Modula kalboje, irgi realizavo, nes skirtumai buvo greičiau formalūs, nei realūs.


Modula-2 tuo tarpu jau buvo rimtesnis bandymas peržiūrėti Pascal problemas ir jas kažkaip išspręsti, nes spręsti buvo ką. Ale gavosi taip, kad kol tas [[Niklaus Wirth]] pabaigė kurti tą savo antrą Modulą, tai jau visur buvo Turbo Pascal, o paskui net ir [[Objective Pascal]] pasirodė, taigi, niekam pasidarė neįdomu ir projektas numirė, nors ir turėjo geras priemones ir didelių programinių projektų valdymui, ir objektinį programavimą ir taip toliau.
Modula-2 tuo tarpu jau buvo rimtesnis bandymas peržiūrėti Pascal problemas ir jas kažkaip išspręsti, nes spręsti buvo ką. Ale gavosi taip, kad kol tas [[Niklaus Wirth]] pabaigė kurti tą savo antrą Modulą, tai jau visur buvo [[Turbo Pascal]], o paskui net ir [[Objective Pascal]] pasirodė, taigi, niekam pasidarė neįdomu ir projektas numirė, nors ir turėjo geras priemones ir didelių programinių projektų valdymui, ir objektinį programavimą ir taip toliau.


Paskui dar buvo bandymų kurti kažką dar geresnio, tai gavosi dar visokių ten Modula-3 ir panašių dalykų, bet jie irgi buvo užmiršti.
Paskui dar buvo bandymų kurti kažką dar geresnio, tai gavosi dar visokių ten Modula-3 ir panašių dalykų, bet jie irgi buvo užmiršti.
14 eilutė: 14 eilutė:


=== Paprastas Hello World su moduliais ===
=== Paprastas Hello World su moduliais ===
<code>
<pre>
  MODULE Hello;
  MODULE Hello;
  FROM STextIO IMPORT WriteString;
  FROM STextIO IMPORT WriteString;
20 eilutė: 20 eilutė:
   WriteString("Hello World!");
   WriteString("Hello World!");
  END Hello.
  END Hello.
</code>
</pre>




=== Objektinis Hello World ===
=== Objektinis Hello World ===
<code>
<pre>
  MODULE HelloWorld EXPORTS Main;  
  MODULE HelloWorld EXPORTS Main;  
   IMPORT IO;
   IMPORT IO;
30 eilutė: 30 eilutė:
     IO.Put("Hello World\n")
     IO.Put("Hello World\n")
   END Main.
   END Main.
</code>
</pre>




[[Category:Programavimo kalbos]]
[[Category:Programavimo kalbos]]

Dabartinė 21:34, 16 vasario 2025 versija

Modula - tokia programavimo kalba, tiksliau gi netgi kelios skirtingos modulos, nes pradžioje buvo pirma, paskui antra, o dar paskui - netgi ir trečia. Visos šitos tebuvo išties bandymas pagerinti Pascal taip, kad šis tiktų profesionaliems programuotojams, o ne tik teoretizavimams ir vaikų mokinimui.

Pati pirma Modula kalba iš esmės nuo Pascal tesiskyrė tiktai tuo, kad turėjo modulius - todėl ir buvo pavadinta Modula. Faktiškai daugiau skirtumų nelabai ir buvo. Galima čia netgi sakyti, kad vėlesnės Pascal realizacijos, kaip kad Borland gamintas Turbo Pascal, išties visus tuos dalykus, kurie buvo toje Modula kalboje, irgi realizavo, nes skirtumai buvo greičiau formalūs, nei realūs.

Modula-2 tuo tarpu jau buvo rimtesnis bandymas peržiūrėti Pascal problemas ir jas kažkaip išspręsti, nes spręsti buvo ką. Ale gavosi taip, kad kol tas Niklaus Wirth pabaigė kurti tą savo antrą Modulą, tai jau visur buvo Turbo Pascal, o paskui net ir Objective Pascal pasirodė, taigi, niekam pasidarė neįdomu ir projektas numirė, nors ir turėjo geras priemones ir didelių programinių projektų valdymui, ir objektinį programavimą ir taip toliau.

Paskui dar buvo bandymų kurti kažką dar geresnio, tai gavosi dar visokių ten Modula-3 ir panašių dalykų, bet jie irgi buvo užmiršti.

Anais senais laikais, kai amerikonai metė nenormaliai milžiniškus pinigus į Ada kalbą, norėdami iš jos padaryti kažką labai gero, vis buvo kalbama, kad jie durniai, nes Modula daro viską tą patį, tiek pat gerai ir gražiai, tačiau yra daug kartų greitesnė, natūralesnė, paprastesnė ir visais atžvilgiais geresnė. Ale baigėsi gi taip, kad nei Ada, nei Modula neišplito.


Hello World su Modula

Čia pateiksim du variantus, nors abudu jie vienodai geri, nes išties tai skirtumai ne tokie jau dideli buvo. Pirmasis variantas būdingesnis Modula-1 ir Modula-2. Antrasis variantas - Modula-3 ir Modula-2. Galim pamatyti, kad su tais moduliais ir panašiai, viskas gaunasi labai gražiai ir objektiškai, tik be jokių tenai nesąmoningų rodyklių, kurių tokiems veiksmams išties ir nereikia, tad kalba daug saugesnė ir švaresnė, negu dauguma kitų.

Paprastas Hello World su moduliais

 MODULE Hello;
 FROM STextIO IMPORT WriteString;
 BEGIN
   WriteString("Hello World!");
 END Hello.


Objektinis Hello World

 MODULE HelloWorld EXPORTS Main; 
  IMPORT IO;
  BEGIN
    IO.Put("Hello World\n")
  END Main.