-The branch with the finalized code for each project will be the Master branch, so please focus on it when grading.
This is Eric's Operating Systems class initial project. See http://www.labouseur.com/courses/os/ for details. It was originally developed by Alan and then enhanced by Bob Nisco and Rebecca Murphy over the years. Fork this (or clone, but fork is probably better in case Alan changes anything about the initial project) into your own private repository. Or download it as a ZIP file. Then add Alan (userid Labouseur) as a collaborator.
- Install the npm package manager if you don't already have it.
- Run
npm install -g typescript
to get the TypeScript Compiler. (You may need to do this as root.)
Some IDEs (e.g., Visual Studio, IntelliJ, others) natively support TypeScript-to-JavaScript compilation. If your development environment does not then you'll need to automate the process with something like Gulp.
npm install -g gulp
to get the Gulp Task Runner.npm install -g gulp-tsc
to get the Gulp TypeScript plugin.
Run gulp
at the command line in the root directory of this project.
Edit your TypeScript files in the source/scripts directory in your favorite editor.
Visual Studio and IntelliJ have some tools that make debugging, syntax highlighting, and lots more quite easy.
WebStorm looks like a nice option as well.
Gulp will automatically:
- Watch for changes in your source/scripts/ directory for changes to .ts files and run the TypeScript Compiler on them.
- Watch for changes to your source/styles/ directory for changes to .css files and copy them to the distrib/ folder if you have them there.
What's TypeScript? TypeScript is a language that allows you to write in a statically-typed language that outputs standard JavaScript. It's all kinds of awesome.
Why should I use it? This will be especially helpful for an OS or a Compiler that may need to run in the browser as you will have all of the great benefits of strong type checking and scope rules built right into your language. Where can I get more info on TypeScript Right this way!