Article View: pl.comp.programming
Article #216703Re: Czemu Python jest jaki jest?
From: godek.maciek
Date: Fri, 03 Jan 2020 20:27
Date: Fri, 03 Jan 2020 20:27
126 lines
7907 bytes
7907 bytes
W dniu piątek, 3 stycznia 2020 20:48:15 UTC+1 użytkownik J-23 napisał: > > A do których języków nie potrzeba środowiska uruchomieniowego? > Chyba inaczej rozumiemy środowiska uruchomieniowe. Ja rozumiem dosłownie. Jako kontekst, w którym program jest wykonywany, oraz zasoby, które ma do dyspozycji w momencie działania. > Nie będę się tu rozpisywał bo to raczej większość piszących powinna > wiedzieć jak działają takie środowiska w językach typu .NET, Java i o > takie środowiska mi chodzi. Teraz czym się różni interpreter Pythona? I > tutaj zaczynają się schody :) jest to do wytłumaczenia ale jest to dość > zawiłe. I nie ma najmniejszego znaczenia. > > 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) > > Jeżeli bierzesz sam kod pod uwagę "bez próby jego wykonania" To owszem > masz 100% racji i nawet wtedy pokuszę się o powiedzenie ze 100% kodu - > niezależnie w jakim języku jest napisane będzie niczym więcej jak tylko > "skryptem" Nie. To też nie. Kod źródłowy UNIXa możesz studiować z dala od jakiegokolwiek komputera. I on nie jest skryptem, tylko złożonym systemem. > Ale jeżeli o tym rozmawiamy to nie ma sensu też wtrącać różnic między > językami typu szybkość wykonania czy wydajność pod względem np użycia > ilości pamięci No bo nie ma sensu. Ma sens mówić o różnicach w wydajności pomiędzy implementacjami różnych języków. Kiedy mówi się, że C jest szybsze od Pythona, ma się na myśli, że powszechnie dostępne implementacje C są szybsze od powszechnie dostępnych implementacji Pythona. > > 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). > Mylisz trochę pojęcia tzn. masz racje ale mylisz skrypt który wykonuje > pewne zadania np w systemie jak np. cron który ma za zadanie > w "uproszczeniu" uruchomić określone programy by wykonać określone zadanie Cron nie jest skryptem. Jest <grzmoty i pioruny> demonem. > > 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ć. > > I znowu mówisz o języku jak o "suchym tekście" który można by zapisać na > kartce papieru i zamknąć w zeszycie. Nie. Mówię właśnie o używaniu języka. > > > > Prototypowe języki skryptowe to języki powłoki (np. bash albo DOSowe batche albo skrypty w PowerShellu). > To prawda ale z jedną uwagą bash czy PowerShell są interpretatorami tego > co zostanie im dostarczone w postaci skryptu i to co napisałeś poniżej > ma sens tylko "połowicznie" Nie rozumiem. (Ale - gwoli ścisłości - interpreterami. Interpretator to osoba.) > > 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. > > > > "Połowicznie" jest to prawda. Bo o ile do napisania "skryptu" nie jest > potrzebna wiedza o implementacji jakiegoś elementu systemu. To nie to > decyduje o "skryptowości" danego języka. > > Tak pokrótce o tym czy dany język jest skryptowy czy nie decyduję kilka > czynników: (skrócę do trzech bardzo ogólnych) > - sposób wykonania kodu Skąd ten pomysł? > - sposób dostarczenia kodu Czyli jak przekazuję kod źrodłowy programu w C, to język C staje się skryptowy? > - wyizolowanego środowiska uruchomieniowego uniezależnionego od > systemu/sprzętu Czyli C# jest skryptowy? > > 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". > > Błędne założenie ale już tu tyle napisałem że chyba da się zauważyć - > wspólną cechy dla języków skryptowych (interpretowanych) - zresztą to > jest do znalezienia w sieci. Wiki nie jest wyrocznią tutaj ale ma to > dość obrazowo przedstawione. > > https://pl.wikipedia.org/wiki/J%C4%99zyk_interpretowany > https://pl.wikipedia.org/wiki/J%C4%99zyk_skryptowy Proszę. Już sam fakt, że istnieją dwa odrębne hasła dla "języków skryptowych" i "języków kompilowanych" świadczy poniekąd o tym, że to nie są synonimy. Zresztą Wikipedia potwierdza to, co napisałem: "Teoretycznie każdy język może być kompilowany i interpretowany, dlatego rozróżnienie to polega na najczęściej stosowanych rozwiązaniach, a nie zależy od cech samego języka" Zupełnie tak jak pisałem wcześniej! "Nie jest cechą języka!" a w drugim artykule: "Języki skryptowe są to najczęściej języki interpretowane" Zwracam uwagę, że "najczęściej" nie oznacza "zawsze" ani "z konieczności". > > 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żą). > > > Dobrze że dodałeś nawias bo aż się chciało napisać co oznacza - tzw. > "języki systemowe" ale już mówisz o zastosowaniu języka a to zupełnie > inna para butów > > 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). > > > Mówisz o sposobie zastosowania nie zmienia to faktu że są to języki > skryptowe Nie. "Skryptowość" nie jest cechą języka, tylko sposobu używania go. To nie one są "skryptowe", tylko my, używając tej nazwy, przemycamy informację o tym, w jaki sposób zazwyczaj z nich korzystamy. Podobnie gdy mówimy np. że jakaś dziewczyna jest piękna, to tak naprawdę nic nie mówimy o tej dziewczynie, tylko o naszych gustach. Albo gdy mówimy, że jakiś czyn jest haniebny, to nie mówimy o tym czynie, tylko o naszym systemie wartości. > > No, a PostScript jest oczywiście stosowy. > > Szczerze powiem:) nie wiem nigdy nie miałem potrzeby tego używać :) Pewnie używałeś nawet o tym nie wiedząc, np. otwierając dokument PDF.
Technical Details
Message-ID:
<66517b9b-d8a5-41fb-b9d0-b289e9dfba64@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!g89no9626016qtd.0!news-out.google.com!w29ni638qtc.0!nntp.google.com!g89no9626010qtd.0!postnews.google.com!google-groups.googlegroups.com!not-for-mailReferences:
<913ee55b-6577-46ef-8ef2-92c748a43610@googlegroups.com> <qukale$3o1$1@news.icm.edu.pl> <5e0e44da$0$525$65785112@news.neostrada.pl> <0d4a791d-c777-4c44-9541-88b51c7b8467@googlegroups.com> <5e0f9a57$0$17364$65785112@news.neostrada.pl>Show Full Headers
Complete Article Headers
X-Received: by 2002:ae9:e907:: with SMTP id x7mr73773830qkf.298.1578083242129; Fri, 03 Jan 2020 12:27:22 -0800 (PST) X-Received: by 2002:ac8:2e6a:: with SMTP id s39mr66572079qta.349.1578083241951; Fri, 03 Jan 2020 12:27:21 -0800 (PST) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!g89no9626016qtd.0!news-out.google.com!w29ni638qtc.0!nntp.google.com!g89no9626010qtd.0!postnews.google.com!google-groups.googlegroups.com!not-for-mail Newsgroups: pl.comp.programming Date: Fri, 3 Jan 2020 12:27:21 -0800 (PST) In-Reply-To: <5e0f9a57$0$17364$65785112@news.neostrada.pl> Complaints-To: groups-abuse@google.com Injection-Info: google-groups.googlegroups.com; posting-host=83.25.229.148; posting-account=f7iIKQoAAAAkDKpUafc-4IXhmRAzdB5r NNTP-Posting-Host: 83.25.229.148 References: <913ee55b-6577-46ef-8ef2-92c748a43610@googlegroups.com> <qukale$3o1$1@news.icm.edu.pl> <5e0e44da$0$525$65785112@news.neostrada.pl> <0d4a791d-c777-4c44-9541-88b51c7b8467@googlegroups.com> <5e0f9a57$0$17364$65785112@news.neostrada.pl> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <66517b9b-d8a5-41fb-b9d0-b289e9dfba64@googlegroups.com> Subject: Re: Czemu Python jest jaki jest? From: godek.maciek@gmail.com Injection-Date: Fri, 03 Jan 2020 20:27:22 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit