Forum: Italian Ruby user group approccio di sviluppo

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-05-18 14:40
(Received via mailing list)
Ciao a tutti,

volevo condividere con voi questo articolo
<http://patshaughnessy.net/2014/4/8/using-a-ruby-cl...
di Pat Shaughnessy in quanto quasi mi stupisco di quanto semplice ma al
tempo stesso efficiente e coerente sia questo tipo di approccio.

Have fun :-)
5ffafe70176a99f175d16192fd5be69e?d=identicon&s=25 Luca P. (luca_p)
on 2015-05-18 14:43
(Received via mailing list)
Senza nulla togliere all'eleganza dell'approccio, secondo me qui si
avvicina al "ho un martello quindi tutto è un chiodo" :)
Se vi piace la programmazione funzionale, non avete che da scegliere, io
consiglio Scala ma ce ne sono tanti altri!

Mi ricorda un po' quei post che ogni tanto si leggono sul non usare
l'autoloading in Rails e cose del genere.
Secondo me Ruby è un linguaggio che sacrifica tutto il resto sull'altare
dell'eleganza e della produttività, dunque privarsi di tali elementi
significa... che è meglio usare qualcos'altro.

My 2 cents da poliglotta!

2015-05-18 14:39 GMT+02:00 maurizio de magnis
<maurizio.demagnis@gmail.com>:
B55d9706b57e8d286a4f198daf2ac69c?d=identicon&s=25 Andrea Dallera (edwin_bolthar)
on 2015-05-18 14:45
Buono l' approccio al refactoring perø non c'e molto di "functional"
qui, a parte la chiamata a #map in fondo :)

A me tempo fa era piaciuto questo, ne ho un altro ancora meglio ma e' c#

http://codon.com/refactoring-ruby-with-monads

Andrea
C82630c82a3c675d2928804f432fcf17?d=identicon&s=25 Elia Schito (Guest)
on 2015-05-18 14:49
(Received via mailing list)
A me sembra più una parabola che parte e torna all’OOP passando da FP,
l’effetto tra prima e dopo è simile a quello che fa leggere POODR
<http://www.poodr.com/> ;)
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-05-18 14:53
(Received via mailing list)
@elia: +1
imho dimostra la versatilità di Ruby, quell'essere un buon "0.8
programming
language".

@luca: dai, questo
<https://gist.github.com/olistik/326094ff6703a9df31a8> mi
sembra semplicemente del buon senso applicato :-)

2015-05-18 14:48 GMT+02:00 Elia Schito <elia@schito.me>:
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-05-18 14:56
(Received via mailing list)
@andrea: aggiunto alla read list :-)

2015-05-18 14:52 GMT+02:00 maurizio de magnis
<maurizio.demagnis@gmail.com>:
Dc64befa87f79e074d55f83bcf9daa49?d=identicon&s=25 Silvano Stralla (sistrall)
on 2015-05-18 16:34
(Received via mailing list)
@elia: +1

Anche a me sembra che sia un esempio di buona programmazione orientata
agli oggetti: in quel contesto, la linea del file è un pezzo
importante del problema e decidere di rappresentarla con una classe è
un passo nella direzione giusta.

Mi suona sempre più stonato, invece, l'uso del termine funzionale in
casi come questo. Ad un certo punto in
http://pragdave.me/blog/2014/02/11/telling-asking-...
c'è scritto:

> parents are object-based or imperative) is not a functional language.
Silvano



Il 18 maggio 2015 14:55, maurizio de magnis
<maurizio.demagnis@gmail.com> ha scritto:
>>
>>> > avvicina al "ho un martello quindi tutto è un chiodo" :)
>>> >
>>> >> di Pat Shaughnessy in quanto quasi mi stupisco di quanto semplice ma al
>>> >>
>>
> Maurizio ಠ_ಠ My profile
> <https://plus.google.com/100973969013103507046/about>
> _______________________________________________
> Ml mailing list
> Ml@lists.ruby-it.org
> http://lists.ruby-it.org/mailman/listinfo/ml



