-
1. Data: 2014-12-29 18:49:29
Temat: Programowanie piśmienne
Od: Borneq <b...@a...hidden.pl>
Inaczej literate programming, styl programowania polegający na tym że
kod źródłowy ma być czytelny dla człowieka a nie tylko wykonywany przez
maszynę. W jakim języku programowania programy są najczytelniejsze?
Knuth stworzył Web generujący kod Pascala i dokumentację Tex
Strona na ten temat to http://www.literateprogramming.com/ gdzie jest
m.in. CWEB generujący kod C.
-
2. Data: 2014-12-29 18:58:32
Temat: Re: Programowanie piśmienne
Od: bartekltg <b...@g...com>
On 29.12.2014 18:49, Borneq wrote:
> Inaczej literate programming, styl programowania polegający na tym że
> kod źródłowy ma być czytelny dla człowieka a nie tylko wykonywany przez
> maszynę. W jakim języku programowania programy są najczytelniejsze?
Niektórzy potrafią pisać w COBOLu w każdym języku.
Programista zawsze może napisać kod nieczytelnie.
pzdr
bartekltg
-
3. Data: 2014-12-29 19:11:29
Temat: Re: Programowanie piśmienne
Od: Borneq <b...@a...hidden.pl>
W dniu 2014-12-29 o 18:58, bartekltg pisze:
>> maszynę. W jakim języku programowania programy są najczytelniejsze?
>
> Niektórzy potrafią pisać w COBOLu w każdym języku.
> Programista zawsze może napisać kod nieczytelnie.
Ale na jednym końcu są asemblery kodu maszynowego (jest jeszcze hex;-),
potem assemblery bajtkodu jak Javy i Net, a po drugiej stronie pseudokod
do opisu algorytmów. W takim pseudokodzie pisze się o łączeniu zbiorów,
a konkretna implementacja może wyglądać różnie.
Są np. języki o dynamicznym typowaniu, tu skupiamy się na wykonywaniu
programu, ale z drugiej strony, czytając taki kod trudniej rozpoznać co
jakaś zmienna znaczy niż w językach Pascal,C,C++,Java,C#
-
4. Data: 2014-12-29 19:19:36
Temat: Re: Programowanie piśmienne
Od: g...@g...com
W dniu poniedziałek, 29 grudnia 2014 18:58:33 UTC+1 użytkownik bartekltg napisał:
> On 29.12.2014 18:49, Borneq wrote:
> > Inaczej literate programming, styl programowania polegający na tym że
> > kod źródłowy ma być czytelny dla człowieka a nie tylko wykonywany przez
> > maszynę. W jakim języku programowania programy są najczytelniejsze?
>
> Niektórzy potrafią pisać w COBOLu w każdym języku.
> Programista zawsze może napisać kod nieczytelnie.
Z drugiej strony, istnieją języki, w których napisanie czytelnego
programu jest w zasadzie niemożliwe (takie jak brainfuck, unlambda
czy shakespeare).
Również wokół języków funkcjonują pewne kultury, które w różnym
stopniu przywiązują wagę do czytelności programów. Na przykład
perl jest językiem, który w samym swoim projekcie przemyca założenie,
że można używać tajemniczych sekwencji, których znaczenie jest
znane tylko dla wtajemniczonych.
Jeżeli idzie o języki, których kultury w dużym stopniu wspierają
piśmienność (czyli ideę, że kod ma nie tylko być wykonywany, ale
przede wszystkim czytany), to należą do nich Python (określany
niekiedy mianem "wykonywalnego pseudokodu"), Haskell oraz Scheme,
a także -- w pewnym stopniu -- Forth ("czytelny asembler")
Ciekawym językiem, który być może nie stanowi przykładu na "literate
programming", ale powstał z myślą o "literature programming", jest
Inform 7
-
5. Data: 2014-12-29 19:42:40
Temat: Re: Programowanie piśmienne
Od: bartekltg <b...@g...com>
On 29.12.2014 19:11, Borneq wrote:
> W dniu 2014-12-29 o 18:58, bartekltg pisze:
>>> maszynę. W jakim języku programowania programy są najczytelniejsze?
>>
>> Niektórzy potrafią pisać w COBOLu w każdym języku.
>> Programista zawsze może napisać kod nieczytelnie.
>
> Ale na jednym końcu są asemblery kodu maszynowego (jest jeszcze hex;-),
> potem assemblery bajtkodu jak Javy i Net, a po drugiej stronie pseudokod
> do opisu algorytmów. W takim pseudokodzie pisze się o łączeniu zbiorów,
> a konkretna implementacja może wyglądać różnie.
Pseudokod jest czytelniejszy niż kod języka wysokiego poziomu,
bo pomija szczegóły.
"Łączenie" zbiorów to masz (mozęsz mieć) jako pojedynczą
operację w każdym przyzwoitym języku programowania.
> Są np. języki o dynamicznym typowaniu, tu skupiamy się na wykonywaniu
> programu, ale z drugiej strony, czytając taki kod trudniej rozpoznać co
> jakaś zmienna znaczy niż w językach Pascal,C,C++,Java,C#
Statyczne typowanie nie ma nic wspolnego z ręcznym wskazywaniem
co ma być jakiego typu. C++ można na to nie zwracać uwagi,
nie tak dawno powstałą Julia, też statycznie typowany,
linijek typu.
var bla:integer;
nie ma ;-) a jak sam zauwazyłęś, mozę to zarówno zwiększać
jak i zmniejszać czytelność.
Nadal podtrzymuje swoje. W każdym jezyku można pisać brzydko.
W paskalu trudniej, bo mocno ogranicza programistę, w c++
łatwiej, bo ma miliona paradygmatów*) i pozwala na bardzo wiele,
ale nadal da się przy niewielkim wysiłku pisać czytelnie,
a nawet w języku jak perl, gdzie "Obfuscated Perl Contest"
traktowane jest jak pleonazm, da się pisać komunikatywnie.
Podobno;-)
pzdr
bartekltg
-
6. Data: 2014-12-29 19:47:26
Temat: Re: Programowanie piśmienne
Od: bartekltg <b...@g...com>
On 29.12.2014 19:42, bartekltg wrote:
> łatwiej, bo ma miliona paradygmatów*) i pozwala na bardzo wiele,
Za szybko wysłałem.
*)
https://www.youtube.com/watch?v=ltCgzYcpFUI
Uwaga, godzina gadającej głowy, więc do kotleta czy w tło.
"Dlaczego c++ nie zatonęło".
pzdr
bartekltg
-
7. Data: 2014-12-29 20:06:11
Temat: Re: Programowanie piśmienne
Od: Borneq <b...@a...hidden.pl>
W dniu 2014-12-29 o 19:19, g...@g...com pisze:
> Ciekawym językiem, który być może nie stanowi przykładu na "literate
> programming", ale powstał z myślą o "literature programming", jest
> Inform 7
Wygląda jak normalny tekst angielski, nie wiem jak można to
przetłumaczyć na Inform6
-
8. Data: 2014-12-30 21:15:06
Temat: Re: Programowanie piśmienne
Od: A.L. <a...@a...com>
On Mon, 29 Dec 2014 10:19:36 -0800 (PST), g...@g...com
wrote:
>Jeżeli idzie o języki, których kultury w dużym stopniu wspierają
>piśmienność (czyli ideę, że kod ma nie tylko być wykonywany, ale
>przede wszystkim czytany), to należą do nich Python (określany
>niekiedy mianem "wykonywalnego pseudokodu"), Haskell oraz Scheme,
>a także -- w pewnym stopniu -- Forth ("czytelny asembler")
Rozumiem ze to miala byc ironia?...
A.L.
-
9. Data: 2014-12-30 22:26:25
Temat: Re: Programowanie piśmienne
Od: g...@g...com
W dniu wtorek, 30 grudnia 2014 21:15:08 UTC+1 użytkownik A. L. napisał:
> >Jeżeli idzie o języki, których kultury w dużym stopniu wspierają
> >piśmienność (czyli ideę, że kod ma nie tylko być wykonywany, ale
> >przede wszystkim czytany), to należą do nich Python (określany
> >niekiedy mianem "wykonywalnego pseudokodu"), Haskell oraz Scheme,
> >a także -- w pewnym stopniu -- Forth ("czytelny asembler")
>
>
> Rozumiem ze to miala byc ironia?...
Tak
-
10. Data: 2014-12-31 18:35:09
Temat: Re: Programowanie piśmienne
Od: slawek <f...@f...com>
On Mon, 29 Dec 2014 18:58:32 +0100, bartekltg <b...@g...com>
wrote:
> Niektórzy potrafią pisać w COBOLu w każdym języku.
Tak. Ciekawe że nie działa to na odwrót.