Keadaan menyedihkan dari "pemisah rekor" atau "terminator garis" adalah warisan zaman kegelapan komputasi.
Sekarang, kita anggap remeh bahwa apa pun yang ingin kita wakili adalah data terstruktur dan sesuai dengan berbagai abstraksi yang mendefinisikan garis, file, protokol, pesan, markup, apa pun.
Tetapi pada suatu waktu ini tidak sepenuhnya benar. Aplikasi karakter kontrol bawaan dan pemrosesan khusus perangkat. Sistem otak-mati yang membutuhkan CR dan LF sama sekali tidak memiliki abstraksi untuk pemisah rekaman atau terminator saluran. CR diperlukan untuk mendapatkan tampilan teletype atau video untuk kembali ke kolom satu dan LF (hari ini, NL, kode yang sama) diperlukan untuk membuatnya maju ke baris berikutnya. Saya kira ide melakukan sesuatu selain membuang data mentah ke perangkat itu terlalu rumit.
Unix dan Mac sebenarnya menentukan abstraksi untuk garis akhir, bayangkan itu. Sayangnya, mereka menentukan yang berbeda. (Unix, ahem, yang lebih dulu.) Dan tentu saja, mereka menggunakan kode kontrol yang sudah "dekat" dengan SOP
Karena hampir semua perangkat lunak kami saat ini adalah turunan dari Unix, Mac, atau MS yang mengoperasikan SW, kami terjebak dengan kebingungan garis akhir.
\n
biasanya diwakili oleh linefeed, tetapi tidak harus linefeed.