Comparing words like "farm" and "farming"
- Dominant language
- Python
- Stars
- 1.1k
- Forks
- 127
- PR merge metrics
- No merged PRs in 30d
Description
Words like "farm" and "farming" don't appear to be considered similar in any way. Is there a way to properly check whether they match, or is that out of scope?
**Input:**
```
inflect_engine = inflect.engine()
print("compare:")
print("\tfarm vs farm: \t\t" + str(inflect_engine.compare('farm', 'farm')))
print("\tfarm vs farms: \t\t" + str(inflect_engine.compare('farm', 'farms')))
print("\tfarm vs farming: \t" + str(inflect_engine.compare('farm', 'farming')))
print("\tfarm vs farmming: \t" + str(inflect_engine.compare('farm', 'farmming')))
print("\tfarm vs farmer: \t" + str(inflect_engine.compare('farm', 'farmer')))
print("\tfarm vs farmmer: \t" + str(inflect_engine.compare('farm', 'farmmer')))
print("\tfarm vs farmed: \t" + str(inflect_engine.compare('farm', 'farmed')))
print("\tfarm vs farmmed: \t" + str(inflect_engine.compare('farm', 'farmmed')))
print("\ncompare_nouns:")
print("\tfarm vs farm: \t\t" + str(inflect_engine.compare_nouns('farm', 'farm')))
print("\tfarm vs farms: \t\t" + str(inflect_engine.compare_nouns('farm', 'farms')))
print("\tfarm vs farming: \t" + str(inflect_engine.compare_nouns('farm', 'farming')))
print("\tfarm vs farmming: \t" + str(inflect_engine.compare_nouns('farm', 'farmming')))
print("\tfarm vs farmer: \t" + str(inflect_engine.compare_nouns('farm', 'farmer')))
print("\tfarm vs farmmer: \t" + str(inflect_engine.compare_nouns('farm', 'farmmer')))
print("\tfarm vs farmed: \t" + str(inflect_engine.compare_nouns('farm', 'farmed')))
print("\tfarm vs farmmed: \t" + str(inflect_engine.compare_nouns('farm', 'farmmed')))
print("\ncompare_verbs:")
print("\tfarm vs farm: \t\t" + str(inflect_engine.compare_verbs('farm', 'farm')))
print("\tfarm vs farms: \t\t" + str(inflect_engine.compare_verbs('farm', 'farms')))
print("\tfarm vs farming: \t" + str(inflect_engine.compare_verbs('farm', 'farming')))
print("\tfarm vs farmming: \t" + str(inflect_engine.compare_verbs('farm', 'farmming')))
print("\tfarm vs farmer: \t" + str(inflect_engine.compare_verbs('farm', 'farmer')))
print("\tfarm vs farmmer: \t" + str(inflect_engine.compare_verbs('farm', 'farmmer')))
print("\tfarm vs farmed: \t" + str(inflect_engine.compare_verbs('farm', 'farmed')))
print("\tfarm vs farmmed: \t" + str(inflect_engine.compare_verbs('farm', 'farmmed')))
print("\ncompare_adjs:")
print("\tfarm vs farm: \t\t" + str(inflect_engine.compare_verbs('farm', 'farm')))
print("\tfarm vs farms: \t\t" + str(inflect_engine.compare_verbs('farm', 'farms')))
print("\tfarm vs farming: \t" + str(inflect_engine.compare_verbs('farm', 'farming')))
print("\tfarm vs farmming: \t" + str(inflect_engine.compare_verbs('farm', 'farmming')))
print("\tfarm vs farmer: \t" + str(inflect_engine.compare_verbs('farm', 'farmer')))
print("\tfarm vs farmmer: \t" + str(inflect_engine.compare_verbs('farm', 'farmmer')))
print("\tfarm vs farmed: \t" + str(inflect_engine.compare_verbs('farm', 'farmed')))
print("\tfarm vs farmmed: \t" + str(inflect_engine.compare_verbs('farm', 'farmmed')))
```
**Output:**
```
compare:
farm vs farm: eq
farm vs farms: s:p
farm vs farming: False
farm vs farmming: False
farm vs farmer: False
farm vs farmmer: False
farm vs farmed: False
farm vs farmmed: False
compare_nouns:
farm vs farm: eq
farm vs farms: s:p
farm vs farming: False
farm vs farmming: False
farm vs farmer: False
farm vs farmmer: False
farm vs farmed: False
farm vs farmmed: False
compare_verbs:
farm vs farm: eq
farm vs farms: p:s
farm vs farming: False
farm vs farmming: False
farm vs farmer: False
farm vs farmmer: False
farm vs farmed: False
farm vs farmmed: False
compare_adjs:
farm vs farm: eq
farm vs farms: p:s
farm vs farming: False
farm vs farmming: False
farm vs farmer: False
farm vs farmmer: False
farm vs farmed: False
farm vs farmmed: False
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the supplied Python example, then locate the implementations of compare, compare_nouns, compare_verbs, and compare_adjs. Clarify whether derivational relationships such as farm/farming are intended; done should be defined by agreed matching behavior and regression tests for the listed pairs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100