Alexander Stepanov

Alexander Stepanov Obrázek v Infoboxu. Životopis
Narození 16. listopadu 1950
Moskva ( Ruská sovětská federativní socialistická republika , Svaz sovětských socialistických republik )
Národnosti Ruský
sovětský
Američan
Výcvik Moskevská státní univerzita
Aktivita Počítačový vědec
Jiná informace
Pole Programování
webová stránka www.stepanovpapers.com

Alexander Alexandrovič Stepanov (rusky: Александр Александрович Степанов) je počítačový vědec sovětského původu, narozen v Moskvě dne16. listopadu 1950, kde studoval matematiku. Specialista na generické programování je spolu s Meng Lee tvůrcem jazykové knihovny C ++ s názvem Standard Template Library . STL začal vyvíjet kolem roku 1992, kdy byl zaměstnán v HP Labs . Předtím pracoval v Bell Laboratories a snažil se přesvědčit Bjarne Stroustrup, aby do C ++ zavedl něco podobného jako generika Ada .

Je autorem (spolu s Paulem McJonesem) knihy Elements of Programming , která vychází z kurzu Foundations of Programming, který Stepanov učil v Adobe Systems, když tam pracoval.

On odešel z A9.com vledna 2016.

Knihovna standardních šablon a obecné programování

Alexander Stepanov je zastáncem takzvaného generického programování . Ačkoli David Musser vyvinul a prosazoval některé aspekty obecného programování již v roce 1971, omezil se na relativně specializovanou oblast vývoje softwaru ( systémy počítačové algebry ).

Stepanov si uvědomil plný potenciál generického programování a přesvědčil své kolegy v době výzkumu a vývoje General Electric (včetně zejména Davida Mussera a Deepaka Kapura), že generické programování by mělo být využíváno jako komplexní základ pro vývoj softwaru General Electric . Zároveň v programovacích jazycích neexistovala skutečná podpora pro generické programování.

Prvním významným jazykem, který poskytoval takovou podporu, byla Ada se svými obecnými jednotkami. V roce 1987 Stepanov a Musser vyvinuli a vydali knihovnu Ada pro správu seznamů, která představovala výsledky většiny jejich výzkumu v oblasti generického programování. Ada však nedosáhl významného publika mimo obranný průmysl a zdálo se, že C ++ je pravděpodobnější, že bude široce používán a bude poskytovat dobrou podporu pro generické programování, a to navzdory skutečnosti, že jazyk byl relativně nezralý. Dalším důvodem pro přechod na C ++, který Stepanov identifikoval již brzy, bylo to, že výpočetní model C / C ++, který využívá velmi flexibilní přístup k úložišti pomocí ukazatelů, je zásadní pro dosažení obecnosti bez ztráty hmotnosti. To nakonec vedlo k vývoji standardní knihovny šablon C ++.

Kritika objektově orientovaného programování

Myslím si, že objektová orientace je téměř stejně podvod jako umělá inteligence." Ještě jsem neviděl zajímavý kus kódu, který pochází od těchto OO lidí. V jistém smyslu jsem vůči AI nefér: naučil jsem se spoustu věcí od davu laboratoře MIT AI, odvedli opravdu zásadní práci: Hakmem od Billa Gospera je jednou z nejlepších věcí, které programátor může číst. AI možná neměla vážný základ, ale vyprodukovala Gospera a Stallmana (Emacs), Mojžíše (Macsyma) a Sussmana (Scheme, společně s Guyem Steeleem). Považuji OOP za technicky nevhodný. Pokouší se rozložit svět, pokud jde o rozhraní, která se liší u jednoho typu. K řešení skutečných problémů potřebujete multisorted algebry - rodiny rozhraní, které pokrývají více typů. Považuji OOP za filosoficky nevhodný. Tvrdí, že všechno je objekt. I když je to pravda, není to příliš zajímavé - říkat, že všechno je objekt, neříká vůbec nic. Metodicky považuji OOP za nesprávné. Začíná to třídami. Je to, jako by matematici začali s axiomy. Nezačínáš s axiomy - začínáš s důkazy. Pouze když najdete spoustu souvisejících důkazů, můžete přijít s axiomy. Skončíte s axiomy. Totéž platí pro programování: musíte začít se zajímavými algoritmy. Pouze když jim dobře rozumíte, můžete přijít s rozhraním, které jim umožní pracovat.  " - Alexander Stepanov."

( „Myslím si, že objektová orientace je téměř stejně podvod jako umělá inteligence. Stále jsem nebyl schopen vidět zajímavý kus kódu, který pochází od těchto lidí v objektově orientovaném světě. Svým způsobem jsem nespravedlivé. o AI: Od skupiny MIT AI Lab jsem se toho hodně naučil, odvedli opravdu zásadní práci: Hakmem od Billa Gospera je jednou z nejlepších věcí, které programátor dokáže přečíst, AI možná neměla vážný základ, ale vytvořila Gospera a Stallman (Emacs), Moses (Macsyma) a Sussman (Scheme, s Guy Steele) považuji objektově orientované programování za technicky chybné. Snaží se rozbít svět, pokud jde o rozhraní, která se liší u jednoho typu. problémy, které potřebujete vícestupňové algebry - rodiny rozhraní, která pokrývají více typů. OOP mi připadá filozoficky vadný. Tvrdí, že všechno je objekt. I když je to pravda, není to příliš zajímavé - říci, že všechno je objekt, neznamená vůbec nic. Metodicky považuji OOP za nesprávné. Začíná to třídami. Je to, jako by matematici začínali s axiomy. Nezačínáš axiomy - začínáš důkazy. Axiómy si můžete představit pouze v případě, že jste našli soubor souvisejících důkazů. Skončíte s axiomy. Totéž platí pro programování: musíte začít se zajímavými algoritmy. Pouze když jim dobře rozumíte, můžete navrhnout rozhraní, které jim umožní pracovat. " )

Reference

  1. http://www.stlport.org/resources/StepanovUSA.html

externí odkazy