Design and implementation of a diagnostic compiler for PL/I
Communications of the ACM
NEATER2: a PL/I source statement reformatter
Communications of the ACM
The IITRAN programming language
Communications of the ACM
PASCAL user manual and report
Structured Programming Using PL-1 SP-K
Structured Programming Using PL-1 SP-K
What the Compiler Should Tell the User
Compiler Construction, An Advanced Course, 2nd ed.
The System Language for Project SUE
Proceedings of the SIGPLAN symposium on Languages for system implementation
What should we teach in an introductory programming course?
SIGCSE '74 Proceedings of the fourth SIGCSE technical symposium on Computer science education
ALGOL W implementation
Teaching the fatal disease: (or) introductory computer programming using PL/I
ACM SIGPLAN Notices
Design of an interpretive environment for Turing
SIGPLAN '87 Papers of the Symposium on Interpreters and interpretive techniques
An Introduction to S/SL: Syntax/Semantic Language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Programming lessons from days gone by: Cobol, stewed for students
ACM SIGPLAN Notices
CASCON '95 Proceedings of the 1995 conference of the Centre for Advanced Studies on Collaborative research
The user as a learning component in a data system during the change-over and use periods
SIGCPR '81 Proceedings of the eighteenth annual computer personnel research conference
Hierarchical coroutines a mechanism for improved program structure
ICSE '79 Proceedings of the 4th international conference on Software engineering
A workable interpreter project for a “Structured Programming” course
SIGCSE '78 Proceedings of the ninth SIGCSE technical symposium on Computer science education
Implementing a computer science curriculum merging two curriculum models
SIGCSE '78 Proceedings of the ninth SIGCSE technical symposium on Computer science education
Semantic charts: A diagrammatic approach to semantic processing
SIGPLAN '79 Proceedings of the 1979 SIGPLAN symposium on Compiler construction
Experience with OLGA A Maximal language for the minimal PDP-11 minicomputer
SIGCSE '79 Proceedings of the tenth SIGCSE technical symposium on Computer science education
C# as a first language: a comparison with C++
Journal of Computing Sciences in Colleges
ACM SIGPLAN Notices
Modular decomposition of Ada into a hierarchy of sublanguages
ACM SIGAda Ada Letters
The structure and interpretation of the computer science curriculum
Journal of Functional Programming
Proceedings of the 36th SIGCSE technical symposium on Computer science education
ACM Computing Surveys (CSUR)
Introducing computer science with Project Hoshimi
Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion
Evaluating curricula for the teaching of programming
ACM SIGCUE Outlook - Topics in instructional computing
Beowulf bootcamp: teaching local high schools about HPC
Proceedings of the 2010 TeraGrid Conference
Measuring the effectiveness of error messages designed for novice programmers
Proceedings of the 42nd ACM technical symposium on Computer science education
Convergence in language design: a case of lightning striking four times in the same place
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
An Empirical Investigation into Programming Language Syntax
ACM Transactions on Computing Education (TOCE)
Hi-index | 48.22 |
SP/k is a compatible subset of the PL/I language that has been designed for teaching programming. The features of the SP/k language were chosen to encourage structured problem solving by computers, to make the language easy to learn and use, to eliminate confusing and redundant constructs, and to make the language easy to compile. The resulting language is suitable for introducing programming concepts used in various applications, including business data processing, scientific calculations and non-numeric computation. SP/k is actually a sequence of language subsets called SP/1, SP/2, … SP/8. Each subset introduces new programming language constructs while retaining all the constructs of preceding subsets. Each subset is precisely defined and can be learned or implemented without the following subsets.