eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › Czemu Python jest jaki jest?
Ilość wypowiedzi w tym wątku: 49

  • 11. Data: 2020-01-02 20:30:32
    Temat: Re: Czemu Python jest jaki jest?
    Od: J-23 <B...@p...fm>

    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ć :)

    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.

    >
    > 2. "Nie ma sensu robić programów z GUI w Pythonie" - mit - bo
    > takie programy jest łatwiej zrobić niż w C++. Choćby w tym sensie
    > że biblioteka Qt wymaga w przypadku C++ gimnastyki z
    > metakompilatorem, a Python tego nie potrzebuje. Osobną sprawą
    > jest kwestia czy każdy program powinien mieć GUI ? - ale
    > odpowiedź na to nie zależy od języka.

    Okienka to tylko przykład. Jakoś nie widać oprogramowania w Pythonie np
    do obrobki Grafiki czy wideo. Znając Pythona wiem że żadne programy
    większego kalibru nie powstały i nie powstaną (No chyba ze coś znasz to
    podziel się linkiem)

    Nie każdy program musi mieć GUI i powiem szczerze czy on jest czy go nie
    ma to i tak pozycji Pythona to nie zmienia - nadal pozostaje językiem w
    którym większość piszę proste skrypty i strony www.

    Ma swoje zalety ale jednak przegrywa z językami kompilowanymi gdy np
    zależy nam na pisaniu coś pod konkretną platformę sprzętową

    >
    > 3. "Python nie kompiluje się" - mit - są kompilatory Pythona.
    > Ponadto podział języków na interpretowane (translatory) i
    > kompilowane (kompilatory) jest dziś głupotą - mamy JIT i podobne
    > techniki.

    Napisz jak to JIT działa wtędy będę wiedział czy wiesz o czym piszesz :)

    Już wspomniałem że języki skryptowe jest ciężko odróżnić od wykonywanych
    na maszynach wirtualnych :)

    Pamiętaj o tym pisząc o JIT :)
    A DLL dla Pythona są w natywnym.

    W natywnym czym?

    W Pythonie z tego co wiem można bez problemu użyć DLL napisanej np w C,
    ale pisać...? Może jest nigdy w te stronę się nie bawiłem ale stawiam na
    to że jeśli jest taka możliwość to czysty Python to nie jest :)

    Pozdrawiam


  • 12. Data: 2020-01-02 20:45:58
    Temat: Re: Czemu Python jest jaki jest?
    Od: J-23 <B...@p...fm>

    W dniu 02.01.2020 o 18:16, slawek pisze:
    > Roman Tyczka <n...@b...no> Wrote in message:
    >> To, że wszystkie te języki mają begin/end nie oznacza, że różni je tylkonazwa.
    >
    > Dlatego jeżeli już ma być begin-end to jednak Ada, a nie Algol czy
    > Pascal.
    >
    >> Mógłbyś te dyskwalifikujące wymienić? Pytam z ciekawości. Istotne braki teżjakieś
    tam znam, choć pewnie inne, bo niekoniecznie np. numerykarozbudowana jest mi
    osobiście potrzebna.
    >
    > Brak dynamicznych tablic. Brak standardu wiązania z bibliotekami.
    > Niemożliwość napisania własnej funkcji przyjmującej argumenty tak
    > jak we wbudowanej write. Nieprzenośne przekazywanie funkcji jako
    > parametru. Liczne, ale niekompatybilne, dialekty. Brak wyjątków.
    > Brak namespaces. Zbyt mocne powiązanie z jednym producentem -
    > vendor lock. Do tego np. błędna implementacja delay przez
    > Borlanda - na szybkich (mniej więcej Pentium 1 @60 MHz) CPU
    > programy po prostu nie działały bo startup code wkładał się z div
    > by 0 na kalibracji delay. Trudności z użyciem dla low-level - w
    > czym zwkłe C jest gorsze tylko od asemblera. Brak templates. Brak
    > makrodefinicji. Brak STL. Brak fork. Brak arytmetyki wskaźników.
    > Brak asm jako słowa kluczowego. Brak możliwości współpracy z
    > Fortranem. Brak krótkiej ewaluacji. Brak refleksji. Brak
    > dekoratorów.
    >
    >

    Strasznie ubogi ten Pascal z tego co piszesz :) Tylko widzisz większość
    rzeczy które tu wymieniłeś sa dostępne.

    Błąd związany z Pentium o którym piszesz nie był domeną tylko Pascala w
    tamtym czasie - mało tego odpowiednie ustawienie flag kompilatora
    eliminowało ten problem.

    Ale ok nie wcinam wam się w wątek - zrobiłem to tylko z powodu błędu na
    procesorach

    Pozdrawiam


  • 13. Data: 2020-01-02 21:51:30
    Temat: Re: Czemu Python jest jaki jest?
    Od: "M.M." <m...@g...com>

    On Thursday, January 2, 2020 at 9:46:39 AM UTC+1, slawek wrote:
    > 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?!

    Hmmm w sumie tak na szybko z rękawa nie umiem rzucić takiej definicji, aby
    nikt się nie przyczepił. Może chodzi o to, że do 'języków skryptowych' nie
    warto pisać kompilatora który zamieniałby go na kod maszynowy, bo wymagałoby
    to wkompilowania interpretera? Każdy specyficzny element języka skryptowego
    wymagałby call do interpretera, albo wstawienia ogromnej ilości kodu inline.

    > 2. "Nie ma sensu robić programów z GUI w Pythonie" - mit - bo
    > takie programy jest łatwiej zrobić niż w C++.

    Nie przepadam za Pyhonem, ani nie mam doświadczenia w pisaniu aplikacji w
    Pythonie, ale zgadzam się, że interfejs GUI w językach typu Python robi się
    łatwiej, szybciej i w ogóle lepiej się do tego nadają. Po co w C++ się uganiać
    za wskaźnikami i martwić czy domyślny konstruktor wywoła się szybciej i
    przydzieli pamięć pod listę z danymi do wyświetlenia w GUI... Ale nie
    popadajmy w skrajność, dla kogoś kto ma wprawę takie uganianie w C++ jest
    nawet przyjemne i też robi się szybko. Podobno główną zaletą Pythona jest
    to, że po zaledwie małym kursie można szybko pisać duże aplikacje. W C++
    bez solidnego kursu i praktyki programować się zdecydowanie nie da. Czasami tu i
    ówdzie można przeczytać, że Python jest dla naukowców. Jeśli chodzi o to, że
    naukowiec żyje w swoim świecie, a od czasu do czasu musi szybko napisać
    jakiś programik sprawdzający jego teorię w praktyce - to się zgadzam. Po co
    naukowiec miałby część swojej intelektualnej twórczości marnować na opanowywanie
    ogromnej ilości szczegółów języka takiego jak C++? Natomiast gdy już naukowiec
    zwraca się do programisty ze swoim problemem, to bardziej normalne
    wydaje się, że programista zaproponuje naukowcowi rozwiązanie uszyte na miarę
    problemu i na miarę dostępnego sprzętu właśnie w C++ a nie w jakimś skrypciaku.

    > Choćby w tym sensie
    > że biblioteka Qt wymaga w przypadku C++ gimnastyki z
    > metakompilatorem,

    Jeden podpity do drugiego:
    - na rynku zrobili taką dziurę, wkłada się tam głowę i samo goli twarz.
    - no ale przecież każdy ma inną gębę!
    - ale tylko za pierwszym razem ;-)

    Więc ta gimnastyka jest tylko za pierwszym razem gdy ktoś nie opanował
    metakompilera, kompilera zasobów, itd. Poza tym istnieje IDE o nazwie
    QTCreator w którym (dziś, bo kiedyś się wywalało co rusz) można zbudować
    naprawdę dużą aplikację i duże GUI nie rozumiejąc jak działa metakompiler a
    nawet kompiler c++... w regularnym kodzie produkcyjnym nastawionym na
    stosunek funkcjonalności do nakładu pracy nawet nie jest wskazane rozumienie
    szczegółów z qmake. Oczywiście gdy ktoś chce wycisnąć maksimum możliwości z
    tych narzędzi to musi rozumieć jak one działają, ale taka konieczność
    zachodzi tylko w specyficznych aplikacjach.

    > a Python tego nie potrzebuje. Osobną sprawą
    > jest kwestia czy każdy program powinien mieć GUI ? - ale
    > odpowiedź na to nie zależy od języka.

    No nie zależy od języka.


    > 3. "Python nie kompiluje się" - mit - są kompilatory Pythona.

    Słyszałem że jak się podaje typy i pisze w odpowiedni sposób to
    można Pythona skompilować do C i potem do kodu maszynowego. Ale
    to pisanie w odpowiedni sposób chyba oznacza rezygnację z wygód
    jakie niosą kacze interpretowane języki ?

    > Ponadto podział języków na interpretowane (translatory) i
    > kompilowane (kompilatory) jest dziś głupotą - mamy JIT i podobne
    > techniki. A DLL dla Pythona są w natywnym.

    Tak, ale nawet (bez sarkazmu) w wydajnej Javie JIT nie może wiele
    zrobić gdy jest wirtualny call po nazwie i overloading na podstawie
    dynamicznych typów - w przypadku każdego wywołania.


    Pozdrawiam


  • 14. Data: 2020-01-02 21:58:33
    Temat: Re: Czemu Python jest jaki jest?
    Od: g...@g...com

    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.


  • 15. Data: 2020-01-03 02:02:09
    Temat: Re: Czemu Python jest jaki jest?
    Od: J-23 <B...@p...fm>

    W dniu 03.01.2020 o 00:20, slawek pisze:
    > J-23 <B...@p...fm> Wrote in message:
    >> Strasznie ubogi ten Pascal z tego co piszesz :) Tylko widzisz większość rzeczy
    które tu wymieniłeś sa dostępne.Błąd związany z Pentium o którym piszesz nie był
    domeną tylko Pascala w tamtym czasie.
    >
    > Tak, większość z tych rzeczy była dostępna w C++ w XX wieku. W
    > Pascalu/Delphi nie. Jeżeli coś pomyliłem, to napisz konkretnie
    Właśnie o to chodzi że większość tych rzeczy które wymieniłeś byly
    jeszcze w latach 90 tych
    > co. Może Pascal ma obsługę wyjątków? Nie ma?
    Nie ma obsługi wyjątków od kiedy :P?? Bo są od dawna nawet wersji nie ma
    co przytaczać :P ale try...except...finally było na bank w latach 90
    tych juz :)
    No właśnie. A może
    > nie jest prawdą że co dialekt Pascala to w inny sposób
    > przekazywało się funkcję/procedurę jako parametr (mały myk - były
    > wersje, bodajże Turbo Pascal, gdzie to w ogóle było niemożliwe)?

    Dialekt Pascala się zmieniał i zmienia nadal ale inne języki i ich
    dialekty też się zmieniają - proste (także marny zarzut że język się
    rozwija)

    > A może jest już STL dla Pascala?
    Są :) nie są tak rozwinięte jak w C++ ale są :)

    To może można redefiniować
    > operatory w Pascalu?!
    Tego brak
    >
    > Mylisz też, misiaczku, tzw. Pentium Bug z błedem delay. Ten
    > pierwszy był błędem samego CPU - Intel Pentium we wczesnej wersji
    zgadza się i wystarczyła wstawka asembler owa lub pogrzebanie z
    przełącznikami kompilatora by to naprawić. Nawet pamiętam do dziś że
    zrobiłem sobie narzędzie gdzie w lini komend podawałem ścieżkę programu
    i w ten sposób odpalałem program i tego problemu nie było
    > - instrukcja fdiv mogła, w pewnych okolicznościach przyrody,
    > "dawać mniej dokładne wyniki" - np. zamiast 4.0 wychodziło
    > 5.0.
    >
    > Ten drugi to błąd w kodzie startup Turbo Pascala - program na
    > dzień dobry robił pustą pętlę z n iteracjami mierząc ile to czasu
    > t zajmuje, potem dzielił n/t po to aby skalibrować działanie
    > funkcji delay. Dowcip w tym że przy szybkich procesorach, takich
    > jak Pentium, wychodziło t = 0.0 z oczywistym efektem. Co
    > powodowało że nieoczekiwanie wszystkie programy (exe) zrobione w
    > Turbo Pascalu przestawały dawać się uruchamiać. Oczywiście,
    > powstał patch - nadpisujący kod startowy w exe-kach. Tyle że były
    > to czasy gdy nie było aktualizacji Windows trzy razy na godzinę.

    O tym samym mówimy :) ja napisałem to raz i miałem z głowy. Właśnie w
    taki sposób jak opisałem powyżej

    Dodam nawet że miło wspominam ten czas bo z tego w tamtym czasie miałem
    spory grosz :)
    >
    >
    >
    > ----Android NewsGroup Reader----
    > http://usenet.sinaapp.com/
    >


  • 16. Data: 2020-01-03 04:40:33
    Temat: Re: Czemu Python jest jaki jest?
    Od: "M.M." <m...@g...com>

    On Friday, January 3, 2020 at 1:18:08 AM UTC+1, slawek wrote:
    > "M.M." <...@...c> Wrote in message:
    > > Podobno główną zaletą Pythona jestto, że po zaledwie małym kursie można szybko
    pisać duże aplikacje. W C++bez solidnego kursu i praktyki programować się
    zdecydowanie nie da. Czasami tu iówdzie można przeczytać, że Python...
    >
    >
    > 1. IMO Python jest niezbyt dobry dla programów mających ponad
    > 100000 LOC (nie licząc bibliotek i cudzych modułów).

    Często czytałem że większe programy pisane w językach z dynamicznym
    typowaniem szybko stają się trudne w zarządzaniu, nawet powtarzałem
    tę opinię. Ale nie wiem ile w tym prawdy. Jakie jest uzasadnienie?
    Dlaczego w tym języku można efektywnie tworzyć oprogramowanie pod
    warunkiem że nie przekracza 5tys linii, w tym do 100tys, a w jeszcze
    innym do milionów?

    > Idealnie
    > program w Pythonie to jakieś 2000 do 5000 LOC robiące to do czego
    > w C++ potrzeba byłoby jakiegoś giganta na pół miliona linii kodu.

    Czy na pewno nadal rozmawiamy o języku programowania czy już o
    bibliotekach? Pół miliona to 100 razy więcej niż 5tys. W C++
    też pisze się efektywnie, ale trzeba mieć odpowiednie biblioteki.

    > Oczywiście całkiem konkretne rzeczy da się zrobić w np. 50
    > linijkach lub mniej. Przykładowo: zassać dane z bazy, zrobić
    > obliczenia i narysować publish-ready wykresy.

    W C++ też to można zrobić w 50 linijkach, kwestia bibliotek.


    > 2. W C++ da się programować na poziomie C. Tak m.i. programują
    > mikrokontrolery elektronicy - udając że nie ma OOP, STL, new i
    > nawet const.

    Osobiście programowałem w C++ na mikrokontrolery. Dzięki szablonom
    miałem prawie od kopa 3 wersje swojej biblioteki, wielkość kodu w
    zależności od wersji biblioteki różniła się wielokrotnie, mogłem
    wybrać najmniejszy kod. W C bym musiał nieźle się nagimnastykować żeby
    uzyskać taki efekt.


    > 3. Siłą Pythona jest abstrakcja - patrz niżej:
    > def commute(a, b): return a*b - b*a
    >
    > Dowcip w tym ze definicja commute jest zupełnie ogólna - mogą tam
    > być zwkłe int, mogą być macierze, mogą być operatory różniczkowe.

    Niby w C++ też, ale zapis jest z lekka rozwlekły:
    template< class T >
    void compute(T &a, T &b) { return a*b - b*a; }


    > W C++ też dałoby się to /jakoś/ zrobić. Tyle że w Pythonie taki
    > poziom abstrakcji jest czymś zupełnie normalnym.

    Hmmmm to prawda.


    > 4. Python ma parę PASKUDNYCH wad.

    Ja nie wiem.

    Pozdrawiam


  • 17. Data: 2020-01-03 09:15:12
    Temat: Re: Czemu Python jest jaki jest?
    Od: Roman Tyczka <n...@b...no>

    On Thu, 2 Jan 2020 18:16:45 +0100 (GMT+01:00), slawek wrote:

    >> To, że wszystkie te języki mają begin/end nie oznacza, że różni je tylkonazwa.
    >
    > Dlatego jeżeli już ma być begin-end to jednak Ada, a nie Algol czy
    > Pascal.
    >
    >>Mógłbyś te dyskwalifikujące wymienić? Pytam z ciekawości. Istotne braki teżjakieś
    tam znam, choć pewnie inne, bo niekoniecznie np. numerykarozbudowana jest mi
    osobiście potrzebna.

    Jak pisałem poprzednio, gdy mówimy o dzisiejszym Object Pascalu to:

    > Brak dynamicznych tablic.

    są oczywiście i to od dawna

    > Brak standardu wiązania z bibliotekami.

    nie wiem na czym standard miałby polegać, ale biblioteki z innych języków
    da się używać, a także linkować pliki .obj

    > Niemożliwość napisania własnej funkcji przyjmującej argumenty tak
    > jak we wbudowanej write.

    To prawda, choć jeśli dopuścić zapis wywołania z tablicą:

    DoJob([1, 'text', 6.5]);
    DoJob(['text', 15]);

    to się da.

    > Nieprzenośne przekazywanie funkcji jako
    > parametru.

    Typy funkcyjne/proceduralne są od bardzo dawna, od dekady są też metody
    anonimowe, więc można ich wszystkich używać jako parametrów

    > Liczne, ale niekompatybilne, dialekty.

    To prawda.

    > Brak wyjątków.

    Są od dekad.

    > Brak namespaces.

    Tak, tego brakuje

    > Zbyt mocne powiązanie z jednym producentem - vendor lock.

    To nie jest argument przeciw językowi.

    > Do tego np. błędna implementacja delay przez
    > Borlanda - na szybkich (mniej więcej Pentium 1 @60 MHz) CPU
    > programy po prostu nie działały bo startup code wkładał się z div
    > by 0 na kalibracji delay.

    Problem sprzed ponad 20 lat - nieistniejący.

    > Trudności z użyciem dla low-level - w czym zwkłe C jest gorsze tylko od asemblera.

    Czyli konkretnie co?

    > Brak templates. Brak makrodefinicji.

    Są za to generyki.

    > Brak STL.

    Jest Spring:
    https://spring4d.4delphi.com/docs/master/Html/index.
    htm?Spring.Base.htm

    > Brak fork.

    Fakt

    > Brak arytmetyki wskaźników.

    Od ponad dekady jest

    https://helloacm.com/pointer-arithmetic-in-delphi/

    > Brak asm jako słowa kluczowego.

    Od dekad:

    http://docwiki.embarcadero.com/RADStudio/Rio/en/Asse
    mbly_Expressions

    > Brak możliwości współpracy z Fortranem.

    To jest jakiś uniwersalny wymóg dla języków?

    > Brak krótkiej ewaluacji.

    Od dekad:

    http://docs.embarcadero.com/products/rad_studio/delp
    hiAndcpp2009/HelpUpdate2/EN/html/devcommon/compdirsb
    ooleanshortcircuitevaluation_xml.html

    > Brak refleksji.

    http://robstechcorner.blogspot.com/2009/09/delphi-20
    10-rtti-basics.html

    > Brak dekoratorów.

    Jeśli masz na myśli to co w Javie nazywa się annotations, to są attributes:

    http://docwiki.embarcadero.com/RADStudio/Rio/en/Attr
    ibutes_and_RTTI

    --
    pozdrawiam
    Roman Tyczka


  • 18. Data: 2020-01-03 13:04:03
    Temat: Re: Czemu Python jest jaki jest?
    Od: g...@g...com

    W dniu piątek, 3 stycznia 2020 00:35:32 UTC+1 użytkownik slawek napisał:

    >
    > Dodam, że nigdzie nie znalazłem skutecznej definicji kryterium co
    > jest "językiem skryptowym". Tzn. takiej, że mając język X można
    > zastosować je do jednoznacznego rozstrzygnięcia czy język jest
    > skryptowy czy nie jest.
    >
    > Czyli "skryptowy" to słowo nie niosące żadnego konkretnego
    > znaczenia, rodzaj "yyyeee" czy "hmmm".

    Nie. "Skryptowy" to pojęcie oparte na prototypie i podobieństwie względem prototypu.
    Nie ulega najmniejszej wątpliwości, że języki powłoki systemu to języki skryptowe.

    O ile jednak ma sens mówienie, że dany język w swoich typowych zastosowaniach jest
    skryptowy (czyli np. "jeżeli chcesz pisać programy, które w jakiś sposób naśladują
    twoje interakcje z komputerem, rozsądnie wybrać taki a taki język"), o tyle raczej
    nie ma sensu mówienie o językach "nie-skryptowych". (W C możesz zrobić wszystko to,
    co w bashu. Tyle że opeartory w rodzaju <, > czy >> są dużo prostsze w użyciu, niż
    interfejsy fopen, fread i fwrite)

    Ale to coś więcej, niż "yyyeee" czy "hmmm".


  • 19. Data: 2020-01-03 18:32:02
    Temat: Re: Czemu Python jest jaki jest?
    Od: g...@g...com

    W dniu piątek, 3 stycznia 2020 18:12:41 UTC+1 użytkownik slawek napisał:
    > > Nie ulega najmniejszej wątpliwości, że języki powłoki systemu to języki
    skryptowe.
    >
    > No to popatrz - VBA nie jest skryptowy. A VBS jest.

    I w czym problem?

    > C jest skryptowy, bo jest csh, czyli C-shell.

    Wiesz w ogóle o czym mówisz?

    Zobaczmy.

    $ csh

    % int x = 5;
    int: Command not found

    % int f(void) { return 5; }
    Badly placed ()'s.

    No rzeczywiście.

    > A Javascript nie jest skryptowy, bo to nie język powłoki systemu.

    No nie jest. I co teraz?

    > > W C możesz zrobić wszystko to, co w bashu. Tyle że opeartory w rodzaju <, > czy
    >> są dużo prostsze w użyciu, niż interfejsy fopen, fread i fwrite.
    >
    >
    > No cóż, nie bardzo kumam o co ci chodzi - zwłaszcza że bash jest
    > napisany w C - więc nie da się zrobić w bash tego co niemożliwe w
    > C. Owszem, w C można zrobić to czego nie da się zrobić w bash.
    > Np. napisać procedurę obsługi przerwania.

    Faktycznie nie bardzo kumasz o co mi chodzi.
    Może przeczytaj jeszcze kilka razy to, co napisałem.
    (Albo poczekaj aż będziesz miał zdaną maturę)


  • 20. Data: 2020-01-03 20:32:06
    Temat: Re: Czemu Python jest jaki jest?
    Od: g...@g...com

    W dniu piątek, 3 stycznia 2020 19:17:58 UTC+1 użytkownik slawek napisał:

    > > Faktycznie nie bardzo kumasz o co mi chodzi.Może przeczytaj jeszcze kilka razy
    to, co napisałem.(Albo poczekaj aż będziesz miał zdaną maturę)
    >
    > To przeczytaj co piszą w Wikipedii:
    >
    > "
    > Język skryptowy (ang. script language) - język
    > programowania obsługujący skrypty[1]. Często służący do
    > kontrolowania określonej aplikacji.
    >
    > Skrypty - programy napisane w językach skryptowych, "
    >
    >
    > Nawet jeżeli nie masz matury to powinieneś wychwycić że taka
    > definicja skryptowości kupy się nie trzyma.

    Chyba przeoczyłeś: "przeznaczone do wykonywania w specjalnych środowiskach
    uruchomieniowych automatyzujących wykonywanie zadań, które alternatywnie mogą być
    wykonywane jedno po drugim przez użytkownika".
    Może jednak lepiej zaczekaj do tej matury.

    > I nie spinaj się tak bardzo, bo od tego tylko hemoroidy ci urosną.

    Masz w tej kwestii jakieś doświadczenia, którymi chciałbyś się tutaj podzielić?

strony : 1 . [ 2 ] . 3 ... 5


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: