Re: Parser CSV en clojure

2 views
Skip to first unread message

Bertrand Dechoux

unread,
Jul 26, 2012, 4:04:50 AM7/26/12
to clojure-pari...@googlegroups.com, clojur...@googlegroups.com
Bonjour,

1) J'ai mis le CUG Lyon en copie.

2) Si tu expose le code sur un repository github, tu pourrais avoir plus de réponses.

3) Tu pourrais être intéressé par Incanter. Cette librairie gère déjà le parsing de csv (en réutilisant open CSV) et permet de faire plein de stats, en clojure.
-> http://incanter.org
-> https://github.com/liebke/incanter

4) Par curiosité, je regarderai quand j'aurai le temps.

Bertrand

2012/7/25 Christian Sperandio <christian...@gmail.com>
Bonsoir à tous,

Je me suis mis à Clojure tout récemment :$ Après avoir lu le livre Practical Clojure et lisant actuellement Clojure Programming, j'ai décidé de faire un petit poc.
Dans mon travail, nous traitons souvent des données provenant de fichiers CSV. Je me suis donc mis à travailler sur un parser CSV.
Je vous présente donc mon petit projet et j'aimerai connaitre l'avis de personnes plus expérimentées que moi (du genre, est-ce que je suits les best practices du langage).

Voici une petite description de mon projet:
  • Détection des enregistrements sur plusieurs lignes
  • Gestion des délimiteurs et séparateurs de champs

Je fournis le source principal ainsi qu'un source de test dans l'archive. Pour info, j'ai développé avec la version 1.3 de Clojure.

Dans mes tests, je simule le contenu d'un fichier dans un vecteur (afin de faciliter les tests et les validers).

En espèrant ne pas avoir trop écorché le langage et si cela peut servir à d'autres personnes.






--
Bertrand Dechoux

Christophe Grand

unread,
Jul 26, 2012, 4:09:20 AM7/26/12
to clojure-pari...@googlegroups.com, clojur...@googlegroups.com
Salut,

A propos du 2) un gist peut suffire et est moins "lourd" à créer qu'une repo classique.

J'ai trop rapidement regardé le code mais :
* j'estime que la fabrication de regex complexifie ta solution par rapport à de la simple recherche de sous-chaîne
* essaye de te passer de loop/recur

Christophe

2012/7/26 Bertrand Dechoux <dech...@gmail.com>



--
Professional: http://cgrand.net/ (fr)
On Clojure: http://clj-me.cgrand.net/ (en)
Reply all
Reply to author
Forward
0 new messages