هم‌تمثیلی

هم‌تمثیلی  در برنامه‌نویسی کامپیوتری نامی است که الن کی در تز دکترای خود در سال ۱۹۶۹ میلادی به خصوصیتی از زبان‌های برنامه‌نویسی اطلاق کرده‌است که در آن‌ها ساختار برنامه دقیقاً شبیه به شکل نحوی آن باشد؛ که در نتیجه، ساختار درونی برنامه را می‌توان به راحتی از روی متن سطح بالای برنامه استنتاج کرد. در صورتی که زبانی هم‌تمثیل باشد، بدین معنی است که درخت نحوی آن دارای ساختاری مشابه با متن زبان است، که خود به این معنی است که درخت نحوی زبان و نحو زبان از دیدگاه جبر مجرد دارای یک‌ریختی هستند. این ویژگی اجازه می‌دهد تا تمام کدهای داخل برنامه با یک نوع نمایش یکسان به عنوان داده نگاشته شوند و یا مورد دسترسی قرار گیرند.

اولین مزیت زبان‌های هم‌تمثیل، توانا بودن در تولید و تغییر کد همان برنامه در زمان اجرا است که در زبان‌های از نوع دیگر از طریق بازتاب یا Reflection (تبدیل رشته‌ها و تفسیر آن در کامپایلر) انجام می‌شود.

 جستارهای وابسته 
 کرل
 آی‌او

 برای مطالعه بیشتر 
 Ira R. Forman and Nate Forman, Java Reflection in Action (2005), 
 Ira R. Forman and Scott Danforth, Putting Metaclasses to Work (1999), 

 پیوند به بیرون 
 Reflection in logic, functional and object-oriented programming: a short comparative study
 An Introduction to Reflection-Oriented Programming
 Brian Foote's pages on Reflection in Smalltalk
 Java Reflection API Tutorial از اوراکل

 منابع 



رده:موضوعات مربوط به زبان‌های برنامه‌نویسی