.. Messages fom ftlel
-- Wednesday? July 2? 1977 09137:10-EDT --
Datei 19 Jul 1977 1839EDT
Froml WALDEN
SubJect: f¾{
Tol 8essler Heart, McKenzie HcOu{llan, Walden
Mail from USC.ISlE rcvd at 19-Ju177 828-EOT
Datei '19 Jul 1977 1523-PD?
Froml PaSTEL at UBC-IBIE
Subject: material for arpaet completion repot
To) alden at BBNE
cc! postel at I$IB
Oavei
the followlng information may be o assistance n you work on the
arpenet repo.tm if t can be of any assistance n trcking down
dates of meetings or publications o any other help let me know
Chronology
April 1969
Network Hoeklng Goup omed, First RFC publJshed
$m Crocker "Host Saltwater" RFC [ N[C 687t
First host level ProtoCol $ecifted,
g Deloche "Host Saltwater" RFC 9 NIC
February 1970
Second host level potocol roposedm
$, Croaker "New HOST.HOST Protocols" RFC 33t N[ 735
12-Feb-70,
June [970
Version 2 o second host level rotocol
S, CPoeker "An Official Protocol Profferlng" RF½ 54 NC
75b [6-Jun-70
August 170
Host level Potocol published as ofIcial
S Crokept "OffiCial Host to Host ProtoCol," Document
NC 719, 3-Aug-?O,
ReaoU.ce. Sha.mg Computer Networks" RFC 62
3=Aug-?O. Alma published in Communications O the AM
Network GaDhi½s Meeting
Where Who ???
Initlal Connection Pffoto½ol
$ CrockeP "$Pd Level Ideas and other Nolse"
November [970
NetwoPk Waftking Group Meeting at FJCC in
J. Pastel "Network Meeting Reports" RFC 77
E, Hayer "Network eetng Nobeat" RFC 8 NZC 5q
9-Dec-?,
[nitlal network use at UCSO and RAND,
E, Herslam "NCP Status RePotl UCBB/RAND" EFC ?B N[ 599
-----------------------------------------------------------
undoted,
December lg71
Data Reconfiguret{on Service frst suggestedt
E= Hatslam "ffotocols and Data Foamstay"EFt 80 SIC 5B08
Graph{Cs Protocol f{st
$ Cockee "poposal or a Network Standsad Format foe
Data StPeam to Control Graphics Displays" RFC 86v NZC
5jan-Tl,
Remote Job ntPV peotoCol rst
R Braden "NETRj$ A Th(Q Level Peotocol for Remote Job
EntPy" RFC 88 NZC 568
Initlal use of the network at MZT end
NIC 5697, 19Jan71
February 1971
Telnet poocol fiest poDosed,
J Melvin "A Ft Cut at a PPopoaed Telnat Ppoto½ot" RFC
?, NIC 57a0, 15-Feb?t,
E, MeyeP "LoggeP PPoto½ol Popomed" RFC 98 NI½ 5?QQ
NetwoPk WoPkng Goup held at Un{vePsit¾ of
R Hateon "otes on the Network WoPk{ng Group Meetings" RFC
101 NI½ 572
R, atson "Addendum to NWG Meeting Notear" RFC 108
5807 5-Mar-?lm
Most level Oeotooo) modlfied m
$, Ceockee "OutPut o' the Hoar/Moat PPoto½ol Glitch Cleaning
Commlttee" RFC 10 NIC 5763
Hoar level protocol
R e BeesslaP "Output o the Most-Most ProtoeD) Glltch
Cleaning Committees" RFC 07 NZC 5806
File Teens(at PeDrocol ((rat ropoSedm
16-APr-?l,
May lg?l
Network Wok(ng Goup meet(nO held at $JCC in Atlantic
Jm Meafnee "inutes of the Netwoek Woeklng Geoup Meetlng"
RFC iba, NIC 6778
Telnet peDrocol
T m OeSullivan "TELNET Peoto½ol" RFC 158 NIC e78
l-May-7)m
Data Reenflguetion Seevice spe½If}ed,
Bm AndePson "ata Re{onftgunatton Shevice .- An
Zmptementation $pecieetton RFC tb NZC b780
June
File TPanateP PPoto½ol design
Bhuahan Am "The Data TPansteP Protocols" RFC 17 NC b793
3-jUN-Tt, "
Bhushen Am "he F(le TnenafeP Potoeol"RFC NZC
July !971
He(1 Protocol first (scussem
Watson R, "A Me(1 Box Protocol" RFC t9 NIC
O-JUL*71,
Graphics meet(no helU by NIT,
Auguat lqT!
Terminal IMP Pcoto½ol Implementation
McKenmiev A, "CP iCP and Telnetl The Tepminal IMP
-----------------------------------------------------------
j .uoounuu Du!oo W Lo:ood ouLo my
,ooood eenueL puemo3 doon uomo3 y
mma uozuWsu u ½I) ouodeuo
3 daqoO
) LOOou uosue ot oq uo uoo. 'V ueqmwg
ioOod osul OL Bu)^iOne u t pepnLu puemmo
6I eun
LBI Aenue
[Z6I eqmenON
mff 3 .ainpeq3 õu%aoN ono9 DUdOM doMoN. m v
IL6I aqoo
e
-----------------------------------------------------------
UaePs IntePemt goup meeting
RFC 585 NIC 2050 6-NOV-7.
June tg73
A f(le access pPotocol s pPopose,
Day Jm "F(le Access PPotocol" RFC
25-JUNI-73,
July
'NetwoPk Greph(c Meet(ng
Buncht 8, "MtnuteB of NetwoPk GPaph(c8 GPoup Meet(ng n RFC
59 t NIC 177g5 21-AUG73m
Octobe, 1975 -
A common tet ed(tng subsystem pPcosed.
Padl(psk¾t M. "Neted) A Common Ed(toPfo, the ARPA Netwo,k"
RFC 569 NIC 18972
July
A cPossmnetoPk debugging pPogram S pPopoaed
MadePt [', "NetoPk DebuggCng P.otoColt"
Novembe
A Host O Fpont End pPotoeol pPopoed,
Pedllpsky M. "A PPopomed PPotocol fop Connecting Host
Computers to ARPA-Lke NetoPks via
End PPocessos" EFt bQTt N[C Dtil'Tt 12-NOV-7Q,
Decembe.
A procedupe optanted pPotocol is .pPoposeds
Pastel, j, "PPoceduPe Call Potocol Documents"
June
MeJoP extensions to the HP/Host IntePface pPoPosed
We!den D,C, "[MP/Host end Hoat/ZMP Potocol Ch&nget" RFC
687t NI½ 265t 2mJUN-75m
.)
-----------------------------------------------------------
Proposal for a Network Intercharge Language
Introduction
In this paper an attempt is made to spe_ify a high level progra lnguage
for cmputer ne.rks, and more specifically the ARPA network. The main con-
cept introduced .is the one of an abstract Network Lachine, which is consistent
with the idea of a HOST asking a service frcm the puter netw.Drk cormidered
as an overall ccrut facility. The dialogue is always be_n a HOST and
the Network MacVee %.ih language is always the same, though is configuration
may vary accordir to the real rnote EOST.
ß Fr'c a progr&utng language point of vi, this concept is similar to the
proposed in 1958 [STR058] but never implemented, however; the application to a
ocmpu ne..rk implies a realti.e interaction betw-een programs. Also, _he
possibility for the use_r to use N_L either in a standard mode or in an extends/
mode where he defines himself his .n entities sbould give to NIL a max/nmzn of
flexibility.
Basic concepts introduced in
1.1
Aim of NIL
The to ma n objectives of NIL are:
a) to describe the environment in which a progr-u is :ecuted
(its cupl.-ment ) this involves the description of:
- data formats and data structures
- exchanges %th input and out devices and haracteristi
- expected _ thn
- interface with operating system
b) to express the front end part of an interactive systsm:
The data fl. through sun interactive syst gœ.rrally decreases
as the data reaches the kernel of the systu: it is assum-ud
that in mny interactive systems a separable module exists or
can be defined which involves a great nount of data
with. tP user, and much less exdhnned th the rest of the
system. This module is called Front-End. It is /reportant
the respcnse time of the 3stm is affected as little as possible
by additioD] tranuission delays. Also, it is desirable to
keep t/:e data rates as 1, as possible on the net.ork.
It is assed tbt the trar-fer of a Front Er- does not imply to solve the
whole problem of puxjr=-u tr-,ferability.
-----------------------------------------------------------
RmqueSt for Cmnts-51 4 ay 70
1.2 NIL subcategorization
As pointed out by S. Volansky [ ] it ts convenient to divide ges
in several sublanguages corresponding to their main functions. NIL is
thus. subdivided in:
- a control sublanguage
- an operation sublanguage
- a data declaration sublane
- an envirorfnent sublanguage
1.2.1 Control sublanguage
The control sublanguage states {EN a ccrmputation is done: It describes
the fl. of control or orderin of the ccputations. With sce infor-
mation contained frcm the other sections of the language, it also states
MHERE the ccmputations are to be executed.
As a cL_uter net%.rk introduces loose connections between several systems,
the control language of the Ne.rk chine should be able ,in an elaborate
version / of assignir ccmpu. tations to available processors, taking into
account the t/me delays and resource allocation problems involved. It is
not our purpose to consider this level at the moment.
1.2.2 Operation' sublanguage
The operation sublanguage describes the operations to be perfolmed on the
data without iication of the sequencir between operations, it an.;ers
to the question of HC,; an operation is performed. The operations are sub-
divided into t% groups.
- a cctation grou.D
- a data manipulation group
The later is the most important part of NIL since its main purpose is the
transformation of data structures and patterns.
1.2.3 Data declaration sublanguage
The data declaration sublanguage is necessary to declare the variables
ar data structures on which o._rations are performed.
The possibility is given to build structures of atcrmic elements called
beads. NIL provides a standard set of beads used in the "standard mode";
in the "xtered mmde" a user may define n beads and n-; structures of
thn.
-----------------------------------------------------------
Rquest iorts bl 4 May 70
1.2.4 Enviromuent sublanguage
The enviroment sublanguage presses the context in nich a program
expects to operate; expected characteristics of the peripherals,
semantics of the exchanges with th-e outside rld through a particular
operatin system.
Thus a ccrplete "program descriptor" will contain four distinct sections:
environment section
data declaration section
control section
operation section
1.3
The identification section is cmitted because it corresponds to the log
in and socket grabbing pa of the initialization procedure.
The Network Mac/
One fundmmental concept in hL is that of an abstract Network ,chine
which 'has the follcnug characteristics:
an infinite muory: there is no problem of muory allocation
or garbage collection in this machine. But as an item must be
accessible, it must still have an address.
variable %Drd length: a 0rd may be considered as the smallest
intelligible and addressable itsm of data. The atomic element
called bead is in fact the machine ,rd. The structure and
length of each type of beads are expressed in the data defini-
tion sublanguage.
HOST
As presented on figure 1.9.1, one HOST
only ccmuunicates with a Netvrk Mach-
ine which may operate in o modes.
I. ./Network
--- Machine
figure 1.B.1
their structures/and the allc wruu,tions on them are
standard and need not to be redefined: standard beads and
structures are kn. of every HOST
extended mode where in addition to or instead of the standard
data definitions and manipulation, a }lOST may specify new beads
structures and transformations. The extended mode all.;s the
user to define his ,n machine as the Neb.,:ork Madine. 5b_is is
then equivalent to the mocles MY LOCAL, YOUR LOCAL proposed
in RFC #42 ky Ancona. If the definition of a nan has not been
altered the stan dard definition is assumed.
3
-----------------------------------------------------------
Reques% for Ccmnents 51 4 May 70
The data definition sublanguage is as w11 used for the purpose of document-
ing the set of standard beads.
The instruction set of the NetDrk Machine stands at a high level per- .'
mirting global transfonations of data structures.
The 'environment of the NeHrk Machine is determined by the ubset of
the environnent of th server's HOST ich is used by the program in
execution; the syste HOST-Net%r ,chine can take two main configura-
tions sh in figure 1.3.2.
etwork
Network
Machine
(user)
figure 1.3.2
a)
The NetDrk .ch/ne'stands for the user of a
program provided by the HOST (server HOST)
The HOST machine is the user of a progr am
provided by the Network Machine.
The server machine assigns its har,ure .environ-
ment to the user machine. This choice is made
so tbt programs can be remotely used %.thout
being modified; it is up to the user of a reno
program to adapt himself and his own environment.
Thus, when the Network chine is server, it
defines the Data Definition and Environmant
sections.
-----------------------------------------------------------
. Network Working Group
Request for Ccraren #51
M. E1/e
4May 70
1.4
Impleuentation
The data and environment definition sublanguages should be able to
describe as Well envirorment and
data in HOSTs as data in Net-
0rk Machine. At the limit
it should enable two progrmms
written in different languages
as long as the data
representation they use are
expressible in the data de-
scription sublanguage.
In each HOST %ill be
implemented a "generator"
which will accept rules
describing the HOST data
structures and environ-
ment and will generate
an adequate translator
to translate thsm in
Net%rk :chine format,
as shovnu in t/e figure
1.4.1.
_HOST description Network .chine
\ - - --'/_ (description
\ /non standard mode)
.\ / ' INetwork chine'
/ ,
< Data in Data is ß
HOST for TRAkLATOR Net,rk Machinge
mat format
figure 1.4.1
Once the ne.rk machine
standaids will be settled
it seens val,:hle to think
about emulating the tran-
slator using a micropro-
gramed unit which %Duld
be either added to the
Host or rather to the IMP"
thus avoiding the load of
a translation %ich may
involve lengthy operations
on the bit level - (Figure
1.4.2.)
HOST
Figure 1.4.2
5
-----------------------------------------------------------
Request forts 51
4May 7o
2.2
Data definition sublanguage
Fields
All cu't,unications with the Network iachine are done using
strings of bits: these strings of bits, also referred to as
messages are parsed by t_he receiving HOST to reconstruct inside
its memory the data structures in its own mamory and code.
Bits are grouped into significant fields: a field is a group
of bits having definite contents. ' It ray conAfn:
a) an elint of data (data field)
b) scme bit pattern specifying enviromTent parameters
C) a pointer
d) the identification of scme other fields.
the
method to describe the formats of beads is derived from
method of description of a binary message suggested in
#31:
a) each field is declared with its nae and length in
number of bits.
b) ccmonly used fixed values of a field that correspond
to a special meaning, may be given names.
c) legal ways of concatenating fields are initiated by
rules; when only certain fixed values of a field ar
all=d, they may be either specified by their
value or by the corresponding nan,.
Data fields (type (a)) are conca =tanaed to form data beads:
a bead is an indivisible atomic unit of data .Used as
building elem=_nt of any data structure to be transmitted
betaen HOSTs and NeWark chine. A bead is the smallest
unit of data that can be referenced.
The legal ways of forming a bead by concatenaticn of several
fields are indicated in a construction rule. Beads have a
fixed length and an unambiguous structure. In real machine
beads are usually defined as an integer number of cq. ntiguous
registers. This constraint does not apply here, though it
may turn out to be more efficient to favor HOSTs with, for
instance, 32 bit.rds, and 4 bytes per word, which .a.e the
most ccmnon Drd structure on the ARPA network.
Data beads may be cnsidered as the operands of the language
in which fields of type (b) and (c) would be operators.
-----------------------------------------------------------
Request for Cmts' 51 4 May 70
2.3
2.3.1
oø
Control fields
The way data beads are linked onto the other and the environ-
merit in which they operate are specified by additional control
fields which cannot be referenced and are operators on or
identifiers of the following string of beads, or linkage
The scope of a control field may as well be all the beads or
substructures of a structure, if it is specified at the level
of the head of the structure. To be more precise, to kinds
of structures of beads must be defined: homogeneous and
.A structure is defined as brmogeneous' if beth a unique type
of bead and a f/xed parameter environment for the whole
structure is specified at the head of the structure.
A structure is defined as heterogeneous if at least one of
the folling conditions is true.
- different types of beads are used for building the
structure
- the envirorr_nt in ich lie the beas of the structure
is changing within the structure.
Five mn control fields need to be defined.
a) MODIFY
b) .FIg
½) POINTER
d) IDENTIFICATION
e) PARfER
MODIFY field
The DDIFY field is a one bit field preceding every bead of
a heterogeneous structure: it is a flag set when follc=d
by one or several control fields of type b, d, or e, which aim
at modifying either the environment of data beads or their
type. This field has the value:
1 if the attached data bead type and its environmant do
not change
0. if the attached elemant is a control field or a
sequence of control fields of type b, d, or e specify-
ing a change in type/or environment of follcing data
beads.
-----------------------------------------------------------
2.3.2 FLAS field
2.3.3
2.3.4
2.3.5
Ehen set, the MODIFY field is inmediately followed by an 8
bit FLA field indicating which of the IDENTIFICATICIN and
several possible PAR,R fields are present; when set to
one each individual bit means the follcwing:
bit number
o
.1
2
6
7
POINTER field
IDEhIFICATION field present
first parameter field present
second parameter field present
sixth parameter field present
next' field is another FLAG field
for scram more paranters (in case
attached to a bead environment).
The number and nature of pointers to be attached to each bead
depends on the structure definition. A given list structure
may need one forward pointer. A ring structure may use an
additional pointer to the first element. The necessary
'lLnkage between beads are defined in the structure definition
therefufter the necessary pointer fields autcmatically added to
each data bead. A bead is referenced within a structure by
an address relative to the head of the structure. Thus a
16 bit pointer field should be fully sufficient to contain
this address.
IDEntIFICATION field
The IDENTIFICATIfIN field is an 8 bit field which identifies a
bead type aon 9 the list of defined bead 'types. Standard bead
types are nunbered from zero up and non-standard bead types are
numbered from 255 dcx,nu. The non-standard types hungering is
special to each server program or to a set of server programs.
The IDITIFICATION fields foll=½ a MODIFY field of value 1 when-
ever the bead type has not been defined all over the structure
in the structure root. Identification fields are also used at
the level of the head of the structure to specify the type of
identical elements (beads or structures) used within this structure.
PARA field
The' PARN-R field gives the list of the enviromnent parameters
in %,,,ih the foll,ng string of data beads lies. A
field is specific of a bead type; it directly follo..s the MODIFY
field when there is no rbiguity or the type of the next data beads.
-----------------------------------------------------------
Network Working Group
Request for Commsnts 51
M. Elie
4 May 70
2.4
Example: the paramir field of the standard bead BEAS5;T
will contain the following fields.
a 2 bit field indicating the type of movement generated
00 do not display move the beam
01 "display fidel point point_
10 display vector vector
11 unused
a 4 bit field indicatirg beam intensity, by a number
frc 0 to 15, 0 meaning a null intensity, and 15 the
maximum possible intensity.
- a ! bit field for blinking
0 off
1 on
- a 1 bit field for light pen sensitivity
0 off
1 on
{=talan .guage definition
A COBOL - report like meta language is used in the examples
because of its readibility, as well in the beads as in the
structure definitions.
Symbol Meaning
+ cncatanation
{ } choice
[ ]
optional choice
repetition
lcwer bound on the
number of identical
itrs; if cmitted 1
is assumed to be 0.
u
upper bound on the
number of identical
items; if cmitted u
is assund to be .
a number alone means: exa.ct
nutabet of repetiticn.
9
-----------------------------------------------------------
Network ,brking Group
t for ts #5i
M. Elie
4 May 70
©
©
2.5
2.5.1
ahel for further use within the same rule
assignment
conditional alternative
grouping -
indicates a special value given to the following field nam
Proposed Standard beads
Alphanuneric beads
Character: CHAR
A character is ourposed of one eight bit field (which has the
same name). Many special patterns, corresponding to currently
used special characters are defined; they are indicated in
table 2.5.1, as %11 as some subsets of CHAR. The basic char-
acter code is declared as standard ASCII
standard EBCDIC
or by the name CODE
followed by the 128 characters in this code corresponding to
the 128 ASCII characters. If no cod declaration is specified,
the ASCII code is asstr by default.
Number representation
Nounally the kernel of a program stays in the'server's HOST
and the user's HOST should have no arithmetic operations to
perform on the data. In this case, the princip!as involved
in the arit3mtic unit conception of a HOST do not need to
be described. But the format of fixed and floating point
n9_rs has to be described.
in the case when user and server HOST's have the same
number representation,for instance the standard
representations the transmission of data in their
nunbet representation reduces the data fl been
if the server HOST has a different nunber representation
than the standard representation, depending on the data
transmitted, there are two alternatives:
!0
-----------------------------------------------------------
Network Working Group
Request for Ccnents #51
M. E!ie
4 May 70
+ the nunerical data is exchanged as decimal numbers in the
standard code
+ the fixed and floating point format are defined to the
Network Machine ar the user HOST performs
either a' direct transcoding frcm the server binary
representation %o decimal' representation and vice.
versa.
or a transcoding frcm the server binary representation
to its own binary representation and vice versa.
As most of the numbers exchanged are to be printed in decimal or
are given as decimal input, it is felt that when there is inc.ati-
bility betven binary representations of corresponding HOSTs,
exclu%nges in decimal representation would be the easiest.
Thus are defined:
a) ß Number in decimal r_epresentation %J%ich is not a bead but
a string of characters (see 2.3.1)
b) Fixed point numbers single precision FXPNU.
double precision FXPNL
Field definition BYTE 8
SBYTE 7
SIGN 1
FXP NLi<-.qIGN + S 'EYTE + {BYTE} 3
c) Floati point numbers single precision FLPNL%
double precision FLPA4P
FLP NIil --SIN + SBYTE + {BYTE} 3
FLP N[42 -- FLPJM] + {BYTE} 4
This only expresses the tax of the fioating point number.
The semantics sbDuld say: in FLt
SIGN is the sign of the nher of format {BYTE} 3 which is
the mantissa
SBkE is the exnoonent, and its value is based by a value
of 4016 to insure positive exponents. In fact,
ar FLPAL¾.I1 differ by their savmntics.
11
-----------------------------------------------------------
NeWark Rbrking Group
Request for Ccnnents 51
M. Elie
ß 4 5y 70
These properties will be expressed by special field
definition:
EXP -- SBYTE '40HSBYTE
MANT SIGN {B!_IUE} 3
and a floating point number iJ defined as:
FLP = /qT
i2
-----------------------------------------------------------
NeWark krking Group
Rsquest for Ccuents #51
me
Special Curacters
Transnissin Control Characters
SOH
STX
ETX
EOT
DLE
SYN
ESC
Printer Control Characters
horizontal tabulation HT
vertical tabulation VT +
new line NL +
end of messa9e IIM +
Teletype Control Characters
Carriage return CR
shift out SO
shift in Sl
BS
' 0Xi' CULR
'OBX' CHAR
'0AX' CHAR
'08X' CHAR
"ODX'
'O' CHAR
'OFX' CHAR
Device Control Characters
DC1
DC2.
DC3
DC4
Table 2.3.1
13
M. Elie
4 ly 70
-----------------------------------------------------------
Net,rk Workin Group
Request for Ccuents #51
M. Elie
4 May 70
2. Subsets of Characters
Numeric characters
Printable characters
PRfAR
Intezmediate characters
ITCHAR +
Final Characters
FIN CHAR +
Tranamission Control
Characters*
TRACH2 +
Derra Control Characters
' charactars 7 '
DL
Teletype control Character
Alphabetic characters
Printer Control
Characters
PCiAR
SO
SI
BS
Table 2.3.1: Special ASCII characters and groups of ASCII
characters.
*see USACII standards
-----------------------------------------------------------
etwork Workir Group
Rsquest for Ccranents 51
M. Elie
4 &y 70
2.5.2 - Graphic Beads
As proposed in RFC %5 by J. Rulifson, the screen of any graphical
display is taken to be a square; the coordinates of points are
normalized frcm -1/2 to +1/2 on both ax=_s. The position of the
first point of a structure is deYrmined by the deflection frn
the origin %Jlich is the rest point of the beam; follc..ng points
are determined by their deflections (AX,AY) frcm the last beam
position.
Thus, only t%o data fields need to be defined:
DEFLECTION
which is a 12 bit field: the deflection is
defined by a number betv=en - 1 and +1 with
the precision usual to the server.
which is a 15 bit field defining an angle frcm 0
to 2H in radians be.=en le horizontal axis and
an axis passing through the origin. The first bit
of it indicates if the angle must be taken clock-
wise or counterclockise.
The data beads are:
Dependin on the parameters which are set when this bead appears,
MOVE may specify:
- an invisible movement of the beam; in this case the beam
intensity is null
- a new point: in this case the beam intensity is on only
%Jlen the beam has reached the n point.
a vector: in this case ebeam intensity is set to a certain
non zero value
MOVE + {DEFLECTION} 2
Arc of circle: AN2
An arc of circle is defined by its center, followed by its start-
ing point and the angle of its ending axis.
+
15
-----------------------------------------------------------
NetDrk Working Group
Request for Coramerits .51
-M. Elie
4 May 70
2.6 Proposed parameter fie!d..
2.6.1 Character strings.
In character strings some of the control characters are really
parameter fields: they act as a operator on the following
strir of characters. i.e.:
lc_r shift
upper shift
nev line
But as the code and use of hese characters are determined in
the standard codes, they are not included in parameter definition.
It may be taken advantage that tese characters are in the t
left colunns of the ASCII or EBCDIC stard code: they correspond
to codes with the first three bits null in EBCDIC and the' first
two bits null in ASCII.
2.6.2 Graphics parameters
The follc.ng parameter fields are defined:
scale SCALE 4
beam intesity . INT 4
light pen sensivity SENS + ,..TIH
b nkir BLINK + ITCH
beam BF__.! + I
SWITCH is. a 1 bit field ich may take the values:
C <-- '1' SW/TC
OFF '0' SfiTCH
A s%tch par,v, eter Stays ON, as long as it is not reset to
OFF.
The beam intensity is expressed by a nunber frcn 0 to 1. 0 is
black and 1 as light as the display can go..Numbers in be.en .
specify the relative log of the intensity difference. BEAM
permits to switch the RV. AM on or off without changing the
Current Ihf parameter.
2.7 Structures
2.7.1 Structure definition.
The structure definition consits mainly in the _=oecification of
the topolcgical relations bet,%n data beads:
- sequential relations; no pointer field necessary
- lir through a number of pointers.
16
-----------------------------------------------------------
Network brkir Group
Rquest for 'Ccments 51
4 May 70
2.7.2
2.8
2.8.1
Standard structure type.
Two basic standard structure typ are chosen
VECTOR to represent.-sequence of data beads (strings, arrays,
tables... )
PIRX. to represent any kind of directed graph, tree., ring...)
VECTOR (C;N,...N C) + VECTORHDR + VECTORBODY
VSLfORBODY+(=C+l:{defi.ed bea} Ni + [VECrORBODy]
Cis he n of s (col) e vr, t v-
It probly de a cess vecr
R %.ch se of e idl ele s-
t 1 elt +'.a d + e n of idcal
el sce.
PIX (M)
The first bit 'of a pointer field indicates if the pointer points
to a tenninal elnent or not. If it is the case, forward
ointer fields are not added to the data element.
M is the nunber of data elements in the structure.
Objects
object definition.
An object is defined by a ssmantic rule including, on the right
set of parameters of the object definition.
on the lef Operands:- name of tbead s used a s data elements
hand side pertors: parameter fields
structure of the data beads.
i.e. The definition of a n, object called SQUARE is:
(A,L',A) PDT',(/,v,.) R(1,4) (3,'OFF'+
MfE (A) + B.F14 'ON' + .XIE (0,L) + ./DVE (L,0) +
(0,eL) +
Where ROT refers to a transformation defined in the data manirul-
ation language, and VECTOR is defined as a starard structure.
-----------------------------------------------------------
NetwoCk Workir Group
Rsquest for Craments 51
M. Elie
4 May 70
2.8.2
The identifier of the w structure is SQUARE
ß The structure type used is VECSXDR %n[t] dimension 1 and 4 elements
The elements of the VECOR are standard beads
The parameters are A, L, and A
Parameter fields n. .'OFF' and ME.! 'ON' are used.
Alphanumeric standard objects.
Cxoressed character string (C4STR/G)
O2 -R (1) [PRCHAR] n +
A essed string of characters is any number of times a
string of any number of printable characters foll.d by one of
the foll.nhng characters
- horizontal tabulation folld by the nutabet of correspond-
ing blm%ks to be added
- vertical tabulation follcd by the number of lines to
- escape foll.d by any character
new line
end of page
The campressed string is ended by an EOF character.
-Ccde teble (CODE) 28
CODE-V3IR (1; 128)
OODE is the name of the translation table assumed for a given
program. When defined by the user, he must give frcm
column 1 to column 8 the 8 bit pattern equivalent o the
correspoPxitng œCII code.
18
-----------------------------------------------------------
Netw,6rk 'brking Group
Request for Cu,',ents 651
M. Elie
4 !y 70
Binary image
B CARDVECIOR (1;120)
(CEAR 120
Packed decimal number
i A X
C X
E X
F X HNL%!
B X
bits field
PDNUM 6--- {PN + DSIG
Decimal number (unpacked or zoned
14n<31
DNL4 --- K.. + D SIG PM
-----------------------------------------------------------
Titlz: DEL
Author: Jeff Rulifson
Installation: Stmnford Research Institute
Date: 2 June 1969
Network Working Group Request for Ce3ent:
-----------------------------------------------------------
:EL, '02/06/69 , I010; 58
aua! trnsm issian?
JFR ; .DSN=I; . LSP-O; ['=] NO NJ[ SP ; i"?);
11 JS lr ac..
the De co de -[-,ncode La nquage (DEL) is a macne i ncepen.efc IJng,..!ge
tailareal t.o {o sPec jfic computer netuork tasks:
occel:Lins inpu{ codes from interactive consoles, giving immecliaLe
feedback, ona packing the resul ting i.nforation iLo roes.sage
pkeLs f nelwork transmission.
ao accepting message packets from another computer, unpacking
tem, b, uiloing trees .of displa information, and sending oher
inor,aa,Li, o.[o the user al his iqler,clive sta/icn.
'This is .wcrking :document for [he evolution of t!'e D....k languge.
Comments should De made through Jeff Ruiirso a[ SR].
oreword.
The init ia ! RPA network uorking group met at SR[ on P,½t. ouer Z5--26,
1968.
[ uas generally agreed beforehand that the running or nterac{ive
program acros$ he network was ne first problem tho[ ,auid e
faced.
lnis group, lr_ady in aggrement about the underlaying notions o'f
a DEL'-like approach, set Ooun some LerminolJgy, expectations for
DL progra, and lists of proposeO semantic capagility.
AC Lhz meeting e.re Andrews, 8aray, Cart, CrocKer, Ruii ton,
So ug nl on.
and
A second round of e,etings was then held in a pjece.ea!
Crocker meet with Rullfson at SRI on Nov cinDer 18, Ib8. tns
resulted :in the inconpcrdtion of forr,al co-routtres.
and SLoughton meet ui lh Rulif son aL RI on Dece.ber JZ, 198. I [
ws dec. ei.ded to meet again, as a grouP, prnaaly at UTAH, in late
Janur ar , J9bg.
The tirst public release of this oaper was at the 8[?N
Camb.,'"'i dge on {ebruar;¾ I 3 , I 969.
NE roeeli n, i n
NET Standard Tramlatons.
NST Ihe NST library is the seL of programs recesary Lo .me.]h
efficiently uith th:e code compiled at the user sis from the SEt
progr,ms-it reives. The NST-OEL ppro.ich to NET inter,ctive szstem
communicat ion is Ant ended to operate over a broad ;p-cErum.
-----------------------------------------------------------
./
in thir..-.'.,Je, the NST defau: =
'C'e'. .C' reCeiVe unvel'scJ h .
lJipu[ in the nor'm8 [ fa'.hzon f.. 'or
nd . R 0œ.'. t -o-gram beCOmeS
A n. jI' e lnLer.medi,'.. u';e o' NœT-D ' is o hav ecro l,o ':s t,)r .
In t i. mode , the gEL program wou' d run . ,. oup .,:'x TT Z
Lh u9.
JL .'oui: e,"ho ; cnaracleri, Lrar ,la.e L.hem ' . 'he ch '_cer ? .
Of sre'r-host, pack 'the Lr.[ated cha'.:,:Ler '. me5ag ....
When mess,'ges come from the ser :_-r-S.o',t. the DœL proqam oul '
his TTY.
A .more mot lous task for DEL is the operalie
d-pIay--orienled syslems from reinale cenoles evr
Large .irLeract. ive systems usu. fix offer a lot of feec:-ac, .'.o
the. usm. The unusual natur of the ?edbck m-----------------------------
Universal Hardware Re. presentation
1'o minimi!ze the
user codes to:
representation.
numDe. r of translaLor's needed lo ap any faci I i t7' s
an)? 'other facility, there [s a univec:.,l harO,-dre
/his is sinply a I ua¾
hard,ar e Oev ices at a I 1
init i dl 'n ewLork.
of talkingø in general terms, aDout ,,1 I the
the interactive O isplo sLal ions in the
For example, display is-- t houqht oœ
role-point hs coordinates (0,0), the range
axzs. ooinl may no be specified to an
[he par{icuiar 3u,mber or Oensitx o ?astor
s being a squ,re, the
is - I [o I on ot n
accuracy, reQordte> of
points on a uisPty-
The representalL.on is discussed in the semdnLic explanitationu
comp-ni.n5 the f orma 1 description of DEL.
Introduction Lo t.he Network Standard Translator.
Suppose lhal a ,user at a remote sit e. say Utal, is entered in the
AHI s¾ste'm and .nts ,to run NLS.
lhe f irgt step is to enter NLS in the norma[ way. i th-t Lime
the Utah spstem .ill requesL a symbolic program from NLS.
REP 1,his jrogram is written in DEl. It is ca.tied .he NL
Remo't Encode Program (REP).
The rora m accept s input in he Univers-,.l Her dar e
Repz'esenLaLion -d LranslaLes iL to a form uable o0 ? NLS.
It ma? paclk characters in a t)uf fer. also do some 1oca I
f ed bak.
When the pro.'e. is 'first received at 'Utah it is compile< and
loaded to Oe run in conjunction with a standard liOrarz.
Ail i