1,277
edits
Changes
→Part 1: Choose the problem that your language will solve: intro
# Argue why this problem is hard. For example, the code example you show may be obviously ugly, but do programmers indeed find it difficult to write this code, or to debug it?
# Argue why this problem is worth solving. Aren't there simpler solutions than designing a language? For exaple, it may be possible to work around the problem, sidestepping it by switching to a different, existing language. Of course, switching languages is not always possible, which motivates embedded languages and tools for dealding with existing languages.
Navigation bars are a standard feature of many web pages. In recent years, a somewhat standard paradigm has developed of using unordered lists, which are then styled with CSS to give them a more traditional appearance.
Accomplishing this in a good-looking and cross-browser-compatible manner is not trivial and requires a fair amount of CSS fiddling. Furthermore, the HTML code which must be written to set up the navigational elements contains a fair amount of extraneous markup which detracts from getting a clear picture of the navigational elements and their actions.
Furthermore, navigational menus can often contain submenus for a structured hierarchy. This requires additional javascript coding to work properly and further detracts the web page designer from concentrating on accomplishing his task; namely, working on the actual ''design'' of the menu
==Part 2: Study a language that solves a similar problem and describe it in this homework==