🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.programming
Article #216672

Re: Czemu Python jest jaki jest?

#216672
From: Roman Tyczka
Date: Fri, 03 Jan 2020 08:15
111 lines
3990 bytes
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/Assembly_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/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/compdirsbooleanshortcircuitevaluation_xml.html

> Brak refleksji. 

http://robstechcorner.blogspot.com/2009/09/delphi-2010-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/Attributes_and_RTTI

-- 
pozdrawiam
Roman Tyczka
Technical Details
Message-ID: <1twi9iid2bleg$.dlg@tyczka.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!weretis.net!feeder7.news.weretis.net!border2.nntp.ams1.giganews.com!nntp.giganews.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <913ee55b-6577-46ef-8ef2-92c748a43610@googlegroups.com> <11jjdhhajyba0.dlg@tyczka.com> <quc5ai$igb$2@news.icm.edu.pl> <eekf74lxizex$.dlg@tyczka.com> <qudunk$b0g$1@news.icm.edu.pl> <1s4a9lwfk6wzl$.dlg@tyczka.com> <qul8ht$3eo$1@news.icm.edu.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!weretis.net!feeder7.news.weretis.net!border2.nntp.ams1.giganews.com!nntp.giganews.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: Roman Tyczka <noemail@because.no>
Subject: Re: Czemu Python jest jaki jest?
Newsgroups: pl.comp.programming
User-Agent: 40tude_Dialog/2.0.15.84
MIME-Version: 1.0
Sender: romek@tyczka.no.found
References: <913ee55b-6577-46ef-8ef2-92c748a43610@googlegroups.com> <11jjdhhajyba0.dlg@tyczka.com> <quc5ai$igb$2@news.icm.edu.pl> <eekf74lxizex$.dlg@tyczka.com> <qudunk$b0g$1@news.icm.edu.pl> <1s4a9lwfk6wzl$.dlg@tyczka.com> <qul8ht$3eo$1@news.icm.edu.pl>
Date: Fri, 3 Jan 2020 09:15:12 +0100
Message-ID: <1twi9iid2bleg$.dlg@tyczka.com>
Lines: 111
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 94.75.90.137
X-Trace: 1578039312 unt-rea-a-02.news.neostrada.pl 548 94.75.90.137:3807
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit