-
Data: 2012-01-09 16:46:51
Temat: Re: Mikropascal na AVR'y - co o tym sądzicie ??
Od: Waldemar Krzok <w...@z...fu-berlin.de> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Am 09.01.2012 16:01, schrieb JDX:
> On 2012-01-08 23:24, Sebastian Biały wrote:
> [.....]
>> *Nikt* poza szumem nie pisze w Pascalu nowych projektów. Delphi się
>> jeszcze kreci bo są miliony lini kodu które trzeba utrzymać. Jednak
>> środowisko programistów wymiera lub po cichu uczy się C#/Java doskonale
>> sobie zdając sprawę że to trup. Pascal@uC to prędzej efekt 5 wieczorów
>> nudzenia się. Ktoś chetny na projekt bez celu?
> Ale to nie znaczy, że C tudzież C++ jest takie świetne a Pascal jest do
> bani. Jeśli mówimy o programowaniu uC to w C da się "szybo pi..ąć
> szybkiego pacza" i to jest IMO główny powód dla którego C jest popularne
> wśród ludzi piszących soft na uC. :-) Co z kolei w połączeniu z brakiem
> doświadczenia i bliską zeru wśród elektroników wiedzą na temat
> prowadzenia projektów software-owych prowadzi do powstawania
> programistycznych koszmarów. C daje dużą swobodę i dlatego IMO nie jest
> to dobry język dla początkujących ponieważ trzeba wiedzieć co się robi.
> Z drugiej strony działającej i powszechnie dostępnej alternatywy
> wymuszającej dobre praktyki (np. Ada) na popularne uC za bardzo nie ma...
>
> Poza tym AFAIR to informatycy (ci zajmujący się dydaktyką) twierdzą, że
> Pascal *nadal* jest niezłym językiem do dydaktyki.
Pascal JEST językiem do dydaktyki. Ma jednak lekką niechęć do
programowania blisko hardware. Konkretnie w Pascalu tak jak bóg (znaczy
Wirth) go stworzył nie ma możliwości adresowania komórek pamięci (ok, da
się poprzez przypisanie stałej do wskaźnika, ale ładnie to nie wygląda),
a do przerwań czy, o zgrozo, multithreadingu wogóle nie ma ładnej
możliwości. Delphi jest pewnym krokiem od dydaktyki do produkcji, ale
ten koń też już zaczyna śmierdzieć.
Co do mikroprocesorów, to C jest kompromisem między assemblerem, a
"porządnym" językiem. Im mniejszy mikrokontroller, tym bardziej mamy
tylko te 2 języki jako alternatywy. A ładnie programować można w
dowolnym języku i na odwrót. Jak mamy większe kostki, to już zaczyna być
wygodniej, aż do składania programów z graficznych "kostek", jak to mają
co poniektóre PLC. Albo LEGO MasterMind (R). Tam sobie układasz klocki
LEGO na ekranie i toto nawet działa ;-).
Osobiście znam trochę tych języków programowania. Programy popełniłem
chyba w 30 językach, większość jednak to dydaktyka na uczelni (też jako
nauczyciel). Poczynając od Fortranu, przez wsie Algole, Prolog, LISP (od
tego miałem rekurencyjne sny ;-)), a nawet jakiś śmieszny programik w
Cobolu na zaliczenie. W tej chwili używam C lub C++ na PCcie, C lub
Assembler na mikroprocesory. No i ostatnio jakiś Arduino ze swoim
"prawie-C", albo procesor graficzny z 3GC, czy jak temu dialektowi. Jak
się umie programować, to język właściwie obojętny. Ale to chyba tak, jak
z językami obcymi: tych 0x10 pierwszych sprawia problemy, następne
wchodzą jak przez masło ;-).
Warto wiedzieć, że im bardziej abstrakcyjny (i wymuszający dobre
praktyki) język, tym trudniej jest optymalizować kod. Pisząc program
zajmujący mało pamięci i szybki musi się myśleć kategoriami procesora.
Trzeba wiedzieć gdzie są tworzone zmienne, unikać konwersji między
różnymi strukturami danych, conieco pozostawić w rejestrze. Przy
przerwaniach ratować tylko te rejestry, na których operujemy i podobne
cuda. Już w C coponiektórzy wywalili się na prostym printf. Program miał
powiedzmy 1k, dodano jedną linijkę z printf i już ma 20k, albo i więcej.
Bo się całą bibliotekę zmiennoprzecinową dolinkowało, choć tego nie trzeba.
Waldek
--
My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.
Następne wpisy z tego wątku
- 09.01.12 16:49 JDX
- 09.01.12 19:48 badworm
- 09.01.12 20:28 Sebastian Biały
- 09.01.12 20:34 Sebastian Biały
- 09.01.12 20:36 Sebastian Biały
- 09.01.12 20:43 Sylwester Łazar
- 09.01.12 20:44 Waldemar Krzok
- 09.01.12 20:45 Waldemar Krzok
- 09.01.12 20:49 Sebastian Biały
- 09.01.12 20:50 Jerry1111
- 09.01.12 20:50 J.F.
- 09.01.12 20:52 J.F.
- 09.01.12 20:53 Sebastian Biały
- 09.01.12 20:57 Grzegorz Krukowski
- 09.01.12 20:59 Grzegorz Krukowski
Najnowsze wątki z tej grupy
- Fejk muzyczny czy nie fejk
- Raspberry Pi 3 Model B+
- Kuchenka elektryczna
- test
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
Najnowsze wątki
- 2025-03-16 Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- 2025-03-16 Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- 2025-03-16 Najlepszy akumulator 12V
- 2025-03-16 Co powinno spotkać "adwokatów dwóch" uczestniczących w przesłuchaniu świadka do którego nie dopuszczono adwokata świadka?
- 2025-03-16 Przednich p-mgielnych nie wolno bez mgły
- 2025-03-16 Co w KANADZIE wolno komercyjnie (na razie się nie czepili?)
- 2025-03-16 silnik-chwilówka
- 2025-03-16 Prokurator Wrzosek "Bezstronna" nie przyczynia się do śmierci (dowodnie) - oświadcza bodnatura [Dwie Kacze Wieże]
- 2025-03-15 kraje nieprzyjazne samochodom
- 2025-03-15 parking Auchan
- 2025-03-15 Art. 19.1 ustawy o ochronie praw autorskich
- 2025-03-15 przegląd za mną
- 2025-03-15 Na co komu okna
- 2025-03-15 Mój elektryk
- 2025-03-15 Fejk muzyczny czy nie fejk