{{short description|Canadian computer scientist and educator|bot=PearBOT 5}} {{Infobox scientist | name = James Cordy | image = Cordy2008.jpg | image_size = | alt = | caption = | birth_name = James Reginald Cordy | birth_date = {{birth date and age|1950|01|02}} | birth_place = | death_date = | death_place = | residence = | citizenship = Canada | nationality = | fields = Computer Science | workplaces = [[University of Toronto]] <br> [[Queen's University at Kingston|Queen's University]] | alma_mater = [[Victoria University in the University of Toronto|Victoria College]] <br> [[University of Toronto]] | doctoral_advisor = [[Ric Holt|Richard C. Holt]] | academic_advisors = | doctoral_students = | notable_students = | known_for = [[Turing (programming language)|Turing]], [[TXL (programming language)|TXL]], [[S/SL]], [[NICAD clone detector]] | author_abbrev_bot = | author_abbrev_zoo = | influences = | influenced = | awards = [[List of distinguished members of the Association for Computing Machinery|ACM Distinguished Member]] (2008)<br> [[IBM Centers for Advanced Studies|IBM CAS]] Faculty Fellow of the Year (2008, 2013)<br> [[CS-Can/Info-Can]] Lifetime Achievement Award (2019) | signature = <!--(filename only)--> | signature_alt = | footnotes = | ethnicity = | religion = }} <!-- source: http://scg.unibe.ch/download/oncv/oncv.pdf -->

