Quine, Program yang Meng-kloning Diri

Pada tugas kuliah KI kali ini, Kita disuruh untuk membuat Quine. Nah, apa itu Quine. Secara mudah, Quine adalah program yang apabila dijalankan akan menghasilkan copy dari dirinya sendiri. Jadi bisa dibilang, apabila di-run, program ini akan meng-kloning dirinya sendiri! Menarik kan..

Dari referensi, saya mendapatkan Quine dalam bahasa LISP(ada masih ingat??😀 ) :

((lambda (x)
       (list x (list (quote quote) x)))
      (quote
         (lambda (x)
           (list x (list (quote quote) x)))))

Ya, di LISP ini menggunakan Lambda Expression. Nah, karena udah agak males mengingat-ingat LISP, coba kita lihat yang lain. Kali ini C++ :

#include <iostream.h>
#define ENIUQ(TEMPLATE) cout << TEMPLATE << "(" << #TEMPLATE << ");}";

void main()
{ENIUQ("#include <iostream.h>\n#define ENIUQ(TEMPLATE) cout << TEMPLATE
<< \"(\" << #TEMPLATE << \");}\";\n\nvoid main()\n{ENIUQ");}

Gimana, menarik kan?

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: