istycznym.
Pascalu:
if ((a=b) and (b
istycznym.
Pascalu:
if ((a=b) and (b
Manifesto tworcy C
A.L.
W dniu poniedziałek, 27 stycznia 2014 00:50:29 UTC+1 użytkownik A. L. napisał:
Ależ nie chodzi o historyczny śmietnik. Jak chcesz coś uzasadnić/podyskutować, proszę bardzo!! Jeżeli uważasz, że nie umię "C", i jest to Twoim Koronnym argumentem, to wręcz powiem tak: Umię cośtam nabazgrać w C. A teraz, brakło Ci Kolego ARGUMENTÓW.. Trzasłeś "Naucz sie porzadnie C"
A po kiego diabła mam się tych krzaków uczyć?! No weż mi to Chłopie wyjaśnij. Szybszy kod wynikowy będę miał czy co ??
snipped-for-privacy@gmail.com snipped-for-privacy@gmail.com napisa³(a):
Kwestia gustu i obycia.
Albo podajesz przyk³ad albo nie...
Nawet przyk³adu nie poda³e¶, wiêc o co chodzi? Które operatory s± nielogiczne? Tak chwalisz pascalowe operatory, a nie maj± one np. gwarantowanej kolejno¶ci wykonywania.
A.L. poda³ Ci bardzo dobry link. Zobacz sobie np. punkt 3. Nie chodzi o to, ¿e siê nie da, tylko ¿e trzeba rozwi±zywaæ problemy nieznane w C (i nie tylko w C).
Twoja subiektywna opinia.
A co to ma do pluskw? Poza tym jak ju¿ siê czepiasz C, to mo¿e wysil siê trochê i okre¶l wersjê standardu. S± takie wersje C, w których deklaracja musi byæ na pocz±tku funkcji i nie mo¿na deklarowaæ byle gdzie.
Mia³e¶ ma³o do czynienia, to wydaje Ci siê nieczytelny. Je¶li kto¶ zna sk³adniê pêtli for w C, to zapis for(;;) nie bêdzie dla niego nieczytelny (bo o to pewnie chodzi³o, a nie 3 ¶redniki i 2 przecinki).
Odpowiadaj±c ogólnie na Twoje pytania. Pascal przegra³ z C m.in. przez t± swoj± rozwlek³o¶æ, która wed³ug Ciebie jest czytelna. Nie, te beginy i endy nie s± czytelne, tak samo jakie¶ array of co¶tam. Kod ma byæ zwiêz³y, nie ma udawaæ jêzyka mówionego. Kolejna wa¿na rzecz, to obiektowo¶æ. Pascalowi jako¶ nie wysz³o, nie wspiera obiektowo¶ci tak jak by mo¿na tego oczekiwaæ od nowoczesnego jêzyka programowania. Dalej - Pascal zosta³ porzucony przez Borlanda. Turbo Pascal wyszed³ tylko na DOS/Windows, nie otwarto jego ¼róde³. Delphi jakie¶ super nie by³o, wersja na Linuksa ponios³a pora¿kê. UNIX napisano w C, Apple przesz³o na C i potem Objective-C. Windows napisany jest w C i C++. Jako¶ twórcom systemów operacyjnych Pascal siê nie spodoba³. Z reszt± czy Pascal nie zosta³ stworzony do celów edukacyjnych? W szko³ach królowa³, wiêc chyba spe³ni³ oczekiwania?
Chcia³bym te¿ zauwa¿yæ, ¿e pomyli³e¶ grupy. Twój post nie ma nic wspólnego z tematem tej grupy mimo, ¿e tytu³ posta to sugeruje. Takie pytania pisz na pl.comp.programming. Poza tym s±dz±c po emocjonalnym tonie Twojej wypowiedzi oraz braku konkretnych przyk³adów, podejrzewam, ¿e chcia³e¶ siê chyba po prostu wy¿aliæ, wiêc mo¿e lepsza by³aby grupa pl.pregierz. Zgadzam siê z A.L. Przestañ sobie zawracaæ g³owê Pascalem, bo do niczego to nie prowadzi. uC programuje siê teraz g³ównie w C, zaakceptuj to. To, ¿e dostrzegasz jakie¶ zalety Pascala nie ma obecnie znaczenia. Spory o to czy Pascal jest lepszy od C mia³y swoje miejsce w ubieg³ym wieku, teraz ju¿ na ten temat za pó¼no.
Nie podniecaj sie. Pzreczytales ten artykul?
A.L.
P.S> Poza tym, naucz sie jak wysylac posty na usenet tak aby byly czytelne
W dniu 2014-01-27 01:14, snipped-for-privacy@gmail.com pisze:
Szybciej, ewentualnie łatwiej będzie ci napisać w c, bo masz do dyspozycji efekty pracy dużej ilości ludzi tworzących systemy RTOS, sterowniki urządzeń. A w pascalu podejrzewam że więcej trzeba rzeźbić samemu. A co do szybkości, to chyba oprócz twoich umiejętności ma na nią wpływ też jakość kodu dołączanego w postaci bibliotek no i sam kompilator.
snipped-for-privacy@gmail.com snipped-for-privacy@gmail.com napisa³(a):
Stachu, sam argumentów nie poda³e¶, wiêc nie krzycz teraz o nich. Jeszcze raz odsy³am do linka podanego przez A.L. Zobacz sobie jak pan Kernighan porównuje jêzyki. Nie musisz siê z nim zgadzaæ, ale jego tekst pokazuje w jaki sposób mo¿na argumentowaæ swoje racje w sporze o wy¿szo¶æ jêzyków. I ¿eby porównaæ dobrze jêzyki, trzeba je dobrze znaæ. Ty ich nie znasz dobrze. Nie poda³e¶ argumentów. Udowodni³e¶ tylko, ¿e potrafisz obs³ugiwaæ klawisz Shift i za jego pomoc± krzyczeæ o burdelach i nêdzy. Wiêc tak, naucz siê obu jêzyków, bo inaczej dyskusja z Tob± nie ma sensu. Wykrzykujesz o nielogicznych operatorach, a nawet jednego operatora C nie poda³e¶.
Bo ¶wiat poszed³ w tê stronê. Równie dobrze mo¿esz marudziæ czemu nie programuje siê w BASICu (tak, jest BASCOM, ale to nisza), przecie¿ ma te Twoje ukochane beginy i endy. Z ró¿nych wzglêdów wygra³o C.
Ale kod wynikowy z czego? Jakiego¶ niszowego, zakurzonego kompilatora Pascala, o którym nikt nie pamiêta? OK, mo¿e sobie byæ szybszy albo równie szybki. I co z tego? Wybiera siê C, bo do tego jest mnóstwo narzêdzi, bibliotek, przyk³adów, ksi±¿ek, stron itd.
A jak juz koniecznie chce miec program w C pascalopodobny, to moze sobie zdefiniowac makra w C ktore spowoduja ze C bedzi "jak Pascal". No prawie...
Niech wygugjuje taki papier
A Simple Technique for Converting from a Pascal Shop to a C. Shop. Wilf R. LaLonde, and John R. Pugh. Softw., Pract. Exper. 13(9):771-775 (1983)
A.L.
W dniu 2014-01-27 00:36, snipped-for-privacy@gmail.com pisze:
Zamień begin na "{" a end na "}"
for (i=0; i < 100; ++i) { cośtam; }
Taka różnica, że nie da się zrozumieć?
Dnia Sun, 26 Jan 2014 15:36:17 -0800 (PST), snipped-for-privacy@gmail.com
A takich kilku. Zeby napisac Multicsa(Unixa) :-)
Trudno powiedziec czy "jak w Pascalu", czy "w Pascalu to podobnie jak w C", czy "w Pascalu to identycznie jak w Algolu, a w C analogicznie",
Pretensje do siebie, trzeba pisac czytelnie :-)
if ((a==b) && (b<c)) then { ... Cośtam_Cośtam; }
Kiepski przyklad.
A jak czytelnie wyglada np obsluga ambitniejszych struktur wskaznikowych - taka powiedzmy dwukierunkowa lista list :-)
Po pierwsze - zalezy ktory Pascal. Nie kazdy ma wszystkie typy, obsluge sprzetu, przerwan. Biblioteki moga byc ograniczone. Unii nie ma, typow bitowych nie ma. Procedur ze zmienna lista parametrow nie ma.
Ale masz racje - podobne. Np instrukcji "rotate" nie ma w obu. Borland duzo zrobil w doprowadzeniu do wspolnych mozliwosci.
Wcale nie byle gdzie. Znow podobnie jak w Pascalu.
Ale dobre kompilatory sa od dawna :-)
O, w C to mozesz znacznie bardziej nieczytelnie napisac. W Pascalu zreszta tez :-)
J.
am
Jeszcze
kazuje w
znasz dobrze.
a-=b;
o : a
czemu nie
te
Begin/End vs. {/} jest mimo wszystko bardziej czytelny.
i,
k C.
for(;;;) - Wacek wie o co w tym chodzi
Opanuj sie. Zaczynasz trollowac.
Chesz probramowac w Pascalu, to programuj w Pascalu i nei obwieszczaj swiatu ze C dla ciebei za trudny
A.L.
W dniu 2014-01-27 03:06, snipped-for-privacy@gmail.com pisze:
Ale po co? Wróć do tego co napisano wcześniej: "Pascal znanazl sie dawno na smietniku historii." Rynek wybrał i nie ma znaczenia, że niektórzy uważają, iż pokonany jest ładniejszy. Chcesz się zamknąć w getcie to twoja sprawa ale nie dorabiaj do tego ideologii. ATSD to znałem trochę Fortran i Algol gdy do nauki programowania na uczelniach zaczął się wdzierać przebojem Pascal. Nie bardzo wiedziałem po co wprowadzać język który ma głownie zadanie edukacyjne a nie użytkowe. Później studenci kończyli studia i upierali się żeby w tym tworzyć poważne aplikacje. To tak jakby upierać się, że poważny soft powinno się pisać w LOGO czy Scratch, bo przecież młodzież w tych językach uczy się programować. Jakoś nigdy się do Pascala nie przekonałem a z c jakoś dałem radę.
W dniu 27.01.2014 00:36, snipped-for-privacy@gmail.com pisze:
Programuj w czym wolisz. Pascal powstał jako język do nauki programowania więc dlatego jest tak czytelny i ściśle kontroluje wszelkie deklaracje i nawet ich kolejność. Bardzo często jest też wykorzystywany do zapisu algorytmów. Wszystko ma swoje wady i zalety, trzeba samemu wybierać. Problem może być jesli bedziesz potrzebował większej wydajnosci, jakoś te kompilatory Pascala które spotkałem nie tworzą wydajnego kodu.
W dniu 27.01.2014 03:06, snipped-for-privacy@gmail.com pisze:
To samo co while(1) {...} lub pascalowe while(true) begin...end
jest dla mnie czytelny od pierwszego rzutu okiem.
Pozdrawiam Grzegorz
On 2014-01-27 01:28, Grzegorz Niemirowski wrote: [...]
Kol. stchebel na co dzień, zdaje się, rzeźbi w VHDL-u, który to język zapożyczył składnię z Pascala (za pośrednictwem Ady). Stąd jego miłość do składni Pascala. :-D I ja, szczerze mówiąc, zgadzam się z nim, chociaż nigdy w życiu na poważnie (tzn. w robocie) nie używałem Pascala, Ady czy też VHDL-a.
On 2014-01-27 03:06, snipped-for-privacy@gmail.com wrote: [...]
W duzej mierze jest to jest kwestia gustu i dyskusja o wyzszasci swiat jednych nad drugimi.
Bo zapisz jest krotszy. Wez mi chlopie wyjasnij po cholere mam pisac begin i end kiedy moge to zalatwic 2 znakami.
Pozdrawiam
Marek
W dniu 2014-01-27 00:36, snipped-for-privacy@gmail.com pisze:
Żeby wilk był syty i owca cała wymyślono #define. Co Ci szkodzi zrobić coś np. takiego: #define bit_is_set(sfr, bit) (_SFR_BYTE(sfr) & _BV(bit)) #define bit_is_clear(sfr, bit) (!(_SFR_BYTE(sfr) & _BV(bit))) #define loop_until_bit_is_set(sfr, bit) do { } while (bit_is_clear(sfr, bit)) #define loop_until_bit_is_clear(sfr, bit) do { } while (bit_is_set(sfr, bit)) begin i end też można zdefiniować.
W dniu 2014-01-27 08:25, JDX pisze:
Jeśli już, to w C a=a-b; albo a:=a-b; w Pascalu ...
Have something to add? Share your thoughts — no account required.
Ask the community — no account required