-
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
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
- I3C
- Pytanie o transformator do dzwonka
- międzymordzie USB 3.2 jako 2.0
- elektronicy powinni pomysleć o karierze elektryka
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=