Jadi jelas bahwa serangkaian hal adalah urutan hal, dan urutan karakter / byte / dll. mungkin juga disebut string. Tapi siapa yang pertama menyebut mereka string? Dan kapan? Dan dalam konteks apa sehingga terjebak? Saya selalu bertanya-tanya tentang ini.
58
Jawaban:
Bisakah kita mendapatkan kutipan sungguhan sebelum referensi Hugo 1963? Iya. John McCarthy menggunakan kata "string" dalam fungsi Rekursif dari ekspresi simbolik dan perhitungannya dengan mesin, Bagian I , dari April 1960.
tetapi lebih bermanfaat untuk pertanyaan ini, referensi ke string sebagai tipe data:
Itu bukan contoh yang bagus. Dengan mengatakan "serangkaian karakter", McCarthy tidak menggunakan "string" dalam arti yang khusus dimiliki oleh pemrogram hari ini. Anda dapat dengan mudah mengatakan "string" ke programmer Java dan mereka akan tahu bahwa bagian "karakter" tersirat: Penggunaan McCarthy tidak menunjukkan fitur ini. Mari kita coba kembali ke tahun 1950-an, untuk melihat apakah McCarthy memainkannya dengan aman atau apakah istilah itu benar-benar tidak ada saat itu. LISP mungkin tidak akan banyak membantu di sini, karena didasarkan pada kalkulus matematika sehingga fungsi string McCarthy mungkin merupakan aplikasi pertama dari ide untuk pemrosesan string.
Sistem pemrosesan string penting pada 1960-an adalah SNOBOL 1964 , A Manipulation Language . Ini mengutip makalah McCarthy di atas, tetapi juga membahas COMIT dan SCL. Pekerjaan yang mereka kutip di SCL tidak dipublikasikan: jalan buntu yang malang.
COMIT lebih mudah dilacak. Seni Pemrograman Komputer (Volume 1, edisi ketiga, hal.461) memberi tahu kita bahwa VH Yngve menulis sebuah artikel 1963 CACM di situ. Tapi saya sedang mencari penggunaan awal "string", jadi saya akan melakukan pencarian penulis untuk publikasi sebelumnya.
Yang pertama saya temukan adalah Bahasa Pemrograman untuk Terjemahan Mekanis , mulai Juli 1958. Ini hanya mengandung satu penggunaan kata "string":
Sekali lagi, penggunaan ini seperti McCarthy: ini bukan bukti untuk "string" yang digunakan dalam arti saat ini. Melihat kertas secara rinci, kita melihat bahwa struktur data adalah "garis" pada kartu (memungkinkan untuk kelanjutan "garis" yang lebih panjang).
Oke, kita akan bergerak maju dalam sejarah COMIT dan melihat apa yang bisa kita dapatkan. Referensi pertama yang bermanfaat adalah Sistem COMIT untuk terjemahan mekanis , dari proses konferensi bulan Juni 1959.
Ini tampaknya lebih mirip dengan cara kita menggunakannya hari ini: "string" berdiri sendiri dan sebagai bonus memiliki simbol khusus yang dapat dikenali: tanda dolar masih digunakan dalam beberapa rasa BASIC untuk menandakan variabel string.
Dari sekitar waktu ini, kata "string" juga muncul berkali-kali dalam bahasa perintah untuk menangani string simbol oleh Perlis dan Smith dari ACM '58 Proceeding, dan sekali dalam The Share 709 System: Mesin Implementasi Program Simbolik oleh Boehm dan Baja.
Mencari 'string' di perpustakaan digital ACM pada awal 1960-an menghasilkan 62 hasil, termasuk judul-judul seperti "Penanganan string dalam ALGOL", "Manipulasi String dalam Bahasa Baru" dan "Teknik penyimpanan tipe-daftar untuk informasi alfanumerik". Tampaknya gagasan itu sudah mengakar saat itu.
Saya berpendapat bahwa "string" dalam pengertian jargon ilmu komputer sebagai daftar karakter yang teratur menjadi umum selama beberapa tahun sekitar tahun 1960. Sebelum itu, penulis seperti Yngwe dan McCarthy dapat mengatakan "string karakter" dan memastikan bahwa mereka dipahami, tetapi tidak bisa menggunakan "string" sebagai kata kosong dalam arti yang digunakan hari ini.
Tulisan singkat mungkin diperkenalkan ke arus utama komputasi oleh kertas Perlis dan Smith. Itu belum banyak dikutip, tetapi satu kutipan penting adalah penambahan sintaksis dan semantik untuk ALGOL oleh Joseph W. Smith pada bulan April 1960 (dalam edisi yang sama CACM seperti deskripsi McCarthy tentang LISP). Dari makalah itu:
Bagi saya, ini merupakan bukti "string" yang berarti tipe data untuk perhitungan simbolik yang ditegaskan dalam leksikon akademik, dan yang penting diperkenalkan pada alat yang digunakan untuk perhitungan komersial.
Kebetulan, Bahasa Pemrograman: Sejarah dan Masa Depan oleh Jean Sammet (1972) menunjukkan bahwa COMIT dan SNOBOL adalah nenek moyang manipulasi string, jadi saya cukup yakin bahwa tidak akan ada contoh sebelumnya.
sumber
Bukan jawaban yang lengkap, tetapi penggunaan string yang berarti "sejumlah objek yang diatur dalam garis" sudah ada di akhir 1400-an. Sumber
Ini pada dasarnya adalah penggunaan yang sama.
sumber
Referensi paling awal aku bisa menemukan di komputasi adalah dari Maret 1963 's METEOR: Sebuah LISP Interpreter untuk String Transformasi oleh Daniel G. Bobrow di MIT AI Labs.
The Oxford English Dictionary memiliki contoh komputasi sebelumnya dari 1956 edisi Journal of Association for Computing Machinery :
sumber