q2K BHP
Black History Portal
THE BHP WIRE —
HIDDEN TRUTHS
What's New!
THE JOURNEY THROUGH TIME

Explore Black History

Explore the people, places, events, achievements, struggles and stories that shaped our journey.

✊🏾

Civil Rights

Movements, leaders, victories and the continuing fight for equality.

⚙️

Black Inventors

Innovation, patents, science, technology and world-changing contributions.

🏆

Sports

Pioneers, champions, Negro Leagues, records, activism and excellence.

♟️

People

Meet the people whose lives, choices and achievements shaped the journey.

📍

Places

Black towns, communities, institutions and places where history happened.

📜

Events

Moments that changed communities, movements, institutions and the nation.

Enter a person, place, event, or topic.
MY'STORY

The MOVE Fire

This is a personal recollection on the Move fire on May 13, 1985 Philadelphia police fired thousands of rounds at the MOVE house, city officials approved dropping an explosive device on the roof, the resulting fire was allowed to burn, 11 people—including five children—died, and 61 homes were destroyed. Philadelphia City Council later called it a “brutal attack carried out by the City of Philadelphia on its own citizens” and acknowledged that no individual faced criminal consequences for the bombing. One timeline correction worth preserving for the BHP record: the major previous MOVE-police confrontation was August 8, 1978, about seven years before the bombing, not a year or two earlier. Officer James Ramp was killed, other police and firefighters were wounded, nine MOVE members were later convicted, and television cameras recorded police beating Delbert Africa during his arrest. The 1985 MOVE Commission later specifically criticized city planners for failing to adequately use lessons from that 1978 confrontation. And that actually strengthens the point you’re making: 1985 did not happen without precedent or institutional memory. There had already been a deadly confrontation with MOVE, years of conflict, negotiations and police involvement before Osage Avenue.

MORE →
BLACK FACTS
The Truths They Never Taught You...

Katherine Johnson — Mathematics to the Moon

Katherine Johnson’s mathematical calculations helped guide some of America’s most important early space missions while she confronted the racial and gender barriers faced by Black women in twentieth-century America.

MORE →
BHP gathered finds from its connected research sources. Showing the 4 strongest Black History matches.
← BACK TO RESULTS
Wikipedia

EGL (programming language)

EGL
(Enterprise Generation Language)
DeveloperIBM
LicenseEclipse Public License
Websitewww.eclipse.org/edt/

EGL (Enterprise Generation Language) is a programming technology designed to meet the challenges of modern (at the time of its design), multi-platform application development by providing a common language and programming model across languages, frameworks, and runtime platforms.

Originally developed by IBM, it was later donated to the Eclipse Software Foundation and maintained as the EDT (EGL Development Tools)[1] open source project under the Eclipse Public License (EPL). The project was proposed for termination in 2014[2] due to insufficient activity in the previous two years, and was effectively archived in 2017[3].

Overview

[edit]

The language borrows concepts familiar to anyone using statically typed languages like Java, COBOL, C, etc. However, it borrows the concept of stereotype from Unified Modeling Language (UML) that is not typically found in statically typed programming languages. In a nutshell, EGL is a higher-level, universal application development language.

EGL is similar in syntax to other common languages so it can be learned by application developers with similar previous programming background. EGL application development abstractions shield programmers from the technical interfaces of systems and middleware allowing them to focus on building business functionality. EGL applications and services are written, tested and debugged at the EGL source level, and once they are satisfactorily functionally tested they can be compiled into COBOL, Java, or JavaScript code to support deployment of business applications that can run in any of the following environments:

Code examples

[edit]

Program

[edit]

An EGL Program part is a generatable logic part with one entry point. Each Program part contains a main() function, which represents the logic that runs at program start up. A program can include other functions and can access functions that are outside of the program. The function main() can invoke those other functions. Program functions are composed of a set of EGL statements, variables, and constants.

Program HelloWorld

	const GREETING string = "Hello, ";
    
	function main()
		myName string = "John";
		sayHello(myName);
	end

	function sayHello(name String in)
		SysLib.writeStdOut(GREETING + name + "!");
	end

end

Record

[edit]

An EGL Record part defines a set of data elements. In this example, a record with the name CustomerRecord is defined with 6 fields.

Record CustomerRecord type BasicRecord
	customerNumber INT;            
	customerName STRING;
	customerAddr1 STRING;
	customerAddr2 STRING;
	customerAddr3 STRING;
	customerBalance MONEY;
end

EGL has a specialized type of record called SQLRecord that is used to exchange data with a relational database.

record Employee type sqlRecord { tableNames =[["Employee"]], keyItems =[EMPNO]}
    EMPNUMBER string{ column = "EMPNO", maxLen = 6};
    FIRSTNME string{ sqlVariableLen = yes, maxLen = 12};
    MIDINIT string{ isSqlNullable = yes, maxLen = 1};
    LASTNAME string{ sqlVariableLen = yes, maxLen = 15};
    DEPT string{ column = "WORKDEPT", isSqlNullable = yes, maxLen = 3};
    PHONENO string{ isSqlNullable = yes, maxLen = 4};
    HIREDATE date{ isSqlNullable = yes};
