Programming
Workshop

Spring 2018
course
site

Jim's Pig Latin

Assignment

Working with the others in your group, design and implement an industrial strength piglatin text conversion utility, which you will present in class. Include

A specification of what your utility does.
Documentation on how to install and use it.
Test cases and examples.

I also want you to think of this effort as an exercise in project management, so be thinking about how you're making decisions, how you're sharing the work, and what software tools you're choosing to use.

Design

Research

Googling "pig latin" and following links on those pages I find:

I choose to follow rules very similar to Donelly's, and used his transformation tool to to generate some examples.

But I also want to do better than he allows with utf-8 characters like ä or ó . Here are some resources I used to think about that.

Rules

These are the text to Pig Latin transformation rules I'll implement.

stack & API

status

$ tree
.
├── Makefile
├── imjaysigpayatinlay.py
├── readme.md                     # this file
└── test_output.txt

$ make                            # create test_output.txt

$ more test_output.txt            # ... and look at it.
Thu Feb 8 02:22:43 EST 2018
Trying:
    text_to_piglatin("apple")     # word starts with vowel
Expecting:
    'appleway'
ok
Trying:
    text_to_piglatin("cat")       # word starts with consonant
Expecting:
    'atcay'
ok

...

Failed example:
    text_to_piglatin("(foo) [bar]")  # parens and brackets
Expected:
    '(oofay) [arbay]'
Got:
    'oo)(fay ar][bay'

...

21 tests in 4 items.
7 passed and 14 failed.
***Test Failed*** 14 failures.