Distributed Language-based Environments
{'Code': '05010400', 'Directorate': {'Abbreviation': 'CSE', 'LongName': 'Direct For Computer & Info Scie & Enginr'}, 'Division': {'Abbreviation': 'CCF', 'LongName': 'Division of Computing and Communication Foundations'}}
{'SignBlockName': 'Forbes D. Lewis', 'PO_EMAI': None, 'PO_PHON': None}
Language-based environments have been one of the foremost topics of             programming environment research for many years, but little has been            done to make them practical for groups of professional programmers              working together on large software systems.  Instead, language-based            environments have been oriented primarily to the development of                 relatively small programs by individual programmers working alone.  The         goal of this research is to complete the development of a new system,           MERCURY, that changes this situation.  MERCURY generates language-based         environments from attribute grammars.  A generated environment can be           used simultaneously by multiple programmers working on the same machine         or on different machines distributed across a network.  MERCURY uses a          distributed attribute evaluation algorithm to provide immediate                 propagation of changes from one module to another, immediately                  informing programmers of errors in their modules caused by changes made         by other programmers to other modules.  Additional algorithms support           high availability and reliability, so the programmers can continue              working even when part of the network is broken or some machines are            down, trusting that MERCURY will reestablish consistency as soon as the         network or machine is restored.  The work proposed involves developing          new algorithms to support:  distribution of arbitrary program units             selected during operation; efficient propagation of aggregate                   attributes; and multiple versions and configuration of modules.
{'FirstName': 'Gail', 'LastName': 'Kaiser', 'PI_MID_INIT': 'E', 'PI_SUFX_NAME': None, 'PI_FULL_NAME': 'Gail E Kaiser', 'EmailAddress': 'kaiser@cs.columbia.edu', 'NSF_ID': '000094973', 'StartDate': '07/01/1988', 'EndDate': None, 'RoleCode': 'Principal Investigator'}
{'Name': 'Columbia University', 'CityName': 'NEW YORK', 'ZipCode': '100277922', 'PhoneNumber': '2128546851', 'StreetAddress': '615 W 131ST ST', 'StreetAddress2': 'MC 8741', 'CountryName': 'United States', 'StateName': 'New York', 'StateCode': 'NY', 'CONGRESSDISTRICT': '13', 'CONGRESS_DISTRICT_ORG': 'NY13', 'ORG_UEI_NUM': 'F4N1QNPB95M4', 'ORG_LGL_BUS_NAME': 'THE TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK', 'ORG_PRNT_UEI_NUM': None}
{'Name': None, 'CityName': None, 'StateCode': None, 'ZipCode': None, 'StreetAddress': None, 'CountryCode': None, 'CountryName': None, 'StateName': None, 'CountryFlag': None, 'CONGRESSDISTRICT': None, 'CONGRESS_DISTRICT_PERF': '""'}
[{'Code': '2875', 'Text': 'SYSTEM SOFTWARE'}, {'Code': '2880', 'Text': 'SOFTWARE ENGINEERING AND LANGU'}]
{'url': 'https://www.nsf.gov/awardsearch/download?DownloadFileName=1988&All=true', 'xml': '8802741.xml'}