HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
js-choi
fnparse
Clojure2010–2013
js-choi / fnparse · Archived

fnparse

[deprecated] A library for creating functional parsers in Clojure.

2Distinct people
3Mentions
0Explicit recommenders
112GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

[deprecated] A library for creating functional parsers in Clojure.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:03:16 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year3 dated mentions

Observed mentions: 2010-02-12 01:43:45 UTC to 2013-01-25 00:17:39 UTC.

0122010-01-01 00:00:00 UTC to 2011-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20102011-01-01 00:00:00 UTC to 2012-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments20112012-01-01 00:00:00 UTC to 2013-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2013

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20102010-01-01 00:00:00 UTC2011-01-01 00:00:00 UTC202
20112011-01-01 00:00:00 UTC2012-01-01 00:00:00 UTC000
20122012-01-01 00:00:00 UTC2013-01-01 00:00:00 UTC000
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC101

What Hacker News says

3 sources
It's hard to compare Clojure and Scala. Scala is a multi-paradigm programming language with strong OOP support and functional support. It's arguably more verbose than Clojure but looks much more similar to Java. Clojure is a Lisp. Lisp stands aside all other programming languages, first of all, because it supports syntactic abstraction (a.k.a. "code is data"). Hardcode addicts (I'm not one of them) say there are only two programming languages - Lisp and non-Lisp. Here's a good comparison of Scala and Clojure: http://stackoverflow.com/questions/1314732/scala-vs-groovy-v... When we made the decision to switch to Clojure, several things affected it, in no particular order: - we had some people who were already very proficient in Lisp - we liked how expressive and compact it was - Lisp is considered to possess immense expressive power (see
Read the rest
http://www.paulgraham.com/lisp.html) - we were enamoured by Cascalog (http://nathanmarz.com/blog/introducing-cascalog-a-clojure-ba...), and it's written in and for Clojure. This one payed off very well. - Lisp has a reputation of being great at manipulating data: lists, graphs, etc. Here's a good answer from one of our engineers: http://www.quora.com/Clojure/Why-would-someone-learn-Clojure As for libraries, both Clojure and Scala are JVM-based, and Clojure has a very good syntax for Java interop, so all Java libraries are available to us. But, of course, Clojure community also spits out libraries like crazy, for example, take a look at this marvel which we use in Drake for parsing: https://github.com/joshua-choi/fnparse.
In Introducing Drake, a kind of ‘make for data’
Seeing how im advocating that everyone should know when to be using parsing tools rather than cobbling together a regexp cludge, here are some links to some relevant tools in a variety of languages. Note that these are not parser generator tools, but parser combinator libraries: * Python: PyParsing - http://pyparsing.wikispaces.com/ - this is probably the most well respected parser library for python picoparse - http://github.com/brehaut/picoparse - My parsec inspired parser combinator library. It is significantly more light weight than pyparsing, and I would recommend pyparsing in its place for more heavy lifting parsers. * Ruby: RParsec - http://rubyforge.org/projects/rparsec/ - A ruby implementation of Parsec. I've heard good
Read the rest
things about it. * Haskell: Parsec - http://legacy.cs.uu.nl/daan/parsec.html - This is an amazing library, worth anyones time. http://book.realworldhaskell.org/read/using-parsec.html http://www.haskell.org/haskellwiki/Parsec * F#: FParsec - http://www.quanttec.com/fparsec/ - This is reason enough to learn F#; it is a fairly true port of the haskell library and very nice to use. * Scala: Packrat Parsing - I believe this is part of the standard lib. http://www.scala-lang.org/docu/files/api/scala/util/parsing/combinator/PackratPars… * Clojure: fnparse - http://github.com/joshua-choi/fnparse * Java: jparsec - http://jparsec.codehaus.org/ [edits: formating]
In The absolute bare minimum every programmer should know about regular expressions

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.