Wpadła mi ostatnio na YouTube historia Borlanda: https://www.youtube.com/watch?v=6X0f3gwQTmc
Dla Mirków klepiących kod od dekad to czysta nostalgia. Niebieski ekran Turbo Pascala, szybka kompilacja i skróty w rodzaju Ctrl+K D.
Kto pamięta te czasy, niech pierwszy rzuci dyskietką 5,25".
A kto kojarzy już tylko współczesne frameworki i VS Code, niech czyta albo ogląda dalej, bo dzisiejsze narzędzia programistyczne mają w sobie więcej DNA z tamtej epoki, niż mogłoby się wydawać.
Sama historia skrótów Ctrl+K to niezły przykład tego, jak długo żyją pomysły z dawnych narzędzi. Pod koniec lat 70. WordStar spopularyzował sekwencyjne skróty oparte na klawiszu Ctrl. Były to czasy, kiedy układ klawiatur nie był jeszcze tak ustandaryzowany jak dziś, a wiele terminali nie miało nawet osobnych klawiszy kursora. Borland przejął ten model do Turbo Pascala, którego dokumentacja wprost mówiła o skrótach zgodnych z WordStarem. I ta tradycja nie umarła razem z DOS-em.
W kolejnych dekadach podobne sekwencje pojawiły się w Visual Studio, między innymi do komentowania kodu czy do formatowania dokumentu. Dzisiaj ten sam sposób obsługi znajdziemy w Visual Studio Code, gdzie Microsoft nazywa takie kombinacje key chords.
Trudno udowodnić prostą linię kodu WordStar -> Turbo Pascal -> Visual Studio -> VS Code, ale nietrudno dostrzec ciągłość kultury i pamięci mięśniowej programistów. Ludzie zmieniali języki, komputery i systemy operacyjne, ale pewne odruchy zostawały. Projektanci kolejnych narzędzi mieli więc dobry powód, żeby ich nie łamać.
Ale ciekawa historia zaczyna się od kompilatora. W 1983 roku Philippe Kahn z Borlanda wziął niezwykle szybki kompilator Pascala napisany przez młodego duńskiego programistę Andersa Hejlsberga, połączył go z edytorem i środowiskiem pracy i wypuścił jako Turbo Pascal. Cena wynosiła około 50 dolarów. Konkurencyjne narzędzia potrafiły kosztować setki. Do tego Turbo Pascal kompilował kod w pamięci i robił to absurdalnie szybko jak na ówczesne komputery.
Borland urósł na początku lat 90. do jednego z największych producentów oprogramowania PC. Pojawiły się Turbo C i Turbo C++, Paradox, Quattro Pro i kolejne narzędzia dla programistów. A w 1995 roku pojawiło się Delphi. I tutaj robi się naprawdę ciekawie, bo głównym architektem Delphi był ten sam Anders Hejlsberg. Potem zaczęły się jak zwykle problemy. Borland wszedł w kosztowne przejęcia, między innymi Ashton Tate, producenta dBASE. Próbował walczyć na rynku baz danych i aplikacji biurowych, podczas gdy Microsoft coraz skuteczniej sprzedawał Worda, Excela, PowerPointa i później Accessa jako jeden pakiet Office.
Do tego doszły wojny cenowe, trudne przejście całej branży z DOS na Windows i wieloletni proces z Lotusem dotyczący interfejsu Quattro Pro. Ten ostatni Borland ostatecznie wygrał, ale firma w tym czasie walczyła już na kilku frontach jednocześnie.
Microsoft zrobił jeszcze jedną rzecz. Zaczął agresywnie rekrutować ludzi Borlanda. W 1996 roku do Microsoftu przeszedł Anders Hejlsberg. Borland później pozwał Microsoft, twierdząc, że w ciągu około 30 miesięcy firma przejęła 34 jego pracowników. Według dokumentów związanych z pozwem sam Hejlsberg dostał siedmiocyfrowy bonus za przejście do Microsoftu.
I tu dochodzimy do najciekawszej części tej historii. Hejlsberg został w Microsoft głównym projektantem C# i jednym z kluczowych ludzi stojących za .NET. C# nie jest „Delphi z inną składnią”, ale doświadczenia zdobyte przy Turbo Pascalu i Delphi niewątpliwie pojechały razem z ich architektem do Redmond. A potem, w 2012 roku, Microsoft pokazał TypeScript, którego głównym architektem ponownie był tak własnie Anders Hejlsberg. I właśnie tutaj moim zdaniem widać prawdziwe DNA Turbo Pascala.
Nie chodzi o składnię. Nie chodzi nawet o konkretny system typów. Chodzi o filozofię. Kodujesz i praktycznie natychmiast dostajesz informację, czy coś zrobiłeś źle. Kompilator i język nie są oderwanymi narzędziami uruchamianymi raz na kilka minut, tylko częścią interaktywnego środowiska programisty.
IDE rozumie kod, typy napędzają podpowiedzi i refaktoryzację, a cały system jest projektowany tak, żeby droga między napisaniem kodu a zobaczeniem rezultatu była jak najkrótsza. To jedna z rzeczy, które Hejlsberg uważał za kluczowe już przy Turbo Pascalu.
Czterdzieści lat później TypeScript robi coś bardzo podobnego w zupełnie innym świecie: incremental type checking, language services, podpowiedzi w czasie pisania, szybkie wykrywanie błędów i bardzo mocna integracja z edytorem.
Technologia jest oczywiście zupełnie inna. Ale filozofia jest zaskakująco podobna. Turbo Pascal -> Delphi -> C# -> TypeScript.
Nie jest to genealogia języków w sensie akademickim. To raczej genealogia sposobu myślenia o narzędziach dla programistów, przenoszona przez jednego z najbardziej wpływowych projektantów języków ostatnich czterech dekad.
Borland jako niezależna firma zniknął. W 2009 roku został przejęty przez Micro Focus za około 75 mln dolarów. Ale jedna z jego najważniejszych idei przetrwała. Kompilator powinien być szybki, feedback natychmiastowy, a język i narzędzia powinny działać razem.
Jeżeli piszesz TypeScript w VS Code i widzisz błąd, zanim jeszcze zapiszesz plik, to gdzieś bardzo daleko w drzewie genealogicznym tego doświadczenia nadal siedzi niebieski ekran Turbo Pascala a dla nas Polaków z lodówki wyskakuj Jan Bielecki.








