Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
TELCOMP
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Interactive programming language for time-sharing computer systems (1964-74)}} {{Infobox programming language | name = TELCOMP | released = {{Start date|1965}} | developer = [[BBN Technologies|BBN]] | influenced by = [[JOSS]] | influenced = [[MUMPS]] }} '''TELCOMP''' was a [[programming language]] developed at [[Bolt, Beranek and Newman]] (BBN) in about 1964 and in use until at least 1974. BBN offered TELCOMP as a paid service, with first revenue in October 1965.<ref>{{cite web|url=http://walden-family.com/bbn/bbn-print2.pdf |title=A Culture of Innovation Insider Accounts of Computing and Life at BBN - A Sixty Year Report 18 October 1948 to 1 July 2010 |access-date=2024-02-10 |isbn=978-0-9789737-0-4|date=2011 |publisher=Waterside Publishing}}</ref> The service was sold to [[Embarq#History|On-Line Systems, Inc.]] (OLS) in 1972. In the United Kingdom, TELCOMP was offered by Time Sharing, Ltd, a partnership between BBN and an entrepreneur named Richard Evans. It was an interactive, conversational language based on [[JOSS]], developed by BBN after [[Cliff Shaw]] from [[RAND]] visited the labs in 1964 as part of the NIH survey. It was first implemented on the [[PDP-1]] and was used to provide a commercial [[time sharing]] service by BBN in the Boston area and later by Time Sharing Ltd. in the United Kingdom. In 1996, [[Leo Beranek]] said "We even developed a programming language called TELCOMP that to this day, some say was better than the programming language that the industry adopted, namely BASIC."<ref>{{cite web |url=http://www.ieee.org/organizations/history_center/oral_histories/transcripts/beranek.html |title=Leo Beranek Oral History |website=[[Institute of Electrical and Electronics Engineers]] (IEEE) |accessdate=2004-09-16 |url-status=dead |archiveurl=https://web.archive.org/web/20040805232902/http://www.ieee.org/organizations/history_center/oral_histories/transcripts/beranek.html |archivedate=2004-08-05 }}</ref> There were at least three versions: TELCOMP I, TELCOMP II, and TELCOMP III. TELCOMP I was implemented on the [[PDP-1]], TELCOMP II on the [[PDP-7]] and TELCOMP III on the [[PDP-10]], running on DEC 's [[TOPS-10]] operating system or on BBN's own [[TENEX (operating system)|TENEX]] operating system. TELCOMP programs were normally input via a [[punched tape|paper tape]] reader on a [[Teletype Model 33]], which would be connected to a PDP via a [[modem]] and acoustic telephone line. Data could be read from the paper tape reader or from the Teletype keyboard. Output was either printed to the Teletype or sent to the paper tape punch. Early versions had no facility for on-line storage of programs or data. During data input using a Teletype, the user would type a response to a printed prompt. If, instead of hitting {{key|Return}}, the user hit {{key|Tab}}, another, possibly computed, prompt would be printed on the same line. This process could be repeated for the full width of the line. This unusual feature allowed very compact data entry, comparable to full-screen CRT data entry. It saved paper, and the input section of the form became part of the program's printed output. A later derivative of TELCOMP called [[STRINGCOMP]] was oriented towards string handling. Another BBN JOSS-derivative called [[FILECOMP]] was developed for the GE [[MEDINET]] system, which was cancelled. The implicit file handling system it contained was influential on the [[MUMPS]] global database system. The initial research for [[Logo (programming language)|LOGO]] was carried out in TELCOMP, but only the [[JOSS]]-style errors and interaction made it through to the actual language. ==Commands== A TELCOMP program was made up of numbered lines, each line referred to as a Step. Steps were grouped into Parts. Each line contained one instruction. DEMAND Read input from the teletype DO PART Execute all of the steps in a numbered part and then return DO STEP Execute a single line and return DONE Stop execution of current part and return to caller IF Condition, suffixed to any instruction FOR Loop, suffixed to any instruction PLOT Type output to the teletype in the form of a graph PRINT Print output to the teletype READ Read input from the paper tape reader SEND Send output to the paper tape punch SET Assign a variable to the value of an expression STOP Stop execution completely TO PART Go to a specified part TO STEP Go to a specified line TYPE Emulate teletype input while in stored operation mode (like the [[Expect|TCL/TK Expect]] functionality) ; Comment, suffixed to any line FORM A specification for formatted output (not really a command) ==Sample Program== 1.04 TYPE #,"ENTER ONE OF THE FOLLOWING:-";MENU 1.05 TYPE FORM X FOR X=1:1:4 FOR END=10^15 1.06 READ GRNO IN FORM 15 1.065 DONE IF GRNO=END 1.07 TO STEP 1.06 IF GRNO>4 1.08 TO PART GRNO+1 2.01 DO PART 50 2.02 READ N,K 2.03 DO PART 51 2.04 TO PART 15 .. 15.01 LINE FOR X=1:1:3 15.02 TYPE MINPL,MAXPL IN FORM 17 15.03 TYPE FORM 17 15.04 DO PART GRNO+15 FOR X=MNPL:STPL:MXPL 16.01 Y=(X^N)+K 16.02 Y1[X]=(((Y-MNPL)/(MXPL-MNPL))*2)-1 .. FORM 15 ITEM NUMBER? ##### FORM 17 MINIMUM ##### MAXIMUM ###### ==References== {{Reflist}} {{Programming languages}} {{DEFAULTSORT:Telcomp}} [[Category:JOSS programming language family]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite web
(
edit
)
Template:Infobox programming language
(
edit
)
Template:Key
(
edit
)
Template:Programming languages
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)