Ini memiliki jawaban yang sangat jelas, sebenarnya: Kode sumber datang lebih dulu - dengan margin besar.
Sebelum memberikan rincian teknis, sedikit perspektif:
Bahasa pemrograman pertama semuanya diterjemahkan ke dalam bahasa mesin atau assembler dengan tangan . Gagasan menggunakan perangkat lunak untuk mengotomatisasi terjemahan ini (baik melalui kompiler atau evaluator) selalu muncul kemudian, dan jauh dari intuitif.
Pertimbangkan kutipan artikel Wikipedia ini tentang FORTRAN yang menggambarkan keengganan yang harus dihadapi penyusun:
... kompiler FORTRAN pertama [disampaikan] pada bulan April 1957. Ini adalah kompiler optimisasi pertama, karena pelanggan enggan menggunakan bahasa pemrograman tingkat tinggi kecuali jika kompilernya dapat menghasilkan kode yang kinerjanya sebanding dengan bahasa assembly kode tangan . [penekanan milikku]
=> Pada saat kompiler FORTRAN memasuki pasar (1957), orang sudah dengan senang hati memprogram baik dalam bahasa assembly maupun FORTRAN.
Kasusnya serupa untuk LISP (dari Peretas & Pelukis ):
Steve Russell berkata, lihat, mengapa saya tidak memprogram eval ini ..., dan saya berkata kepadanya, ho, ho, Anda membingungkan teori dengan praktik, eval ini dimaksudkan untuk membaca, bukan untuk komputasi. Tetapi dia terus maju dan melakukannya. Yaitu, dia mengkompilasi eval di kertas saya ke dalam kode mesin IBM 704, memperbaiki bug, dan kemudian mengiklankan ini sebagai interpreter Lisp, yang tentu saja itu. Jadi pada saat itu Lisp pada dasarnya memiliki bentuk yang dimilikinya hari ini ... "
Sekali lagi, tidak hanya kode sumber (dalam LISP) mendahului penerjemah, yang terakhir bahkan tidak tersirat dalam yang sebelumnya.
Namun perkembangan ini relatif terlambat. Meskipun tidak mempertimbangkan Mesin Analitik Charles Babbage dan program pertama terkait Ada Lovelace , ada bahasa pemrograman pada abad ke-20 yang mendahului penyusun:
Plankalkül Konrad Zuse dan konstruksi matematis λ-calculus yang diperkenalkan oleh Gereja Alonzo. Keduanya merupakan bahasa pemrograman yang ditentukan secara formal, tetapi tidak ada yang memiliki kompiler pada saat itu.
Untuk menempatkan ini ke dalam perspektif, λ-kalkulus adalah dari tahun 1930-an, dan Plankalkül dikembangkan sekitar tahun 1945. Sebaliknya, kompiler FORTRAN pertama keluar pada tahun 1957 (tetapi sekali lagi tiga tahun setelah FORTRAN ditentukan).