Komentarze (62)
najlepsze
@groman43: jestem juz po 3. maja zajebiste usypiacze. Kiedys byl to gaz, dzis jakis zastrzyk czy kroplowka. Nawet nie zdarzylem zauwazyc kiedy obudzilem sie juz po pelnej weryfikacji backdoor'a.
@matewek: no stary co kto lubi, co kto lubi ( ͡º ͜ʖ͡º)
Backdoor popuszczam tylko na spiaco. Zarty na bok. Pierwszy zabieg przed wielu laty byl polaczony z gastroskopia, tego dobrowolnie bez znieczulenia sobie nie dam zrobic, jesli nie ma zagrozenia zycia. W tedy znalazlem lekarza ktory zalatwia dwie dziury na raz. Dla panow w
Jaki k###a kompilator?! Turbo Pascal był językiem kompilowanym do kodu
@jagoslau: Transpilacja to specyficzny rodzaj kompilacji. Biorąc pod uwagę, że kompilator TS dokonuje pełnej analizy kodu, sprawdza spójność typów, analizuje zakresy zmiennych, wykrywa i usuwa martwy
Nie ma lepszego edytora dla typescriptu. Dodatkowo jest bardzo szeroko konfigurowalny. Nie jest może wygodny do pracy out of the box jak wyroby JetBrains, ale po jakimś czasie pracy można go wyczuć i
źródło: informatyk-4v304b gseg3ggt3qy6q3
Pobierz@Kalwi: a wiedziałeś ze w Delphi został napisany Total Commander
A Double Commander dokłada drugi ciekawy trop: Delphi / Object Pascal -> Free Pascal + Lazarus -> Double Commander
Delphi dało życie tysiącom aplikacji.
@jeanpaul: i zazwyczaj te aplikacje działają o niebo lepiej niż to "wydawane teraz z nowych programów".
Taki Total Commander to po prostu fruwa na kilkunastoletnim budżetowym komputerze
https://delphi.fandom.com/wiki/Good_Quality_Applications_Built_With_Delphi
Ogólnie to fajny wpis ale naprawdę OPie mógłbyś napisać to sam. Tekstu zawiera mnóstwo konstrukcji językowych typowych dla AI, strzelam że OP użył darmowego Gemini albo ChatGPT.
To jest jakieś pierdo....
źródło: Praktyczny-kurs-turbo-pascala-Tomasz-Sadowski
Pobierz@jeanpaul: Niektóre coś tam wnosiły poza byciem instrukcją po polsku do pirackiego softu w czasach biedy lat 80. i 90. Przykładowo taka z łamigłówkami z rzutowania na typy i arytmetyki wskaźników, itp. ;)
źródło: jezyk-c-interpretacja-standardu-b-iext161528633
Pobierz