I made it to the three quarter mark … 75%!! WAHOO! Just 25 more to go.

Today’s exercise was protein translation. Given a string of three character codons return a string array of the matching amino acids stopping when you get to a “STOP” codon. I thought I was clever using a LINQ chunk command. Not only did other people do that, they did it better than me. Still my solution wasn’t bad and I have no desire to iterate on a working good solution that can be done slightly prettier.

Ok, back to the parser now. I think there are several things I want to do.

β˜‘Β The first is I need to put this in source control already. It is somewhat working, and I don’t want to lose it or start over.

☐ The next, I think I need to have the concept if built in functions like say ABS, SIN, COS, and RND. I most certainly don’t want to parse those individually. Maybe it will just be a function table and those are pre-populated.

☐ Speaking of functions, I think I messed up the BNF and made array access into function calls. Do I want arrays to use [] and functions use () or use () for both?

What did I get done. Well source control is a go, with no problems. I started on the built in functions by making a function table. I added math functions for SIN, COS, TAN, and ABS. String functions added are LEFT, RIGHT, MID, UCASE, LCASE, and SPACE. Partial support for LEN (it only works on strings at the moment).

At the last moment I added in string concatenation so I could make sure the SPACE function was working right. Also my left ALT key is no longer working πŸ™