Ho portato Little in C, ho rifatto la eval expr in RPN, ho cambiato approccio, ora ho una fase di prescal con la costruzione dun lex-tree, le expression sono un super token, array di lex.Sto anche pensando che un po' di modifiche l'interprete si presta ad accomodare una machine layer, quindi a sfornare codice assembly per un arch. L'idea potrebbe essere sfruttare poi GnuAS aka gas, p.e. per 68000, o 6809, di questo ultimo ho un as-6809 che lavora nettamente meglio della versione GNU.Boh, vedremo, intanto ho separato anche il lexer.
Citazione da: fulvio - 19 ſettembre 2013, 15:13:42Tutto questo parlare di lisp mi ha fatto ricordare questo video di Kevlin Henney. È una passerella di esempi di codice, tutti che in qualche modo insegnano qualcosa, secondo me assolutamente da vedere:Un'ora di video non riesco proprio sorbirmelo... -_- C'è una sintesi da qualche parte?
Tutto questo parlare di lisp mi ha fatto ricordare questo video di Kevlin Henney. È una passerella di esempi di codice, tutti che in qualche modo insegnano qualcosa, secondo me assolutamente da vedere:
Citazione da: cdimauro - 19 ſettembre 2013, 21:06:45Citazione da: fulvio - 19 ſettembre 2013, 15:13:42Tutto questo parlare di lisp mi ha fatto ricordare questo video di Kevlin Henney. È una passerella di esempi di codice, tutti che in qualche modo insegnano qualcosa, secondo me assolutamente da vedere:Un'ora di video non riesco proprio sorbirmelo... -_- C'è una sintesi da qualche parte?No ma lo puoi vedere tranquillamente a tratti, l'autore presenta dei pezzi di codice che hanno fatto la storia (la prima versione di wiki, il codice che controllava i razzi ariane, un gioco di scacchi completo in assembly mi pare 68k che sta in una pagina, etc.). C'è anche la funzione eval di lisp scritta in lisp (questo mi ha fatto scattare il ricordo).
boh, Windows mi manca, probabilmente qualcosa che possa girare sotto il support unix for windows, e quindi ripiegherei su dev-scheme/tinyscheme, un dialetto Lisp un pelo + friendlyma forse c'e' qualcosa di megliop.s.ma il fine e' + interessante dello strumento, sarei curioso di chiederti lisp, a che pro ?
Dovresti provare Python.
Entrambe le cose. Anche se, ovviamente, la programmazione funzionale non è ai livelli di un linguaggio funzionale. Python integra alcune cose interessanti, che sono quelle mediamente più utili per un programmatore.
chissa' se e' meglio risolvere labirinti in python, in erlang o in lispquasi quasi mi prendo un paio di orette per toccare con mano come/quanto aiuta pythonlisp aiuta, ma fa venire emicrania da aspirina C !!!(erlang anche peggio)
Citazione da: legacy - 27 ſettembre 2013, 12:11:08chissa' se e' meglio risolvere labirinti in python, in erlang o in lispquasi quasi mi prendo un paio di orette per toccare con mano come/quanto aiuta pythonlisp aiuta, ma fa venire emicrania da aspirina C !!!(erlang anche peggio)Chissà se le lambda function di C++ aiutano! (sicuramente a far aumentare il mal di testa! )
// in C++14using namespace std;vector< int > v { 1, 2, 3, 4, 5 };auto forth_element = find_if( begin( v ), end( v ), []( const auto& i ) { return i == 4; });
prima il predicato doveva essere una funzione o un functor separato. Tant'è che secondo lo standard la lambda function è equivalente ad un functor anonimo. E di solito è implementata proprio così. Si tratta di zucchero sintattico, non di supporto alla programmazione funzionale.