Seperti halnya FP, pada akhirnya, semua program kami terstruktur. Artinya, tidak masalah seberapa murni atau fungsional kita membuat mereka - mereka selalu diterjemahkan ke perakitan, jadi apa yang sebenarnya berjalan di balik tudung adalah instruksi, status dan loop. Kami semacam meniru FP.
Sebagai perangkat keras noob, pertanyaan saya adalah: mengapa kita tidak menggunakan arsitektur komputer yang benar-benar menghitung sesuatu dengan gaya fungsional? Sebagai contoh, sebuah komputer dapat terdiri dari "chip fungsional" primitif seperti "concat", "map" dan "mengurangi", dan sebuah program hanya akan memberitahu komputer cara mengalirkan data antara chip-chip tersebut untuk menghitung hasil yang diinginkan , seperti dalam bahasa concatenative.
Ini tidak masuk akal, tetapi mungkin menggambarkan apa yang saya pikirkan.
sumber
if we could make a specialized chip for Filter, for example, it would need just a single clock for a Filter operation.
Tidak juga, karena Filter bukan "operasi"; itu adalah fungsi tingkat tinggi yang menerapkan operasi eksternal sewenang-wenang ke daftar. Anda tidak dapat mengurangi itu menjadi satu siklus jam tunggal.Jawaban:
Mereka membuat komputer seperti itu. Ini disebut FPGA . Tentu saja, FPGA mendukung logika sekuensial dan kombinasional, tetapi tidak ada yang mencegah Anda dari hanya menggunakan bagian kombinasional seperti yang Anda sarankan.
Dalam prakteknya, bagaimanapun, logika sekuensial (jenis dengan negara) sangat berguna bahkan pada tingkat chip. Untuk satu hal, itu secara signifikan mengurangi jumlah gerbang logika yang diperlukan untuk menyelesaikan masalah. Untuk yang lain, ini memecahkan banyak masalah desain terkait dengan sinyal yang memiliki penundaan propagasi yang berbeda.
Jika Anda tertarik pada hal semacam itu, FPGA layak untuk dicoba. Ada papan mirip arduino murah yang disebut papilio yang bagus untuk pemula. Orang-orang menggunakannya untuk semuanya, mulai dari kontrol robot hingga penambangan bitcoin.
sumber
Secara esensial, ya, komputer analog bekerja seperti itu: Anda mengubah parameter dan arus listrik diubah sesuai itu. Itulah yang membuat mereka "lebih cepat", untuk sementara waktu, pada 1950-an - Anda tidak peduli dengan lambatnya pembuatan dan modifikasi "keadaan" yang terpisah seperti pada raksasa digital sebelumnya.
Dan bisa dibilang, komputer kuantum dapat bekerja seperti itu juga: jika keadaan beberapa fenomena kuantum tergantung pada keadaan orang lain, maka mengubah beberapa keadaan "awal" akan mengubah keadaan berikut secara bersamaan - tidak ada "keadaan" di antara.
sumber