Context: Makro higienis adalah makro yang perluasannya dijamin tidak menyebabkan penangkapan identifier secara tidak sengaja. Mereka adalah fitur dari bahasa pemrograman seperti Scheme, Dylan, Rust, Nim, dan Julia. Masalah umum penangkapan acak dikenal baik dalam komunitas Lisp sebelum pengenalan makro higienis. Penulis makro akan menggunakan fitur bahasa yang akan menghasilkan identifier unik (misalnya, gensym) atau menggunakan identifier yang tidak jelas untuk menghindari masalah. Makro higienis adalah solusi program untuk masalah penangkapan yang terintegrasi ke dalam makro expander itu sendiri. Istilah "higiene" diciptakan dalam makalah Kohlbecker et al. tahun 1986 yang memperkenalkan perluasan makro higienis, yang terinspirasi oleh terminologi yang digunakan dalam matematika.

Bahasa apa saja yang memiliki makro higienis?

Beberapa bahasa yang memiliki makro higienis termasuk Scheme, Dylan, Rust, Nim, dan Julia.