2 poin oleh GN⁺ 2023-12-02 | 1 komentar | Bagikan ke WhatsApp
  • Turbo Pascal yang diperkenalkan Borland pada November 1983 secara resmi genap berusia 40 tahun pada November 2023
  • Turbo Pascal dinilai sebagai produk yang menjadi titik awal Borland sekaligus integrated development environment (IDE) pertama yang digunakan luas di industri
  • Pada masanya, produk ini meninggalkan kesan kuat dari sisi pengalaman pengembangan dan tingkat kematangan produk, lalu berujung pada kesuksesan komersial besar
  • Embarcadero masih terus mengembangkan lini compiler penerusnya, dan compiler command-line Win32 pada Delphi 12 Athens menggunakan versi 36.0
  • Karena skema nomor versi saat ini berlanjut hingga Turbo Pascal pertama, peringatan 40 tahun ini juga terhubung langsung dengan sejarah lini Delphi

Turbo Pascal yang dimulai pada November 1983

  • Turbo Pascal adalah produk yang dirilis Borland pada November 1983
  • Per November 2023, usianya secara resmi menjadi 40 tahun

Posisi dalam sejarah Borland dan IDE

  • Turbo Pascal dinilai sebagai produk tonggak penting di industri
  • Produk ini menjadi titik awal berdirinya perusahaan Borland
  • Disebut sebagai IDE pertama yang dikenal luas
  • Untuk ukuran masanya, ini adalah produk yang sangat unggul, dan skala kesuksesannya juga sangat besar

Bacaan lanjutan dan konteks Pascal

Compiler penerus yang berlanjut ke Embarcadero

  • Embarcadero masih terus mengembangkan lini compiler penerus Turbo Pascal
  • Baru-baru ini mereka merilis versi 36 dari compiler tersebut
  • Pada compiler command-line Delphi 12 Athens terdapat penanda versi Embarcadero Delphi for Win32 compiler version 36.0
  • Nomor versi 36 ini adalah skema penomoran yang dapat ditelusuri kembali hingga Turbo Pascal pertama

Easter Egg peringatan 40 tahun

  • Untuk memperingati 40 tahun ini, Embarcadero mendedikasikan Easter Egg produk pada hari jadi Turbo Pascal
  • Pesannya ditutup dengan “Happy 40th birthday, Turbo Pascal!”

