Informazioni sul servizio
TradottoSono un programmatore di logica funzionale e lavoro professionalmente in Curry, quindi offro di progettare e implementare soluzioni dichiarative dove il codice imperativo ordinario si trasforma in confusione. Curry combina funzioni pure nello spirito di Haskell con programmazione logica: descrivo un compito come un insieme di relazioni, e la riduzione e il calcolo non deterministico stessi attraversano lo spazio di ricerca. È il mio strumento quotidiano. Negli anni ho scritto risolutori di vincoli, motori per puzzle e pianificazione, analizzatori sintattici e piccoli linguaggi di dominio, preferendo sempre equazioni leggibili all'ottimizzazione manuale dei cicli. Il flusso di lavoro tipico è: ci accordiamo su una specifica, modello il dominio con tipi algebrici e schemi di funzione, aggiungo variabili libere e scelte non deterministiche dove è necessaria la ricerca, e incapsulo il risultato in modo che il codice chiamante ottenga risposte deterministiche e testabili. I principali sistemi sono PAKCS e KiCS2; so come individuare dove la ricerca esplode e aggiungere vincoli in anticipo per ridurla. I risultati includono codice sorgente commentato, una breve nota sul modello dichiarativo, una suite di test e una chiamata per esaminare il design in modo che il tuo team possa mantenere il codice. Aiuto anche progetti accademici: implementazioni di riferimento per articoli, esempi didattici, artefatti riproducibili per la valutazione. Se hai un compito combinatorio o basato su regole e hai bisogno di una soluzione chiara, non di una scatola nera, Curry è ideale, e sono felice di costruirlo con te.