See the Details section below for more information.
Important! Note that these steps have to be followed pretty much in this order. The only flexibility is that you can start writing the main program once you have an implementation of the kernel component (though it may be useful to implement the checking kernel and any needed extension before the main program so that you can use those components to simplify the main program).
cp -r /class/sce/now/321/labs/catalogs/lab6 /project/c321axnn
cd /project/c321axnn/lab6 chmod -R g-l,g+rwX . set-group-ID .
Here are some more details about each of the tasks/components you need to work on.
The sample output provided (TagCloudSample.html) shows the HTML needed to display a tag cloud. This file only displays the most frequent 100 words in the sample text (importance.txt). This is a more effective use of a tag cloud than trying to display all the words that occur in the document. For the purpose of this lab, it is OK to hardcode the number of most frequent words you want to output. Note that the provided style sheet (tagcloud.css) is needed to be able to display the tag cloud correctly.
Here is a list of possible feature of your program and the resulting tag cloud (required ones are tagged that way, but I would recommend experimenting with as many of these as you have time for).
A good starting point for your main program is the CountWords program you implemented in Closed Lab #7. However, make sure you use your new components in the program. You can't simply modify the original program to output the tag cloud without employing all your new components. Note also that your main program (just like all the other components) is expected to follow the high-quality standards of all submissions in 221/222/321. So make sure you structure your solution well (by specifying and implementing the needed global operations), you comment everything appropriately, format everything consistently, etc.
Finally, make sure you use your extension in your tag cloud program.
Make sure that your catalog has the correct structure and that all components are in the appropriate location (e.g., abstract templates are under lab6/AT/Family/ and concrete templates are under lab6/CT/Family/, where Family is the name of your new component family).
rcpp-submit c321?? lab6If you get an error message rather than a confirmation of success, please read the message; it contains useful information! Do not just run the same command again. Save the e-mail you get as a receipt of submission, just in case.