--
Considera l'ambiente prima di stampare questa email. Be a total user
rather than a complete waster.


. . . Silvano Stralla . . .
❡ email: silvano.stralla@sistrall.it
❡ site: http://www.sistrall.it
★ future: http://contiamoci.com/
★ kitchen: http://keepcooking.it/
5ce16d85034e08079db3cafeb5b8ff09?d=identicon&s=25 Davide Rambaldi (Guest)
on 2015-05-18 17:17
(Received via mailing list)
Se non c'è arity non è funzionale.

Se non ci sono head e tail non è funzionale.

Se capisci il tuo codice dopo averlo scritto: non è programmazione
funzionale :-)

Il giorno lun 18 mag 2015 16:34 Silvano Stralla
<silvano.stralla@sistrall.it>
ha scritto:
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-05-18 17:30
(Received via mailing list)
@Silvano: considerando l'API esposta dalla classe Line, c'è referential
transparency
<http://en.wikipedia.org/wiki/Referential_transpare...,
che è una caratteristica peculiare dei linguaggi funzionali.
Ok che come dice il buon Dave Thomas (e Nanni Moretti) "Names are
important", ma in questo contesto non mi verrebbe da esorcizzare l'uso
di
"functional" se inteso come "direzione" di sviluppo.

2015-05-18 16:34 GMT+02:00 Silvano Stralla
<silvano.stralla@sistrall.it>:
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-05-18 17:33
(Received via mailing list)
@Davide: se consideri un subset specifico di Ruby, puoi trovare arity,
head, tail e pure codice incomprensibile :-D

2015-05-18 17:17 GMT+02:00 Davide Rambaldi <davide.rambaldi@gmail.com>:
Ff2c5ef7c7d38d18c3cd39d951cc5a07?d=identicon&s=25 Stefano Pigozzi (Guest)
on 2015-05-18 17:40
(Received via mailing list)
2015-05-18 17:17 GMT+02:00 Davide Rambaldi <davide.rambaldi@gmail.com>:

> Se capisci il tuo codice dopo averlo scritto: non  programmazione
> funzionale :-)

Ok, il Perl quindi  funzionale. Buono a sapersi.
C82630c82a3c675d2928804f432fcf17?d=identicon&s=25 Elia Schito (Guest)
on 2015-05-18 17:43
(Received via mailing list)
>> Se capisci il tuo codice dopo averlo scritto: non  programmazione
>> funzionale :-)
>
> Ok, il Perl quindi  funzionale. Buono a sapersi.

quick! qualcuno aggiorni wikipedia!
Dc64befa87f79e074d55f83bcf9daa49?d=identicon&s=25 Silvano Stralla (sistrall)
on 2015-05-18 17:54
(Received via mailing list)
@Maurizio, anche perché, in effetti, se proprio non possiamo usare
"funzionale", che termine dovremmo usare?
"FOOOP" (functional oriented object oriented programming)?

Mah...
s/v



Il 18 maggio 2015 17:29, maurizio de magnis
<maurizio.demagnis@gmail.com> ha scritto:
>> @elia: +1
>>
>> > parents are object-based or imperative) is not a functional language.
>> maurizio.demagnis@gmail.com>:
>> >>
>> scegliere, io
>> >>> >
>> >>> >>>
>> >>> >> Ml@lists.ruby-it.org
>> >>> http://lists.ruby-it.org/mailman/listinfo/ml
>> >
>> --
>> Ml mailing list
> Ml mailing list
> Ml@lists.ruby-it.org
> http://lists.ruby-it.org/mailman/listinfo/ml



--
Considera l'ambiente prima di stampare questa email. Be a total user
rather than a complete waster.


. . . Silvano Stralla . . .
❡ email: silvano.stralla@sistrall.it
❡ site: http://www.sistrall.it
★ future: http://contiamoci.com/
★ kitchen: http://keepcooking.it/
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-05-18 17:57
(Received via mailing list)
@Silvano: corro ad aggiungere la skill su Linkedin! ^_^