end
  • In this example, the record Employee is bound to a table (or view) named Employee.

Service

[edit]

An EGL Service part contains public functions meant to be accessed from other applications or systems. In this example, a service with two functions is defined.

package com.mycompany.services;

service EmployeeService

    function getEmployees() returns(Employee[])
        records Employee[0]; // define an empty array of records
        get records; // retrieve records from the database
        return (records); // return the records       
    end
    
    function addEmployee(emp Employee in) returns (boolean)
    	try
    		add remp;
    		return (true);
    	onException (ex AnyException)
    		return (false);
    	end
    end

end
  • In EGL, code is organized in packages (like Java (programming language))
  • The first function, getEmployees, returns an array of records populated from the records in a database.
  • The second function, addEmployee adds a new record to the database and returns a true or false depending on whether the record was added successfully.

RUIHandler

[edit]

The main component of a Rich UI application is a Rich UI handler part. These parts are generated into JavaScript.

package com.mycompany.ui;

import com.mycompany.services.Employee;
import com.mycompany.services.EmployeeService;
import dojo.widgets.DojoGrid;
import dojo.widgets.DojoGridColumn;

handler EmployeeView type RUIhandler { initialUI = [ grid ], 
                                       onConstructionFunction = start, 
                                       cssFile = "main.css" }

    grid DojoGrid { behaviors = [ ], headerBehaviors = [ ], columns = [
                    new DojoGridColumn { displayName = "First Name", name = "FIRSTNAME" },
                    new DojoGridColumn { displayName = "Last Name", name = "LASTNAME" },
                    new DojoGridColumn { displayName = "Salary", name = "SALARY" }
            ] };

    function start()
        svc EmployeeService { };
        call svc.getEmployees () returning to displayEmployees;
    end

    function displayEmployees(retResult Employee [ ] in)
        grid.data = retResult as any [ ];
    end
    
end

Web 2.0 with EGL

[edit]

In December 2008, IBM introduced new technology, EGL Rich UI, to simplify the creation of Web 2.0-style rich web applications. This technology simplifies development by hiding the complexities of Ajax, JavaScript, REST, and SOAP from the developer, which enables them to focus on the business requirement and not on the underlying technologies.

Commercial products

[edit]

EGL programming tools are available as an Eclipse-based[4] commercial product, the Rational Business Developer and also in the EGL edition of Rational Developer for System z.

EGL is a target language for modernization of legacy applications because of the language semantics affinity with procedural languages and legacy 4th generation languages:

  • a set of conversion tools available within the Rational Business Developer product provide automated the conversion from older and stabilized IBM and Informix 4th generation languages
  • a set of IBM service offerings and complementary products (Rational Migration Extension for Natural, Rational Migration Extension for System i, Rational Migration Extension for CA-products) provide the ability to convert from Software AG Natural, IBM RPG, CA Cool:Gen and CA Ideal/Datacom to EGL

Tools for searching large EGL code bases, comparing individual EGL files for changes, and detecting duplicated code are available from Semantic Designs[5]

References

[edit]
  1. ^ EDT (EGL Development Tools)
  2. ^ "[edt-dev] Proposing Termination of the EDT Project". www.eclipse.org. Retrieved 2026-09-30.
  3. ^ "451419 – [terminate] tools.edt". bugs.eclipse.org. Retrieved 2026-09-30.
  4. ^ Eclipse
  5. ^ "Semantic Designs". Archived from the original on 2011-07-16. Retrieved 2010-08-13.

Further reading

[edit]
[edit]

Source: Wikipedia. Article content is retrieved live through the MediaWiki API.

No preview image
Wikipedia

EGL (programming language)

EGL (Enterprise Generation Language) is a programming technology designed to meet the challenges of modern (at the time of its design), multi-platform application development by providing a common language and programming model across languages, frameworks, and runtime platforms. Originally developed by IBM, it was later donated to the Eclipse Software Foundation and maintained as the EDT (EGL Development Tools) open source project under the Eclipse Public License (EPL). The project was proposed for termination in 2014 due to insufficient activity in the previous two years, and was effectively archived in 2017.

MORE →
No preview image
Wikipedia

Programming language generations

Programming languages have been classified into several programming language generations. This series of buzzwords was popular in the 1980s and 1990s. Historically, this classification was used to indicate increasing power of programming styles. Later writers have somewhat redefined the meanings as distinctions previously seen as important became less significant to current practice. The terms first-generation and second-generation programming language were not used prior to the coining of the term third-generation. None of these three terms are mentioned in early compendiums of programming languages. As early as May 1966 computers were advertised as third generation computers. This buzzword was reused to advertise programming languages as third generation languages within the same year. It is synonymous to the buzzword high-level programming language which was coined 1964 or a bit earlier. In 1957 Bob Bemer still called programming with a high-level language “automatic programming”. Machine code languages were retroactively named first generation and assembly languages second generation languages. Niklaus Wirth, who designed Pascal, wrote in 2008 that high-level language was “a poorly understood buzzword” and contrasted C with high-level programming languages. Around 1973 fourth-generation language was coined. It was used for declarative languages (such as Prolog), “database languages” and domain-specific languages which claimed to operate at an even higher level, and in a domain even closer to the user (e.g. at a natural-language level) than the original, imperative high-level languages such as Pascal, C, ALGOL, Fortran, BASIC, etc. Also around 1973 very high level language (VHLL) was coined. It remained rarely used and is about as vague as 5GL. The only consistent thing about it is that it is supposed to be higher-level than high-level language. In 1974 English was called a VHLL. One paper from 1974 says VHLL are supposed to be nonprocedural (declarative) languages. In 1983 a paper calls the procedural languages APL, SETL and BDL VHLLs. In the 90s it was sometimes used to refer to scripting languages like Perl and Python. "Generational" classification of high-level languages (third generation and later) was never fully precise and was later perhaps abandoned, with more precise classifications gaining common usage, such as domain-specific, object-oriented, declarative and functional. C gave rise to C++ and later to Java and C#; Lisp to CLOS; Ada to Ada 2012; and even COBOL to COBOL 2002. New languages have emerged in that "generation" as well. In 1988 in the German computer magazine Computerwoche Jürgen Dyrda, Managing Director of Progress Software GmbH, said that the discussion of 5GL is absurd. The article further claims that a few years prior 4GL disputed too and that at the time anyone who wants to be taken seriously in the market included the term "4GL" either before or after the product name of his database software. In 2017 Computerwoche wrote that 4GL is a “a rather vague term that was primarily used for marketing purposes in the 1980s” and that 5GL is “even more vague. But has something to do with artificial intelligence”. In the September 1994 issue of the Scientific American Bill Curtis says in an interview with W. Wayt Gibbs, “In the 1970s structured programming was also touted as a paradigm shift. So was CASE [computer-assisted software engineering]. So were third-, fourth- and fifth-generation languages. We’ve heard great promises for technology, many of which weren’t delivered.”

MORE →
No preview image
Wikipedia

List of programming languages

This is an index to notable programming languages, in current or historical use. Dialects of BASIC (which have their own page), esoteric programming languages, and markup languages are not included. A programming language does not need to be imperative or Turing-complete, but must be executable and so does not include markup languages such as HTML or XML, but does include domain-specific languages such as SQL and its dialects.

MORE →
Wikipedia

COBOL

COBOL (Common Business-Oriented Language; ) is a compiled English-like computer programming language designed for business use. It is an imperative, procedural, and, since 2002, object-oriented language. COBOL is primarily used in business, finance, and administrative systems for companies and governments. COBOL is still widely used in applications deployed on mainframe computers, such as large-scale batch and transaction processing jobs. Many large financial institutions were developing new systems in the language as late as 2006, but most programming in COBOL today is purely to maintain existing applications. Programs are being moved to new platforms, rewritten in modern languages, or replaced with other software. COBOL's design was started in 1959 by CODASYL and was partly based on the programming language FLOW-MATIC, designed by Grace Hopper. It was created as part of a US Department of Defense effort to create a portable programming language for data processing. It was originally seen as a stopgap, but the Defense Department promptly pressured computer manufacturers to provide it, resulting in its widespread adoption. It was standardized in 1968 and has been revised five times. Expansions include support for structured and object-oriented programming. The current standard is ISO/IEC 1989:2023. COBOL statements have prose syntax such as MOVE x TO y, which was designed to be self-documenting and highly readable. However, it is verbose and uses over 300 reserved words compared to the succinct and mathematically inspired syntax of other languages. Lacking a large standard library, the standard specifies 43 statements, 87 functions, and just one class. COBOL code is split into four divisions (identification, environment, data, and procedure), containing a rigid hierarchy of sections, paragraphs, and sentences. COBOL has been criticized for its verbosity, design process, and poor support for structured programming. These weaknesses often result in monolithic programs that are hard to comprehend as a whole, despite their local readability.

MORE →
TOPIC OF THE DAY

Greenwood / Black Wall Street

Before the 1921 destruction of Tulsa’s Greenwood District, Black residents had created a remarkable center of business and community life. The district included stores, professional offices, entertainment venues and homes owned by Black citizens. Understanding Greenwood means learning what was built—not only what was burned.

MORE →
TRIVIA QUESTION OF THE DAY

Which heavyweight champion was known as the “Brown Bomber”?

Joe Louis.