Ever had that problem when you know of the concept yet can't recall the word? Thesaurus are usually pretty poor at this task, because it's built to link individual words to each other, instead of definitions to a single word.
# install elasticsearch via https://www.elastic.co/downloads/elasticsearch git clone firstname.lastname@example.org:whosken/reversedict.git cd reversedict pip install -r requirements.txt python cli.py --index
Basic look up
import reversedict reversdict.lookup('run fast')
python cli.py 'run fast'
python cli.py 'run fast' --synonym sprint