Dijkstra once wrote that computer science is no more about computers than astronomy is about telescopes. Despite the many incredible advances in c- puter science from times that predate practical mechanical computing, there is still a myriad of fundamental questions in understanding the interface between computers and the rest of the world. Why is it still hard to mechanize many tasks that seem to be fundamentally routine, even as we see ever-increasing - pacity for raw mechanical computing? The disciplined study of domain-speci?c languages (DSLs) is an emerging area in computer science, and is one which has the potential to revolutionize the ?eld, and bring us closer to answering this question. DSLs are formalisms that have four general characteristics. a They relate to a well-de?ned domain of discourse, be it controlling tra?c lights or space ships. a They have well-de?ned notation, such as the ones that exist for prescribing music, dance routines, or strategy in a football game. a The informal or intuitive meaning of the notation is clear. This can easily be overlooked, especially since intuitive meaning can be expressed by many di?erent notations that may be received very di?erently by users. a The formal meaning is clear and mechanizable, as is, hopefully, the case for the instructions we give to our bank or to a merchant online.IFIP TC 2 Working Conference, DSL 2009, Oxford, UK, July 15-17, 2009, Proceedings Walid Mohamed Taha ... Recursive functionsmay be defined only by explicituseofthefixed point operator fix, which only accepts tail-recursivefunctions.
|Author||:||Walid Mohamed Taha|
|Publisher||:||Springer Science & Business Media - 2009-07-02|