The Birth of the Internet - RFC 5, The Decode-Encode Language (DEL) in a Nutshell
Imagine the early days of network computing, back when the ARPA network was still in its infancy. It was clear that to make interactive network programs work smoothly, a specialized language was needed. Enter RFC 5, authored by Jeff Rulifson and introduced on June 2, 1969. This RFC outlines the Decode-Encode Language (DEL), designed to handle two key tasks in network communication:
- Interactive Console Input: DEL processes input from user consoles, provides immediate feedback, and packages this information for network transmission.
- Message Packet Handling: DEL takes incoming message packets, unpacks them, and builds interactive display trees before presenting the information to the user.
The Evolution of DEL
RFC 5 marks the beginning of DEL’s journey. It reflects the discussions and decisions from initial ARPA network meetings, where experts agreed on the need for DEL-like systems. The goal was to support interactive programs across the network efficiently, avoiding unnecessary loads on both the user and server systems.
Key Components of DEL
- Network Standard Translators (NST):
- NST Library: Contains programs that help translate DEL’s format into something usable by different systems.
- Basic Usage: At the lowest level, NST simply sends messages without additional translation.
- Intermediate Usage: Echo tables/ help in managing full-duplex TTY interactions.
- Advanced Usage: For complex display systems, DEL manages immediate feedback and updates by handling interactive elements directly.
- Universal Hardware Representation:
- Concept: To streamline translations across different hardware, DEL introduces a universal way to represent hardware devices.
- Display Representation: For example, a display is represented as a square with a coordinate system ranging from -1 to 1, making it universally understandable.
The NST System in Action
To understand DEL’s functionality, consider a user at a remote site running an application. The process involves:
- Input Handling: User inputs are encoded and packed by DEL, then sent over the network.
- Server Interaction: The server receives and processes these inputs, translating them into a format compatible with its systems.
- Output Handling: Responses from the server are decoded and displayed back to the user.
Advantages of DEL and NST
- Flexibility: DEL’s ability to be translated into machine code specific to each site enhances performance and code efficiency.
- Adaptability: As new features are added to the host system, DEL programs at user sites can be updated without extensive reprogramming.
- Symbolic Translation: Symbolic encode programs are easily adapted, ensuring that user sites can handle unique hardware configurations effectively.
DEL Syntax and Programming
RFC 5 also dives into DEL’s syntax, covering:
- Declarations: Types, labels, and pipes for defining various program elements.
- Arithmetic and Expressions: Syntax for arithmetic operations and expressions.
- Control Structures: Includes loops, conditional statements, and case handling.
- I/O Operations: Managing messages and display buffers.
What Else was Happening?
- Australian aircraft carrier HMAS Melbourne slices US destroyer USS Frank E Evans in half, killing 74 (South Vietnam). This incident was a tragic accident during a joint naval exercise, resulting in significant loss of life.
- The song “Get Back” by The Beatles With Billy Preston was the number one song on the Billboard Hot 100 chart. This song, written by John Lennon and Paul McCartney, became a chart-topping hit and remains a popular song from the Beatles’ discography.