- Artículo sobre "Railway Oriented Programming" (ROP), un método funcional de manejo de errores en el desarrollo de software
- ROP basado en la analogía del ferrocarril, fácil de entender y entretenido
- Se creó en GitHub un proyecto que compara C# convencional y F# usando el enfoque ROP
- Advertencia sobre usar ROP de forma extrema, explicada en detalle en un texto titulado "Against Railway-Oriented Programming"
- Presentado en varias conferencias sobre este tema, como NDC London 2014, NDC Oslo 2014 y Functional Programming eXchange 2014
- El enfoque hacia ROP está relacionado con el mónada
Either de Haskell y la composición de Kleisli, pero no intenta ser un tutorial de mónadas
- Se enfatiza la importancia de comenzar con ejemplos concretos y avanzar hacia conceptos abstractos
- Incluye técnicas del enfoque ROP como usar una lista de tipos de error definidos por el usuario, integrar funciones monádicas y no monádicas en un pipeline, mapear excepciones a casos de error y combinar en paralelo funciones monádicas
- El objetivo es ofrecer una plantilla ROP versátil que fuerce un estilo consistente y sea fácil de mantener
- Para quienes quieran una biblioteca F# lista para usar con NuGet, se recomienda el proyecto Chessie
- Se creó un servicio web de ejemplo usando técnicas ROP y se aplicó el enfoque ROP a FizzBuzz
- Se sugieren lecturas adicionales, incluidas varias publicaciones y tutoriales sobre mónadas, para quienes quieran más detalles sobre
Either y la composición de Kleisli
2 comentarios
Programación orientada al ferrocarril para crear programas sin defectos
Opiniones en Hacker News
withen Elixir como una implementación práctica de ROP. Esto permite la ejecución secuencial de funciones y posibilita un retorno anticipado si alguna función no coincide con la salida esperada.