{"id":85,"date":"2020-02-21T18:04:15","date_gmt":"2020-02-21T18:04:15","guid":{"rendered":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/?p=85"},"modified":"2020-02-21T18:04:15","modified_gmt":"2020-02-21T18:04:15","slug":"aarohis-status-update-for-february-22","status":"publish","type":"post","link":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/2020\/02\/21\/aarohis-status-update-for-february-22\/","title":{"rendered":"Aarohi&#8217;s Status Update for February 22"},"content":{"rendered":"<p><b>Progress<\/b><\/p>\n<p><span style=\"font-weight: 400\">At the beginning of the week, I wrote a unit testing apparatus that takes in an input stream of the same format as what the robot will be receiving from the master tile and outputs a list encoding the position information of the tiles. It creates an m x n array (m rows and n columns of codeblox tiles) with the appropriate tile code at the correct location. If there is no tile at a given position, it outputs -1 for that position.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">A sample input and output is below:<\/span><\/p>\n<p><span style=\"font-weight: 400\">Code:\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">while(1) {<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0\u00a0\u00a0\u00a0robot.moveForward(1);<\/span><\/p>\n<p><span style=\"font-weight: 400\">\u00a0\u00a0\u00a0\u00a0robot.moveReverse(1);<\/span><\/p>\n<p><span style=\"font-weight: 400\">}<\/span><\/p>\n<p><span style=\"font-weight: 400\">Stream: <\/span><span style=\"font-weight: 400\">[6,0,0,13,0,1,19,1,1,37,1,2,1,2,1,38,2,2,1]<\/span><\/p>\n<p><span style=\"font-weight: 400\">Interpreter Input: <\/span><span style=\"font-weight: 400\">[13, 19, -1, -1, 37, 1, -1, 38, 1]<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400\">This will be used to test the standalone interpreter logic. We will feed the program encodings corresponding to a program from the codeblox. The programs can be correct, or have various errors (syntax, semantic and\/or logic).\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">The logic for the unit testing can also be used in the integration stage, when we connect the embedded logic to the interpreter.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400\">After this, I speced out the codeblox languages. We plan on performing error checking, so we have two types, bool and num. I an working on restructuring eval_expression in order to make to be able to handle embedded expressions, and therefore it will be recursive. I will also be checking the types of functions and expressions in eval_expression, and throw typechecker errors appropriately.\u00a0\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>Schedule<\/b><\/p>\n<p><span style=\"font-weight: 400\">I managed to simplify the testing apparatus and finished it this week, and I underestimated the time it will take me to perform error checking and modifying preexisting code, since I decided to make large modifications regarding types and evaluating expressions. I will be updating the Gantt chart accordingly.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>Goals for next week<\/b><\/p>\n<ol>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Finish eval_expression (recursive function)\u00a0<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Finish handling command sequences<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Begin working on handling conditional sequences\u00a0<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Begin working on implementing error checking (mark where error checking needs to be done)\u00a0<\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400\">The goals for next week are more sparse than usual since we will be working on the Design Presentation and Design Document. <\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Progress At the beginning of the week, I wrote a unit testing apparatus that takes in an input stream of the same format as what the robot will be receiving from the master tile and outputs a list encoding the position information of the tiles. It creates an m x n array (m rows and n columns of codeblox tiles) with the appropriate tile code at the correct location. If there is no tile at a given position, it outputs&#8230;<\/p>\n<p class=\"read-more\"><a class=\"btn btn-default\" href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/2020\/02\/21\/aarohis-status-update-for-february-22\/\"> Read More<span class=\"screen-reader-text\">  Read More<\/span><\/a><\/p>\n","protected":false},"author":266,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[5,8],"tags":[],"_links":{"self":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/posts\/85"}],"collection":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/users\/266"}],"replies":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/comments?post=85"}],"version-history":[{"count":1,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/posts\/85\/revisions"}],"predecessor-version":[{"id":86,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/posts\/85\/revisions\/86"}],"wp:attachment":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/media?parent=85"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/categories?post=85"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s20-teamb5\/wp-json\/wp\/v2\/tags?post=85"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}