[Python] Domanda su Bologna-XPUG

enrico franchi enrico.franchi a gmail.com
Ven 13 Mar 2015 21:50:24 CET


2015-03-13 19:14 GMT+00:00 Carlos Catucci <carlos.catucci a gmail.com>:
>
> Io ho risposto loro che di solito si usa PIP oppure setup.py install, ma
>> che in generale, se ho un progetto molto grande metto tutto nel package e
>> via. Se proprio devo posso scrivermi due righe apposite. Il buon Finelli
>> (batti un colpo lo so che ci sei) ha indicato di usare "buildout (finché
>> qualche anima pia non farà qualcosa di meglio)".
>>
>
> Non saprei, make, per dire, con C/C++ e' praticamente indispensabile,
> Maven per Java (non gestisco progetti in java da un tot anche per non
> dovermici confrontare) sara' una necessita' imprescindibile, Rake pare sia
> considerayo un must dai rubisti. Io so solo che per ora (non lavoro a
> progetti delle dimensioni a cui lavora gra parte dei nostri guru in lista
> pero') il serpentone con qualche "iniezione" C/C++ se proprio serve una
> marcia in piu' mi e' sempre andato bene.
>

Io credo che tutto il paragone sia completamente mal-guidato. E nota non e'
che "non c'e' bisogno".

make e' un tool (generico finche' vuoi) che viene principalmente utilizzato
per fare *build* di software C/C++ (e non gestisce le dipendenze, a meno di
non farlo a mano [0]). Certo, puoi farci quello che vuoi, ma nel contesto
in cui stiamo discutendo e' un'opzione per pilotare compilazione e linking.
Poi certo, volendo in qualche modo gestisce anche il problema
dell'installazione (sempre a patto di farlo a mano). Se vuoi anche
risolvere in qualche maniera le dipendenze ti trovi a dovere lottare con
gli auto-tools. Oppure puoi usare cmake o scons. Ora che io sappia tutta
questa roba *non* si va a pescare le dipendenze, non risolve le
dipendenze... semplicemente linka alla robba giusta.

Maven viceversa e' creato proprio per il problema di andare a sucarsi le
dipendenze esterne (e farci varie cose). Ant invece e' piu' simile a Make
come posizionamento nella toolchain. E poi c'era IVY e ....

E nota... make non e' specifico per C (io per dire lo usai anche per
Erlang), rake nasce in Ruby, ma spesso si usa *anche* per altro. rake e'
praticamente make on steroids. Maven e' in qualche modo una bestia
diversa.  Quindi vorrei capire di cosa si parla.

setuptools e pip sono semmai piu' limitati di rake/gems o di Maven, ma non
e' che non esistono.


--
[0] ok, qui non e' chiaro, con dipendenze andare a pescarsi il pacchetto
giusto quando gli dici che deve linkare con gmp-4.3; ovviamente gestisce
invece le dipendenze di build interne ai target.


> Tengo d'occhio Go, ma non ho ancora avuto occasione di approfondirlo,
> magari per fare cose concurrent tra non molto dovro' metterci mano.
> Communque io suppongo che non esista un tool standard solo perche' non e'
> realmente necessario. Ho fatto a Nusco il paragone con il costrutto
> switch(o select)/case che non esiste in Python in quanto inutile (e una
> catena if...elif...else con limitazioni).
>

Sul fatto che non siano necessari non sono d'accordo. Io direi che i tool
standard ci sono. Poi magari non sono all'altezza, ma questo e' un discorso
diverso. O magari lo sono.



-- 
.
..: -enrico-
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20150313/2feb6fb2/attachment.html>


Maggiori informazioni sulla lista Python