MetaStudents / SchoolSim

A simulation of the time management aspect of school
0 stars 1 forks source link

Change Json format for #2 #14

Open IsaacPD opened 6 years ago

IsaacPD commented 6 years ago

Resolves #2 . See test.json for the new format. "project" - has an int value that represents the total work required to complete the project "homework" - is an array of int arrays with 2 values [size, duration], homeworks of that size will be assigned for duration # of classes [0, x] will "assign" no HW for x days. "exceptions" - is an array of days which there are no lectures or hw assigned. i.e. for [x, y, z] the x class from the 0th class is canceled.

IsaacPD commented 6 years ago

As for the alternative approach my main concern is how much memory it would take up to store all those arrays of lectures ahead of time. And you would additionally loose the functionality you mentioned above so it isn't really convincing me.

meygerjos commented 6 years ago

OK here's an alternative alternative approach. Don't convert into an array of lectures, convert into an iterator object that you can interact with kind of like an array, but which can be infinite, and which doesn't store all the lectures internally. All the exception stuff could be dealt with internally. And Bar and Schedule could use two different copies of this object so that they don't step on each others toes.

IsaacPD commented 6 years ago

This line in Lecture.hx delta += Datetools.days(7); presents issues with daylight savings as well as making it incompatible with lectures that have schedules in the form of [Week A Tues, Week B Monday,...]