Un programa puede modificarse a sí mismo mientras se ejecuta. Esto permite que el código se actualice dinámicamente y continúe ejecutándose con las modificaciones. Algunos lenguajes como C, JavaScript y Prolog permiten que un programa cambie su propio código y luego ejecute la versión actualizada como parte de la misma ejecución.