I used these three libraries recently and want to write something down, :).
Montezuma
Montezuma is a full text index/search engine, What interested me is it has a port circle: Common Lisp -> Ruby -> Java -> Common Lisp, Why I can not use original version?
Montezuma offers a search-each method to search, but search-each only call a callback function to deal with search result, I have to mutate variables which violate function programming style. Another inconvenience is there is not a clean all index method, only a delete-document method. Besides it does not export get count of index method. I must use ::.
(montezuma::num-docs (montezuma::reader *wiki-index*))
cl-markdown
I use emacs-muse as mashup language of this post, however elisp is not popular, perl is, Markdown is a similar markup language written in Perl. I found cl-markdown as a Common Lisp port.
cl-html-diff
It is great Common Lisp always has library which I want to find. cl-html-diff generates a human-readable diff for html document, human-readable is provide two element del and ins, I do not know whether there are default style for them, I add two style to my css file.
ins{ color: blue text-decoration: underline } del{ color:red text-decoration: overline }
Regarding Montezuma:
ReplyDeleteI'm not sure about the reasons for not using the original approach, but I have some hunches:
* the original might just have been a paper without implementation
* the original might not have been in standard Common Lisp
* the original might be copyrighted
* the original might be too slow for today's standards
Anyway, the other criticisms you made are highly valid. Would you like to add this functionality to Montezuma? It would be useful.
I had to smile at your comment "It is great Common Lisp always has library which I want to find.". Most people complain about the (perceived) lack of libraries for CL! :)
Leslie