Tutorial Membuat Interpreter/Compiler

Membuat sebuah interpreter/compiler masih merupakan misteri bagi sebagian besar orang. Setelah melihat-lihat aneka kurikulum, dan slide kuliah di berbagai tempat di Indonesia, saya mulai menyadari mengapa. Pertama: dasar teori untuk membuat sebuah compiler/interpreter kurang diajarkan dengan baik, dan yang kedua: mata kuliah kompilasi hanya berisi teori, padahal mempraktikkan pembuatan compiler/interpreter tidaklah sulit Proses interpretasi/kompilasi dimulai […]

Garbage Collection bukan Panasea

Para mahasiswa yang belajar C setelah belajar beberapa bahasa lain (seperti PHP dan Java) biasanya akan kesulitan, karena di C alokasi memori harus diperhatikan dengan sangat detail. Bahkan setiap string harus dialokasi manual. Anda juga harus tahu dengan tepat apakah suatu objek berada di heap atau stack (dalam C *objek* adalah suatu lokasi memori yang […]

Pendidikan Pemrograman Yang Tidak Baik

Seperti telah saya tuliskan sebelumnya, belajar pemrograman secara formal itu perlu, tapi sayangnya beberapa tempat tidak mengajarkan pemrograman dengan baik. Berikut ini beberapa ciri pengajaran pemrograman yang tidak baik: Terlalu berfokus pada tools tertentu yang trend saat ini. Mahasiswa wajib memakai tools X (misalnya IDE-nya harus Microsoft Visual Studio, atau harus memakai Visual Prolog). Tools […]

Representasi Bilangan Desimal di Komputer

Dalam dunia komputer, biasanya kita menggunakan representasi floating point untuk menyimpan bilangan desimal. Namun itu bukan satu-satunya representasi yang ada. Ada beberapa representasi lain yang berupa fixed point, misalnya BCD (binary coded decimal), Chen-Ho, dan DCD (Densely Coded Decimal). Jika diperlukan Anda pun bisa membuat representasi sendiri, sesuai yang Anda mau. Metode penyimpanan yang ada […]

Struct vs Union

Posting ini merupakan jawaban saya pada sebuah pertanyaan di milis linux-programming (Juli 2007). Saya posting di sini karena mungkin akan berguna bagi pemula dalam C. Struct berguna untuk mengelompokkan data. Contoh: struktur mahasiswa mungkin memiliki NIM, nama, dst. Rasanya ini mudah dimengerti. Union: untuk memberi beberapa nama untuk satu lokasi memori. Ini yang biasanya yang […]

Mengenal fitur bahasa: Tipe Enumerasi

Sebagian orang menganggap bahasa hanya sebagai alat, dan memakai bahasa apapun sama saja. Sebagian lagi fanatik terhadap suatu bahasa, dan menganggap bahasa yang lain itu jelek. Menurut saya yang benar ada di antara keduanya itu. Dalam banyak hal, memakai bahasa apa saja sama saja, tapi dalam kasus tertentu bahasa tertentu lebih baik dari bahasa yang […]