'''James Reginald Cordy''' (born January 2, 1950) is a [[Canadians|Canadian]] [[computer scientist]] and [[educator]] who is Professor Emeritus in the [[Queen's University Faculty of Arts and Sciences#Computing|School of Computing]] at [[Queen's University at Kingston|Queen's University]]. As a researcher he is most recently active in the fields of source code analysis and manipulation, software reverse and re-engineering, and pattern analysis and machine intelligence. He has a long record of previous work in programming languages, compiler technology, and software architecture.

He is best known for his work on the [[TXL (programming language)|TXL]] source transformation language,<ref>J.R. Cordy, "The TXL Source Transformation Language", Science of Computer Programming 61,3 (August 2006), pp. 190-210</ref> a parser-based framework and functional programming language designed to support software analysis and transformation tasks originally developed with M.Sc. student Charles Halpern-Hamu in 1985 as a tool for experimenting with programming language design.<ref>J.R. Cordy, C.D. Halpern and E. Promislow, TXL: A Rapid Prototyping System for Programming Language Dialects, Computer Languages 16,1 (January 1991), pp. 97-107</ref> His recent work on the NICAD clone detector<ref>C.K. Roy and J.R. Cordy, NICAD: Accurate Detection of Near-miss Clones Using Flexible Pretty-printing and Code Normalization, Proc. ICPC 2008, IEEE International Conference on Program Comprehension, Amsterdam, June 2008, pp. 172-181</ref> with Ph.D. student Chanchal Roy, the Recognition Strategy Language<ref>R. Zanibbi, [[Dorothea Blostein|D. Blostein]] and J.R. Cordy, "The Recognition Strategy Language", Proc. ICDAR 2005 - IAPR 8th Intl. Conf. on Document Analysis and Recognition, Seoul, Korea, August 2005, pp. 565-569</ref> with Ph.D. student Richard Zanibbi and [[Dorothea Blostein]], the Cerno<ref>N. Kiyavitskaya, N. Zeni, J.R. Cordy, L. Mich and J. Mylopoulos, Cerno: Light-Weight Tool Support for Semantic Annotation of Textual Documents, Data & Knowledge Engineering 68,12 (Dec. 2009), pp. 1470-1492</ref> lightweight natural language understanding system with [[John Mylopoulos]] and others at the [[University of Trento]], and the SIMONE model clone detector with Manar Alalfi, Thomas R. Dean, Matthew Stephan and Andrew Stevenson<ref>M.H. Alalfi, J.R. Cordy, T.R. Dean, M. Stephan and A. Stevenson, "Models are Code Too: Near-miss Clone Detection for Simulink Models", Proc. ICSM 2012 - IEEE International Conference on Software Maintenance, Riva del Garda, Italy, September 2012, pp. 295-304</ref> is based on TXL.

The 1995 paper A Syntactic Theory of Software Architecture<ref>T.R. Dean and J.R. Cordy, "A Syntactic Theory of Software Architecture", IEEE Transactions on Software Engineering 21,4 (January 1995), pp. 302-313.</ref> with Ph.D. student Thomas R. Dean has been widely cited as a seminal work in the area, and led to his work with Thomas R. Dean, Kevin A. Schneider and Andrew J. Malton on legacy systems analysis.<ref>T.R. Dean, J.R. Cordy, K.A. Schneider and A.J. Malton, "Experience Using Design Recovery Techniques to Transform Legacy Systems", Proc. ICSM 2001 - IEEE International Conference on Software Maintenance, Florence, Nov. 2001, pp. 622-631</ref>

Work in programming languages included the design of [[Concurrent Euclid]]<ref>J.R. Cordy and R.C. Holt, The Concurrent Euclid Report, Technical Reports CSRI-115 and CSRI-133, Computer Systems Research Institute, University of Toronto, July 1980</ref> (1980) and [[Turing (programming language)|Turing]]<ref>R.C. Holt and J.R. Cordy, "The Turing Language Report", Technical Report CSRI-153, Computer Systems Research Institute, University of Toronto, December 1983</ref><ref>R.C. Holt and J.R. Cordy, The Turing Programming Language, Communications of the Association for Computing Machinery 31,12 (December 1988), pp. 1410-1423</ref> (1983), with [[Ric Holt|R.C. Holt]], and the implementation of the [[Euclid (programming language)|Euclid]]<ref>D.B. Wortman and J.R. Cordy, Early Experiences with Euclid, Proc. ICSE-5, IEEE 5th International Conference on Software Engineering, San Diego, March 1981, pp. 27-32</ref> (1978) and [[SP/k]]<ref>R.C. Holt, D.B. Wortman, D.T. Barnard and J.R. Cordy, "SP/k: A System for Teaching Computer Programming", Comm. of the Association for Computing Machinery 20,5 (May 1977), pp. 301-309.</ref> (1974) languages with [[Ric Holt|R.C. Holt]], D.B. Wortman, D.T. Barnard and others. As part of these projects he developed the [[S/SL programming language|S/SL]] compiler technology<ref>R.C. Holt, J.R. Cordy and D.B. Wortman, An Introduction to S/SL: Syntax/Semantic Language, ACM Transactions on Programming Languages and Systems 4,2 (April 1982), pp. 149-178</ref> with [[Ric Holt|R.C. Holt]] and D.B. Wortman based on his M.Sc. thesis work<ref>J.R. Cordy, R.C. Holt and D.B. Wortman, Semantic Charts: A Diagrammatic Approach to Semantic Processing, Proc. ACM 1979 SIGPLAN Symposium on Compiler Construction, ACM SIGPLAN Notices Vol. 14, No. 8, August 1979, pp. 39-49</ref> and the orthogonal code generation method based on his Ph.D. thesis work.<ref>J.R. Cordy and R.C. Holt, "Code Generation Using an Orthogonal Model", Software-Practice and Experience 20,3 (March 1990), pp. 301-320</ref>

He has co-authored or co-edited the books ''The Turing Programming Language: Design and Definition''<ref>R.C. Holt, P.A. Matthews, J.A. Rosselet and J.R. Cordy, The Turing Programming Language: Design and Definition, Prentice-Hall, 1988</ref> (1988), ''Introduction to Compiler Construction Using S/SL''<ref>J.R. Cordy, Introduction to Compiler Construction Using S/SL : the Syntax/Semantic Language, Queen's University, 1986, (5th edition, August 2006)</ref> (1986), The Smart Internet<ref>M. Chignell, J.R. Cordy, J. Ng and Y. Yesha (eds.), The Smart Internet: Current Research and Future Applications, Lecture Notes in Computer Science 6400, Springer Verlag, 2010</ref> (2010), and ''The Personal Web''<ref>M. Chignell, J.R. Cordy, R.Kealey, J. Ng and Y. Yesha (eds.), The Personal Web: A Research Agenda, Lecture Notes in Computer Science 7855, Springer Verlag, 2013</ref> (2013).

From 2002 to 2007 he was the Director of the [[Queen's University Faculty of Arts and Sciences#Computing|Queen's School of Computing]]. In 2008, he was elected an [[List of distinguished members of the Association for Computing Machinery|ACM Distinguished Member]].<ref>{{Cite web |url=http://awards.acm.org/homepage.cfm?alpha=C&srt=alpha&awd=157 |title=ACM Awards |url-status=dead |archive-url=https://web.archive.org/web/20120402214109/http://awards.acm.org/homepage.cfm?alpha=C&srt=alpha&awd=157 |archive-date=2012-04-02 |access-date=2011-03-31}}</ref> He is a prolific academic supervisor and in 2008 was recognized with the [[Queen's University at Kingston|Queen's University]] Award of Excellence in Graduate Supervision.<ref>{{cite web |url=http://www.queensu.ca/ctl/awards/internal-awards/university-wide-awards#Award%20for%20Excellence%20in%20Graduate%20Student%20Supervision |url-status=dead |archive-url=https://web.archive.org/web/20151001051147/http://www.queensu.ca/ctl/awards/internal-awards/university-wide-awards |archive-date=2015-10-01 |title=University Wide Awards {{!}} Centre for Teaching and Learning}}</ref> In 2016 he won the [[Queen's University at Kingston|Queen's University]] Prize for Excellence in Research.<ref>{{Cite web|url=http://www.queensu.ca/vpr/prizes-awards/award-winners/prizes-excellence-research|title = Prizes for Excellence in Research &#124; Queen's University}}</ref> In 2019 he was recognized with the [[CS-Can/Info-Can]] Lifetime Achievement Award.<ref>{{Cite web|url=https://cscan-infocan.ca/awards/james-r-cordy/|title = James R. Cordy}}</ref>

==References== <references/>

==External links== * [http://www.cs.queensu.ca/home/cordy Personal page at Queen's University]

{{Authority control}}

{{DEFAULTSORT:Cordy, James R.}} [[Category:1950 births]] [[Category:Living people]] [[Category:University of Toronto alumni]] [[Category:Software engineering researchers]] [[Category:Programming language researchers]] [[Category:Computer science writers]] [[Category:Academic staff of Queen's University at Kingston]]