
Palindromes ============================================== Palindromes is a package for finding palindromes in files. Visit the homepage http://www.jeuring.net/Palindromes/ Features -------- The primary features of Palindromes include: * Linear-time algorithm for finding exact palindromes * Linear-time algorithm for finding text palindromes, ignoring spaces, case of characters, and punctuation symbols. Requirements ------------ Palindromes has the following requirements: * GHC version 6.8.1 or later - It has been tested with version 6.10.1. * Cabal library version 1.2.1 or later - It has been tested with version 1.6.0.1. Download & Installation ----------------------- * Use cabal-install cabal install palindromes * If you don't have cabal-install, you must download the Palindromes package from HackageDB and install it manually. Get the `tar.gz` file and decompress it. http://hackage.haskell.org/package/palindromes Once downloaded, use the following commands for configuring, building, and installing the library. runghc Setup.lhs configure runghc Setup.lhs build runghc Setup.lhs install * Get the source: svn checkout https://subversion.cs.uu.nl/repos/staff.johanj.palindromes/ Documentation ------------- The API is documented using Haddock and available on the Palindromes package site. Examples -------- You can find example palindromes, on which Palindromes has been tested, in the `examples` directory of the source distribution. https://subversion.cs.uu.nl/repos/staff.johanj.palindromes/trunk/examples/pa... Bugs & Support -------------- To report bugs, use the Google Code project page for Palindromes. http://code.google.com/p/palindromes/ For general concerns and questions, email the author: johan at jeuring.net Licensing --------- Palindromes is licensed under the so-called BSD3 license. See the included `LICENSE` file. Credits ------- Palindromes is based on the functional program developed by Johan Jeuring in his PhD thesis. The current author and maintainer of Palindromes is Johan Jeuring. http://www.jeuring.net/

Johan Jeuring wrote:
Palindromes ==============================================
Palindromes is a package for finding palindromes in files.
Visit the homepage
A few options are not working well: $ ./palindromes --h ********************* * Palindrome Finder * ********************* palindromes: --h: openFile: does not exist (No such file or directory) $ cat f socorram-me subi no onibus em marrocos $ ./palindromes -tl f ********************* * Palindrome Finder * ********************* Usage: palindrome [command-line-options] input-file The following options are available: --h: This message -p : Print the longest palindrome (default) -ps: Print the longest palindrome around each position in the input -l : Print the length of the longest palindrome -ls: Print the length of the longest palindrome around each position in the input -t : Print the longest palindrome ignoring case, spacing and punctuation -tl: Print the length of the longest text palindrome $

On Sun, 6 Sep 2009, Johan Jeuring wrote:
The primary features of Palindromes include:
* Linear-time algorithm for finding exact palindromes * Linear-time algorithm for finding text palindromes, ignoring spaces, case of characters, and punctuation symbols.
You made me curious, whether there are palindromes in my texts. However, I have some difficulties getting sensible results from it. First I found a long palindrome, that was actually a code example for an array definition. So I wondered, whether this palindrome shadows nicer shorter palindromes in the same text. How about an option for showing the n longest palindromes or palindromes with length larger than n? Then I found a palindrome in Functi[on sin is no]t defined How about restricting text palindromes to sequences that are bounded by space and punctuation? The Palindrome welcome message is a bit disturbing when running palindrome on a set of files. I also like to filter out HTML markup (with strip-html from tagchup package), before piping into palindrome. This however would require to run palindrome on standard input. The options are '-x' for a single answer and '-xs' for multiple answers, but for '-ts' this logic does not hold. How about '-lt' or '-tl' ? I would like to have '-ts' to print all text palindromes (or actually, I would like to get all palindromes with at least 5 characters).
Documentation -------------
The API is documented using Haddock and available on the Palindromes package site.
It says, that the executable is FindingPalindromes, but actually it is palindromes, right? Pretty much suggestions, I know. Don't get worried and thank you for the program!

Hi Henning, Thanks for the many suggestions.
On Sun, 6 Sep 2009, Johan Jeuring wrote:
The primary features of Palindromes include:
* Linear-time algorithm for finding exact palindromes * Linear-time algorithm for finding text palindromes, ignoring spaces, case of characters, and punctuation symbols.
You made me curious, whether there are palindromes in my texts. However, I have some difficulties getting sensible results from it. First I found a long palindrome, that was actually a code example for an array definition.
This was using the option -t I suppose.
So I wondered, whether this palindrome shadows nicer shorter palindromes in the same text.
Indeed it might. By using -ts you will get all text palindromes around every position in the string, but I guess you found this option (the description of which was not correct, as you noticed). But on a long text you get (probably too) many results.
How about an option for showing the n longest palindromes or palindromes with length larger than n?
This makes sense. I will add an option -n which takes a number n and outputs all palindromes of length at least n.
Then I found a palindrome in Functi[on sin is no]t defined How about restricting text palindromes to sequences that are bounded by space and punctuation?
This makes sense as well.
The Palindrome welcome message is a bit disturbing when running palindrome on a set of files.
I see. I'll remove it.
I also like to filter out HTML markup (with strip-html from tagchup package), before piping into palindrome. This however would require to run palindrome on standard input.
Again, this makes sense.
The options are '-x' for a single answer and '-xs' for multiple answers, but for '-ts' this logic does not hold. How about '-lt' or '-tl' ? I would like to have '-ts' to print all text palindromes (or actually, I would like to get all palindromes with at least 5 characters).
Corrected.
Documentation -------------
The API is documented using Haddock and available on the Palindromes package site.
It says, that the executable is FindingPalindromes, but actually it is palindromes, right?
Right.
Pretty much suggestions, I know. Don't get worried and thank you for the program!
You're welcome, thanks for the suggestions. I'll try to upload a new version of palindromes that includes your suggestions in the next couple of weeks. -- Johan
participants (3)
-
Henning Thielemann
-
Johan Jeuring
-
Rafael Cunha de Almeida