Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2997364.2997387acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Raincode assembler compiler (tool demo)

Published: 20 October 2016 Publication History

Abstract

IBM's High Level Assembler (HLASM) is a low level programming language for z/Architecture mainframe computers. Many legacy codebases contain large subsets written in HLASM for various reasons, and such components usually had to be manually rewritten in COBOL or PL/I before a migration to a modern framework could take place. Now, the Raincode ASM370 compiler for .NET supports HLASM syntax and emulates the data types and behaviour of the original language, allowing one to port, maintain and interactively debug legacy mainframe assembler code under .NET.

References

[1]
P. Abel. Programming Assembler Language IBM 370. Prentice Hall, 3rd edition, 1989.
[2]
D. Blasband. The YAFL Programming Language. Journal of Object-Oriented Programming, 8(7):42–49, 1995.
[3]
D. Blasband. Parsing in a Hostile World. In E. Burd, P. Aiken, and R. Koschke, editors, Proceedings of the 8th Working Conference on Reverse Engineering (WCRE), pages 291– 300. IEEE Computer Society, 2001.
[4]
D. Blasband. Compilation of Legacy Languages in the 21st Century. In R. Lämmel, J. Saraiva, and J. Visser, editors, Revised Papers of the 4th International Summer School on Generative and Transformational Techniques in Software Engineering (GTTSE), volume 7680 of LNCS, pages 1–54. Springer, 2011.
[5]
F. M. Carrano. Assembler Language Programming for the IBM 370. Benjamin-Cummings Pub Co, 1987.
[6]
I. J. Davis, M. W. Godfrey, R. C. Holt, S. Mankovski, and N. Minchenko. Analyzing Assembler to Eliminate Dead Functions: An Industrial Experience. In T. Mens, A. Cleve, and R. Ferenc, editors, Proceedings of the 16th European Conference on Software Maintenance and Reengineering (CSMR), pages 467–470. IEEE, 2012.
[7]
ECMA-334. C# Language Specification, 4th edition, June 2006. http://www.ecma-international.org/publications/standards/Ecma-334.htm.
[8]
ECMA-335. Common Language Infrastructure (CLI), 6th edition, June 2012. http://www.ecma-international. org/publications/standards/Ecma-335.htm.
[9]
C. J. Fidge. Timing Analysis of Assembler Code Control-Flow Paths. In Proceedings of the 11th International Symposium of Formal Methods Europe: Getting IT Right (FME), volume 2391 of LNCS, pages 370–389. Springer, 2002.
[10]
GC24-3414-7. IBM System/360 Disk and Tape Operating Systems Assembler Language. IBM, 8th edition, Jan. 1970.
[11]
GC26-4943-06. High Level Assembler for z/OS & z/VM & z/VSE Version 1 Release 6 General Information. IBM, 2013.
[12]
D. S. Higgins. PC/370 Release 4.2. http://www.jaymoseley.com/programming/download/pc370v42.zip.
[13]
C. J. Kacmar. IBM 370 Assembly Language With ASSIST. Structured Concepts and Advanced Topics. Prentice Hall, 1988.
[14]
A. F. Kornelis. Why assembler? Bixoft, http://www. bixoft.nl/english/why.htm, 2003.
[15]
T. Lake and T. Blanchard. Reverse Engineering of Assembler Programs: A Model-Based Approach and its Logical Basis. In E. Chikofsky, L. Wills, and I. Baxter, editors, Proceedings of the 3rd Working Conference on Reverse Engineering (WCRE), pages 67–75. IEEE CS, 1996.
[16]
M. Martel. Validation of Assembler Programs for DSPs: a Static Analyzer. In C. Flanagan and A. Zeller, editors, Proceedings of the 5th Workshop on Program Analysis for Software Tools and Engineering (PASTE), pages 8–13. ACM, 2004.
[17]
K. McQuillen. System/360-370 Assembler Language (OS). Mike Murach, 1975.
[18]
K. McQuillen and A. Prince. MVS Assembler Language. Mike Murach & Associates, 1987.
[19]
MSDN. Code Generation and T4 Text Templates. https:// msdn.microsoft.com/en-gb/library/bb126445.aspx.
[20]
K. C. O’Kane. Basic IBM Mainframe Assembly Language Programming. CreateSpace, 2011.
[21]
W. J. Paul, S. Schmaltz, and A. Shadrin. Completing the Automated Verification of a Small Hypervisor Assembler Code Verification. In M. Holcombe, G. Eleftherakis, and M. Hinchey, editors, Proceedings of the 10th International Conference on Software Engineering and Formal Methods (SEFM), volume 7504 of LNCS, pages 188–202. Springer, 2012.
[22]
SA22-7832-09. z/Architecture Principles of Operation. IBM, 10th edition, Sept. 2012.
[23]
SC26-4940-06. High Level Assembler for z/OS & z/VM & z/VSE Version 1 Release 6 Language Reference. IBM, 2013.
[24]
SC26-4941-06. High Level Assembler for z/OS & z/VM & z/VSE Version 1 Release 6 Programmer’s Guide. IBM, 2013.
[25]
SC34-7266-00. CICS Transaction Server for z/OS Version 5 Release 2 Application Programming Guide SC34. IBM, 2014.
[26]
T. Schüle and K. Schneider. Abstraction of Assembler Programs for Symbolic Worst Case Execution Time Analysis. In S. Malik, L. Fix, and A. B. Kahng, editors, Proceedings of the 41st Design Automation Conference (DAC), pages 107–112. ACM, 2004.
[27]
S. Toprak, A. Wichmann, and S. Schupp. Lightweight Structured Visualization of Assembler Control Flow Based on Regular Expressions. In H. Sahraoui, B. Sharif, and A. Zaidman, editors, Proceedings of the 2nd IEEE Working Conference on Software Visualization (VISSOFT), pages 97–106. IEEE Computer Society, 2014.
[28]
M. Ward. Assembler Restructuring in FermaT. In J. Vinju, M. Zalewski, J. Rilling, and B. Adams, editors, Proceedings of the 13th International Working Conference on Source Code Analysis and Manipulation (SCAM), pages 147–156. IEEE, 2013.
[29]
M. P. Ward and K. H. Bennett. Formal Methods for Legacy Systems. Journal of Software Maintenance, 7(3):203–219, 1995.
[30]
V. Zaytsev and R. Lämmel. A Unified Format for Language Documents. In B. A. Malloy, S. Staab, and M. van den Brand, editors, Revised Selected Papers of the 3rd International Conference on Software Language Engineering (SLE), volume 6563 of LNCS, pages 206–225. Springer, 2010.

Cited By

View all
  • (2024)Deriving modernity signatures of codebases with static analysisJournal of Systems and Software10.1016/j.jss.2024.111973211:COnline publication date: 2-Jul-2024
  • (2017)Open challenges in incremental coverage of legacy software languagesProceedings of the 3rd ACM SIGPLAN International Workshop on Programming Experience10.1145/3167105(1-6)Online publication date: 22-Oct-2017

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SLE 2016: Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering
October 2016
257 pages
ISBN:9781450344470
DOI:10.1145/2997364
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 October 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. assembler
  2. mainframe
  3. software renovation

Qualifiers

  • Research-article

Conference

SLE '16
Sponsor:
SLE '16: Software Language Engineering
October 31 - November 1, 2016
Amsterdam, Netherlands

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Deriving modernity signatures of codebases with static analysisJournal of Systems and Software10.1016/j.jss.2024.111973211:COnline publication date: 2-Jul-2024
  • (2017)Open challenges in incremental coverage of legacy software languagesProceedings of the 3rd ACM SIGPLAN International Workshop on Programming Experience10.1145/3167105(1-6)Online publication date: 22-Oct-2017

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media