2015-05-18 17:53 GMT+02:00 Silvano Stralla
<silvano.stralla@sistrall.it>:
Dc70f4a04726fada8b9db8a18ff40412?d=identicon&s=25 Maurizio De Santis (succhiateste)
on 2015-05-18 17:57
(Received via mailing list)
Direi che un linguaggio per dirsi funzionale deve quantomeno avere
first-class functions, cio le funzione devono essere i tipi principali,
e
non le classi.

Poi ci si tira dietro currying, immutable data etc., ma comunque %w(1 2
3).map { |v| v.to_i } non  programmazione funzionale,  un costrutto che
ci somiglia ma l'ambiente in cui gira  completamente diverso. Tant' che,
nello stesso esempio precedente, la .map e la to_i potrebbero essere
ridefinite ed avere side effects.

--

Maurizio De Santis

Il giorno 18 maggio 2015 17:42, Elia Schito <elia@schito.me> ha scritto:
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-05-18 18:02
(Received via mailing list)
@Maurizio #functionalNazi !!! :-D

2015-05-18 17:57 GMT+02:00 Maurizio De Santis
<desantis.maurizio@gmail.com>:
Eff93e9bbe063b7136c9b6f218071a09?d=identicon&s=25 Marco Mastrodonato (marcomd)
on 2015-06-09 16:56
Ruby non può essere considerato linguaggio funzionale ma direi solo per
un discorso di "side effect".
E' vero che in ruby trattiamo degli oggetti ma nella pratica possiamo
ottenere lo stesso risultato: creare delle funzioni che possano essere
passate come parametri, zero o piu' input restituiscono un output ecc.

Il currying mi risulta si possa ottenere, l'asterisco davanti ad un
argomento modifica il numero di parametri, no?

Essendo ispirato anche a linguaggi funzionali direi che e' normale tutto
questo.
Non ha le stesse restrizioni di un linguaggio funzionale che significa
ci puoi fare tanta altra roba ma anche che aumenta il rischio di errore.
Dc70f4a04726fada8b9db8a18ff40412?d=identicon&s=25 Maurizio De Santis (succhiateste)
on 2015-06-09 17:08
(Received via mailing list)
Che poi Ruby  cos versatile che lo puoi pure trasformare in Haskell :P
https://gist.github.com/andkerosine/3356675#file-raskell-rb

--

Maurizio De Santis

Il giorno 9 giugno 2015 16:56, Marco Mastrodonato
<m.mastrodonato@gmail.com>
ha scritto:
5ffafe70176a99f175d16192fd5be69e?d=identicon&s=25 Luca P. (luca_p)
on 2015-06-09 17:23
(Received via mailing list)
puoi != devi :D

--
Luca Pradovera
luca.pradovera@gmail.com
Dc70f4a04726fada8b9db8a18ff40412?d=identicon&s=25 Maurizio De Santis (succhiateste)
on 2015-06-09 19:02
(Received via mailing list)
> “puoi” != “devi” :D

Ci mancherebbe :D

Il giorno mar 9 giu 2015 17:22 Luca Pradovera <luca.pradovera@gmail.com>
ha
scritto:
6067112d95bbe5bb037350ec7ba3826e?d=identicon&s=25 Xx Xx (k1ra)
on 2015-06-22 17:45
Maurizio De magnis wrote in post #1173693:
> Ciao a tutti,
>
> volevo condividere con voi questo articolo
> <http://patshaughnessy.net/2014/4/8/using-a-ruby-cl...
> di Pat Shaughnessy in quanto quasi mi stupisco di quanto semplice ma al
> tempo stesso efficiente e coerente sia questo tipo di approccio.
>
> Have fun :-)

404

File not found
321db48bf4bdf48da05e781325aed20a?d=identicon&s=25 Maurizio De magnis (olistik)
on 2015-06-22 18:33
(Received via mailing list)
prova questo:

http://goo.gl/G4O6QR

:-)

2015-06-22 17:45 GMT+02:00 Xx Xx <darkslipknot@msn.com>:
This topic is locked and can not be replied to.