mimmo
> ciao a tutti,
> tra le cose a cui stavo pensando per i "miei ragazzi", è la realizzazione di un corso di introduzione a clojure autosufficiente. pensavo a qualcosa che mettesse insieme labrepl e marginalia. secondo voi è una stupidata o varrebbe la pena di lavorarci un poco? eventualmente c'è qualcuno che avrebbe voglia di collaborare su questa cosa?
Mi interesserebbe molto ma in questo momento non ho proprio tempo. Potremmo parlarne dopo la metà di aprile? (ma, ovviamente, non dovete aspettare me)
Ciao
--
Giorgio Valoti
Scusa l'ignoranza, ma esattamente marginalia a cosa servirebbe?
--
Marco Dalla Stella
web: http://thediracsea.org
twitter: http://twitter.com/kra1iz3c
> Il 26 marzo 2012 19:22, Giacomo Cosenza <mimmo....@gmail.com> ha scritto:
>> ciao a tutti,
>> tra le cose a cui stavo pensando per i "miei ragazzi", è la realizzazione di un corso di introduzione a clojure autosufficiente. pensavo a qualcosa che mettesse insieme labrepl e marginalia. secondo voi è una stupidata o varrebbe la pena di lavorarci un poco? eventualmente c'è qualcuno che avrebbe voglia di collaborare su questa cosa?
>
> Scusa l'ignoranza, ma esattamente marginalia a cosa servirebbe?
Genera la documentazione a partire dalle docstring (e dal file di progetto di leinengen). Esempio:
http://fogus.me/fun/marginalia/
Diciamo che è una specie di sistema di literate programming.
--
Giorgio Valoti
Genera la documentazione a partire dalle docstring (e dal file di progetto di leinengen). Esempio:
http://fogus.me/fun/marginalia/
Diciamo che è una specie di sistema di literate programming.
--
Giorgio Valoti
hai mai provato Emacs/Org per il literate programming?
Se Tim Daly sapesse che ho paragonato marginalia al LP gli viene un infarto: mi sembra piuttosto sensibile sull’argomento e sicuramente si tratta di due cose diverse.
Curiosità: hai mai provato Emacs/Org per il literate programming?
--Giorgio Valoti
On Mar 27, 2012, at 1:46 PM, Giorgio Valoti wrote:Se Tim Daly sapesse che ho paragonato marginalia al LP gli viene un infarto: mi sembra piuttosto sensibile sull’argomento e sicuramente si tratta di due cose diverse.beh, effettivamente LP è un sogno di decenni fa a cui ci si avvicina progressivamente, ma a passi molto lenti. ci sarebbe da contribuire a clojure in small pieces....ma cribbio il tempo è talmente tiranno...
Curiosità: hai mai provato Emacs/Org per il literate programming?purtroppo org mode mi manca proprio. ho letto e visto qualche cosa parecchio tempo fa, ma non ho mai fatto nulla.altra cosa che mi piacerebbe infilare nel corsetto è midje https://github.com/marick/Midje, sembra roba ben fatta per il Test Driven Design.
>
> Midje l’ho adottato quando sono passato alla 1.3 in cui non era più disponibile la vecchia libreria per i mock. Molto bella.
Ma dalla tua esperienza è utile in formazione? Io credo che insegnare queste cose ai giovani programmatori possa avere un qualche valore, non solo prospettivo, ma le tue esperienze dirette contano molto di più delle mie ipotesi estemporanee.
mimmo
Se vuoi usare un approccio top-down (scusa l’indentazione, lo sto scrivendo direttamente qui):
(unfinished B C)
(fact "la funzione A moltiplica i valori restituiti da B e C"
(A ..x.. ..y..) => 42
(provided
(B ..x..) => 7
(C ..y..) => 6
dove B e C non sono ancora state definite ecc. non vedo alternative a Midje. Discorso simile per testare l’espansione di una macro.
A livello didattico, la mia esperienza è stata che ha cambiato il mio modo di fare TDD: prima di Midje usavo quasi esclusivamente un approccio bottom-up e i mock li usavo solo per isolare; Midje mi ha fatto capire l’efficacia dell’approccio top-down e che cosa voglia veramente dire usare i mock (anche grazie a questo articolo: http://dl.acm.org/citation.cfm?id=1028765).
Quindi, la domanda potrebbe essere più capire dove vuoi concentrare l’attenzione. Più concretamente, se devo introdurre a Clojure un programmatore che ha sempre usato Java, Midje rischia di essere un elemento di distrazione perché va comunque un minimo spiegato ecc: molto più facile usare uno unit test “normale” e concentrarsi su come pensare in termini funzionali ecc. Niente vieta di introdurlo in un momento successivo.
Spero di essere stato utile.
--
Giorgio Valoti
> Quindi, la domanda potrebbe essere più capire dove vuoi concentrare l’attenzione. Più concretamente, se devo introdurre a Clojure un programmatore che ha sempre usato Java, Midje rischia di essere un elemento di distrazione perché va comunque un minimo spiegato ecc: molto più facile usare uno unit test “normale” e concentrarsi su come pensare in termini funzionali ecc. Niente vieta di introdurlo in un momento successivo.
>
> Spero di essere stato utile.
certo Giorgio, e grazie per il suggerimento. metterò in coda midje. condivido l'approccio top-down, con e senza tdd, anche se, evidentemente, con tdd è meglio.
mimmo
Se vuoi usare un approccio top-down (scusa l’indentazione, lo sto scrivendo direttamente qui):
(unfinished B C)
(fact "la funzione A moltiplica i valori restituiti da B e C"
(A ..x.. ..y..) => 42
(provided
(B ..x..) => 7
(C ..y..) => 6
dove B e C non sono ancora state definite ecc. non vedo alternative a Midje. Discorso simile per testare l’espansione di una macro.
A livello didattico, la mia esperienza è stata che ha cambiato il mio modo di fare TDD: prima di Midje usavo quasi esclusivamente un approccio bottom-up e i mock li usavo solo per isolare; Midje mi ha fatto capire l’efficacia dell’approccio top-down e che cosa voglia veramente dire usare i mock (anche grazie a questo articolo: http://dl.acm.org/citation.cfm?id=1028765).
Quindi, la domanda potrebbe essere più capire dove vuoi concentrare l’attenzione. Più concretamente, se devo introdurre a Clojure un programmatore che ha sempre usato Java, Midje rischia di essere un elemento di distrazione perché va comunque un minimo spiegato ecc: molto più facile usare uno unit test “normale” e concentrarsi su come pensare in termini funzionali ecc. Niente vieta di introdurlo in un momento successivo.
> On Wed, Mar 28, 2012 at 12:34 AM, Giorgio Valoti <gior...@me.com> wrote:
> […]
>
>
> FWIW, ho visto Marick fare una dimostrazione del "suo" approccio top-down con Midje ad Agile 2011 e mi e' piaciuto molto. Non voglio finire OT, ma io personalmente per quanto riguarda il mocking seguo piu' la scuola di Chicago (Martin, per intenderci) che quella di Londra (Freeman). Cio' nonostante l'approccio di Marick e' molto attraente. Penso che il programmatore Java che sa cos'e' il GOOS e ha seguito il lavoro di Freeman si troverebbe bene, piu' che altro perche' la quantita' di boilerplate necessaria e' molto piu' bassa rispetto al mondo Java.
Interessante. Perdona l’ignoranza, se capisco bene, l’approccio Chicago è più simile allo unit testing classico, giusto? Nella fretta delle mail precedenti ho trascurato di dire che con Midje è possibile seguire anche quel sistema, sebbene sia forse meno indicato con un linguaggio in gran parte funzionale come Clojure.
--
Giorgio Valoti
Interessante. Perdona l’ignoranza, se capisco bene, l’approccio Chicago è più simile allo unit testing classico, giusto?
Nella fretta delle mail precedenti ho trascurato di dire che con Midje è possibile seguire anche quel sistema, sebbene sia forse meno indicato con un linguaggio in gran parte funzionale come Clojure.
On Wed, Mar 28, 2012 at 11:08 AM, Giorgio Valoti <gior...@me.com> wrote:Interessante. Perdona l’ignoranza, se capisco bene, l’approccio Chicago è più simile allo unit testing classico, giusto?
Stiamo andando OT, comunque molto brevemente: […]
Figuratevi, magari tutti gli OT fossero così interessanti. :)
Stavo per dire la stessa cosa! :)
--
Some gratuitous spam:
http://ripple-project.org Ripple, social credit system
http://villages.cc Villages.cc, Ripple-powered community economy
http://common-lisp.net/project/armedbear ABCL, Common Lisp on the JVM
http://code.google.com/p/tapulli my current open source projects
http://www.manydesigns.com/ ManyDesigns Portofino, open source
model-driven Java web application framework
Il 28 marzo 2012 22:14, Giorgio Valoti <gior...@me.com> ha scritto:
>Figuratevi, magari tutti gli OT fossero così interessanti. :)
> Grazie per le info, Giuliano. Scusate per la deriva off-topic.
>