He leído un poco sobre semántica denotativa (DS) y estoy muy intrigado por el proceso de diseño de programas de computadora donde los tipos y funciones tienen asignaciones claras y fuertes a las matemáticas.
¿Hay algún recurso que discuta el diseño de programas basados en DS en detalle? He visto algunos tratamientos superficiales del tema.
Conozco Haskell, Scala, Common Lisp y un poco de Scheme, por lo que cualquier recurso que use esos idiomas sería muy apreciado.
Respuestas:
El diseño denotacional ( diseño de programa arraigado y que se deriva de la semántica denotacional) es mi metodología principal. Hace unos años, mientras escribía sobre FRP, me puse mucho más claro sobre lo que había estado haciendo. Consulte Programación funcional reactiva Push-pull . Para una descripción más explícita del paradigma y una variedad de ejemplos, vea Diseño denotacional con morfismos de clase de tipo . Una vez que tomé conciencia del patrón, comencé a buscarlo en todas partes. Donde falla, sé que tengo una fuga de abstracción. Para una descripción temprana e informal, vea la publicación del blog de Luke Palmer Semantic Design .
Siempre me interesan las aplicaciones de diseño denotacional, por lo que me encantaría saber acerca de sus exploraciones.
fuente
Hemos aplicado la semántica denotativa al diseño del lenguaje en sí, argumentando que el diseño de los lenguajes, en particular, los lenguajes específicos de dominio, debe comenzar con la definición de la semántica. Si está interesado en los detalles, ¡quizás quiera echar un vistazo a Semantics-Driven DSL Design y Semantics First! Repensar el proceso de diseño del lenguaje .
fuente