Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Wow I've been looking for a library like HAMPI for a long time.

Serendipity at its finest.



sorry it's off-topic, but you can download it from here:

http://people.csail.mit.edu/akiezun/hampi/


Thanks, I found it already but I can see you're one of the co-authors so I appreciate your effort.

It's going to be some time before I can get to using it but like I said this pretty much is exactly what a currently-stalled project has been looking for.

If I make a real use of this library I'll pass along a proper description so you can see what use it's getting.

As it'll be awhile I'll give you a minimal summary now (in as much detail as I can, which isn't that much sorry).

The overall point is to take input (sequence of words), and then generate further input that is "related" but not identical (think: clearly a variation on the theme, but not rote repetition). The mechanism is that there's a set of grammars specifying overlapping formal languages; input is broken into words and each word is parsed in each grammar that contains that word; some inference and calculation is done to generate a sort-of style profile and then that profile is used together with the underlying grammars to drive generation of new output.

The quality of the output has been underwhelming, mainly b/c doing exact parsing seems to leave a nasty trade-off between the "interestingness" of the grammars in the set and nontriviality of the "style profile":

- having "interesting" grammars means the style profile is too constrained (so the generated output too closely resembles the input)

- having "larger" grammars means the style profile is richer but the output is weak (doesn't adequately resemble the input to a human observer)

Where a library like hampi fits into this is (hopefully) the ability to efficiently loosen-up the parsing in a nicely-constrained way; using some metadata attached to the grammars it ought to be possible to intelligently knock-out part of a word and ask hampi to find a replacement string that makes the word parse within a particular language.

Essentially intentional misunderstanding of input => novel synthesis.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: