Introducing COBOLOG the Common Business-Oriented Logic-Programming Language

Total Page:16

File Type:pdf, Size:1020Kb

Introducing COBOLOG the Common Business-Oriented Logic-Programming Language Introducing COBOLOG The Common Business-Oriented Logic-programming language Michael Coulombe Electrical Engineering and Computer Science Department Massachusetts Institute of Technology 32 Vasser Street, Cambridge, MA [email protected] Abstract In addition to the organizations listed above, the following other orga- nizations participated in the work of the Maintenance Group: We introduce COBOLOG, a new cross-paradigm programming lan- guage. Inspired by two popular languages, COBOL and PROLOG, • Allstate Insurance Company we finally bring logic programming to the business community. • Bendix Corporation, Computer Division • 1. Introduction Control Data Corporation • Dupont Corporation COBOL, the Common Business Oriented Language, was released • General Electric Company in 1961 to much excitement as “COBOL 61” [17]. After a French grad student named Alain Colmerauer was tasked to write a syntax- • General Motors Corporation directed error detector for COBOL programs, he fled to Canada and • Lockheed Aircraft Corporation created PROLOG, “PROgrammation en LOGique” [7]. Computer • scientists have been split between academia and industry ever since. National Cash Register Company We celebrate the 60th anniversery of COBOL 61 by reunifying • Philco Corporation these two great languages, combining the best of the business- • Standard Oil Company (N. J.) oriented and logic-oriented programming paradigms for the first • United States Steel Corporation time in COBOLOG. In this paper, we will detail our new language and document the current progress on its implementation. This COBOL-61 manual is the result of contributions made by all of the above-mentioned organizations. No warranty, expressed or implied, is made 1.1 Mandatory COBOL Acknowledgements by any contributor or by the committee as to the accuracy and functioning of the programing system and language. Moreover, no responsibility is This publication is based on the COBOL System developed in 1959 by a committee composed of government users and computer manufacturers. assumed by any contributor, or by the cominittee, in connection therewith. The organizations participating in the original development were: It is reasonable to assume that a number of improvements and additions will be made to COBOL. Every effort will be made to insure that the • Air Materiel Command, United States Air Force improvements and corrections will be made in an orderly fashion, with due • National Bureau of Standards, U. S. Department of Commerce recognition of existing users’ investments in programing. However, t h i s protection can be positively assured only by individual implementors. • Burroughs Corporation Procedures have been established for the maintenance of COBOL. In- • David Taylor Model Basin, Bureau of Ships, U. S. Navy quiries concerning the procedures and the methods for proposing changes should be directed to the Executive Committee of the Conference on Data • Electronic Data Processing Division, Minneapolis-Hoimywell Regula- Systems Languages. tor Company The authors and copyright holders of the copyrighted material used • International Business Machines Corporation herein: FLOW-MATIC (Trade-mark of Sperry-Rand Corporation), Pro- graming for the UNIVAC® I and II, Data Automation Systems© 1958, • Radio Corporation of America 1959, Sperry-Rand Corporation; IBM Commercial Translator, Form No. • Sylvania Electric Products, Inc. F28-8013, copyrighted 1959 by IBM; FACT, DSI 27A5260-2760, copy- righted 1960 by Minneapolis-Honeywell, have specifically authorized the • Univac Division of Sperry-Rand Corporation use of this material, in whole or in part, in the COBOL specifications. Such authorization extends to the reproduction and use of COBOL specifications in programing manuals or similar publications. Any organization interested in reproducing the COBOL report and ini- Permission to make digital or hard copies of part or all of this work for personal or tial specifications in whole or in part, using ideas taken from this report 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 or utilizing this report as the basis for an instruction manual or any other on the first page. Copyrights for components of this work owned by others than purpose is free to do so. However, all such organizations are requested to ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to reproduce this section as part of the introduction to the document. Those us- republish, to post on servers, or to redistribute to lists, contact the Owner/Author. ing a short passage, as in a book review, are requested to mention “COBOL” Request permissions from [email protected] or Publications Dept., ACM, Inc., fax +1 (212) 869-0481. Copyright held by Owner/Author. Publication Rights Licensed in acknowledgment of the source, but need not quote this entire section. to ACM. 1.2 Background Copyright © ACM [to be supplied]. $15.00 DOI: http://dx.doi.org/10.1145/(to come) COBOL was known as a difficult language from its inception, and even today mere mortals have trouble distinguishing their percep- In the wake of a world-wide pandemic, we believe time is ripe tions from the reality hiding behind their terminal [5]. Declassi- to loop back and disrupt the computer science community, giving fied documents show that in the 80’s, even DoD researchers could 110% for all the stakeholders by leveraging our core competency: only semi-automatically translate a subset of business programs creating new programming languages. into human-understandable language [10]. Some say COBOL was prophesized in 1928 by Hewlett-Packard Lovecraft before he 2. The COBOLOG Language started his successful technology company, which went on to de- velop its own COBOL compiler [19]: COBOLOG, short for the Common Business-Oriented Logic- programming language, combines a variety of aspects from COBOL The most merciful thing in the world, I think, is the inability and PROLOG, mixed with a tablespoon of modern innovations. of the human mind to correlate all its contents. We live on a placid island of ignorance in the midst of black seas 2.1 Syntax of infinity, and it was not meant that we should voyage ACOBOLOG program is a collection of logical predicates on terms far. The sciences, each straining in its own direction, have and relations between them. Relations are defined by a set of hitherto harmed us little; but some day the piecing together clauses, typed like Pred :- Goal, which states that proving of dissociated knowledge will open up such terrifying vistas Goal is true is one way to prove Pred is true. A term is one of: of reality, and of our frightful position therein, that we shall either go mad from the revelation or flee from the deadly • Compound, a bunch of words each starting with lower-case light into the peace and safety of a new dark age. letters and possibly interspersed with other terms — HP Lovecraft, The Call of COBOL [14] • Variable, a bunch of words starting with upper-case letters Despite the success of COBOL, it was unable to stop the rise • Integer, written as contiguous base 10 digits of PROLOG. Its first interpretor was written for the sake of porta- • Operator expression, either nullary, prefix, infix, or postfix bility in FORTRAN, a unfortunate necessity of the time [7]. 80’s researchers could see the value in this language, but experiments • List, including finite ([4,2,0]), cyclical (L is [go|L]), and [ | ] with concurrently teaching PROLOG and PASCAL to “Business In- list prefixes with non-list tails ( A,B 666 ) formation Systems” majors in universities [12] just confused the • Indented block, each line containing a goal (predicate term) poor students greatly and left them unprepared for COBOL on the job. Here in the middle of the page is an example COBOLOG program: 1 main :- % this predicate is the one your computer will start trying to prove 2 the sum of [1,2,3,4] is The Sum % performs the predicate defined below 3 display The Sum % prints the sum, which is10, just like in COBOL 4 the sum of [] is0 % an empty list has sum zero 5 the sum of [The First Element|The Rest Of The List] is The Sum :- %a non-empty list is harder to check 6 the sum of The Rest Of The List is The Sum Of The Rest % performs this predicate recursively 7 add The First Element to The Sum Of The Rest giving The Sum % adds two numbers, like in COBOL So we are all on the same page (page2), below is an enterprise The above business-ready, game-changing COBOLOG program next-gen COBOL program for rockstars that computes the sum. proves that the list [1,2,3,4] has a sum then prints it to the screen for customer-centric convenience. It uses recursion, a feature not 1 *>**************************** present in COBOL 61 that we will cover in Section3. 2 *> Ph’nglui mglw’nafh COBOL ** We adopt a holistic approach with modern preferences ala 3 *>R’lyeh wgah’nagl fhtagn ** 4 *>**************************** PYTHON and others by writing the conjunction of goals in indented 5 IDENTIFICATION DIVISION. blocks (spaces only, of course) without line- or block-ending de- 6 PROGRAM-ID.SUM. limeters. We can start a line with the “\” character to continue the 7 DATA DIVISION. previous goal in the same block. 8 WORKING-STORAGE SECTION. Next, here is a premium free trial sneak peak of the conditional 9 01 LIST PIC9 OCCURS4 TIMES. predicate ifC thenT elseF . Currently, in COBOLOG, nested 10 01 LIST-LENGTH PIC9 VALUE4. goals must be written in a block to empower your computer to prove 11 01 CUR-SUM PIC99 VALUE0. them, helping you keep your ducks in a row. 12 01 CUR-POS PIC9 VALUE1. 13 PROCEDURE DIVISION. 1 % The Law of Identity(this is not legal advice) 14 000-MAIN SECTION. 2 A equalsA 15 MOVE1TO LIST(1).
Recommended publications
  • Cobol/Cobol Database Interface.Htm Copyright © Tutorialspoint.Com
    CCOOBBOOLL -- DDAATTAABBAASSEE IINNTTEERRFFAACCEE http://www.tutorialspoint.com/cobol/cobol_database_interface.htm Copyright © tutorialspoint.com As of now, we have learnt the use of files in COBOL. Now, we will discuss how a COBOL program interacts with DB2. It involves the following terms: Embedded SQL DB2 Application Programming Host Variables SQLCA SQL Queries Cursors Embedded SQL Embedded SQL statements are used in COBOL programs to perform standard SQL operations. Embedded SQL statements are preprocessed by SQL processor before the application program is compiled. COBOL is known as the Host Language. COBOL-DB2 applications are those applications that include both COBOL and DB2. Embedded SQL statements work like normal SQL statements with some minor changes. For example, that output of a query is directed to a predefined set of variables which are referred as Host Variables. An additional INTO clause is placed in the SELECT statement. DB2 Application Programming Following are rules to be followed while coding a COBOL-DB2 program: All the SQL statements must be delimited between EXEC SQL and END-EXEC. SQL statements must be coded in Area B. All the tables that are used in a program must be declared in the Working-Storage Section. This is done by using the INCLUDE statement. All SQL statements other than INCLUDE and DECLARE TABLE must appear in the Procedure Division. Host Variables Host variables are used for receiving data from a table or inserting data in a table. Host variables must be declared for all values that are to be passed between the program and the DB2. They are declared in the Working-Storage Section.
    [Show full text]
  • Modern Programming Languages CS508 Virtual University of Pakistan
    Modern Programming Languages (CS508) VU Modern Programming Languages CS508 Virtual University of Pakistan Leaders in Education Technology 1 © Copyright Virtual University of Pakistan Modern Programming Languages (CS508) VU TABLE of CONTENTS Course Objectives...........................................................................................................................4 Introduction and Historical Background (Lecture 1-8)..............................................................5 Language Evaluation Criterion.....................................................................................................6 Language Evaluation Criterion...................................................................................................15 An Introduction to SNOBOL (Lecture 9-12).............................................................................32 Ada Programming Language: An Introduction (Lecture 13-17).............................................45 LISP Programming Language: An Introduction (Lecture 18-21)...........................................63 PROLOG - Programming in Logic (Lecture 22-26) .................................................................77 Java Programming Language (Lecture 27-30)..........................................................................92 C# Programming Language (Lecture 31-34) ...........................................................................111 PHP – Personal Home Page PHP: Hypertext Preprocessor (Lecture 35-37)........................129 Modern Programming Languages-JavaScript
    [Show full text]
  • ALGORITHMS for ARTIFICIAL INTELLIGENCE in Apl2 By
    MAY 1986 REVISED Nov­ 1986 TR 03·281 ALGORITHMS FOR ARTIFICIAL INTELLIGENCE IN APl2 By DR­ JAMES A· BROWN ED EUSEBI JANICE COOK lEO H­ GRONER INTERNATIONAL BUSINESS MACHINES CORPORATION GENERAL PRODUCTS DIVISION SANTA TERESA LABORATORY SAN JOSE~ CALIFORNIA ABSTRACT Many great advances in science and mathematics were preceded by notational improvements. While a g1yen algorithm can be implemented in any general purpose programming language, discovery of algorithms is heavily influenced by the notation used to Lnve s t Lq a t.e them. APL2 c o nce p t.ua Lly applies f unc t Lons in parallel to arrays of data and so is a natural notation in which to investigate' parallel algorithins. No c LaLm is made that APL2 1s an advance in notation that will precede a breakthrough in Artificial Intelligence but it 1s a new notation that allows a new view of the pr-obl.ems in AI and their solutions. APL2 can be used ill problems tractitionally programmed in LISP, and is a possible implementation language for PROLOG-like languages. This paper introduces a subset of the APL2 notation and explores how it can be applied to Artificial Intelligence. 111 CONTENTS Introduction. • • • • • • • • • • 1 Part 1: Artificial Intelligence. • • • 2 Part 2: Logic... · • 8 Part 3: APL2 ..... · 22 Part 4: The Implementations . · .40 Part 5: Going Beyond the Fundamentals .. • 61 Summary. .74 Conclus i ons , . · .75 Acknowledgements. • • 76 References. · 77 Appendix 1 : Implementations of the Algorithms.. 79 Appendix 2 : Glossary. • • • • • • • • • • • • • • • • 89 Appendix 3 : A Summary of Predicate Calculus. · 95 Appendix 4 : Tautologies. · 97 Appendix 5 : The DPY Function.
    [Show full text]
  • 10 Programming Languages You Should Learn Right Now by Deborah Rothberg September 15, 2006 8 Comments Posted Add Your Opinion
    10 Programming Languages You Should Learn Right Now By Deborah Rothberg September 15, 2006 8 comments posted Add your opinion Knowing a handful of programming languages is seen by many as a harbor in a job market storm, solid skills that will be marketable as long as the languages are. Yet, there is beauty in numbers. While there may be developers who have had riches heaped on them by knowing the right programming language at the right time in the right place, most longtime coders will tell you that periodically learning a new language is an essential part of being a good and successful Web developer. "One of my mentors once told me that a programming language is just a programming language. It doesn't matter if you're a good programmer, it's the syntax that matters," Tim Huckaby, CEO of San Diego-based software engineering company CEO Interknowlogy.com, told eWEEK. However, Huckaby said that while his company is "swimmi ng" in work, he's having a nearly impossible time finding recruits, even on the entry level, that know specific programming languages. "We're hiring like crazy, but we're not having an easy time. We're just looking for attitude and aptitude, kids right out of school that know .Net, or even Java, because with that we can train them on .Net," said Huckaby. "Don't get fixated on one or two languages. When I started in 1969, FORTRAN, COBOL and S/360 Assembler were the big tickets. Today, Java, C and Visual Basic are. In 10 years time, some new set of languages will be the 'in thing.' …At last count, I knew/have learned over 24 different languages in over 30 years," Wayne Duqaine, director of Software Development at Grandview Systems, of Sebastopol, Calif., told eWEEK.
    [Show full text]
  • Event Management for the Development of Multi-Agent Systems Using Logic Programming
    Event Management for the Development of Multi-agent Systems using Logic Programming Natalia L. Weinbachy Alejandro J. Garc´ıa [email protected] [email protected] Laboratorio de Investigacio´n y Desarrollo en Inteligencia Artificial (LIDIA) Departamento de Ciencias e Ingenier´ıa de la Computacio´n Universidad Nacional del Sur Av. Alem 1253, (8000) Bah´ıa Blanca, Argentina Tel: (0291) 459-5135 / Fax: (0291) 459-5136 Abstract In this paper we present an extension of logic programming including events. We will first describe our proposal for specifying events in a logic program, and then we will present an implementation that uses an interesting communication mechanism called \signals & slots". The idea is to provide the application programmer with a mechanism for handling events. In our design we consider how to define an event, how to indicate the occurrence of an event, and how to associate an event with a service predicate or handler. Keywords: Event Management. Event-Driven Programming. Multi-agent Systems. Logic Programming. 1 Introduction An event represents the occurrence of something interesting for a process. Events are useful in those applications where pieces of code can be executed automatically when some condition is true. Therefore, event management is helpful to develop agents that react to certain occurrences produced by changes in the environment or caused by another agents. Our aim is to support event management in logic programming. An event can be emitted as a result of the execution of certain predicates, and will result in the execution of the service predicate or handler. For example, when programming a robot behaviour, an event could be associated with the discovery of an obstacle in its trajectory; when this event occurs (generated by some robot sensor), the robot might be able to react to it executing some kind of evasive algorithm.
    [Show full text]
  • Studebaker Clubhouse at Bendix Woods County Park
    BENDIX WOODS, THE FIRST CAR SIGN ST. JOSEPH COUNTY PARK SALUTES LOCAL AVIATION: THE TREES THAT SPELL In 1966, the Bendix Corporation STUDEBAKER donated 175 acres of land and the Stu- debaker Clubhouse to the St. Joseph County Parks and Recreation Board. This In 1938 the Civilian Conservation donation resulted in St. Joseph County’s Corps (CCC) planted the pine trees first county park. The clubhouse is used as that spell STUDEBAKER. The design Studebaker park offices and a nature center and over was conceived by two Studebaker four miles of trails have been constructed engineers Michaek de Blumenthal and Clubhouse through woods and fields and around Mel S. Niemier. The idea behind the ponds. sign was that it would serve as a salute at to the growing aviation industry in the Bendix Woods Large- area. flowered County Park trillium at It took a month and a half to plant Bendix 8,259 6–inch seedlings. Woods Each letter is composed of two rows of County white pine forming the border and three Park. inner rows of red pine. Since it was first built in 1926, the Studebaker Clubhouse has gone In 1969 approximately 20 acres of land The living sign spans a distance of one- was sold to the County Parks and the park half mile. through many changes, from living increased to its current size of 195 acres. Each letter is 200 feet in width and quarters for Studebaker employees, to Within Bendix Woods is a 26-acre state 250 feet in length. army barracks, to a private residence dedicated nature preserve.
    [Show full text]
  • GNU Cobol FAQ
    GNU Cobol FAQ | Status This is a 2.1 work in progress release of the GNU Cobol FAQ. Sourced at gcfaqrrst. Courtesty of ReStructuredText, Sphinx and Pygments. GNU Cobol 2.1 is not currently rolled out, but is available for testing. GNUCobolFAQppdf is also available, but broken, as a work in progress, with no work done yet, using Texlive and Sphinx. This FAQ is more than a FAQ and less than a FAQ. Someday that will change and this document will be split into a GNU Cobol manual and a simplified Frequently Asked Questions file. Website favicon by Mark James, help.png from the FAMFAMFAM Silk icon set. http://creativecommons.org/licenses/by/2.5/ Banner courtesy of the GIMP, Copyright © 2008-2014 Brian Tif- fin licensed under Creative Commons Attribution-Share Alike 2.0 Generic License http://creativecommons.org/licenses/by-sa/2.0/ Authors Brian Tiffin [btiffin]_ Answers, quotes and contributions: John Ellis [jrls_swla]_, Vincent Coen, Jim Currey, Bill Klein [wmk- lein]_, Ganymede, Simon Sobisch [human]_, Rildo Pragana, Sergey Kashyrin, Federico Priolo, Frank Swarbrick, Angus, DamonH, Parhs, Gerald Chudyk Compiler by: *Roger While* [Roger]_, *Keisuke Nishida* [Keisuke]_, *Ron Norman* [Ron]_, *Sergey Kashyrin* [Sergey]_, (with the invaluable assistance of many others) Special credits to *Gary Cutler* author of the GNU Cobol Programmers Guide Joseph James Frantz for hosting and advocacy [aoirthoir]_ 1 Version 2.1.17, May 24th, 2014 Status never complete; like a limit, limaq→0 f(aq) = 42 Copyright Copyright © 2008-2014 Brian Tiffin ChangeLog ChangeLog_ note Regarding COBOL Standards, Official COBOL Standards: There are many references to standards in this document.
    [Show full text]
  • A View of the Fifth Generation and Its Impact
    AI Magazine Volume 3 Number 4 (1982) (© AAAI) Techniques and Methodology A View of the Fifth Generation And Its Impact David H. D. Warren SRI International Art$icial Intellagence Center Computer Scaence and Technology Davzsaon Menlo Park, Calafornia 94025 Abstract is partly secondhand. I apologise for any mistakes or misin- terpretations I may therefore have made. In October 1981, .Japan announced a national project to develop highly innovative computer systems for the 199Os, with the title “Fifth Genera- tion Computer Systems ” This paper is a personal view of that project, The fifth generation plan its significance, and reactions to it. In late 1978 the Japanese Ministry of International Trade THIS PAPER PRESENTS a personal view of the <Japanese and Industry (MITI) gave ETL the task of defining a project Fifth Generation Computer Systems project. My main to develop computer syst,ems for the 199Os, wit,h t,he title sources of information were the following: “Filth Generation.” The prqject should avoid competing with IBM head-on. In addition to the commercial aspects, The final proceedings of the Int,ernational Conference it should also enhance Japan’s international prestige. After on Fifth Generat,ion Computer Systems, held in Tokyo in October 1981, and the associated Fifth Generation various committees had deliberated, it was finally decided research reports distributed by the Japan Information to actually go ahead with a “Fifth Generation Computer Processing Development Center (JIPDEC); Systems” project in 1981. The project formally started in April, 1982. Presentations by Koichi Furukawa of Electrotechnical The general technical content of the plan seems to be Laboratory (ETL) at the Prolog Programming Environ- largely due to people at ETL and, in particular, to Kazuhiro ments Workshop, held in Linkoping, Sweden, in March 1982; Fuchi.
    [Show full text]
  • CSC384: Intro to Artificial Intelligence  Brief Introduction to Prolog
    CSC384: Intro to Artificial Intelligence Brief Introduction to Prolog Part 1/2: Basic material Part 2/2 : More advanced material 1 Hojjat Ghaderi and Fahiem Bacchus, University of Toronto CSC384: Intro to Artificial Intelligence Resources Check the course website for several online tutorials and examples. There is also a comprehensive textbook: Prolog Programming for Artificial Intelligence by Ivan Bratko. 2 Hojjat Ghaderi and Fahiem Bacchus, University of Toronto What‟s Prolog? Prolog is a language that is useful for doing symbolic and logic-based computation. It‟s declarative: very different from imperative style programming like Java, C++, Python,… A program is partly like a database but much more powerful since we can also have general rules to infer new facts! A Prolog interpreter can follow these facts/rules and answer queries by sophisticated search. Ready for a quick ride? Buckle up! 3 Hojjat Ghaderi and Fahiem Bacchus, University of Toronto What‟s Prolog? Let‟s do a test drive! Here is a simple Prolog program saved in a file named family.pl male(albert). %a fact stating albert is a male male(edward). female(alice). %a fact stating alice is a female female(victoria). parent(albert,edward). %a fact: albert is parent of edward parent(victoria,edward). father(X,Y) :- %a rule: X is father of Y if X if a male parent of Y parent(X,Y), male(X). %body of above rule, can be on same line. mother(X,Y) :- parent(X,Y), female(X). %a similar rule for X being mother of Y A fact/rule (statement) ends with “.” and white space ignored read :- after rule head as “if”.
    [Show full text]
  • An Architecture for Making Object-Oriented Systems Available from Prolog
    An Architecture for Making Object-Oriented Systems Available from Prolog Jan Wielemaker and Anjo Anjewierden Social Science Informatics (SWI), University of Amsterdam, Roetersstraat 15, 1018 WB Amsterdam, The Netherlands, {jan,anjo}@swi.psy.uva.nl August 2, 2002 Abstract It is next to impossible to develop real-life applications in just pure Prolog. With XPCE [5] we realised a mechanism for integrating Prolog with an external object-oriented system that turns this OO system into a natural extension to Prolog. We describe the design and how it can be applied to other external OO systems. 1 Introduction A wealth of functionality is available in object-oriented systems and libraries. This paper addresses the issue of how such libraries can be made available in Prolog, in particular libraries for creating user interfaces. Almost any modern Prolog system can call routines in C and be called from C (or other impera- tive languages). Also, most systems provide ready-to-use libraries to handle network communication. These primitives are used to build bridges between Prolog and external libraries for (graphical) user- interfacing (GUIs), connecting to databases, embedding in (web-)servers, etc. Some, especially most GUI systems, are object-oriented (OO). The rest of this paper concentrates on GUIs, though the argu- ments apply to other systems too. GUIs consist of a large set of entities such as windows and controls that define a large number of operations. These operations often involve destructive state changes and the behaviour of GUI components normally involves handling spontaneous input in the form of events. OO techniques are very well suited to handle this complexity.
    [Show full text]
  • CITA 385 COBOL for Business and Accounting
    STATE UNIVERSITY OF NEW YORK COLLEGE OF TECHNOLOGY CANTON, NEW YORK MASTER SYLLABUS CITA 385 – COBOL for Business and Accounting Created by: Robert House Updated by: Minhua Wang CANINO SCHOOL OF ENGINEERING TECHNOLOGY DECISION SYSTEMS FALL 2018 A. TITLE: Visual Programming and Development Tools B. COURSE NUMBER: CITA 385 C. CREDIT HOURS: (Hours of Lecture, Laboratory, Recitation, Tutorial, Activity) # Credit Hours: 3 # Lecture Hours: 2 per week # Lab Hours: 1 (two-hour lab) per week Other: per week Course Length: 15 Weeks D. WRITING INTENSIVE COURSE: No E. GER CATEGORY: None F. SEMESTER(S) OFFERED: As required G. COURSE DESCRIPTION: This course provides students with the knowledge and experience to write and modify programs written in the COBOL programming language. Classroom exercises use real world scenarios so students will gain an understanding of where COBOL fits in the business world. H. PRE-REQUISITES/CO-REQUISITES: a. Pre-requisite(s): CITA 152 Computer Logic b. Co-requisite(s): none c. Pre- or co-requisite(s): none I. STUDENT LEARNING OUTCOMES: By the end of this course, the student will be able to: Course Student Learning Outcome PSLO ISLO [SLO] a. Design algorithms to solve 3. Demonstrate a solid understanding of 5 application problems the methodologies and foundations of IT b. Compile, test, and debug COBOL 3. Demonstrate a solid understanding of 5 programs the methodologies and foundations of IT c. Define data elements used in a 3. Demonstrate a solid understanding of 5 COBOL program the methodologies and foundations of IT d. Create procedures using COBOL 3. Demonstrate a solid understanding of 5 statements the methodologies and foundations of IT e.
    [Show full text]
  • The Latest IBM Z COBOL Compiler: Enterprise COBOL V6.2!
    The latest IBM Z COBOL compiler: Enterprise COBOL V6.2! Tom Ross Captain COBOL SHARE Providence August 7,2017 1 COBOL V6.2 ? YES! • The 4 th release of the new generation of IBM Z COBOL compilers • Announced: July 17, 2017 • The same day as IBM z14 hardware…coincidence? • GA: September 8, 2017 • Compiler support for the new IBM z14 hardware and IBM z/OS V2.3 • Ability to exploit the new Vector Packed Decimal Facility of z14 • ‘OLD’ news: • COBOL V5 EOM Sept 11, 2017 (announced Dec 6, 2016) • EOS for COBOL V4 ‘might’ be earlier than 2020, still discussing 2 COBOL V6.2 ? What else does it have? • New and changed COBOL statements, such as the new JSON PARSE statement • Support of COBOL 2002/2014 standards with the addition of the COBOL Conditional Compilation language feature • New and changed COBOL options for increased flexibility • Improved compiler listings with compiler messages at the end of the listing as in previous releases of the compiler • Improved interfaces to optional products and tools such as IBM Debug for z Systems (formerly Debug Tool for z/OS) and IBM Application Discovery and Delivery Intelligence (formerly EzSource) • Compile-time and runtime performance enhancements • Improved usability of the compiler in the z/OS UNIX System Services environment 3 Vector Packed Decimal Facility of z14 • Enterprise COBOL V6.2 adds support for exploiting the new Vector Packed Decimal Facility in z14 through the ARCH(12) compiler option. • The Vector Packed Decimal Facility allows the dominant COBOL data types, packed and zoned decimal, to be handled in wide 16-byte vector registers instead of in memory.
    [Show full text]