-
Data: 2020-01-02 21:58:33
Temat: Re: Czemu Python jest jaki jest?
Od: g...@g...com szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu czwartek, 2 stycznia 2020 20:30:52 UTC+1 użytkownik J-23 napisał:
> W dniu 02.01.2020 o 09:46, slawek pisze:
> > Jest wiele mitów:
> >
> > 1. "Python to język skryptowy" - mit - podział na języki skryptowe
> > i nie-skryptowe wymagałby zdefiniowania "skryptowości" - jak
> > dotąd nikomu nie udało się tego dobrze zrobić. Czy Lua to język
> > skryptowy? A Basic? Czym różni się semantycznie for z Javy, C++ i
> > AWK? A taki Postscript to jest jaki?!
>
> Skoro tak zadajesz pytanie to kompletnie albo nie wiesz co się dzieje w
> momencie kompilacji albo udajesz że nie wiesz - stawiam na to drugie :)
>
> https://pl.wikipedia.org/wiki/Kompilator
>
> Już prosta definicja z wiki (która jest uproszczona) pokazuje że zadanie
> pytania cytuje: "czym różni się for z javy, C++.." jest to nie właściwe
> pytanie. Bo odpowiedz jest bardzo prosta - sposobem wykonania tej
> instrukcji - efekt pozostaje taki sam w obu przypadkach ale sposób ich
> wykonania jest zupełnie różny. To właśnie dany sposób wykonania
> poszczególnych instrukcji sprawia że te instrukcje w danym języku będą
> wykonane szybciej inne wolniej... bardziej po chłopsku już się tego nie
> da chyba napisać :)
Bo i rozumowanie jest raczej "chłopskie".
> Podział na języki skryptowe i kompilowane jest raczej prosty. Bardziej
> skomplikowane jest rozróżnienie języka skryptowego i języka który działa
> na maszynie wirtualnej - tj Java .NET które są świetne ale potrzeba do
> nich środowiska uruchomieniowego.
A do których języków nie potrzeba środowiska uruchomieniowego?
"Podział" na "języki skryptowe i kompilowane" z logicznego punktu widzenia nie jest
podziałem dychotomicznym.
Kiedyś mówiło się o "językach kompilowanych i interpretowanych".
Ale to, czy dany język jest "kompilowany czy interpretowany", nie jest kwestia samego
języka, tylko narzędzi. (Np. istnieją interpretery języka C)
Określenie "język skryptowy" nie ma związku z tym, jaka jest technika implementacji.
Z definicji jest to "język służący do pisania skryptów"
(albo - bardziej pedantycznie: język, o którym myśli się jako o języku, w którym
pisze się skrypty).
I znów, to, czy język służy, czy nie służy do pisania skryptów, nie jest cechą samego
języka, tylko tego, w jaki sposób ktoś postanowi go użyć.
Prototypowe języki skryptowe to języki powłoki (np. bash albo DOSowe batche albo
skrypty w PowerShellu).
Są one "skryptowe", bo pełnią funkcję "end-user programmingu" - tzn. ich autorzy nie
muszą rozumieć szczegółów implementacji systemów, a wystarczy, że znają zasady
korzystania z tych systemów.
W dalszej kolejności mamy języki takie jak Perl czy AWK, które są uznawane za
skryptowe, bo są podobne do skryptowych.
Ponieważ zakres zastosowań Pythona pokrywa się z zakresem zastosowan Perla, a
niekiedy i języków powłoki, czasem i o nim mówi się, że jest "skryptowy".
Znam ludzi, którzy woleliby do tych samych celów użyć Haskella (który jest "mocno
kompilowany").
Swego rodzaju "opozycją" do języków skryptowych są języki systemowe - czyli takie,
które służą do pisania dużych, skomplikowanych systemów (czy raczej: o których się
myśli, że do tego służą).
Ale to nie jest twardy podział. Języki takie jak PHP czy JavaScript można w tym duchu
nazwać "webowymi", bo się ich używa do opracowywania stron (choć nic nie stoi na
przeszkodzie, by pisać w nich skrypty).
No, a PostScript jest oczywiście stosowy.
Następne wpisy z tego wątku
- 03.01.20 02:02 J-23
- 03.01.20 04:40 M.M.
- 03.01.20 09:15 Roman Tyczka
- 03.01.20 13:04 g...@g...com
- 03.01.20 18:32 g...@g...com
- 03.01.20 20:32 g...@g...com
- 03.01.20 20:47 J-23
- 03.01.20 20:56 J-23
- 03.01.20 21:27 g...@g...com
- 03.01.20 21:39 g...@g...com
- 04.01.20 00:32 J-23
- 04.01.20 00:55 g...@g...com
- 04.01.20 01:23 g...@g...com
- 04.01.20 02:32 J-23
- 04.01.20 09:08 g...@g...com
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-06 Jeździ, skręca, hamuje
- 2025-01-06 Białystok => System Architect (Java background) <=
- 2025-01-06 Gliwice => Specjalista ds. public relations <=
- 2025-01-06 Białystok => Solution Architect (Java background) <=
- 2025-01-06 Zielona GĂłra => Konsultant WdroĹźeniowy Comarch XL/Optima (KsiÄgowoĹ
- 2025-01-06 Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 2025-01-06 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-06 Do IO i innych elektrooszolomow, tu macie prawdziwe smrody
- 2025-01-06 Białystok => Full Stack .Net Engineer <=
- 2025-01-06 Kraków => Business Development Manager - Network and Network Security
- 2025-01-06 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-06 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-06 Lublin => Programista Delphi <=
- 2025-01-06 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-06 śnieg