Communications of the ACM · 1978 · 82 citations · 17 references
EngineeringInformation SecuritySoftware AnalysisFormal VerificationLogical Access ControlAccess MethodDependently Typed ProgrammingAccess ControlData IntegrationAccess ConstraintsData ManagementProgramming LanguagesAccess Control MechanismsData PrivacyComputer ScienceLanguage ExtensionDatabase TheoryControlled SharingLanguage-based SecurityData SecurityCryptographyOperating SystemsProgram AnalysisData AccessFormal MethodsSystem Software
Controlled sharing of information is needed and desirable for many applications and is supported in operating systems by access control mechanisms. This paper shows how to extend programming languages to provide controlled sharing. The extension permits expression of access constraints on shared data. Access constraints can apply both to simple objects, and to objects that are components of larger objects, such as bank account records in a bank's data base. The constraints are stated declaratively, and can be enforced by static checking similar to type checking. The approach can be used to extend any strongly-typed language, but is particularly suitable for extending languages that support the notion of abstract data types.
17
Barbara Liskov, Alan Snyder, Russell R. Atkinson et al. · Communications of the ACM · 1977 · 771 citations · Full text
The programming language pascal
Niklaus Wirth · Acta Informatica · 1971 · 722 citations
Programming Language Theory, Engineering, Automated Reasoning +8