nlangp Random Sentence Generator for Context-free Grammar Earley Parser for Context-free Languages Hidden Markov Models for Gene Names Baum-Welch Algorithm for English Letters