{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,11]],"date-time":"2026-03-11T01:32:22Z","timestamp":1773192742449,"version":"3.50.1"},"reference-count":44,"publisher":"Institute of Electrical and Electronics Engineers (IEEE)","issue":"11","license":[{"start":{"date-parts":[[2003,11,1]],"date-time":"2003-11-01T00:00:00Z","timestamp":1067644800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/ieeexplore.ieee.org\/Xplorehelp\/downloads\/license-information\/IEEE.html"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IIEEE Trans. Software Eng."],"published-print":{"date-parts":[[2003,11]]},"DOI":"10.1109\/tse.2003.1245303","type":"journal-article","created":{"date-parts":[[2003,11,20]],"date-time":"2003-11-20T23:29:22Z","timestamp":1069370962000},"page":"1019-1030","source":"Crossref","is-referenced-by-count":36,"title":["Global analysis and transformations in preprocessed languages"],"prefix":"10.1109","volume":"29","author":[{"given":"D.","family":"Spinellis","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"263","reference":[{"key":"ref1","doi-asserted-by":"publisher","DOI":"10.1145\/321992.321996"},{"key":"ref2","article-title":"Refactoring object-oriented Frameworks","author":"Opdyke","year":"1992"},{"key":"ref3","volume-title":"AntiPatterns Refactoring Software, Architectures, and Projects in Crisis.","author":"Brown","year":"1998"},{"key":"ref4","doi-asserted-by":"publisher","DOI":"10.1145\/581339.581453"},{"key":"ref5","doi-asserted-by":"publisher","DOI":"10.1023\/A:1008715808855"},{"issue":"3","key":"ref6","first-page":"121","article-title":"A Survey of Program Slicing Techniques","volume":"3","author":"Tip","year":"1995","journal-title":"J. Programming Languages"},{"key":"ref7","volume-title":"Smalltalk-80: The Language.","author":"Goldberg","year":"1989"},{"key":"ref8","doi-asserted-by":"publisher","DOI":"10.1002\/(SICI)1096-9942(1997)3:4<253::AID-TAPO3>3.0.CO;2-T"},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1145\/236338.236361"},{"issue":"4","key":"ref10","article-title":"object-oriented Software Evolution and Re-Engineering (special issue)","volume":"3","author":"Casais","year":"1997","journal-title":"Theory and Practice of Object Systems"},{"key":"ref11","volume-title":"The C Programming Language","author":"Kernighan","year":"1988"},{"key":"ref12","article-title":"American National Standard for Information Systems\u2014Programming Language\u2014C: ANSI X3. 159\u20131989","year":"1989"},{"key":"ref13","volume-title":"The C++ Programming Language","author":"Stroustrup","year":"1997"},{"key":"ref14","article-title":"Cyclone: A Safe Dialect of C","volume-title":"USENIX Technical Conf. Proc.","author":"Jim"},{"key":"ref15","volume-title":"Code Reading: The Open Source Perspective.","author":"Spinellis","year":"2003"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2002.1158288"},{"key":"ref17","article-title":"Lint, a C Program Checker","volume-title":"Computer Science Technical Report 65","author":"Johnson"},{"issue":"8","key":"ref18","first-page":"907","article-title":"A Framework for Preprocessor-Aware C Source Code Analyses","volume":"30","author":"Badros","year":"2000","journal-title":"Software: Practice & Experience"},{"key":"ref19","volume-title":"The Annotated C++ Reference Manual.","author":"Ellis","year":"1990"},{"issue":"3","key":"ref20","first-page":"238","article-title":"Checking C Declarations at Link Time","volume":"4","author":"Spinellis","year":"1993","journal-title":"The J. C Language Translation"},{"key":"ref21","first-page":"671","article-title":"An Execution Profiler for Modular Programs","volume":"13","author":"Graham","year":"1983","journal-title":"Software: Practice & Experience"},{"key":"ref22","article-title":"Debugging with dbx UNIX Programmer\u2019s Supplementary Documents","volume-title":"Computer Systems Research Group, Dept. of Electrical Eng. and Computer Science","volume":"1","author":"Tuthill"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1976.233797"},{"key":"ref24","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2002.1020282"},{"key":"ref25","volume-title":"The UNIX Programming Environment.","author":"Kernighan","year":"1984"},{"key":"ref26","volume-title":"The Pragmatic Programmer: From Journeyman to Master.","author":"Hunt","year":"2000"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1145\/227607.227613"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.1996.565036"},{"key":"ref29","article-title":"A New Solution to the Problem of Source Code Presentation","author":"Zavras","year":"1999"},{"key":"ref30","article-title":"Microsoft Corporation","volume-title":"Microsoft C# Language Specifications.","year":"2001"},{"key":"ref31","doi-asserted-by":"publisher","DOI":"10.1016\/S0164-1212(00)00089-3"},{"key":"ref32","article-title":"Generic Programming and the STL: Using and Extending the C++ Standard Template Library","author":"Austern","year":"1998"},{"key":"ref33","volume-title":"Structure and Interpretation of Computer Programs.","author":"Abelson","year":"1985"},{"key":"ref34","article-title":"Procedural Reflection in Programming Languages","author":"Smith","year":"1982"},{"key":"ref35","article-title":"Java in a Nutshell","author":"Flanagan","year":"1997"},{"key":"ref36","article-title":"Compilers, Principles, Techniques, and Tools","author":"Aho","year":"1985","journal-title":"Addison-Wesley"},{"key":"ref37","doi-asserted-by":"publisher","DOI":"10.1002\/j.1538-7305.1978.tb02147.x"},{"key":"ref38","first-page":"67","article-title":"Lightweight Languages as Software Engineering Tools","volume-title":"Proc. USENIX Conf. Domain-Specific Languages","author":"Spinellis"},{"key":"ref39","doi-asserted-by":"publisher","DOI":"10.1145\/152388.152389"},{"key":"ref40","article-title":"SWILL: A Simple Embedded Web Server Library","volume-title":"USENIX Technical Conf. Proc.","author":"Lampoudi"},{"key":"ref41","article-title":"The Formal Specification of ANDF, an Application of Action Semantics","volume-title":"Proc. First Int\u2019l Workshop Action Semantics","author":"Hansen"},{"issue":"4","key":"ref42","first-page":"255","article-title":"Make\u2014A Program for Maintaining Computer Programs","volume":"9","author":"Feldman","year":"1979","journal-title":"Software: Practice & Experience"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.1996.493398"},{"key":"ref44","doi-asserted-by":"publisher","DOI":"10.1145\/77606.77608"}],"container-title":["IEEE Transactions on Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx5\/32\/27901\/01245303.pdf?arnumber=1245303","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,3,16]],"date-time":"2025-03-16T05:10:23Z","timestamp":1742101823000},"score":1,"resource":{"primary":{"URL":"http:\/\/ieeexplore.ieee.org\/document\/1245303\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2003,11]]},"references-count":44,"journal-issue":{"issue":"11","published-print":{"date-parts":[[2003,11]]}},"URL":"https:\/\/doi.org\/10.1109\/tse.2003.1245303","relation":{},"ISSN":["0098-5589"],"issn-type":[{"value":"0098-5589","type":"print"}],"subject":[],"published":{"date-parts":[[2003,11]]}}}