1 komentar

 
GN⁺ 2023-12-02
Pendapat di Hacker News
  • Salah satu game komputer yang saya sukai adalah ZZT, yang ditulis dengan Turbo Pascal. Ini adalah game mode teks yang unik buatan Tim Sweeney dari Epic Megagames, memadukan puzzle dan tembak-tembakan, dan bahkan versi shareware gratisnya menyertakan editor game serta bahasa pemrograman kecil bernama ZZT-OOP
    Kode sumber asli ZZT hilang, tetapi beberapa tahun kemudian Adrian Siekierka dengan gigih merekayasa balik kode Pascal aslinya, hingga ketika dikompilasi dengan versi Turbo Pascal asli, hasilnya menjadi file executable yang identik byte demi byte. Luar biasa
    https://blog.asie.pl/2020/08/reconstructing-zzt/
    https://news.ycombinator.com/item?id=22609474
    https://benhoyt.com/writings/zzt-in-go/

    • Karena ZZT, saya memasang Turbo Pascal di komputer saya
    • Bagi saya juga, ZZT adalah perangkat lunak yang benar-benar istimewa, dan menjadi alasan saya benar-benar mengenal pemrograman. Sebelumnya saya hanya mengetik ulang listing kode BASIC dari majalah atau mencoba hal-hal sepele di BBC Micro sekolah, tetapi di PC pertama saya, saya belajar dengan membuat apa yang saya inginkan dari nol menggunakan ZZT-OOP
    • ZZT juga menginspirasi overworld di Frog Fractions 2
  • Turbo Pascal membuat saya masuk ke dunia pemrograman. Saya ingat menghabiskan ratusan Deutsche Mark untuk lisensi Borland Pascal 7.0, lalu Delphi 1.0 dan 2.0, dan akhirnya saya juga membuat perangkat lunak “komersial” pertama yang benar-benar saya jual
    Di era DOS, selain Basic, Turbo Pascal mungkin merupakan jalur termudah untuk masuk ke pemrograman, dan di Windows 3.1/95, Delphi adalah alat yang membuka mata, menunjukkan bahwa pemrograman GUI bisa semudah itu
    Dalam banyak hal, rasanya justru kita mundur dibanding saat itu. Compiler Turbo Pascal / Delphi menghasilkan program GUI lengkap dalam bentuk biner kecil, dan saya heran bagaimana perangkat lunak dengan kinerja serupa hari ini bisa menjadi lebih besar beberapa orde magnitudo

    • Pada versi awal Turbo Pascal, selama program dan sumbernya muat di RAM, proses mengubah kode dan melihat hasilnya praktis instan bahkan di mesin saat itu. Interaksinya juga dirancang dengan mempertimbangkan sifat instan itu, dan seingat saya, alih-alih memuntahkan layar laporan kesalahan yang tak ada habisnya, ia langsung membawa kita ke baris yang mengalami kesalahan
      Jika penyebabnya salah ketik, memperbaikinya, mengompilasi ulang, dan menjalankannya lagi cukup 1 detik. Banyak alat masa kini memiliki filosofi berbeda yang menuntut lebih banyak tindakan yang tidak perlu dari pengembang
    • Program GUI “berfitur lengkap” dari era 90-an hampir tidak akan nyaman dipakai menurut standar sekarang. Dengan kata lain, framework dan program masa kini tidak memiliki kinerja serupa dengan yang ada pada pertengahan 90-an, dan secara teori, hanya dengan mengompilasi ulang aplikasi 25 tahun lalu menggunakan versi framework saat ini, kita akan mendapatkan hal-hal seperti Unicode, internasionalisasi, aksesibilitas, dan dukungan jaringan
      Pengecualiannya adalah SAP; entah bagaimana mereka tampaknya berhasil menggabungkan UI era 90-an yang memusuhi pengguna dengan konsumsi sumber daya program modern. Bagi saya juga, bahasa setelah BASIC adalah Turbo Pascal
    • Ah, Mark, terasa sudah lama sekali. Entah apakah hanya di Inggris, tetapi saat berbicara atau menulis, kami tidak menerjemahkan nama mark ke bahasa Inggris dan selalu menyebutnya Deutschmark
    • Setidaknya ada satu gajah besar yang hilang dari file executable itu: dukungan Unicode. Mungkin bahkan tidak akan muat di RAM PC saat itu
    • Turbo Pascal tidak hanya mengajarkan pemrograman prosedural top-down, yang merupakan cara umum Pascal saat itu, tetapi juga pemrograman berorientasi objek melalui demo Breakout
  • Hal yang paling saya ingat dari TP adalah bahwa setiap fungsi punya contoh kode yang sederhana dan mudah dipahami, serta tersusun secara logis sehingga mudah dicari dan digunakan. Karena itu, meski saya masih remaja yang bahkan baru nyaris memahami BASIC, saya bisa belajar Turbo Pascal secara otodidak hanya dengan IDE tanpa internet
    Terlalu banyak sistem zaman sekarang yang bahkan tidak mendekati hal seperti ini. Saya penasaran apakah itu berkat karakteristik sistem sederhana berbasis x86 DOS saat itu, atau karena laju perubahan modern yang cepat, tuntutan lintas platform, dan kompleksitas membuat hal semacam itu mustahil dibuat

    • Processing(P5) punya fitur seperti ini. Di IDE, kita bisa memilih string teks dan mencarinya di dokumentasi; jika itu fungsi bawaan atau konstanta, halaman HTML statis yang terpasang bersama perangkat lunak akan terbuka, jadi tidak perlu internet maupun server. Dokumentasinya bisa dijelajahi meski offline, dan rasanya kemampuan dasar seperti ini hilang dalam pembuatan situs statis masa kini
      Saya juga ingin menambahkan bahwa saat itu Processing adalah satu-satunya framework creative coding yang memiliki dokumentasi offline lengkap. Misalnya, OpenFrameworks bahkan sekarang pun sebagian besar masih terasa seperti dokumentasi kosong hasil generasi otomatis
      Menurut saya, ini adalah salah satu faktor yang membuat Processing lebih unggul daripada alternatifnya di dunia pendidikan. Cukup disayangkan p5.js tidak sepenuhnya meneruskan tradisi itu: untuk membaca dokumentasinya harus online, dan alih-alih situs web statis, teksnya dirender dengan JavaScript saat dibuka. Meski begitu, dokumentasinya sendiri lengkap, termasuk contohnya
      https://processing.org/
      https://p5js.org/
    • Itu karena orang sekarang tidak menulis dokumentasi. Bahasa-bahasa baru sering kali open source, dan ada budaya yang menyuruh orang membaca source code; menurut saya itu keliru
    • Saya juga belajar Turbo Pascal tanpa buku. Ada buku BASIC yang disertakan dengan komputer, tetapi Turbo Pascal jauh lebih mudah. Menggambar piksel semudah memilih mode tampilan yang sudah double-buffered lalu menggambar piksel saja; membaca port joystick atau mouse juga tinggal dibaca
    • Turbo C juga sama. Sekarang, kalau mau mencari contoh, harus berharap beruntung
    • Saya juga begitu. Setelah beberapa tahun memakai GFA Basic, saya mengenal Turbo Pascal, dan itu sangat membantu karena terasa seperti versi BASIC yang punya blok kode, tipe variabel termasuk record, fungsi dan prosedur, sampai referensi. Saya mempelajari Pascal hanya dengan membaca dokumentasi bantuan dan melihat contoh-contoh yang sangat jelas serta berguna di hampir setiap halaman
      Saat itu beberapa tahun sebelum saya mengenal internet di universitas, jadi tidak ada cara mudah untuk mengakses materi belajar. Sebelumnya saya beberapa kali mencoba belajar C tetapi tidak berhasil; baru setelah mempelajari TP, saya bisa memindahkan apa yang saya pelajari dari Pascal ke C, dan saat itu saya juga dibantu produk Borland hebat lainnya, C++ Builder
  • Pada akhir 80-an, setelah melewati assembly 6809E, keluarga BASIC terstruktur, dan batch/shell, bahasa pemrograman “sungguhan” pertama yang saya pelajari adalah Turbo Pascal. Ketika masuk jurusan ilmu komputer pada awal 90-an, kuliah tahun pertama juga diajarkan dengan Borland Pascal, jadi pengalaman itu cukup berguna
    Beberapa tahun kemudian, latar belakang Pascal membuat saya bekerja sekitar 5 tahun mengembangkan aplikasi kustom dengan Delphi, lalu berlanjut ke pekerjaan menguji IDE Kylix dan C++Builder di Borland. Masa-masa yang indah
    Sampai sekarang saya masih merindukan Delphi. Sekarang, tanpa plugin IDE saja sudah dianggap kekurangan fatal, tetapi saat itu gagasan tentang pustaka komponen dan lingkungan coding yang bisa diperluas dengan mudah memakai bahasanya sendiri terasa seperti sihir murni. Mengutak-atik VCL dan IDE-nya sendiri benar-benar menyenangkan
    Sayang sekali Borland mengejar pasar enterprise, meninggalkan developer akar rumput, dan praktis membunuh pertumbuhan adopsi komunitas. Setidaknya sampai sekitar Delphi 7, itu benar-benar susunan yang keren

    • Di negara kami, Delphi adalah lingkungan pengembangan yang paling populer secara telak. Situasinya agak aneh: sebagian besar dunia memakai VB 5, sementara kami memakai Delphi. Dari luar terlihat seperti lingkungan yang hebat, tetapi entah kenapa tampaknya hanya sukses besar di beberapa pasar tertentu
    • Saya juga menempuh jalur yang mirip, tetapi belakangan terpaksa pindah ke Visual Basic 5 karena pekerjaan. Meski begitu, saya merasa sampai sekarang belum ada yang sebanding dengan Delphi untuk pengembangan GUI. VCL itu jenius
  • Pertama kali saya mengenal TP adalah pada musim dingin 1993, saat usia 14 tahun, ketika membajaknya dari BBS warez. Berbeda dengan sekadar menjalankan file .BAS, kekuatan primitif yang saya rasakan saat mengompilasi EXE sendiri itu memabukkan
    Saya mulai memodifikasi Renegade BBS dan membuat program door, dan meski gagal, saya juga mencoba membuat worm, trojan horse, dan virus. Pengalaman ini mengubah hidup saya dan membentuk jalan yang membuat saya berada di bidang teknologi sekarang. Selain itu, kecenderungan nakal masa remaja saya juga sudah saya perbaiki. Saya sangat berutang budi kepada Borland

    • Bagi remaja yang belum benar-benar memahami hal seperti compiler dan interpreter, bisa membuat file EXE sendiri dengan TP4 terasa seperti mendapatkan kekuatan super. Rasanya seperti menjadi programmer sungguhan
      Beberapa tahun kemudian, saat berusia 16 tahun, saya mengembangkan aplikasi kecil untuk manajemen pelanggan ayah saya dan benar-benar dibayar; dengan sebagian uang itu saya membeli versi TP6 yang legal. Masa-masa yang indah
    • Saya jadi teringat masa BBS yang indah dulu. Pada 1989, saat berusia 17 tahun, setelah belajar cara menulis driver serial berbasis interrupt, saya membuat pustaka door untuk Turbo Pascal dan mendistribusikannya sebagai shareware. Itu cukup banyak dipakai sampai dunia BBS menghilang dengan cepat pada pertengahan 90-an
    • Saya juga mengalami hal serupa pada era yang sama. Selain hal-hal nakal itu, di 386SX saya mengutak-atik pemrograman grafis dengan memakai inline assembly untuk bagian yang “penting bagi performa”. Pengalaman itu benar-benar meletakkan dasar bagi pekerjaan saya sekarang
  • Free Pascal masih memiliki mode yang menyerupai IDE TP asli. Namun, seperti yang mereka akui sendiri, kodenya sedang membusuk, dan masih sangat bergantung pada kekhasan usang dari platform MS-DOS asli
    Sayang sekali belum ada versi serupa yang bisa dipakai sebagai editor umum di terminal seperti neovim atau emacs, sekaligus terintegrasi dengan fitur berorientasi IDE modern seperti LSP, parser tree-sitter, dan Debug Adapter Protocol. Ini bisa saja mengubah permainan saat mengedit kode jarak jauh lewat koneksi SSH/terminal

    • https://github.com/magiblot/tvision
    • Sekitar sedikit lebih dari 10 tahun lalu, beberapa teman yang merupakan penggemar Turbo Pascal beralih ke Lazarus. Itu tampak seperti penerus logis dari Turbo Pascal dan Free Pascal. Secara pribadi, saya tidak terlalu menyukai bahasa Pascal, jadi saya beralih memakai C++ di Emacs
  • Sulit untuk melebih-lebihkan seberapa cepat Turbo Pascal dibanding produk pesaing. Saking cepatnya, rasanya seperti ada trik tertentu, dan program yang dihasilkan pun lebih cepat
    Untuk masanya, itu adalah sebuah mahakarya, dan pujian yang diterimanya benar-benar pantas

    • Di kelas grafika komputer di universitas, bahkan kelas yang diajar oleh Jack Bresenham, saya bertanya apakah boleh memakai Borland Turbo C baru untuk tugas. Setelah buru-buru mengompilasi ulang untuk demo, karena PC di kelas bukan 80286, saya mendapati kode saya hanya berjalan sepertiga kecepatan kode orang lain yang ditulis dengan Turbo Pascal v4
      Dari situ saya belajar bahwa compiler yang sudah matang mengungguli compiler rilis 1.0
    • Benar. Bahkan pada prosesor lambat saat itu, compiler Turbo Pascal benar-benar memproses kode dengan sangat kencang. Jauh berbeda dari sistem build kompleks masa kini yang bisa memakan waktu lama hanya untuk mengompilasi satu program yang melakukan hal yang sama
    • Sampai sekarang Pascal masih disebut sebagai bahasa yang cepat dikompilasi. Dalam perdebatan Go dan Rust pun kadang muncul dalam konteks seperti itu
      Saya ingat beberapa tahun lalu membangun FPC versi 2.0-an di PC Windows dengan RAM 512MB, dan itu tidak sampai 5 menit
    • Penerusnya, Delphi, juga masih demikian. Ada tulisan tentang proyek nyata dengan sedikit lebih dari satu juta baris, termasuk video, dan komentarnya juga membahas waktu kompilasi Win64
      https://www.tmssoftware.com/site/blogold.asp?post=759
    • https://prog21.dadgum.com/47.html
  • Saat kecil, seorang pemilik toko komputer yang baik hati menjual PC semi-kompatibel yang menjalankan MS-DOS 1.25 kepada saya dengan harga bagus. Kira-kira setara dengan upah memotong rumput seratus kali dan menjaga anak
    Pemilik itu menjual Turbo Pascal untuk MS-DOS umum, yaitu versi yang tidak mengasumsikan adanya PC BIOS, dalam disket 8 inci, lalu memindahkannya ke format 5,25 inci 160KB yang dipakai semi-kompatibel saya. Saya berharap saat itu saya sudah cukup berterima kasih sebesar yang saya rasakan sekarang. Itulah yang memulai karier saya

    • Kalau begitu saya tanya. PC semi-kompatibel yang kamu maksud itu sebenarnya apa?
  • Pada awal 80-an, saya memakai Apple Pascal di Apple ][+ dan //e, yaitu lingkungan berbasis UCSC p-system Pascal, lalu beralih ke Turbo Pascal di DOS. Turbo Pascal benar-benar menyenangkan. Compiler yang sangat cepat, umpan balik yang baik, editor berwarna, dan key binding WordStar yang sudah saya kenal membuatnya menjadi pengalaman yang hebat
    Saya juga ingat ketika program sudah cukup besar hingga harus memakai fitur overlay. Di DOS, fitur itu pada dasarnya memungkinkan bagian-bagian program yang berbeda dimuat seperti halaman
    Saya juga ingat pernah bertemu David Intersimone, duta yang luar biasa untuk Borland, pada suatu waktu di tahun 80-an, mungkin menjelang akhir dekade. Itu ketika ia datang atas undangan cabang ACM lokal di universitas kami

  • Anehnya, Turbo Pascal adalah bahasa pemrograman tingkat tinggi pertama yang saya pelajari, dan lingkungannya adalah Macintosh Plus. Baru belakangan saya tahu bahwa Turbo Pascal lebih identik dengan dunia PC
    Saat kuliah, saya membeli komputer Apple pertama saya, Macintosh Plus, dengan pinjaman mahasiswa, dan secara kebetulan melihat salinan Turbo Pascal untuk Mac di kolom iklan koran kampus. Seorang profesor menjualnya sekitar 40 dolar, jadi saya langsung membelinya
    Untungnya ada manual, tetapi alat pengembangan Macintosh saat itu sangat sederhana. Tidak ada ResEdit, dan ada aplikasi R-Maker yang aneh, yang meminta kita membuat resource Macintosh sebagai file teks lalu menjalankannya lewat tool untuk menghasilkan resource fork
    Beberapa aplikasi pertama yang saya buat adalah implementasi algoritma dari kolom Computer Recreations di Scientific American dengan Turbo Pascal. Untungnya UI hampir tidak diperlukan, jadi biasanya cukup satu jendela dan beberapa tombol
    Belakangan saya mengenal THINK Pascal, IDE yang jauh lebih berpusat pada Mac, lalu pindah ke sana, dan setelah itu masuk ke THINK C
    Meski begitu, Turbo Pascal akan selalu menjadi kenangan yang penuh kasih. Pada masa ketika saya memasuki dunia baru yang liar, Turbo Pascal-lah yang membukakan pintunya bagi saya