{
  "name": "compiler-construction",
  "publications": [
    {
      "type": "inproceedings",
      "conference": "ifip",
      "conferenceYear": "",
      "booktitle": "IFIP Congress",
      "volume": "",
      "number": "",
      "series": "",
      "address": "",
      "organization": "",
      "publisher": "",
      "editors": [],
      "firstpage": 125,
      "lastpage": 131,
      "id": "03dd25d2-8c2a-47d4-b346-2c25a947baa8",
      "key": "Backus59",
      "title": "The syntax and semantics of the proposed international algebraic language of the Zurich ACM-GAMM Conference",
      "month": "",
      "year": "1959",
      "doi": "",
      "note": "",
      "abstract": "This paper gives a tutorial summary of the syntax and interpretation rules of the proposed international algebraic language put forward by the Zurich ACM-GAMM Conference, followed by a formal, complete presentation of the same information. Notations are presented for numbers, numerical variables, Boolean variables, relations, n-dimensional arrays, functions, operators and algebraic expressions. Means are provided in the language for specifying assignment of values to variables, conditional execution of statements, iterative procedures, formation of compound statements from sequences of statements, definition of new statements for arbitrary procedures, reuse and alteration of program segments. The proposed language is intended to provide convenient and concise means for expressing virtually all procedures of numerical computation while employing relatively few syntactical rules and statement types.",
      "url": "https://researchr.org/publication/Backus59",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/john-w.-backus",
            "id": "44cd5f59-8c06-4e7f-9cd8-eaad167de2ca",
            "key": "john-w.-backus",
            "name": "John W. Backus"
          },
          "person": {
            "url": "https://researchr.org/profile/johnwarnerbackus",
            "id": "b82e5a4e-1d0f-4a61-ac80-3e9a26251d58",
            "key": "johnwarnerbackus",
            "fullname": "John Warner Backus"
          }
        }
      ]
    },
    {
      "type": "inproceedings",
      "conference": "popl",
      "conferenceYear": "",
      "booktitle": "POPL",
      "volume": "",
      "number": "",
      "series": "",
      "address": "",
      "organization": "",
      "publisher": "",
      "editors": [],
      "firstpage": 208,
      "lastpage": 218,
      "id": "1b639244-89f6-404d-a4dd-b1ac0bfc175f",
      "key": "GeorgeA96",
      "title": "Iterated Register Coalescing",
      "month": "",
      "year": "1996",
      "doi": "http://doi.acm.org/10.1145/237721.237777",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/GeorgeA96",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/lal-george",
            "id": "1e8df91e-82e8-4ce5-a932-8617ab394faf",
            "key": "lal-george",
            "name": "Lal George"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/andrew-w.-appel",
            "id": "dcea3f85-daa9-4a5a-8091-4659958332ba",
            "key": "andrew-w.-appel",
            "name": "Andrew W. Appel"
          },
          "person": {
            "url": "https://researchr.org/profile/andrewwappel",
            "id": "b3a86d25-95ae-4359-b449-a606eae01174",
            "key": "andrewwappel",
            "fullname": "Andrew W. Appel"
          }
        }
      ]
    },
    {
      "type": "article",
      "journal": "ACM Trans. Program. Lang. Syst.",
      "volumenumber": "18",
      "issuenumber": "3",
      "firstpage": 300,
      "lastpage": 324,
      "id": "2cfc3bbd-2f47-4482-9a8e-369febcc7864",
      "key": "GeorgeA96:0",
      "title": "Iterated Register Coalescing",
      "month": "",
      "year": "1996",
      "doi": "http://doi.acm.org/10.1145/229542.229546",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/GeorgeA96%3A0",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/lal-george",
            "id": "1e8df91e-82e8-4ce5-a932-8617ab394faf",
            "key": "lal-george",
            "name": "Lal George"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/andrew-w.-appel",
            "id": "dcea3f85-daa9-4a5a-8091-4659958332ba",
            "key": "andrew-w.-appel",
            "name": "Andrew W. Appel"
          },
          "person": {
            "url": "https://researchr.org/profile/andrewwappel",
            "id": "b3a86d25-95ae-4359-b449-a606eae01174",
            "key": "andrewwappel",
            "fullname": "Andrew W. Appel"
          }
        }
      ]
    },
    {
      "id": "3adae6d3-8a99-4073-89c3-02758e151fb2",
      "key": "abadi:theoryofobjects",
      "title": "A Theory of Objects",
      "month": "April",
      "year": "1996",
      "doi": "",
      "note": "",
      "abstract": "Procedural languages are generally well understood and their formal foundations cast in the forms of various lambda-calculi. For object- oriented languages however the situation is not as clear-cut. In this book the authors propose and develop a different approach by developing object calculi in which objects are treated as primitives. Using object calculi,the authors are able to explain both the semantics of objects and their typing rules and demonstrate how to develop all of the most important concepts of object-oriented programming languages: self, dynamic dispatch, classes, inheritance, protected and private methods, prototyping, subtyping, covariance and contravariance, and method specialization. Many researchers and graduate students will find this an important development of the underpinnings of object-oriented programming.",
      "url": "https://researchr.org/publication/abadi%3Atheoryofobjects",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/abadi%2C-mart%C3%ADn",
            "id": "febe107d-1dca-444f-86a0-3ec87e347ea9",
            "key": "abadi,-martín",
            "name": "Abadi, Martín"
          },
          "person": {
            "url": "https://researchr.org/profile/martnabadi",
            "id": "883f0088-a790-4b48-9023-98da04fa1ed2",
            "key": "martnabadi",
            "fullname": "Martín Abadi"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/cardelli%2C-luca",
            "id": "73165348-a0cc-4b28-9d58-8dba29f994bc",
            "key": "cardelli,-luca",
            "name": "Cardelli, Luca"
          },
          "person": {
            "url": "https://researchr.org/profile/lucacardelli",
            "id": "f2e13560-0f6e-4432-ba37-c64ea9b133c4",
            "key": "lucacardelli",
            "fullname": "Luca Cardelli"
          }
        }
      ]
    },
    {
      "type": "inproceedings",
      "conference": "OOPSLA",
      "conferenceYear": "",
      "booktitle": "",
      "volume": "",
      "number": "",
      "series": "",
      "address": "",
      "organization": "",
      "publisher": "",
      "editors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/martin-rinard",
            "id": "c55e9a6d-78c4-44a5-a928-0e2c2e4c275e",
            "key": "martin-rinard",
            "name": "Martin Rinard"
          }
        }
      ],
      "firstpage": 0,
      "lastpage": 0,
      "id": "3f61384d-0578-4b94-b851-54194f553b92",
      "key": "KatsVisser2010",
      "title": "The Spoofax Language Workbench. Rules for Declarative Specification of Languages and IDEs",
      "month": "",
      "year": "2010",
      "doi": "http://dx.doi.org/10.1145/1869459.1869497",
      "note": "",
      "abstract": "Spoofax is a language workbench for efficient, agile development of\r\ntextual domain-specific languages with state-of-the-art IDE support.\r\nSpoofax integrates language processing techniques for parser\r\ngeneration, meta-programming, and IDE development into a single\r\nenvironment.  It uses concise, declarative specifications for\r\nlanguages and IDE services.  In this paper we describe the\r\narchitecture of Spoofax and introduce idioms for high-level\r\nspecifications of language semantics using rewrite rules, showing how\r\nanalyses can be reused for transformations, code generation, and\r\neditor services such as error marking, reference resolving, and\r\ncontent completion.  The implementation of these services is supported\r\nby language-parametric editor service classes that can be dynamically\r\nloaded by the Eclipse IDE, allowing new languages to be developed and\r\nused side-by-side in the same Eclipse environment.\r\n",
      "url": "https://researchr.org/publication/KatsVisser2010",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/lennart-c.-l.-kats",
            "id": "f6b6789b-a32a-417c-a90e-c37a12f25728",
            "key": "lennart-c.-l.-kats",
            "name": "Lennart C. L. Kats"
          },
          "person": {
            "url": "https://researchr.org/profile/lennartclkats",
            "id": "6e29bb96-28c9-4c76-915d-160ef1947602",
            "key": "lennartclkats",
            "fullname": "Lennart C. L. Kats"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/eelco-visser",
            "id": "f68ba0ee-899e-4c4c-9d8a-6fed5092830a",
            "key": "eelco-visser",
            "name": "Eelco Visser"
          },
          "person": {
            "url": "https://researchr.org/profile/eelcovisser",
            "id": "f0fbf7c0-9729-4ec8-b3c9-5f30dbd9614b",
            "key": "eelcovisser",
            "fullname": "Eelco Visser"
          }
        }
      ]
    },
    {
      "id": "3fb83051-a190-4942-9651-de633a1af404",
      "key": "LindholmY99",
      "title": "The Java Virtual Machine Specification, Second Edition",
      "month": "",
      "year": "1999",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/LindholmY99",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/tim-lindholm",
            "id": "2b769ffd-aa05-49a4-926b-b36a5a77db87",
            "key": "tim-lindholm",
            "name": "Tim Lindholm"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/frank-yellin",
            "id": "abc6e488-02db-407f-8c47-c9bc7009b9e5",
            "key": "frank-yellin",
            "name": "Frank Yellin"
          }
        }
      ]
    },
    {
      "id": "409f3663-e735-41e0-8026-f4b45c43cdc8",
      "key": "louden:cc",
      "title": "Compiler Construction: Principles and Practice",
      "month": "January",
      "year": "1997",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/louden%3Acc",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/kenneth-c.-louden",
            "id": "6e791b70-7848-4613-9bdf-9ab9654f4384",
            "key": "kenneth-c.-louden",
            "name": "Kenneth C. Louden"
          }
        }
      ]
    },
    {
      "id": "4223aa68-e9ce-47e7-af30-38207a7f6121",
      "key": "bruce:foundations-ool",
      "title": "Foundations of Object-Oriented Languages: Types and Semantics",
      "month": "",
      "year": "2002",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/bruce%3Afoundations-ool",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/kim-b.-bruce",
            "id": "5cad7187-55a6-4743-bae9-b03fc3242ff8",
            "key": "kim-b.-bruce",
            "name": "Kim B. Bruce"
          }
        }
      ]
    },
    {
      "id": "4ac0b33f-0a10-4ab1-9d5e-cd68fc5d89a7",
      "key": "Appel1998ml",
      "title": "Modern Compiler Implementation in ML",
      "month": "",
      "year": "1998",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/Appel1998ml",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/andrew-w.-appel",
            "id": "dcea3f85-daa9-4a5a-8091-4659958332ba",
            "key": "andrew-w.-appel",
            "name": "Andrew W. Appel"
          },
          "person": {
            "url": "https://researchr.org/profile/andrewwappel",
            "id": "b3a86d25-95ae-4359-b449-a606eae01174",
            "key": "andrewwappel",
            "fullname": "Andrew W. Appel"
          }
        }
      ]
    },
    {
      "id": "5876717f-0d6a-4ce8-91b9-3c38cc985418",
      "key": "chomsky:syntacticstructure",
      "title": "Syntactic Structures",
      "month": "February",
      "year": "1957",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/chomsky%3Asyntacticstructure",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/noam-chomsky",
            "id": "5e56b3af-88ee-4e46-866d-c6908d8511c4",
            "key": "noam-chomsky",
            "name": "Noam Chomsky"
          },
          "person": {
            "url": "https://researchr.org/profile/noamchomsky",
            "id": "e198ca20-75dc-4b65-ab46-b60a6dd67e7e",
            "key": "noamchomsky",
            "fullname": "Noam Chomsky"
          }
        }
      ]
    },
    {
      "id": "5ea40941-b147-479a-a061-6c624f1e901b",
      "key": "budd:oo-programming",
      "title": "An Introduction to Object-Oriented Programming, 2nd edition",
      "month": "",
      "year": "2002",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/budd%3Aoo-programming",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/timothy-a.-budd",
            "id": "dbab6db6-483e-4875-afeb-9bb5c4379495",
            "key": "timothy-a.-budd",
            "name": "Timothy A. Budd"
          }
        }
      ]
    },
    {
      "id": "63e1828a-f06e-487d-b289-0db71c0c723d",
      "key": "ethnologue",
      "title": "Ethnologue: Languages of the World",
      "month": "",
      "year": "2009",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/ethnologue",
      "authors": []
    },
    {
      "id": "67b3a546-91bc-43fd-bfff-e1e64d74923b",
      "key": "sapir:language",
      "title": "Language. An Introduction to the Study of Speech",
      "month": "",
      "year": "1921",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/sapir%3Alanguage",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/edward-sapir",
            "id": "73b76170-b823-4d03-bf48-af8f32fb79b9",
            "key": "edward-sapir",
            "name": "Edward Sapir"
          }
        }
      ]
    },
    {
      "id": "7e9cc106-f293-491d-b3cc-fa58c7c35861",
      "key": "Appel2002",
      "title": "Modern Compiler Implementation in Java, 2nd edition",
      "month": "",
      "year": "2002",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/Appel2002",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/andrew-w.-appel",
            "id": "dcea3f85-daa9-4a5a-8091-4659958332ba",
            "key": "andrew-w.-appel",
            "name": "Andrew W. Appel"
          },
          "person": {
            "url": "https://researchr.org/profile/andrewwappel",
            "id": "b3a86d25-95ae-4359-b449-a606eae01174",
            "key": "andrewwappel",
            "fullname": "Andrew W. Appel"
          }
        }
      ]
    },
    {
      "id": "8d68a24a-260c-458f-bfe3-015a872b53e4",
      "key": "HopcroftMU2006",
      "title": "Introduction to Automata Theory, Languages, and Computation",
      "month": "",
      "year": "2006",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/HopcroftMU2006",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/j.-e.-hopcroft",
            "id": "fcaebf1f-4aae-44e6-9a73-54193330fcd3",
            "key": "j.-e.-hopcroft",
            "name": "J. E. Hopcroft"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/r.-motwani",
            "id": "d120b562-3fe9-4dfd-a9cf-5ad5d56e54c1",
            "key": "r.-motwani",
            "name": " R. Motwani"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/j.-d.-ullman",
            "id": "3290fed2-5129-447e-a971-d8174d72775e",
            "key": "j.-d.-ullman",
            "name": "  J. D. Ullman"
          }
        }
      ]
    },
    {
      "id": "a40a0f4e-81dd-4e2a-ad0a-d9c62087b614",
      "key": "venners:insidejvm",
      "title": "Inside the Java 2 Virtual Machine",
      "month": "",
      "year": "2000",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/venners%3Ainsidejvm",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/bill-venners",
            "id": "0755ce65-3c8e-485e-b50d-a78aadb2f015",
            "key": "bill-venners",
            "name": "Bill Venners"
          }
        }
      ]
    },
    {
      "type": "article",
      "journal": "Sci. Comput. Program.",
      "volumenumber": "72",
      "issuenumber": "1-2",
      "firstpage": 52,
      "lastpage": 70,
      "id": "a6da54f9-956a-4574-854c-6f0f3aee1618",
      "key": "BravenboerKVV08",
      "title": "Stratego/XT 0.17. A language and toolset for program transformation",
      "month": "",
      "year": "2008",
      "doi": "http://dx.doi.org/10.1016/j.scico.2007.11.003",
      "note": "",
      "abstract": "Stratego/XT is a language and toolset for program transformation. The Stratego language provides rewrite rules for expressing basic transformations, programmable rewriting strategies for controlling the application of rules, concrete syntax for expressing the patterns of rules in the syntax of the object language, and dynamic rewrite rules for expressing context-sensitive transformations, thus supporting the development of transformation components at a high level of abstraction. The XT toolset offers a collection of flexible, reusable transformation components, and tools for generating such components from declarative specifications. Complete program transformation systems are composed from these components.",
      "url": "https://researchr.org/publication/BravenboerKVV08",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/martin-bravenboer",
            "id": "d43052f6-9073-47d6-98d0-b38cb940c618",
            "key": "martin-bravenboer",
            "name": "Martin Bravenboer"
          },
          "person": {
            "url": "https://researchr.org/profile/martinbravenboer",
            "id": "629a35fe-abf1-4cd3-ad19-ae3021609c90",
            "key": "martinbravenboer",
            "fullname": "Martin  Bravenboer"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/karl-trygve-kalleberg",
            "id": "3ee71cd9-6b84-45a5-ab19-8f8783c8dba3",
            "key": "karl-trygve-kalleberg",
            "name": "Karl Trygve Kalleberg"
          },
          "person": {
            "url": "https://researchr.org/profile/karltk",
            "id": "d774aeed-7606-4770-8a56-2cf4990644b4",
            "key": "karltk",
            "fullname": "Karl Trygve Kalleberg"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/rob-vermaas",
            "id": "6a38d57e-6acc-4105-be50-25e9b31b00fa",
            "key": "rob-vermaas",
            "name": "Rob Vermaas"
          },
          "person": {
            "url": "https://researchr.org/profile/robvermaas",
            "id": "f6aa2423-57ab-44c6-909c-dd1d19dfbe85",
            "key": "robvermaas",
            "fullname": "Rob Vermaas"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/eelco-visser",
            "id": "f68ba0ee-899e-4c4c-9d8a-6fed5092830a",
            "key": "eelco-visser",
            "name": "Eelco Visser"
          },
          "person": {
            "url": "https://researchr.org/profile/eelcovisser",
            "id": "f0fbf7c0-9729-4ec8-b3c9-5f30dbd9614b",
            "key": "eelcovisser",
            "fullname": "Eelco Visser"
          }
        }
      ]
    },
    {
      "type": "article",
      "journal": "sosym",
      "volumenumber": "9",
      "issuenumber": "3",
      "firstpage": 375,
      "lastpage": 402,
      "id": "c6ab7ca9-2764-4354-964b-ba8c3244bd88",
      "key": "HemelKGV-2010",
      "title": "Code generation by model transformation: a case study in transformation modularity",
      "month": "June",
      "year": "2010",
      "doi": "http://dx.doi.org/10.1007/s10270-009-0136-1",
      "note": "",
      "abstract": "The realization of model-driven software development requires effective techniques for implementing code generators for domain-specific languages. This paper identifies techniques for improving separation of concerns in the implementation of generators. The core technique is code generation by model transformation, that is, the generation of a structured representation (model) of the target program instead of plain text. This approach enables the transformation of code after generation, which in turn enables the extension of the target language with features that allow better modularity in code generation rules. The technique can also be applied to ‘internal code generation’ for the translation of high-level extensions of a DSL to lower-level constructs within the same DSL using model-to-model transformations. This paper refines our earlier description of code generation by model transformation with an improved architecture for the composition of model-to-model normalization rules, solving the problem of combining type analysis and transformation. Instead of coarse-grained stages that alternate between normalization and type analysis, we have developed a new style of type analysis that can be integrated with normalizing transformations in a fine-grained manner. The normalization strategy has a simple extension interface and integrates non-local, context-sensitive transformation rules. We have applied the techniques in a realistic case study of domain-specific language engineering, i.e. the code generator for WebDSL, using Stratego, a high-level transformation language that integrates model-to-model, model-to-code, and code-to-code transformations. ",
      "url": "https://researchr.org/publication/HemelKGV-2010",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/zef-hemel",
            "id": "7816809a-e2e6-42c6-8c44-481a821fb0bd",
            "key": "zef-hemel",
            "name": "Zef Hemel"
          },
          "person": {
            "url": "https://researchr.org/profile/zefhemel",
            "id": "947901fa-e910-454b-8546-c514c5a191be",
            "key": "zefhemel",
            "fullname": "Zef  Hemel"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/lennart-c.-l.-kats",
            "id": "f6b6789b-a32a-417c-a90e-c37a12f25728",
            "key": "lennart-c.-l.-kats",
            "name": "Lennart C. L. Kats"
          },
          "person": {
            "url": "https://researchr.org/profile/lennartclkats",
            "id": "6e29bb96-28c9-4c76-915d-160ef1947602",
            "key": "lennartclkats",
            "fullname": "Lennart C. L. Kats"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/danny-m.-groenewegen",
            "id": "46cf4818-8ce7-4644-9ee1-414e4c4960e7",
            "key": "danny-m.-groenewegen",
            "name": "Danny M. Groenewegen"
          },
          "person": {
            "url": "https://researchr.org/profile/dannymgroenewegen",
            "id": "f50a3666-08fe-4b30-9734-181aed455bb1",
            "key": "dannymgroenewegen",
            "fullname": "Danny M.  Groenewegen"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/eelco-visser",
            "id": "f68ba0ee-899e-4c4c-9d8a-6fed5092830a",
            "key": "eelco-visser",
            "name": "Eelco Visser"
          },
          "person": {
            "url": "https://researchr.org/profile/eelcovisser",
            "id": "f0fbf7c0-9729-4ec8-b3c9-5f30dbd9614b",
            "key": "eelcovisser",
            "fullname": "Eelco Visser"
          }
        }
      ]
    },
    {
      "type": "inproceedings",
      "conference": "ASFSDF",
      "conferenceYear": "",
      "booktitle": "ASF+SDF 1995. A Workshop on Generating Tools from Algebraic Specifications",
      "volume": "",
      "number": "",
      "series": "",
      "address": "",
      "organization": "",
      "publisher": "Technical Report P9504, Programming Research Group, University of Amsterdam",
      "editors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/van-den-brand%2C-m.-g.-j.",
            "id": "45ff7626-fa05-4763-b4ae-78375c138a81",
            "key": "van-den-brand,-m.-g.-j.",
            "name": "van den Brand, M. G. J."
          },
          "person": {
            "url": "https://researchr.org/profile/markgjvandenbrand",
            "id": "97855301-a569-413e-8e19-c2c376c50842",
            "key": "markgjvandenbrand",
            "fullname": "Mark G. J. van den Brand"
          }
        },
        {
          "alias": {
            "url": "https://researchr.org/alias/others",
            "id": "4b1256a9-5257-4ec4-ac39-c0eaec448c43",
            "key": "others",
            "name": "others"
          },
          "person": {
            "url": "https://researchr.org/profile/vaniavieiraestrela%3A5",
            "id": "71354289-e7e7-4ddd-8b43-9811c7c727ea",
            "key": "vaniavieiraestrela:5",
            "fullname": "Vania Vieira Estrela"
          }
        }
      ],
      "firstpage": 0,
      "lastpage": 0,
      "id": "c7085129-45c7-4a8f-af2c-0418170b7335",
      "key": "Visser95",
      "title": "A Family of Syntax Definition Formalisms",
      "month": "May",
      "year": "1995",
      "doi": "",
      "note": "",
      "abstract": "In this paper we design a syntax definition formalism as a family of formalisms. Starting with a small kernel, several features for syntax definition are designed orthogonally to each other. This provides a framework for constructing new formalisms by adapting and extending old ones. The formalism is developed with the algebraic specification formalism ASF+SDF. It provides the following features: lexical and context-free syntax, variables, disambiguation by priorities, regular expressions, character classes and modular definitions. New are the uniform treatment of lexical syntax, context-free syntax and variables, the treatment of regular expressions by normalization yielding abstract syntax without auxiliary sorts, regular expressions as result of productions and modules with hidden imports and renamings.",
      "url": "https://researchr.org/publication/Visser95",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/eelco-visser",
            "id": "f68ba0ee-899e-4c4c-9d8a-6fed5092830a",
            "key": "eelco-visser",
            "name": "Eelco Visser"
          },
          "person": {
            "url": "https://researchr.org/profile/eelcovisser",
            "id": "f0fbf7c0-9729-4ec8-b3c9-5f30dbd9614b",
            "key": "eelcovisser",
            "fullname": "Eelco Visser"
          }
        }
      ]
    },
    {
      "type": "article",
      "journal": "IRE Transactions on Information Theory",
      "volumenumber": "2",
      "issuenumber": "3",
      "firstpage": 0,
      "lastpage": 0,
      "id": "c7e99551-a357-446d-9c40-b9170ac8d582",
      "key": "chomsky56",
      "title": "Three models for the description of language",
      "month": "September",
      "year": "1956",
      "doi": "10.1109/TIT.1956.1056813 ",
      "note": "",
      "abstract": "We investigate several conceptions of linguistic structure to determine whether or not they can provide simple and \"revealing\" grammars that generate all of the sentences of English and only these. We find that no finite-state Markov process that produces symbols with transition from state to state can serve as an English grammar. Furthermore, the particular subclass of such processes that producen-order statistical approximations to English do not come closer, with increasingn, to matching the output of an English grammar. We formalize-the notions of \"phrase structure\" and show that this gives us a method for describing language which is essentially more powerful, though still representable as a rather elementary type of finite-state process. Nevertheless, it is successful only when limited to a small subset of simple sentences. We study the formal properties of a set of grammatical transformations that carry sentences with phrase structure into new sentences with derived phrase structure, showing that transformational grammars are processes of the same elementary type as phrase-structure grammars; that the grammar of English is materially simplified if phrase structure description is limited to a kernel of simple sentences from which all other sentences are constructed by repeated transformations; and that this view of linguistic structure gives a certain insight into the use and understanding of language.",
      "url": "https://researchr.org/publication/chomsky56",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/noam-chomsky",
            "id": "5e56b3af-88ee-4e46-866d-c6908d8511c4",
            "key": "noam-chomsky",
            "name": "Noam Chomsky"
          },
          "person": {
            "url": "https://researchr.org/profile/noamchomsky",
            "id": "e198ca20-75dc-4b65-ab46-b60a6dd67e7e",
            "key": "noamchomsky",
            "fullname": "Noam Chomsky"
          }
        }
      ]
    },
    {
      "id": "ee262853-e3e9-420e-a906-a01e98f6cfb4",
      "key": "gunter:semantics",
      "title": "Semantics of Programming Languages: Structures and Techniques",
      "month": "",
      "year": "1992",
      "doi": "",
      "note": "",
      "abstract": "",
      "url": "https://researchr.org/publication/gunter%3Asemantics",
      "authors": [
        {
          "alias": {
            "url": "https://researchr.org/alias/gunter%2C-carl-a.",
            "id": "c7a6253a-a8a8-4ac1-ade4-2a869349af7f",
            "key": "gunter,-carl-a.",
            "name": "Gunter, Carl A."
          }
        }
      ]
    }
  ]
}