Anoche, estaba pensando en lo que creo que son características avanzadas del lenguaje ruby, a saber, Continuations (callcc) y objetos vinculantes. Me refiero a avanzado porque tengo un fondo de oo langages de tipo estático (C#, Java, C++), descubrí el ruby recientemente, por lo que estas características del lenguaje no me son muy familiares.Uso en el mundo real de objetos vinculantes en ruby
Me pregunto qué podría ser el uso en el mundo real de estas características de langages. En mi experiencia, todo se podría hacer con oo langages escritos de forma estática, pero a veces no acepto muy inteligentemente. Creo que descubrí la belleza/interés de la lectura de continuación de ese bonito artículo de Sam Ruby: http://www.intertwingly.net/blog/2005/04/13/Continuations-for-Curmudgeons
Aún así, estoy perdido con el objeto Binding. ¿Puede alguien proporcionarme algunos ejemplos del mundo real de algo que se puede hacer inteligentemente con Objetos vinculantes pero no muy inteligentemente con lanzas que carecen del concepto de Unión rubí?
Estaba pensando en llevar algunos objetos a su estado inicial cuando algo sale mal durante un proceso largo, pero no estoy seguro de que esto pueda implementarse con el objeto Binding y creo que podría implementarse muy inteligentemente clonando objetos antes el procesamiento y reemplazo del objeto modificado con sus clones cuando algo sale mal durante el procesamiento. Entonces este no es un ejemplo válido, creo.
Gracias de antemano por su ayuda.
¡Gracias! ¡Esto es correcto! Implementar una característica de depuración parece ser un uso del objeto Enlace. Me pregunto si esta característica de depuración fue documentada como un ejemplo de enlaces en el libro de piquetas o no. ¿Puedes ver otros usos de objetos vinculantes? –
@dhruv Esto es bastante astuto. Creo que lo agregaré a mi paquete de utilidad, al lado de putsv (se pone verboso) etc ... ¡Gracias! – Ryanmt