Week 2
5/24: Installed X server, got Linux graphical applications working
5/25: Learned some basic Scala (important since SAFE is written in Scala)
5/26: Continued learning Scala, began learning basic JavaScript
5/27: Learned about more ECMAScript 6 features, read more about SAFE. I learned specific ECMAScript 6 features such as let and const keywords, arrow functions, and the module system.
5/28: Finished abstract, launched website
Week 3
6/1: Found the tests in Test262 that are relevant to the project, started analyzing the structure of unit tests for SAFE
6/2: Studied the structure of unit tests in Test262, looked at the testing harness for Test262
6/3: Experimented with manually converting Test262 unit tests into SAFE-analyzable unit tests
6/4: Began writing a program that uses regular expressions to translate Test262 unit tests into SAFE-analyzable unit tests
Week 4
6/8: Finished draft of regular expression Test262Converter program, uploaded it to GitHub, fixed major bugs. GitHub link: github.com/davidhfrost/Test262Converter
6/9: Began reading about grammar and context-free grammars (CFGs)
6/10: Began learning about parsing
6/11: Started reading Bryan Ford's paper about parsing expression grammars (PEGs)
Week 5
6/14: Shared some tests for const declarations
6/15: Read about SAFE's parser, Rats!
6/16: First attempt at adding "let" declarations to SAFE's parser.
6/17: Read about Babel and installed it.
6/18: Continued reading about Babel and its application to React programs, particularly for JSX tags.
Week 6
6/21: Looked for ways to integrate Babel's CLI into SAFE
6/22: Learned about abstract syntax trees
6/23: Looked into possibility of using Babel for newer features of ECMAScript syntax in addition to React JSX tags
6/24: Read about usage of Babel, browser compatibility with different versions of JavaScript
6/25: Experimented with Babel
Week 7
6/28: Started reading paper "A Semantics for the Essence of React" by Madsen, Lhotak, and Tip
6/29: Looked at different structures of React programs, focusing on the Create React App template
6/30: Began search for common React bugs, mistakes, errors
7/1: Looked further into promising candidates for bugs
7/2: Learned about React component states, a key part of React that is involved with many common bugs
Week 8
7/5:
7/6: Attended IEEE seminar on wireless security
7/7:
7/8: Looked for potential journals for publication
7/9: Attended IEEE seminar on technology and law and a symposium workshop
Week 9
7/12: Talked with Nick and Ameer and began finalizing candidates for bug detection
7/13: Attended invited talk
7/14: Started looking at deliverables for previous REU students to get an idea of what format our deliverables should be in
7/15: Attended Rubber Ducky invited talk, read "Code Smell Detection Tool for JavaScript Programs" by Dr. Lu's former student Dr. Nabil Almashfi
7/16: Learned more about technology behind ESLint
Week 10
7/19: Organized more work for deliverables
7/20: Edited poster further, created final presentation
7/21: Did REU conference, continued work on deliverables
7/22: