Section 0: Introduction. The Unconventional Desk Calculator, or udc as it shall henceforth be known, is a conventional desk calculator in that it allows the assignment and interrogation of mathematical expressions but it has additional features. These include function definitions, normal and array structured variables, logical operators such as 'and' and ‘or’, the if~then-else clause for use inside arithmetic expressions and a range of explanatory error messages. This particular version of the udc has been written in Berkeley Pascal. Because of this the udc's implementation has been complicated by the restricted set of software tools available. Software tools available in a comparable high level language like C, for instance, mean that lexical analysers and parsers can be written with greater ease. This document has been designed to give an in depth explanation of the use and abilities of the udc ( Section l ), to give an explanation of the workings and algorithms involved in the actual program at the same time as explaining what these processes are for and why they are necessary ( Section 2 ), to discuss the novel features, restrictions, and problems incurred in this particular implementation of udc ( Section 3 ), and finally to give Backus Normal form specifications of udc programs and pseudo-code ( a translation from the high level language to a not so detailed but easier to read, nearer to English language ) for all procedures within the program ( Section 4 ).