-
X-Received: by 10.140.109.244 with SMTP id l107mr47959qgf.28.1391017149929; Wed, 29
Jan 2014 09:39:09 -0800 (PST)
X-Received: by 10.140.109.244 with SMTP id l107mr47959qgf.28.1391017149929; Wed, 29
Jan 2014 09:39:09 -0800 (PST)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!goblin3!goblin.stu.neva.ru!news.ripco.com!news.glorb.com!f11no9650781q
ae.1!news-out.google.com!y18ni4304qap.1!nntp.google.com!f11no9650780qae.1!postn
ews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.misc.elektronika
Date: Wed, 29 Jan 2014 09:39:09 -0800 (PST)
In-Reply-To: <52e6e17e$0$2140$65785112@news.neostrada.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=156.17.86.7;
posting-account=xhXTtgoAAACKj4068GUBPvd_O6BzRe_o
NNTP-Posting-Host: 156.17.86.7
References: <b...@g...com>
<3...@g...com>
<52e6e17e$0$2140$65785112@news.neostrada.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <0...@g...com>
Subject: Re: Programowanie uC - Pascal, czy C ?
From: h...@m...uni.wroc.pl
Injection-Date: Wed, 29 Jan 2014 17:39:09 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.misc.elektronika:658946
[ ukryj nagłówki ]W dniu poniedziałek, 27 stycznia 2014 17:45:17 UTC-5 użytkownik J.F napisał:
> Użytkownik napisał w wiadomości grup
>
> dyskusyjnych:3a3cc0cf-7519-4efc-b7a1-c307d18b9f33@go
oglegroups.com...
>
> >Pytasz się dlaczego wymyślono C. Proste, był potrzebny język
>
> >z nastepującymi własnościami:
>
> >- ma się dać kompilować głupim kompiltorem (pierwsza maszyna na
> >której
> > chodziło C mała w porównaniu z innymi uwczesnymi maszynami)
>
> No, C i Pascal to mniej wiecej te same lata, a tych kombinacji w C
> tyle, ze kompilator Pascala chyba znacznie prostszy.
>
C i Pascal to duze uproszczenie w porównaniu z wcześnieszymi
PL/I czy Algolem 68. Ale nawet Pascal Wirtha zawiera parę
"ciekawych" konstrukcji:
- zwracanie wartosci przez przypizanie do nazwy funkcji (trzeba
rozróżniać zwracanie wwartości od wywołania rekursywnego)
- parametry przekazywane przez wartość i przez zmienną,
trzeba je rozróżniać, a przekazywanie przez zmienną wymaga
w praktyce żeby kompilator w środu miał operator adresu
- rekordy z wariantami, mają część stałą i zmienną, przy tym
pozwalają na dowolne zagnieżdżanie (co daje podobny efekt
jak anonimowe unie wprowadzone w latach 90 do niektórych
kompilatorów C)
- rekordy spakowane, użyteczność podobna do pół bitowych, ale
można napisać całą masę bezużytecznych deklaracji które
kompilator ma poprawnie obsłużyć.
- funkcje lokalne (mają dostęp do zmiennych otaczającej je
funkcji)
- skoki nielokalne (trzeba zwinąć stos wywołań)
- tablice konforemne, mają specjalną regułę przekazywania
jako parameter i wymagają wsparcia dla tablic zmiennej
wielkości
Wiele implementacji Pascala pomijało ważne własności
ale pełna implementacja byłaby bar
>
> >- ma pozwalać na zwięzły i czytelny zapis programu
>
>
>
> Juz chyba nie bylo co oszczedzac pojedynczych znakow, a i tak
> najwiecej sie na wciecia tracilo :-)
> Brak instrukcji "with" w C troche utrudnia zwiezlosc.
Nietrywialne użycia "with" zastępuje operator adresu i wskaźniki.
Tak źe w sumie zysk dla Pascala raczej niewielki. Ja pisałem
sporo w Pascalu, a nie pamiętam czy kiedyś uzyłem "with".
>
>
>
> >- pozwalać na otrzymanie w miarę wydajnego kodu wynikowego
>
> Tego i Pascal nie wyklucza, no moze z wyjatkiem sprawdzania zakresow
> tablic.
>
Pascal pozwala na wydajny kod jak masz optymalizator. Ale bez
optymalizatora kod wynikowy będzie gorszy niż z C,
Następne wpisy z tego wątku
- 29.01.14 21:14 h...@m...uni.wroc.pl
- 29.01.14 21:40 Luke
- 29.01.14 23:08 J.F.
- 29.01.14 23:38 Jarosław Sokołowski
- 30.01.14 01:07 A.L.
- 30.01.14 07:13 bartekltg
- 30.01.14 14:11 Cezary Grądys
- 30.01.14 14:45 Jarosław Sokołowski
- 31.01.14 02:02 A.L.
- 31.01.14 09:37 J.F.
- 31.01.14 23:18 s...@g...com
- 31.01.14 23:40 s...@g...com
- 01.02.14 00:01 s...@g...com
- 01.02.14 00:43 s...@g...com
- 01.02.14 01:22 butek
Najnowsze wątki z tej grupy
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
- Dziwny schemat wzmacniacza m.cz.
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- CGNAT i ewentualne problemy
- wzmacniacz mocy
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- Propagation velocity v/c dla kabli RF
- Jakie natynkowe podwójne gniazdo z bolcem (2P+PE)
- Czujnik nacisku
- Protoków komunikacyjny do urządzenia pomiarowego
Najnowsze wątki
- 2025-06-19 Gdynia => Sales Executive / KAM <=
- 2025-06-19 Warszawa => IT Business Analyst (projects in the telco sector) <=
- 2025-06-19 Lublin => Programista Delphi <=
- 2025-06-19 Warszawa => Scrum Master <=
- 2025-06-19 Warszawa => Solution Architect <=
- 2025-06-19 Warszawa => Software Solution Architect <=
- 2025-06-19 Zakrzewo => Konsultant SAP HCM <=
- 2025-06-19 Zakrzewo => SAP HCM Consultant <=
- 2025-06-19 Poznań => SAP HCR Consultant <=
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-19 6,756,000 car crashes in the United States in 2019 with 36,096 fatalities.
- 2025-06-18 Poseł KO mecenas Giertych został pouczony o obowiązującym prawie [z SN]
- 2025-06-18 112
- 2025-06-18 Poznań => MLOps Engineer <=
- 2025-06-18 Gdańsk => Mainframe (z/OS, Assembler) Developer <=