Bilderna har inte (šnnu) scannats in.

Datalogilaboratoriet - de första 10 åren


eller


A Paradigm Shift in Time - A Programmer's Tale


eller


Erlangspråkets bråkiga framgångshistoria


En jubileumsskrift med anledning av att det gått tio år sedan
Datalogilaboratoriets officiella tillkomst 1 mars 1984.

Tillägnas Gösta Lindberg, vän och supporter från första början.

Copyright Ellemtel Utvecklings AB 1994.

Medverkande


Ingemar Ahlberg 1982--
Joe Armstrong 1985--
Göran Båge 1984-91
Ola Carlvik (1991--) 1993--
Bjarne Däcker 1981--
Nabiel Elshiewy 1982-92
Magnus Fröberg 1992--
Lars (Lasse) Gauffin 1985-94
Erik Hagersten 1985-88
Bogumil (Bogdan) Hausman 1992--
Per Hedeland 1982--
Ing-Marie Jonsson 1990-92
Hans Nilsson 1988--
Jan Olof Nordenstam 1988--
Tony Rogvall 1994--
Sebastian Strollo (1991-94)
Roger Skagerwall 1984-92
Torbjörn (Tobbe) Törnkvist 1991--
Carl Wilhelm (Calle) Welin 1983--
Erland Wikborg 1986-88
Claes (Klacke) Wikström 1990--
Mike Williams 1981--
Robert Virding 1984--

1980


Hösten 1980 fick LM Ericssons Tekniske Direktör Gösta Lindberg besök av en fyramannadelegation bestående av Göran Båge, Bjarne Däcker, Seved Torstendahl och Mike Williams, som presenterade ett förslag att sätta upp ett datalogilaboratorium. Resonemanget gick ungefär som så "det finns plastlab, lödlab, fiberoptiklab etc men den stora tunga konstruktionsverksamheten handlar om programvara, var finns programvarulabbet ?" I princip erbjöd man sig att sätta upp ett sådant.

Förslaget mottogs positivt men det gällde att hitta en lämplig plats i organisationen som också var beredd att betala verksamheten. Detta pekade entydigt på telefonstationsdivisionen, X-divisionen, den ojämförligt största enheten inom LM Ericsson.

Förslaget var inte helt ryckt ur luften. Göran, Seved och Bjarne arbetade på en grupp "ADB konstruktionshjälpmedel" där Bjarne var chef och som då höll på att ta fram programspråket EriPascal för datorsystemet APN 167. EriPascal bestod av en utvidgning av Pascal med moduler, processer, processkommunikation m m till stor del hämtade från CCITT-språket CHILL. Detta arbete var redan ett exempel på tillämpad datalogi och byggde bl a på Seveds kunskap om Pascalkompilering. Seved hade en gång utvecklat det s k Swedish Pascal som blivit spritt över hela världen.

En föregångare till EriPascal var PL163 för datorsystemet APN 163 för vilket man hade utvecklat språk, exekutivprogram, kompilator m m. Projektledare för detta arbete hade varit Ingemar Ahlberg.

Ytterligare dessförinnan hade Bjarne varit involverad i en datorsystemstudie, APN 164, i ett samarbete mellan X-divisionen och MI-divisionen, den senare i Mölndal. Denna studie ledde inte till någon produkt i sig men resulterade i en kompetensuppbyggnad som både ledde vidare till EriPascal m m enl ovan och till projekten kring Dator/80 och Pascal/D80 i Mölndal. I APN 164-projektet deltog f ö också Oleg Avsan, senare chefskonstruktör till APZ 212.

Därtill hade det funnits kontakter på den akademiska sidan, främst med prof Lars-Erik Thorelli, KTH, och med prof Erik Sandewall, LiTH. Kontakten med Erik gick tillbaka till den tid då han ledde en grupp i Uppsala med beteckningen "Datalogilaboratorium" (eng "Computer Science Laboratory"). Bjarne hade lärt sig LISP på en sommarskola hos dem och funnit meningsfulla tillämpningar för LISP i CAD-sammanhang. När Erik fick professuren i Linköping blev namnet "Datalogilaboratorium" ledigt !

Mike hade en bakgrund i telekomsystemkonstruktion och var en gång den viktigaste användaren av APN 163, nämligen som programkonstruktör och sammanhållande för programsystemet för det militära fältväxelsystemet AXT 101, ett system som fortfarande säljs och för vilket det sker viss vidareutveckling bl a i Spanien. Mike fanns just vid detta tillfälle på Ellemtel där han deltog i ett projekt för datakommunikation för MD 110 (eller MDS 110 som det då ännu hette).

Den viktigaste aktiviteten nu blev att Bjarne, Göran, Mike och Seved parallellt med sina ordinarie arbetsuppgifter utarbetade en uppdragsspecifikation för datalogiverksamheten.

Dokumentet påpekar vidare att "vid diskussion om datalogi glömmer man ej sällan det faktum att datalogi i högsta grad är en experimentell vetenskap" vilket innebär att "egen utveckling av experimentsystem" skall vara en viktig del av verksamheten. Beteckningen datalogi-laboratorium skall tolkas bokstavligt.

En annan viktig del av verksamheten avsåg informationsspridning. Laboratoriet "skall därtill placeras mitt i den övriga löpande verksamheten på Xs-sektorn. Det är till dessa övriga verksamheter som inhämtat know-how skall överföras."

Man hade tänkt sig 6-7 personer och en treårig försöksperiod. Dessa personer skulle kombinera ett intresse för datalogiforskningen med en inriktning på praktiskt arbete och kontaktskapande.
Uppdragsspecifikationen utmynnade i fem föreslagna delprojekt

1 Datormiljö
2 Programmeringsspråk
3 Datorsystemarkitektur
4 Problemorienterade språk och programmanipulation
5 Tillämpning för telekommunikation

1981


Redan året efter öppnade sig en möjlighet att komma igång. I samband med en större omorganisation på X-divisionen bildades en speciell avdelning X/D "Stödsystem och hjälpmedel" under ledning av Carl-Göran Larson. C-G kom från Ellemtel och hade där varit djupt involverad i AXE 10-projektet från första början. På avdelningen uppsattes en liten stab X/Du "Systemteknik och datalogi" med experter på skilda områden. På denna stab hamnade Mike och Bjarne för att driva åtminstone delar av det tilltänkta programmet.

(Det fanns också en parallell stab X/Df med Tore Bingefors och Ivar Jacobson. Dessa lämnade senare Ericsson och bildade Functional Systems.)

Christer Johansson som också fanns på X/Du skrev ett arbetsprogram som definierade följande arbetsområden för hela enheten

- Datalogi
- Systemteknik
- Scenario för framtida telekomsystem
- AXE 10-frågor

En central fråga gällde datormiljön. Vid denna tidpunkt gällde i högsta grad att all programutveckling skedde via centrala IBM-datorer på Datacentralen. Detta var inte någon lämplig miljö för ett laboratorium men efter div diskussioner blev det möjligt för X/Du att införskaffa en egen VAX 11/750. Under hösten installerades på denna Berkeley UNIX med viss assistans från CTH. UNIX visade sig vara ytterst kontroversiellt och det hela blev möjligt först efter mycket segdragna diskussioner.

I och med detta hade man en datormiljö som man själv förfogade över och som var i paritet med vad som blivit de facto standard inom den datalogiska forskningsvärlden. Detta var f ö den andra VAX'en på X-divisionen och ett av de första UNIX-systemen överhuvudtaget inom LM Ericsson.

Mike arbetade vidare på de ursprungliga planerna från året innan och skisserade en experimentmiljö för telekomprogrammering. Denna skulle bestå av en LIM (Line Interface Module) ur MD 110 som skulle kunna styras från VAX, APN 167 eller iAPX 432 (en experimentprocessor som då var aktuell).

Detta skulle utgöra basen för experiment med målsättningen "to study state-of-the-art techniques of computer science in SPC telecommunications applications. The major goals are

- To greatly reduce the work required to develop and maintain software.

- To suggest new architectures, concepts and structures for future processing systems developments."

För projektet angavs fem studieinriktningar

1 Computer environment
2 Languages (normal level)
3 Processor architecture and executive mechanisms
4 Very high level languages and automatic programming (VHLL)
5 New structures for telecommmunication software

Det kan vara värt att notera att redan från början drevs idén om nästa generation av programspråk, här kallade "very high level languages", trots att erfarenheten i denna riktning än så länge var begränsad till LISP.

I detta skede var både Mike och Bjarne djupt involverade i aktiviteter kring Ada. Om ett bra och internationellt standardiserat språk som Ada hade funnits hade vi t ex aldrig behövt utveckla EriPascal. Bjarne var en av grundarna till intresseföreningen "Ada i Sverige" som fortfarande är aktiv. Tyvärr kom Ada inte att infria förhoppningarna och den mesta aktiviteten kring Ada på Ericsson sker numera på ERE eftersom deras kund, FMV, kräver det.

Samtidigt med VAX'en införskaffades även en tidig grafisk bildskärm med färg för tänkt arbete med datorgrafik. Den visade sig dock vara ganska primitiv och svårprogrammerad och står nu pensionerad som datoriserad anslagstavla i labbets korridor.

1982


Under detta år flyttade Ingemar Ahlberg, Per Hedeland och Nabiel Elshiewy till den spirande datalogigruppen. Ingemar kom från APN 167-verksamheten och hade arbetat tillsammans med Bjarne under hela 70-talet.

Per hade arbetat i olika telekomsystemprojekt senast med ARE, ett strategiskt projekt som innebar en uppdatering av koordinatväljarsystemet ARF med elektronik och datorstyrning. Per kom att bli systemprogrammeringsexpert och blev med tiden en av landets främsta experter på UNIX och networking. Det blev också Per som byggde om LIM'en så att den kunde styras från VAX'en.

Nabiel hade arbetat med olika programmeringsprojekt inom X-divisionen och hade ett brinnande intresse för datalogiforskning. Det var han som på allvar riktade in intresset mot deklarativ programmering och han blev den förste medarbetare som disputerade.

I början av 1982 skrev Bjarne, Christer och Mike en arbetsplan för X/Du (eller XT/Du som det nu hette). Vid detta laget fanns VAX/UNIX på plats och vi hade börjat komma underfund med systemet. LIM'en var på ingående och kontakter hade skapats med institutioner vid KTH (Lars-Erik Thorelli), LiTH (Erik Sandewall m fl) samt CTH (Åke Wikström).

Arbetsprogrammet skissade en planering som skulle gå parallellt på flera nivåer

- Telekommunikationssystem
- Hanteringssystem
- Stödsystem
- Språk
- Datorsystemarkitektur
- Datorarkitektur (inkl VLSI)

Tanken var att driva relativt oberoende projekt inom dessa delrubriker vilka på sikt skulle konvergera.

Ett av dessa projekt var SPOTS (SPC for POTS), det projekt som Mike skissade på året innan. LIM'en hade anlänt och Mike utvecklade det första telekomsystemet i Concurrent Euclid, ett litet och prydligt språk med stöd för parallellism. I detta fall fungerade VAX'en både som utvecklingsdator (host) och som måldator (target).

Det finns en röd tråd genom hela labbets historia som startar här, nämligen SPOTS-DOTS-Dunder-Erlang. Parallellt med denna finns många andra utvecklingslinjer som expertsystem, stödsystem, kommunikationsmekanismer m fl som ibland löper samman med huvudlinjen, ibland går separat.

Vid denna tid var det mycket tal om att man skulle försöka komma bort från den konventionella "von Neumann"-arkitekturen. Detta ledde till tankar om VHLL (Very High Level Languages) och stöd i maskinvaran för dessa. Detta är bakgrunden till att datorarkitektur och VLSI finns med i programmet och ledde senare till logikmaskinprojektet i samarbete med KTH. Vi köpte t o m ett skrivbart mikroprogramminne till VAX'en för experiment i denna riktning.

Med UNIX följde en mängd andra system, databaser, programspråk, ordbehandling m m och mycken tid gick åt till ren kompetensuppbyggnad.

All datalogisk utveckling vid denna tidpunkt överskuggades av det japanska Fifth Generation Computer Systems-projektet. Detta hade skrämt västvärlden till att starta både Alvey-programmet i Storbritannien och Esprit-programmet i Europa (och så småningom även IT4-programmet här i Sverige). Även vi påverkades. Vad skulle hända om japanerna kom ut med ett femte generationens telekomsystem ?

Inspirerade av de japanska planerna detaljerades en projektplan som skulle kunna leda till en ny systemgeneration

- Uppstart 1981-82
- Etablering av ett systemlaboratorium
- Uppbyggnad av ett kontaktnät mot forskning
- Uppstart av vissa teknikprojekt

- Grundteknikutveckling 1983-85
- Genomföring av successiva spjutspetsprojekt
- Bidrag till rationaliseringen av AXE 10 med återmatning av erfarenheter

- Preliminär systemutveckling 1986-88
- Breddning av teknikarbetet
- Viss produktutveckling

- Systemutveckling 1988-91

(Historien skulle visa att planen inte var helt fel. ACS/Dunder kan ses som "preliminär systemutveckling" under 1988-90 och Mobility Server och Erlang produktifiering som "systemutveckling" under 1991-94.)

Uppstarten betraktades som "i stort sett avslutad".

Under 1982 kom att genomföras ett helt oväntat projekt. Utvecklingen av den nya "superdatorn" APZ 212 krävde på kort tid utveckling av en kompilator och en interpretator. Den senare behövdes eftersom den mesta programutvecklingen skulle ske parallellt med framtagningen av maskinvaran. Detta innebar en pressad situation för XT/D och Bjarnes förslag var att låta utveckla allt i LISP.

Sagt och gjort. Bjarne överförde några PLEX-block (program) till VAX'en och började utveckla lexikalisk och syntaxanalysator och ur dessa en första version av en interpretator med ett trevligt användarinterface på VT100-terminal. Han fick även några användare som gjorde sig omaket att flytta PLEX-block till VAX'en via magnetband för att kunna utnyttja interpretatorn (eller "interpretern" med LM-terminologi).

Denna första prototyp för endast en delmängd av PLEX överfördes till XT/Dk i Karlstad som utvecklade och produktifierade interpretatorn i tid för APZ 212-projektet. På så vis blev detta ett lyckat exempel på teknikutveckling och teknikintroduktion såsom labbet var tänkt att fungera. (Projektet fortsatte sedan med utveckling av en multipelinterpretator som kunde hantera flera PLEX-block och signalutbytet dem emellan.)

Till historien hör att det sedan tidigare pågick ett projekt för att utveckla en interpretator för PLEX men i Pascal och under lång tid bedrevs dessa två projekt parallellt. Det är inte ofta som så sker vilket ju kan leda till mycket intressant jämförelsematerial. I detta fall visade det sig att programvolymen blev 7-10 ggr mindre med LISP.

Pascalprojektet lades sedemera ner. Tråkigt nog blev hela historien mycket mer infekterad än den hade behövt vara. En tanke bakom labbet var att arbeta med programvara ungefär som med materialteknik. Man provar i laboratoriemiljö, utför mätningar, drar slutsatser och agerar på dem. I detta fall hade vi siffror, ett verkligt exempel på "software metrics" och "benchmarking".

1983


Vid årsskiftet anslöt även Carl Wilhelm Welin. Calle kom från forskningsvärlden, närmast från LiTH och hade en fil.dr. i datorlingvistik. Han kom att bli vår expert på artificiell intelligens och hantering av naturligt språk.

I början av 1983 bestod således labbet av sex man men man menade att det skulle behöva utvidgas "särskilt i riktning mot dator- och systemarkitektur".

I början av 1983 skrev Bjarne och Mike en ny verksamhetsplan. Vid detta laget fanns en laboratoriemiljö i form av VAX/UNIX och LIM och man kunde peka på vissa resultat, dels hade ett första POTS skrivits, dels hade PLEX-interpretatorn (i LISP) levererats. Planen talar om utveckling på två olika "sikter"

- Evolutionär utveckling i form av successiv förbättring av nu relativt känd teknik.

- Revolutionär utveckling i form av användning av tekniker som ännu bara befann sig på forskningsstadiet.

En viktig referens för det senare var Fifth Generation-projektet.

Mer specifikt handlade det om

- Telekomsystem
- Distribuerat SPOTS med flera LIM'ar styrda av APN 167'or
- SPOTS med CHILL
- SPOTS med Ada
- Applikativt (deklarativt) SPOTS

- Stödsystem
- Download från värddator till APZ
- Work station
- UNIX
- Systemhantering och systemkonstruktion
- Expertsystem

Under året fortsatte SPOTS-projektet med i själva verket många fler språk och tekniker än vi tänkt från början. Projektet avslutades i början av 1984 (se nedan) och ledde så småningom till ett 'paper' på SETSS 1986.

Ingemar utgick från PLEX-interpretatorn och utvecklade en inkrementell kompilator. PLEX-programmeraren hade i stort sett samma användarinterface som för interpretatorn men körde programmen "på riktigt" på en APZ i provanläggningen via en anslutning till dess provsystem. Om man lade till resp tog bort programsatser så kompilerades dessa direkt och lades in via patchsystemet. Detta handlade om "seamless integration" innan termen var uppfunnen och borde ha kunnat revolutionera konstruktions- och provningsverksamheterna. Som det nu var föll idén mellan stolarna. Ingen visste hur man skulle få in hjälpmedlet i de existerande rutinerna när målet ju var att ändra dem !

Vi kom att uppleva många sådana fall under åren. Som naiva tekniker hade vi trott att det skulle räcka med framgångsrika experiment för att idéer skulle accepteras och exploateras. (Det är givetvis lika fel om idéer accepteras utan experimentell verfiering.)

Det finns en speciell psykologi kring teknikintroduktion. Man kan knappast räkna med att folk direkt skall omfamna något som plötsligt bara finns på ett laboratorium. Parallellt med experimenten måste byggas upp en förväntan att något är på gång. Det har också visat sig att det bästa sättet att driva tekniköverföringen är via ett nät av "ambassadörer" som är involverade i projekten på ett tidigt stadium. Därtill behövs det också kraftfullt stöd av någon inflytelserik person som senare Mats Persson på EBC, se nedan.

Carl Wilhelm installerade ett par expertsystempaket, bl a OPS4, och utvecklade ett själv, Frames. I samarbete med XT/R tog han sedan fram ett par prototypsystem med expertsystemteknik som stöd i AXE 10-hanteringen, ett blocktypsregister och ett register över TSS-block. Dessa hjälpmedel skulle underlätta att hitta i en omfattande produktflora, inte minst så kunde de hjälpa till att finna produkter som var "nästan samma" som den man ville ha. Detta kunde underlätta vid konstruktion då man inte behövde göra något helt nytt från början utan kunde utgå från någon produkt som nästan gjorde vad man var ute efter.

Tyvärr togs dock Calles program inte riktigt på allvar. Expertsystemtekniken var alltför långt från den etablerade stödsystemtekniken för AXE 10.

Under året gjorde labbet sina första framträdanden på internationella konferenser. Bjarne reste till Anaheim på en stödsystemkonferens och berättade om erfarenheter från att använda LISP för industriella tillämpningar. Mike medverkade i en IEEE Workshop on Multiprocessing in Telecommunications i Florida och på SETSS i Lund där han presenterade studier kring state-orienterade resp process-orienterade system vilka byggde på mätningar bl a från AXT 101.

Software Engineering for Telecommunication Switching Systems, SETSS, är en av Ericsson prioriterad konferens som behandlar just programmering av telekomsystem.

Konferensbidrag kom under åren att bli ett väsentligt inslag i labbets verksamhet. Det ingår i Ericssons tekniska 'image' att framträda med kompetenta bidrag i viktiga fora och då blir det automatiskt en skyldighet för ett teknikutvecklingslaboratorium att ställa upp. Därtill är det en viktig kvalitetstest för labbet att bidragen passerar en granskning av en oberoende programkommitté.

1984


Den sakta expansionen av verksamheten fortsatte under 1984. Göran Båge kom (liksom tidigare Ingemar) från APN 167-verksamheten. Göran kom ursprungligen från KTH där han "bara" hade avhandlingen kvar till sin fil.dr. Roger Skagerwall kom från Karolinska Institutet där han hade arbetat med datorgrafik. Det blev Roger som kom att driva stödsystemteknik på labbet. Sedan kom också Robert Virding från Dataavdelningen. Han var egentligen fysiker från början och blev den sublimerade "hackern" som så småningom hamnade i Erlang Design Team.

I början av 1984 blev Carl-Göran Larson kvalitetschef för Ericsson och Eva Salomonson tog över som chef för avdelning XT/D. Första mars genomfördes en omorganisation. Christer blev chef för XT/DM, systemteknikerna (Bernt Ericson, Björn Jonsson m fl) bildade en egen sektion på teknikstaben och XT/DU renodlades som Datalogilaboratorium. Det är tioårsjubileet av denna händelse som motiverat denna lilla skrift.

Bjarne tillsattes som chef. I samband med detta skrevs en ansvarsbeskrivning som i princip gäller fortfarande.

I början av året avrapporterades SPOTS-projektet. Studien beskriver fungerande program för POTS skrivna med konventionella (imperativa) språk (Ada och Concurrent Euclid), deklarativa språk (CCS och LPL), objektorienterade språk (Frames och CLU) samt ett regelbaserat system (OPS4) och hade involverat fem av labbets medarbetare.

Helt entydiga var inte slutsatserna eftersom det bevisligen gick att programmera telefoni i alla möjliga språk. En slutsats blev följaktligen att man troligen bör kunna skriva olika delar med olika språktekniker vilka motsvarar olika behov. En sak framstod dock som klar, nämligen att de snyggaste, kortaste och enklaste lösningarna erhölls med de deklarativa språken. Å andra sidan fanns det inget sådant språk som hade en nöjaktig princip för att hantera parallellism (concurrency) eller klarade andra telekomkrav som uppdatering under drift etc.

För 1984 skrevs en ny verksamhetsplan vilken listade upp följande projekt

- Distribuerat telekomsystem (DOTS = Distribuerat SPOTS)
- Logikmaskin
- Expertsystem och grafik för drift och underhåll
- C.A.D. för programvara
- Arbetsstationer

DOTS innebar utveckling av en mycket mer ambitiös laboratoriemiljö än VAX/LIM. Tre noder av ett distribuerat telekomsystem byggdes upp i samarbete med maskinvarulabbet, XT/TF. Dessa baserades på utbrutna abonnentsteg från AXE 10, LSM'er, som styrdes av APN 167'or. För detta krävdes konstruktion av ett par kretskort bl a som interface mellan RP-bussen och APN-bussen.

Kommunikationen mellan noderna gick över TSB-bussen men det ingick i planerna att denna på sikt skulle kunna bytas ut mot någon snabb fiberbuss.

Logikmaskinprojektet var egentligen ett STU-finansierat projekt som bedrevs av logikprogrammeringsgruppen på KTH under ledning av Seif Haridi. (När SICS bildades flyttade de dit och bildade LPSLab, Logic Programming Systems Laboratory.) Göran stod för vår del i samarbetet. Målet på sikt var att ersätta APN 167'orna i DOTS med logikmaskiner.

Under året införskaffades en SUN 1, labbets första arbetsstation. Detta var en av de första SUN-stationerna som såldes överhuvudtaget. Den uppgraderades snart nog till SUN 2. Vi var helt övertygade om att framtidens programutveckling skulle bedrivas i en arbetsstationsmiljö.

Under året satte labbet upp det första TCP/IP-nätet inom Ericsson.

Under hela sommaren "pryade" Calle och Roger på Aspuddens telefonstation för att sätta sig in i operatörens situation. Med denna kunskap byggde de en protoyp till ett operatörsstödsystem på SUN för AXE 10 med utnyttjande av expertsystemteknik och interaktiv grafik. Det fanns många intressanta tekniker som demonstrerades i detta system, t ex användes en objektorienterad paradigm för att hålla reda på stationskonfigurationen medan ett regelbaserat system användes som stöd för felsökning.

Nabiel arbetade vidare på idéer kring deklarativ programmering och exekverbara specifikationer.

Från slutet av året och under större delen av 1985 befann sig Ingemar på Wallenbergsstipendium på UCLA och studerade främst logikprogrammering och distribuerade system.

Under året fick Bjarne i uppdrag av Gösta Lindberg att bilda Teknikutskott Programvara, TUP, som en undergrupp till Teknikrådet.

1985


I början av året anslöt Joe Armstrong närmast från Svenska Rymdbolaget där han hade ansvarat för utvecklingen av markstationprogramvaran för Vikingsatelliten. Joe var egentligen fysiker men hade även spenderat några år hos prof Donald Michie på det berömda Machine Intelligence Laboratory i Edinburgh och där fått nära kontakter med kommande berömdheter som John Darlington och Robert Kowalski.

Under våren utökades labbet med två maskinvaruspecialister, Erik Hagersten och Lars Gauffin. Erik kom från APZ-verksamheten men hade spenderat det sista året på M.I.T. och deltagit i forskningsprojekt kring dataflow-maskiner under prof Arvind. Erik blev den andre på labbet som disputerade (men det var ett par år efter att han flyttat till SICS). Lasse kom från APN 167-verksamheten.

Med Erik och Lasse byggdes ett litet maskinvarulab upp och de började specifikt studera Transputern. Erik byggde flera demosystem bl a ett litet telefonsystem som också hade en röstbrevlåda.

Verksamhetsplanen för 1985 listade följande projekt

- Distribuerat telekomsystem, DOTS
- Logikmaskin
- Expertsystem för drift och underhåll
- C.A.D. för programvara.

I tillägg till detta gjordes en del UNIX-arbeten. Göran var involverad i ett projekt att portera UNIX till APN 167 och Per, Mike och Robert hjälpte till att installera UNIX på VAX'ar på Ellemtel.

Labbet hade nu existerat några år och hade avverkat den första generationen av prototypsystem. För att få grepp på läget och ge ett avstamp för fortsatt arbete genomfördes ett seminarium i augusti på Silja Star tillsammans med några speciellt inbjudna gäster däribland Eva Salomonson, Bernt Ericson, Jan-Erik Fiske och Seved Torstendahl.

Medan vi presenterade våra projekt och teknologier så presenterade Bernt BX-strategin och Jan-Erik berättade om utvecklingen i Japan.

Mike presenterade några tankar som varit vägledande sedan dess

- "Find the right methods - design by prototyping.
- Make mistakes in a small scale not in a production project.
- It's not good enough to have ideas - you must also be able to implement them to know that they work."

Som resultat av seminariet presenterades en plan som visade hur olika verksamheter på labbet successivt skulle integreras

- 1985 kommer de nya DOTS-noderna att levereras. Parallellt med detta bedrivs fortsatt arbete i VAX-LIM-miljön med utveckling av ny programvaruteknologi.

- 1986 skall dessa arbeten konvergera, dvs den nya programvaruteknologin skall kunna exekvera i en distribuerad miljö. Parallellt med detta bedrivs fortsatta projekt kring kommunikationsmekanismer, människa-maskin-kommunikation och logikmaskin.

-1987 skall den nya kommunikationsmekanismen integreras i det distribuerade telekomsystemet plus en bättre människa-maskin-kommunikation.

- 1988 skall processorerna (APN 167) bytas mot logikmaskiner.

Endast delar av denna plan kom att realiseras och då ofta på annat sätt.

Erik och Lasse hade tagit upp tankarna kring kommunikationsmekanismen och Erik hade beskrivit Duper-protokollet och Dur (Duper-raster) i ett par rapporter. Detta kom att få en fortsättning långt senare som DTM i MultiG-projektet.

Den egentliga fortsättningen av SPOTS kom att finnas inom ramen för projekt "C.A.D. för programvara" och drevs av Joe, bl a i form av objektorienterad konstruktion. För detta införskaffade vi en Tektronix Smalltalk-maskin. Den hade dock knappt hunnit anlända förrän Joe's intresse hade vänts i riktning mot Prolog.

Som tur var togs Smalltalk-maskinen över av XT/DM som använde den i utvecklingen av stödsystemet FINE, se nedan. Calle hade införskaffat en Xerox LISP-maskin efter ansökan efter fondmedel. Historien skulle så småningom visa att dessa specialmaskiner innebar en återvändsgränd och nu tillämpar man allmänt generella system som kör någon variant av UNIX.

Efter en del diskussioner kring hur Teknikutskott Programvara skulle fungera så fann man en roll genom att arrangera workshops. Dessa var ett slags interna tekniska konferenser med omkr 20 deltagare från olika instanser och projekt inom Ericssonkoncernen. Under 1985 anordnades workshops dels kring stödsystem (för programkonstruktion), dels kring databaser.

1986


Under året anslöt Erland Wikborg. Erland hade en fil.dr. i teknisk fysik men eftersom det inte fanns alltför stor efterfrågan på fysiker hade han hamnat på Ericssons utbildningsavdelning. Tanken var att Erland skulle ta hand om teknikspridningen, arrangera seminarier och kurser m m.

Under detta år flyttade labbet till en nybildad stabsavdelning på Tekniksektorn på X-divisionen. Förhoppningarna var "higher management attention", bättre utrustningsbudget m m.

Datalogilaboratoriet arbetade nu dels med det egna interna systemprojektet, nu kallat Dunder, dels med olika samarbets- och teknikspridningsprojekt. Dessa stod i ett förhållande som kommunicerande kärl. Högsta prioritet hade som alltid samarbetsprojekt med andra instanser vilket kunde leda till introduktion av ny teknik. Å andra sidan kunde (kan) labbet inte styra sin omgivning, när samarbetet minskade så ökade insatsen på det egna projektet.

Prototypsystemet skulle integrera flera olika tekniker

- Kommunikationsmekanism i form av ett dynamiskt protokoll på en snabb fiber

- Programmeringsteknologi i form av deklarativ programmering understödd av ny datorarkitektur (logikmaskin ...)

- Människa-maskin-kommunikation i form av arbetsstationer med bit-map-skärm understödd av expertsystemteknik

- Stödsystemteknologi i form av ett "C.A.D. for Software"

Under 1985 hade labbet inte publicerat något 'paper' alls men detta tog vi igen 1986 som blev litet av en skördetid av de tidigare projekten. Calle och Roger presenterade sitt arbete med operatörsstöd baserat på expertsystemteknik och interaktiv grafik på en konferens i Zurich. Detta blev en stor succé bl a då presentationen till stor del byggde på en video som visade en session med systemet.

Detta år inträffade SETSS i Eindhoven och Mike presenterade ett 'paper' om SPOTS som blev ganska uppmärksammat eftersom ingen tidigare gjort någon liknande systematisk studie. Robert reste till USA och presenterade ett 'paper' om "phoning philosophers". Detta behandlade i själva verket steget efter SPOTS, när vi väl valt att gå vidare med logikprogrammering.

Vid denna tidpunkt startade RACE-programmet, Research in Advanced Communications for Europe, ett EG-finansierat forskningsprogram riktat mot telekom. På uppdrag av Intelsa (Ericssons dotterbolag i Spanien) försökte Bjarne utnyttja sina kontakter för att få igång något projekt inom programvaruområdet. Ett sådant projektförslag var BEST som skulle ha som mål att utveckla avancerad teknik för telekomprogrammering. Projektet kom dock i stället att bli uteslutande metodinriktat och ledde endast fram till en "handbook".

Flytten från Eva blev en stor besvikelse. I stället för support för projekten fick vi uppleva motsatsen. Man "trodde" inte på Duper, Dunder etc. Det förekom också försök att involvera Datalogilaboratoriet i RACE-projekt med irrelevant eller trivial teknik. Detta blev inledningen på några jobbiga år för labbet inte minst för Bjarne. Den positiva sidan var att labbet nu tvangs söka sig utåt och finna samarbetspartners och allianser.

Teknikutskott Programvara anordnade under året inte mindre än sju workshops, nämligen kring specifikationsteknik, provningsteknik, datakommunikation, konceptuell modellering, expertsystem, dokumenthantering samt man-maskin-kommunikation.

Teknikutskott Programvara var aktivt på andra sätt också. Man anordnade ett seminarium på företagsledarnivå med Gerald Weinberg (författare bl a till boken "The Psychology of Computer Programming") samt fungerade som programkommitté för JTC-86, Joint Technical Conference, vilken denna gång hade programvara som tema. JTC är en konferens för tekniska chefer från olika dotterbolag och samlade nu omkr 40 deltagare.

1987


I en bunt OH-bilder från en presentation för Lars Ramqvist i januari 1987 förekommer namnet "Erlang" för första gången. Det bör således ha hittats på någon gång under föregående höst. Namnet är en avsiktlig vits och kan tolkas både som "Ericsson Language" och efter den danske matematikern Erlang. Som bekant nämns programspråk ej sällan efter hädangångna matematiker, t ex Pascal.

Erlang var länge ett ganska flytande begrepp "det språk som Joe jobbar med just nu" och utgjorde en påbyggnad ovanpå Prolog bl a för att stödja parallellism. Hur denna utveckling gick till kom senare att beskrivas i ett 'paper' på en konferens om Practical Applications of Prolog i London 1992.

Till detta år skrevs ingen verksamhetsplan. Ericsson sveptes just då av en våg av nollbasplanering. Datalogilaboratoriets verksamhet beskrevs i form av ett "beslutsområde" och 16 "tröskelpaket" (som tar för stor plats att lista här).

Under de tre åren 1987 till 1989 hade Bjarne förmånen att vara ledamot av IVA's Industriforskargrupp. Denna består av c:a 15 medlemmar från helt skilda branscher men med samverkan forskning och industri som gemensam nämnare. Detta gav en möjlighet att besöka andra industrier såsom läkemedel, lastbilar, flygplan etc. Det primära intrycket från detta vara att labbet befann sig på rätt spår. Det är i labmiljö och genom experiment som en industri kan tillägna sig och exploatera ny teknik.

Under vintern drev Erland ett flertal teknikseminarier samt organiserade ett par Prologkurser, en vanlig programmeringskurs i samarbete med datorklubben samt en avkortad kurs "Prolog för chefer". Bland våra elever fanns Gösta Lindberg och Torbjörn Johnson.

Ur Prologkurserna kom upp flera idéer om meningsfulla tillämpningar. En av dessa blev MATRAX, ett stödsystem för programmering av regionalprocessorn till AXE 10. Robert utvecklade detta hjälpmedel som sedan fick spridning till flera dotterbolag.

Robert utvecklade också en implementation av Parlog, ett parallellt logikspråk, som del av teknik- och kompetensuppbyggnaden.

Detta år inträffade det berömda genombrottet betr supraledare på IBM's laboratorier i Zurich. Det visade sig att tekniken låg nära Erlands egentliga utbildning som fysiker och hans arbetsuppgifter förändrades så att han på deltid kom att bevaka utvecklingen betr supraledare.

Göran var från sommaren och ett år framåt Wallenbergstipendiat och studerade för prof Gary Lindstrom vid universitetet i Utah, då specifikt implementationsteknik för logikspråk. Detta ledde till ett par 'papers' senare.

I och med detta rann i praktiken logikmaskinprojektet ut i sanden. Satsningen på specialdatorer som Transputern eller logikmaskinen (och innan dess hade även iAPX nämnts) kom att bli en återvändsgränd.

Vid denna tidpunkt diskuterades uppstart av olika systemprojekt inom Ericsson och labbet var angeläget att ställa sin uppbyggda kompetens och labmiljö till förfogande. Man gjorde även en sammanställning över sina kompetenser

- UNIX
- Expertsystem
- Grafiskt man-maskin-interface
- Stödsystem
- Deklarativ programmering
- Logikmaskiner
- RISC
- Transputern
- Snabba fiberbussar
- Telekomsystemarkitektur

Joe funderade kring frågan om programvarustrategi för Ericsson och föreslog i en rapport följande målsättningar

- "1990 All new and on-going software projects are examined to see if they would benefit from the introduction of new software technologies.

- 1995 All new software projects are prototyped first - make mistakes in the small - use prototyping as a method to clarify the problem before committing large amounts of money to a project."

Detta år blev Bjarne involverad i en verksamhet på nationell nivå. Programvara och datorer var en ny teknikvetenskap inte bara för industrin utan även för högskolan. I början av 80-talet hade STU (Styrelsen för Teknisk Utveckling) drivit ett ramprogram för Informationsbehandling inom vilket de flesta svenska professorer inom området hade kvalificerat sig. Nu var detta program slut och man var något osäker på fortsättningen. STU lät då tillsätta en liten planeringsgrupp under ledning av Bjarne med Erik Sandewall, LiTH, och Åke Wikström, CTH, m fl som deltagare. Handläggare på STU var Janusz Launberg.

Denna grupp definierade ett mer teknikinriktat ramprogram för Datavetenskap vilket skulle löpa på fem år (senare förlängt till sex år). För detta program tillsattes en styrgrupp av industrirepresentanter med Bjarne som ordförande. Gruppen fick bedöma samtliga inkomna projektansökningar samt göra en rundresa till alla högskolor och universitet som var berörda varefter programmet rullade igång.

Det Datavetenskapliga ramprogrammet kom att ta en del av Bjarnes tid men det gav en unik insikt i och möjlighet till påverkan på den datalogiska grundforskningen. Inte minst fick vi på detta sätt en översikt över hela kedjan från forskning via teknikutveckling till den industriella tillämpningen.

Åter till Datalogilaboratoriet. Det blev två projekt i labbets omgivning som mot slutet av året kom att kraftigt påverka verksamheten, nämligen TOS och ACS-utredningen.

TOS (Telecom Operating System) var ett projekt inom ETX (Ericsson Telecom) med avsikt att förnya AXE 10 genom en ny programvaruarkitektur. Detta visade sig också vara ett lämpligt tillfälle att introducera en ny stödsystemmiljö byggd på arbetsstationer, interaktiv grafik etc. Roger och Ingemar gick in i ett samarbete med vår tidigare grannsektion XT/DM för att utveckla ett stödsystem FINE (Feature Interactive Environment).

FINE innehöll många trevliga faciliteter bl a en grafisk simulator och interpretator. Tyvärr får man säga att "operationen lyckades men patienten dog", dvs TOS-projektet lades ner när det visade sig kräva betydligt mer resurser att genomföra än som ursprungligen antagits. FINE kom dock att demonstrera för många vilka möjligheter som nu stod till buds för att bygga stödsystem.

Under sin tid med MD 110 på Ellemtel arbetade Mike tillsammans med Mats Persson som numera var chef för en teknikavdelning på EIS (nuv EBC). I samband med en teknikdiskussion möttes Mike och Mats igen. Vi fick veta att de bedrev en arkitekturstudie kring ett förbättrat ACS (i princip tillämpningsprogramvaran för MD 110). Detta arbete, som leddes av Kerstin Ödling, hade utgått från erfarenheterna från både MD 110 och de olika ASB-systemen och hade som mål att klarlägga hur de egentligen skulle vilja strukturera ett ACS.

I Kerstins 'team' ingick bl a Åke Rosberg, Håkan Karlsson och Håkan Larsson ("Dubbelhakan"). De hade nu nått en sådan nivå att det naturliga nästa steget vore att utveckla en laboratorieprototyp men för en sådan behövdes en lämplig programmeringsteknik. Embryot till en sådan hade Datalogilaboratoriet i Dunder och Erlang. Kombinationen blev ACS/Dunder, ett samarbete som på olika sätt fortgår än i dag.

Teknikutskott Programvara anordnade under året åtta workshops, nämligen kring distribuerade system, rapid prototyping, programvarukvalitet, datorgrafik, realtidssystem, programmeringsutbildning, utvecklingsmiljöer samt mätmetoder.

1988


Under 1988 anslöt Hans Nilsson till labbet. Ericsson hade gjort ett åtagande gentemot SICS att ställa upp med två manår i IT4-projektet "Industrialisering av SICStus Prolog" och det blev Hans som gjorde detta arbete. Detta innebar att Hans dök upp för att omedelbart försvinna till SICS. (Idén till detta IT4-projekt kom ursprungligen från Mike.)

En något provisorisk verksamhetsplan listade upp följande projekt

- Dunder (i samarbete med ACS)
- RISC
- FINE
- Teknikframförhållning programvara, logikprogrammering, artificiell intelligens m m
- Teknikframförhållning maskinvara, Duper, processorteknik, supraledare

Denna verksamhetsplan innebar att labbet var involverat i ganska många samarbetsprojekt i olika riktningar. ACS/Dunder och FINE har nämnts tidigare. RISC motsvarade att Erik var djupt involverad i utredningar kring hur de nya RISC-processorerna kunde utnyttjas för nya APZ-generationer. Processorteknik innebar att Lasse på liknande sätt deltog i studier kring processorarkitekturer på Ellemtel. Det var nu också mest Lasse som höll idéerna från Duper vid liv.

I maj detta år flyttade Datalogilaboratoriet till Ellemtel som del i en kraftsamling av expertis kring programvara och datorteknik. Torbjörn Johnson blev vår nye avdelningschef.

I september gjorde vi en ny Åboresa, denna gång med Ellemtels VD Göran Sundelöf i avsikt att presentera labbets verksamhet. På Ellemtel var man van vid att ta in "resurser" och att det dök upp ett helt laboratorium med rullande projekt var en ovan företeelse.

(Det fanns f ö redan ett datalogilaboratorium på Ellemtel. Vi hade intresset för logikprogrammering gemensamt med dem. Å andra sidan vinklade de sin verksamhet främst i riktning mot formella specifikationer.)

ACS/Dunder blev ett mycket lyckat samarbetsprojekt. Från labbets sida medverkade Joe, Mike och Robert. (Nabiel spenderade nu stor del av sin tid i forskningsutbyte med SICS.) Under första halvåret bedrevs Fas 1A mer som experiment men bedömdes så pass positivt att EBC ansåg det värt att fortsätta och under andra halvåret genomfördes Fas 1B då en stor del av den planerade prototypen byggdes inkluderande flera tjänster.

Programspråket Erlang befann sig under utveckling under större delen av året i respons till önskemål från användarna. Å andra sidan betydde detta givetvis att de hade en ganska instabil arbetsmiljö, något som de tog med stort jämnmod. Det är tveksamt om Erlang hade blivit så bra som det är utan detta samarbete med en grupp kvalificerade användare.

Arbetsfördelningen i ACS/Dunder var f ö mycket vettigare än i det tilltänkta DOTS. I detta fall höll vi oss till det vi kunde och skulle vara duktiga på, nämligen programvarutekniken, medan EBC stod för sin expertis, nämligen telekomsystemtekniken. Det hade varit orimligt att tro att en grupp skulle klara att täcka bägge.

På hösten reser Mike, Joe och Robert på en kurs i STRAND. Detta är ett parallellt logikspråk som har den egenskapen att varje programsats i princip är parallell med alla andra. Medan Prolog saknar parallellism så var detta alltför kraftfullt för telekomändamål. Mike, Joe och Robert medverkade senare med ett kapitel om telekomsystemprogrammering i STRAND-boken.

Ett viktigt experiment var dock att använda STRAND för att implementera Erlang. Robert utvecklade en Erlanginterpretator i STRAND som var drygt 10 ggr snabbare än den existerande i Prolog men i och med att JAM'en blev färdig (se nedan) och visade ännu bättre prestanda så lades detta arbete ner.

I slutet av året reste Nabiel och Göran till Tokyo för att presentera var sitt 'paper' på Fifth Generation-konferensen.

I slutet av året lämnar Erik labbet och flyttar till SICS för att bli projektledare för DDM-projektet (Data Diffusion Machine). Vi saknade Erik eftersom han hade förmågan att täcka hela spektret från systemarkitektur till prototypkonstruktion i maskinvara. Vi skulle verkligen ha behov av en "hardware hacker" men i och med att Erik slutade så upphörde verksamheten på den kanten.

Under året ansluter Jan-Olof Nordenstam från "det andra" datalogilaboratoriet på Ellemtel. Jan-Olof hade där bl a drivit idéer om användning av predikatlogik men kom nu att främst koncentrera sig på principer för att hantera tjänsteinteraktion, ett notoriskt problem inom telekommunikation.

Teknikutskott Programvara anordnade detta år tre workshops, teknikstrategi, programmering av mikroprocessorer samt expertsystem. Nästa tilltänkta steg var att definiera "Core Systems Software" men detta hade krävt mer resurser och stöd. I och med detta avvecklades verksamheten.

1989


Inför detta år skrevs en ny verksamhetsplan

- Datalogi som grundteknik, kunskapshantering, logikprogrammering m m
- Erlang, språkdefinition, implementering m m
- Teknikintroduktion / teknikdemonstration, prototypmiljöer, demoprojekt för ISS'90 m m
- Övriga uppdrag, SICStus Prolog, supraledning, processorteknik m m

Vi försöker hela tiden strukturera verksamheten enligt den ursprungliga ansvarsbeskrivningen. Flera av projekten innebar fortsatt samarbete med andra instanser.

Ett viktigt samarbete inom Ellemtel gällde stödsystemteknik där Ingemar och Roger var involverade i flera utredningar. De byggde också i samarbete med Staffan Liljegren ett prototypsystem kallat SEE (Simple Environment for Ellemtel) vilket kunde stödja utveckling både av Erlang och av C.

Nästföljande år skulle ISS'90 inträffa i Älvsjömässan, se nedan, och förberedelserna började redan nu.

På SETSS som brukar inträffa var tredje år medverkade labbet med två 'papers', dels om FINE, dels om erfarenheterna från ACS/Dunder (hittills). Detta pekade på nödvändigheten av prototyping både för teknikutveckling (t ex av programspråk) och för tillämpningsutveckling. Dessa 'papers' var f ö Ericssons totala bidrag till SETSS denna gång.

Flytten till Ellemtel innebar knappast någon förbättrad situation för labbet. Framför allt visade det sig att ACS/Dunder uppfattades som ytterst kontroversiellt.

På sommaren hölls ett litet internat på Lidingö med diskussion mellan de två datalogilabben och den övriga projektverksamheten på Ellemtel. Ett resultat var att man kom fram till att utnyttja Erlang för prototypingändamål. Detta ledde till att Datalogilaboratoriet åtog sig att under hösten anordna sin första egentliga Erlangkurs.

Under året genomfördes Fas 2 av ACS/Dunder och under hösten avrapporterade EBC resultaten. Totalt hade man konstruerat om c:a 1/10 av hela MD 110-systemet med ny arktitektur och ny programvaruteknik (inkl Erlang) och kunde peka på ett lyft i programkonstruktionseffektivitet med en faktor mellan 9 och 22 för olika delar av systemet.

Samtidigt kunde Erlang Design Team, Joe, Mike och Robert, presentera ytterligare ett väsentligt resultat. För ACS/Dunder hade man använt en implementation av Erlang som byggde på en interpretator i Prolog. Denna var ganska seg men dög för prototyping. Joe kunde nu presentera de första siffrorna från experiment med JAM, en emulator för Erlang skriven i C, som visade sig vara c:a 40 ggr snabbare. Detta visade att det skulle vara möjligt att använda Erlang för verkliga produktprojekt (i varje fall för CP-programvara).

Detta blev början till en vändpunkt för labbet. Den gamla drömmen att åstadkomma ett lyft i programvaruteknologi genom VHLL (nu = deklarativ programmering) höll på att gå i uppfyllelse. Medan de sista 3-4 åren hade varit ganska motiga så gick det efter dessa resultat bara uppåt (om än långsamt i början). Erlang gav också en fokalpunkt för den ibland väl splittrade verksamheten även inför många andra arbeten som distribuerade system, databaser etc.

Den omedelbara reaktionen uteblev dock eller var (på Ellemtel) negativ. Vi satt nu med en bevisad "killer technology" tillgänglig och efter allt tal om programvarukrisen hade vi trott att man skulle vara ytterst angelägen om att snarast möjligt exploatera tekniken i marknadsprojekten. Så blev det inte alls. Hanteringen av programvara som teknik verkar skilja sig markant från hur man hanterar tekniska framsteg inom t ex processorteknik eller VLSI.

I november blev Bjarne inblandad i en diskussion mellan EXU och US West kring IN och IN-arkitekturer. Detta ledde till att han med utgångspunkt från ett demosystem i Erlang (som Mike skrivit) utvecklade ett något större exempel som innehöll 15 'features'. Man hade från US West's sida visat ett intresse för deklarativ programmering men inget vidare kom från detta arbete just då.

I samband med SETSS i Bournemouth hade vi sammanträffat med Gary Herman och några av hans medarbetare från Bellcore. De gjorde även ett kortare besök till Stockholm för att diskutera Erlang och telekomsystemprototyping. I december fick vi en inbjudan och Mike, Joe, Robert och Bjarne reste på en veckas besök för presentationer och diskussioner i Morristown. Detta blev en oförglömlig resa (inkl sight-seeing i ett väldigt blåsigt New York) och det gav Datalogilaboratoriet markant ökad status.

Under hösten startade diskussioner mellan Datalogilaboratoriet, Institutionen för Numerisk Analys och Datalogi (NADA) på KTH, Distributed Systems Laboratory (DSLab) på SICS samt Ericsson och Televerket kring ett Super-LAN med olika multi-media-tillämpningar (bl a CSCW, Computer Supported Cooperative Work). Duper hade inte fallit i god jord på Ellemtel men kunde bli ett intressant forskningsobjekt. Därtill såg man stora synergieffekter av att arbeta över hela spektret från multi-media-tillämpningar ner till fibern. Drivande på högskolan var Björn Pehrson, chef för DSLab, och en mycket aktiv kontaktperson från vår sida var Lasse.

Erland flyttade vidare till FORC, Fiber Optics Research Centre. Detta var ganska logiskt. De mest närliggande tillämpningarna för supraledare antogs bli hybridkretsar mellan optik och elektronik och supraledning kan inte med den bästa vilja i världen klassificeras som en form av Computer Science.

1990


Under detta år flyttade Ing-Marie Jonsson och Claes (Klacke) Wikström till Datalogilaboratoriet. Ing-Marie var datavetare från Uppsala och Klacke matematiker från Stockholm. Bägge kom närmast från stödsystemavdelningen på Ellemtel.

Verksamhetsplanen såg i stort sett likadan ut som för 1989.

Den stora händelsen i Telekomsverige detta år var givetvis ISS'90, International Switching Symposium, den största och viktigaste konferensen inom detta område och som återkommer med 2.5 års mellanrum. I maj 1990 inträffade den i Älvsjömässan, knappt en kilometers gångväg från Ellemtel.

Datalogilaboratoriet bidrog på flera sätt till ISS'90. För det första höll Joe och Robert ett föredrag under 'poster session' kring Erlang, något som kom att innebära fem timmars kontinuerligt maratonföredrag. För det andra medverkade labbet med en demonstration av Erlang som del av de tekniska besöken. Man fick köra demon åtta gånger samma dag och här visade det sig att Bjarnes demoprogram för US West kom till användning. (Joe, Mike och Robert gjorde sedan en video av denna demo vilken har erhållit viss kultstatus som "kalkonfilm" idag.)

I maj 1990 blev Bjarne invald i IVA, Ingenjörsvetenskapsakademien, närmare bestämt IVA avd XII, Vetenskaper inom Informationsteknik. IVA är en av åtta kungliga akademier i Sverige och längre än så här kan man inte komma som tekniker.

Datalogilaboratoriet håller två Erlangkurser plus att de ger en kurs på doktorandnivå på KTH. En av eleverna var John Unger från Bellcore. Han hade fått i uppdrag att genomföra ett större prototypprojekt baserat på Erlang. Detta ingick i Cruiser, ett experimentprojekt för multi-media-kommunikation.

Erlang utpekas av Bo Hedfors, den nye tekniske direktören på Ericsson, som rekommenderad prototypmiljö och nya projekt startar på ERA (prototyping av cordless) och på ETX/TAL (Telecommunications Architectures Laboratory). Labbet t o m levererar anpassade LIM'ar till dem för att komma igång med. Det blev starten till en mindre hantverksindustri som Per tagit hand om och som ledde till att labbet fick efterföljare på andra platser i koncernen. (I detta fall kunde ERA ordna så att vi fick en 'cordless switch' i utbyte).

EBC beslutar att driva ACS/Dunder vidare mot ett verkligt fältprov. Detta var en mycket signifikant händelse som i praktiken innebar beslutet att fortsätta arbetet med Erlang till en produktifiering.

I början av året gjordes en utvärdering av det Datavetenskapliga ramprogrammet av en panel av internationella experter, professorer från USA, Storbritannien och Frankrike. Slutsummeringen var att "the evaluation committee was very impressed by the overall quality of the STU research programme. We recommend that it be continued and that the level of funding be increased to match the increase in the number of qualified researchers." Detta betyg reflekterade också på styrgruppen. För industrin betyder det att det finns en god kunskapsbas i Sverige för kvalificerad programutveckling.

Jan-Olof beskriver i ett par rapporter principer för hur man skulle kunna hantera i varje fall vissa slag av tjänsteinteraktion. Nästa steg blev att han tog över en variant av ISS'90-demonstratorn och utvecklade ett prototypsystem som demonstrerade att de också fungerade. Dessa principer blev sedan basen för labbets första programvarupatent men vi blev något förskräckta över hur mycket arbete ett sådant tydligen kan medföra.

Samtidigt fortsatte arbetet med att försöka få ut Prolog i tillämpningsprojekten. En tillämpning som både Joe och Calle hade arbetat med gällde definiering av dirigeringsdata (800- resp 020-nummer) för AXE 10. Hans plockade upp denna tillämpning och utvecklade ett verktyg, nu kallat "Service Creation Environment", vilket kom att gå i drift i Irland, Italien och U.S.A. Han kunde även portera detsamma till PC vilket gjorde det ännu mer hanterbart. Vi fick sedemera veta att detta verktyg hade bidragit till att sälja AXE 10 till NYNEX, telekomförvaltningen i New York-området. (Däremot misslyckades vi att få TMOS-projektet att ta till sig Prolog vilket ju var vårt egentliga mål.)

Samtalen med KTH, SICS, Televerket och Ericsson kring ett Super-LAN ledde under året fram till etableringen av MultiG-projektet. Detta stöddes finansiellt av Televerket, Ericsson och Nutek (efterföljaren till STU). Därtill kom både NADA och DSLab att driva sina ramprogramfinansierade projekt fokuserade mot MultiG. En viktig del var att tre doktorander anställdes för att arbeta vidare med Duper, sedemera omdöpt till DTM. Lasse kom att arbeta alltmer som kontaktperson mot MultiG och handledare för DTM-projektet.

Nabiel disputerar och tar sedan tjänstledigt för att under en tid arbeta vid ECRC i München (en europeisk motsvarighet till SICS). Han säger senare upp sig och stannar i Tyskland.

1991


Detta år kom Torbjörn Törnkvist till labbet från TX/D (vår gamla avdelning på Ericsson) och fick i uppgift att utveckla en realtidsdatabas för Erlang. Tobbe hade börjat på Ericsson på provningen för AXE 10 men hade sedan tagit tjänstledigt för att läsa datavetenskap i Uppsala.

En mycket viktig händelse under 1991 var att Bernt Ericson strukturerade upp den tillämpade forskningen inom Ericsson (eller i varje fall inom ETX) i form av distribuerade laboratorier. Dessa är av två slag, "Research Centers" som är orienterade mot någon viss teknik och "Application Laboratories" som är orienterade mot nya tillämpningar. Datalogilaboratoriet fick på detta sätt en infrastruktur, det är helt enkelt det "Research Center" som arbetar med programvara. Eftersom vi föregått denna struktur med några år hade vi kanske gjort en pionjärinsats. I varje fall gjorde den det betydligt enklare att förklara målsättningar och arbetssätt.

Samtidigt började Televerket strukturera sin tillämpade forskning och teknikutveckling enligt liknande linjer. Deras mesta verksamhet av detta slag ligger på Telia Research. I och med flytten till Ellemtel blev Datalogilaboratoriet hälftenfinansierat av Televerket och kom på detta sätt att ingå i två organisationer av forskningslaboratorier.

Projektplanerna för 1991 hade följande struktur

- Datalogi
- SICStus Prolog
- Erlang teknik och industrialisering
- Teknikspridning, mål- och stödsystem

I februari hade labbet ett internat i Järvsö kombinerat med litet friluftsliv på dagarna och seminarier på kvällarna. Det hade börjat bli ett snålare ekonomiskt klimat men vi lade sektionskassan emellan. I en spridd verksamhet där alla har kontakter i olika riktningar är det värdefullt att ibland få en översikt och fokusering.

Vid det här laget var den nya Erlangimplementationen baserad på JAM helt stabiliserad och hade ersatt den tidigare interpretatorn i Prolog. Systemets spreds till omkr 30 instanser över hela världen. Klacke började göra experiment i riktning mot ett distribuerat Erlang bl a i form av ett distribuerat Ultimo (ett slags schack).

Våra vänner på EBC i Bollmora porterade Erlang till en enkortsdator från FORCE som bygger på M 68030 och realtidsoperativsystemet VxWorks. Detta var första steget mot ett sant 'embedded system'. Det var också de som riktade vår uppmärksamhet mot standardiserade realtidsoperativsystem. Detta kom senare att bli en viktig komponent i tankarna på ett öppet system.

Per utvecklade pxw, ett interface mot X Windows som kom att bli mycket använt. Ing-Marie utvecklade ett interface (inkl en grafisk editor) mot InterViews vilket gav mer kraftfulla funktioner men hade den nackdelen att InterViews inte var ordentligt "supportat". Hela frågan om grafik och Erlang var ganska förvirrad under några år.

Roger tog fram ytterligare ett stödsystem, nu Erlang Support System, ESS. Detta byggde på pxw och epoch och integrerade flera olika verktyg men använde Erlang som "klister". ESS fick en spridning till flera av våra användare och innehöll många uppskattade funktioner, inte minst en debugger.

Klacke utvecklade en kompilator för ASN.1 som genererade Erlang. ASN.1 är ett av CCITT rekommenderat språk som många datakommunikationsprotokoll har specificerats i och hjälpmedlet blev snabbt mycket efterfrågat. (Klacke har god näsa för att göra rätt saker.) Kompilatorn var givetvis skriven i Erlang.

Ingemar deltog projektet på ERA för att utveckla en ett demosystem i Erlang för att styra en 'cordless'-växel, DCT 900. I systemet ingick även simulator och mycket trevlig grafik. Detta projekt blev början till en Erlanggrupp på ERA.

Göran genomförde ett lyckat projekt i samarbete med FORC, Fiber Optics Research Center, på Ericsson. De hade utvecklat ett demosystem för en fiberoptisk växel (photonic switching) och behövde ett trevligt och pedagogiskt styrsystem för detsamma då det skulle visas på den stora mässan Telecom'91 i Geneve. Göran utvecklade ett sådant i Erlang som blev mycket uppskattat. Hela systemet ställdes efteråt upp på FORC.

Detta blev starten till en hel serie liknande projekt och det första kom direkt på bredbandslabbet på Ellemtel. De hade byggt ett liknande demosystem men med en annan konfiguration och Sebastian Strollo blev projektanställd för att under ett par gloriösa sommarmånader utveckla ett system som kunde visas på ECOC (European Conference on Optic Communication) i Paris i augusti. Också detta system kom att permanentas men nu vid bredbandsdemonstratorn på Ellemtel.

Systemet på Ellemtel var i själva verket del av RACE-projektet Oscar och med detta kom vi in i RACE. Flera RACE-projekt följde under de närmaste åren som använde Erlang men enbart på maskinvarusidan. På programvarusidan arbetade man mest med metodik medan på maskinvarusidan behandlade man programvaran mycket mer pragmatiskt. Det gällde att på kort tid med en eller två man få till en datorstyrning för någon demonstrator. Detta tänkande passade oss och Erlang alldeles förträffligt.

Intresset för expertsystem runtom hade falnat. (Detta är ett exempel på hur det verkar gå mode i teknik. Den tidigare upphaussningen var lika tokig som det nuvarande ointresset.) Detta innebar att Carl Wilhelm koncentrerade sina ansträngningar mot hantering av mänskligt tal. Ett av experimenten avsåg ett program för spektralanalys av tal och användes i försök med taligenkänning.

Bjarne skrev kapitlet om Datavetenskap i IT2000-utredningen, en studie som drevs av Näringsdepartementet.

Kursverksamheten rullade på. Detta år höll vi tre Erlangkurser på Ellemtel men därtill tog Mike kursmaterialet under armen och gav kurser såväl på FATME i Rom som på EPA i Melbourne. (Bjarne hade hållit årets enda 'paper' i Melbourne och hade givetvis gjort en del marknadsföring för Erlang.)

I ett svagt ögonblick tog Bjarne på sig kursledarskapet för EF131 "Datorer i Telesystem" på KTH. Det visade sig snabbt att kursen var totalt föråldrad och Bjarne fick lägga upp en helt ny kurs med föredragshållare från Ericsson, Televerket och Ellemtel.

Montaget av demo-LIM'ar fortsatte och detta år försåg vi flera högskolor med sådana system plus att t ex EPA beställde fyra stycken.

Vid den datavetenskapliga linjen i Uppsala genomför man för sista årskursen varje år en större projektuppgift. Detta år gjordes den i Erlang och handlade om distribuerad telefoni. Den fick namnet "Distortion". 19 elever deltog i projektet och Ing-Marie var djupt involverad som handledare från vår sida.

Detta år tappade vi helt oväntat Göran. Han hade fått arbete hos Carlstedt Elektronik AB utanför Göteborg. Vad han skulle göra var okänt eftersom företaget hade blivit helt mörklagt men eftersom Gunnar Carlstedt var känd som datorsystemexpert (bl a som konsult åt Ericsson) antog vi de måste hålla på med något projekt åt det hållet. De kunde i varje fall bjuda ordentligt över i lön plus erbjuda Göran dubbel bosättning. Han bodde kvar i Saltsjöbaden och långpendlade till Göteborg i veckorna.

1992


Detta år kom Bogumil (Bogdan) Hausman från SICS, den andre medarbetaren med forskarbakgrund efter Carl Wilhelm. Bogdan hade specialiserat sig på snabb implementationsteknik för logikspråk och hade även disputerat inom detta område. Han hade arbetat några år som forskare på LPSLab (Logic Programming Systems Laboratory) på SICS men ville se nya vyer och gärna även se hur hans kompetens kunde komma till användning.

En dag kom Tobbe och berättade att han "bara" varit kurstvåa när han gick i Uppsala. Via den kontakten kom vi också att anställa Magnus Fröberg. Det var han som varit "ettan". Magnus hade haft en liknande bakgrund som Tobbe och kom snabbt in i gänget.

Arbetsprogrammet detta år hade nästan exakt samma struktur som året innan

- Datalogi, UNIX, A.I., deduktiva databaser m m
- Erlang teknik och stödsystem
- Telekomtillämpning och användarstöd

Den sista punkten innefattade både den egna labmiljön, stöd till ett växande antal användare samt arbete med MultiG.

Under detta år togs beslutet att driva Erlang vidare mot en kommersiell produkt. Joe, Mike och Robert fick OK av Ellemtels nye VD Örjan Mattsson att skriva en bok om Erlang och ett kontrakt upprättades med Prentice Hall. Detta motsvarade en markant högre ambitionsnivå än vi hade haft betr EriPascal.

Erlangimplementationerna förbättras successivt, inte minst börjar vi en successiv portering till olika operativsystem, i första hand till MS/DOS, men Macintosh, Windows m fl står på tur. Vi införskaffar även ett par realtidsoperativsystem, QNX och VxWorks, för att lära oss om dem och portera Erlang till dem.

På EBC startar man Mobility Server-projektet. Detta är ett målinriktat produktprojekt som bygger på ACS/Dunder. Projektet involverar EBC-instanser i Bollmora, Sundbyberg och Anaheim (utanför Los Angeles). Projektet förutsätter att Erlang är av produktkvalitet men även att implementationen är snabbare än vad vi klarade för tillfället.

Mobility Server-projektet visade också på svårigheterna att introducera Erlang på en konventionell PLEX-programmeringsinstans. Införandet av ny teknik förutsätter en förändrad arbetsmetodik för att ge verklig effekt. Om man arbetar på samma sätt som förut så missar man de möjligheter som t ex Erlang ger och går miste om det eftertraktade "lyftet".

I januari håller vi ett tvådagarsseminarium med titeln "Rapid Prototyping with Erlang". Deltagarna är företrädesvis Ericssons kunder från åtta länder men där fanns också tre företrädare för IBM i Frankrike.

Arbetet med RACE Oscar, den optiska demon, börjar få efterföljare. Ett särskilt lyckat exempel var RACE-projektet Biped, ett projekt med elva partners som skulle integrera mot en bredbandsdemo hos Ericsson i Madrid. Detta system byggde på maskinvara från olika leverantörer som skulle styras på något sätt. Man genomförde en studie och kom fram till Erlang. I denna studie angav man tre skäl

- Erlang finns och fungerar
- Det är lätt att göra interface mellan Erlang och maskinvara och annan programvara
- Det är lätt att skapa grafiska användarinterface

Man siktade på en första prototyp till halvårsskiftet men den blev klar redan i april. Efter detta kunde man successivt bygga ut systemet allt efter som ny maskinvara anlände. Den som gjorde detta arbete var Francisco Monfort hos Ericsson i Madrid med stöd från Sebastian. Francisco skrev senare ett 'paper' om detta projekt för en programvarukonferens i Sydney.

Bredbandslaboratoriet på Ellemtel, som också är ett "Research Center", var även involverade i Biped. De har blivit en entusiastisk användargrupp för Erlang och har bl a genomfört en serie intressanta examensarbeten.

Tidigt på året spenderade Klacke och Sebastian mycken arbetstid på TELI i Älvsjö i ett samarbetsprojekt med dem för att bygga en demonstrator av deras planerade 'paging' system. Detta system, som kallades ERMES, byggde på en ny Europastandard. Demosystemet fungerade mycket snyggt inte minst tack vare ett pedagogiskt användarinterface med interaktiv grafik.

Demosystemet gjorde stor nytta för att hjälpa TELI att sälja sitt projekt bl a till Televerket Radio och till Deutsche Bundespost. Däremot gick man inte vidare med Erlang i sitt produktprojekt utan valde den konventionella vägen med objektorientering och C++. Vi kände oss något lurade men huvudanledningen var att TELI fortfarande var osäkra på hur pass allvarligt Ericsson tog på Erlang och huruvida Erlang verkligen skulle bli "supportat" som en produktteknologi.

Under 1992 sker det internationella genombrottet för Erlang och det utan att vi ens var där. Den stora telekomkonferensen, ISS, International Switching Symposium, inträffar var 2.5 år vilket innebär att den varannan gång går på våren och varannan gång går på hösten. Detta år inträffade den på hösten i Yokohama i Japan. I kontrast till gången före, i Älvsjö, var Ericssons bidrag denna gång plågsamt blygsamma, bara fyra riktiga föredrag. Två av dessa handlade dock om prototypsystem skrivna i Erlang

- "A Switching Software Architecture Prototype Using Real Time Declarative Language" som presenterades av Mats Persson, EBC.

- "Prototyping Cordless Using Declarative Programming" som presenterades av Anders Danne, ERA.

Dessa föredrag gavs med stor entusiasm och blev mycket väl mottagna och fick många frågor men den verkliga uppmärksamheten kom i samband med den avslutande plenarsessionen. Fem experter inom skilda områden diskuterade vad som hade framkommit sedan föregående ISS, vilket tydligen inte var så mycket, men när man kom till programvara tog experten inom det området, Peter Cashin, BNR, till orda och sade

- "We should take our hats off for Ericsson for looking at software design in a whole new way !"

Även om Ericsson hade synts minst av de stora telekomtillverkarna under de tekniska sessionerna på ISS'92 så var Ericsson det enda företaget som nämndes vid namn vid slutsummeringen.

Erlang representerade det mest signifikanta teknikgenombrottet sedan föregående ISS även på global nivå.

Bryan McMahon, som bevakade ISS'92, för EPA skrev i sin reserapport

"Declarative Design, Erlang from ERA/EBC. The possibilities for use of this design approach were recognised and reported on by Peter Cashin, BNR, in the Plenary summary. I hope that there can now be internal recognition of the possible application of these techniques and real support for their application within the Ericsson group."

Vi märkte kanske ingen skillnad omedelbart men kunde notera en stigande respekt för verksamheten. Det var nog ingen längre som inte "trodde" på Erlang. (Snarare var man nog orolig eftersom Erlang fungerade.)

Det hände annat också. Carl Wilhelm hade lagt A.I.-tekniken åt sidan bortsett från enstaka konsultationer. Expertsystem var för tillfället "ute". I stället tog han upp talteknologi och byggde ett prototypsystem för taligenkänning som klarade isolerade kommandoord, siffror m m.

Calle tog även upp några nya tekniker som kan få relevans för telekom, bl a neurala nät och "constraint logic programming" (villkorsprogrammering).

MultiG-projektet fortsatte och vårt engagemang i detta. En signifikant händelse var etableringen av början till det s k Stockholmsnätet (SGN = Stockholm Gigabit Network) med en högtidlig invigning av de tre första noderna, Electrum, KTH vid Östra station samt Datalogilaboratoriet. Invigningen skedde på Electrum och Örjan Mattsson bidrog genom att hålla ett litet anförande multimedialt från labbet. Ola Carlvik, f d examensarbetare som numera var projektanställd, lade ner ett stort arbete på att få vår del att fungera. Det hela var fortfarande väldigt skakigt men fungerade i alla fall just den kvart det behövdes.

Ola byggde också upp en multimediastudio i samarbete med bl a dataavdelningen på Ellemtel. Den blev mycket uppskattad för demosyfte och en bild därifrån visades t o m i en årsrapport från Ericsson.

I samband med den fjärde MultiG-workshop'en demonstrerades en laboratorieprototyp av DTM på KTH i Electrum.

Hedeland kortmontage, dvs Pers aktiviteter med att sätta samman prototypsystem med demo-LIM'ar fortsatte. En skickades till Telia Research i Luleå och en annan till ETM i Holl ... f'låt Nederländerna.

Den senare blev starten till en ovanligt lyckad verksamhet. Jan van der Meer etablerade INLab på ETM och byggde på mindre än ett år tillsammans med några man ihop en hel IN-simulator. Man hade talat om prototyping i över tre år men det var först efter en Erlangkurs och en LIM från oss som verksamheten kom loss. (Fortfarande varje gång Jan kommer på besök har han med sig en burk Haagsche Hopjes till labbet.)

Detta påminner f ö litet om ACS/Dunder. Labbet kan inte klara allting självt men när man etablerar kontakt med annan expertis, som i detta fall Intelligent Networks, och själv står för programvarutekniken så öppnas möjligheten till kraftfulla synergier.

Under året körs ytterligare några Erlangkurser på labbet plus att Bjarne och Tobbe reser till Madrid och håller en kurs på Telefonica, det spanska Televerket. Bjarne driver EF131 "Datorer i Telesystem" för andra gången på KTH. Det var inte lika roligt andra gången !

Detta år följde Roger och Ing-Marie efter Göran till Carlstedt. Med anställningsstopp och krympande budgetar var det inte alltid självklart att vi kunde hitta lämpliga ersättare. Vi lät framföra en ilsken hälsning att om de hoppades på fortsatta goda kontakter så fick de sluta med värvandet.

En liten tröst var att detta måste ha varit en kvalitetsindikator. Carlstedt hade riktat sina värvningar bara mot oss inom Ericsson och f ö endast riktat sig mot CTH, LiTH, SICS och i något fall mot ABB.

Projekt "Distortion" fortsatte med att sju av "Ing-Maries pojkar" gjorde examensarbeten på labbet. Ett av dessa bestod i att bygga om den gamla ISS'90-demon efter korrekta specifikationer och med illustrativ grafik. En annan, som blev mycket populär, var "SUN Controlled Telephone" där till slut alla funktioner i en digital telefon blev tillgängliga genom en arbetsstation, telefonkatalog, telefonsvarare etc ... Ett annat arbete bestod i att portera Erlang till Macintosh.

I slutet av året väcktes tankarna om kommersialisering av Erlang, dvs att marknadsföra det utanför Ericsson, och även att skapa ett specifikt företag för detta ändamål.

Totalt hade labbet nio publikationer under 1992, vilket gjorde det till ett rekordår. Återigen var det Datalogilaboratoriet som stod för hela Ericssons representation på SETSS, som i år gick i Florence. Mike höll sitt fjärde föredrag i rad på SETSS vilket måste vara något av ett rekord. I princip kan man följa Erlangutvecklingen genom att läsa bidragen till SETSS. Därtill fanns ett par föredrag till en ny konferens, Practical Applications of Prolog m m.

I oktober disputerar vår gamle medarbetare Erik varefter han flyttar till SUN i USA för att arbeta i nya processorprojekt.

Detta år då teknik från Datalogilaboratoriet hade räddat Ericssons ära på ISS slutade med att ett extra lönepåslag till Ellemtel gick labbet helt förbi och endast gick till "prioriterade projekt". Ett förslag från Bjarnes och Mikes sida att driva alternativprojekt med utnyttjande av Erlang ledde till att Torbjörn fick uppbåda all sin diplomatiska skicklighet för att avvärja att de fick sparken och att labbet lades ner.

Bryan McMahon avslutade sin reserapport från ISS'92 i Yokohama med följande ord

"On the Software Engineering side, there was evidence of effort being wasted on internal politics and decisions, whereas there was some indication from outsiders that we may have a jewel in our Computer Science oyster bed. If so, I hope we can harvest it soon."

1993


Detta år anställdes Ola Carlvik på riktigt. Han hade hunnit göra sig ett namn för sitt arbete med multi-media-tillämpningar fast han fortfarande bara varit projektanställd. Ett sådant exempel inträffade vid Ericsson Management Forum, EMF, en sammandragning av koncernens toppchefer. På EMF hade man tillgängligt ett demosystem med olika multi-media-tillämpningar vilket hade satts samman av Ola.

1993 började som vanligt med utarbetande av en verksamhetsplan som hade nästan samma uppställning som året innan

- Datalogi
- Erlang produktunderhåll
- Erlang teknik och stödsystem
- Telekom och användarstöd
- MultiG och SiREN-samverkan

I maj kom boken. Concurrent Programming in Erlang. Joe, Mike och Robert hade slitit stor del av 1992 med författande och korrekturläsande för det mesta på sin fritid. Nu hade vi den i handen.

Det visade sig att den första upplagan av omkr 2500 ex kom att gå åt under året och Prentice Hall fick göra en nytryckning.

Ericssons tekniska tidskrift Ericsson Review innehåller i nr 2, 1993, inte mindre än tre artiklar som beskriver Erlang med tillämpningar. Tanken var att följa upp intresset från ISS i Yokohama och information om Erlang blev nu spridd officiellt till alla Ericssons kunder.

I juni promoverades Bjarne till hedersdoktor vid Linköpings universitet och tekniska högskola för "insatser som varit av väsentlig betydelse för högskolan". Detta är en utmärkelse som inte minst kommer hela labbet till del. Vanligen är det framstående professorer eller företagsledare som hedras på detta sätt men här ville högskolan lyfta fram både arbetet med ramprogrammet och arbetet med tillämpad forskning i den industriella miljön.

Det ställs ofta krav på högskolan och forskningen att vara industriinriktad men detta förutsätter också att det finns en intresserad mottagare. Vi tror att högskolan gärna skulle se fler laboratorier och mer aktiviteter med teknikintroduktion sådana som Datalogilaboratoriet bedriver.

De tidigare ganska bottenfrusna relationerna till resten av Ellemtel började så sakteliga tina upp, delvis som effekt av att det etablerades en serie regelbundna möten mellan representanter för Datalogilaboratoriet och vår VD Örjan Mattsson. Ganska många samarbeten kunde också noteras där det mest signifikanta kanske var att Klacke medverkade i en portering av Erlang till ett specialutvecklat operativsystem på Ellemtel.

Bogdans arbete med Turbo Erlang börjar bära frukt. I stället för en emulator kompilerar han Erlang till C och börjar visa resultat i storleksordningen en faktor 10 snabbare än JAM. I själva verket ligger han i nivå med icke-optimerad C. Detta innebär att vi kommer att kunna klara EBC' prestandakrav för Mobility Server-projektet. Detta innebär ett mycket signifikant tekniskt genombrott. Erlang har först visat sig ge hög konstruktionseffektivitet. Nu har Bogdan visat att man kan erhålla detta utan att behöva betala ett högt pris i förlorade prestanda.

Bogdans arbete är i själva verket ett mycket lyckat exempel på den industriella relevansen av avancerad datalogi. Samtidigt som Bogdan blir uppmärksammad på vetenskapliga konferenser så hänger EBC på låset för att så snart som möjligt få tillgång till hans implementationer.

Samtidigt färdigställer Klacke Distribuerad Erlang. Detta kan bli ett lika signifikant tekniskt genombrott som Erlang självt. Programmering av distribuerade system kan vara en storleksordning mer komplext än programmering av realtidssystem på en processor. Distribuerad Erlang kan göra distributionen nästan transparent. Klacke får snabbt flera användare till Distribuerad Erlang, t ex görs experiment med att köra Distribuerad Erlang över Atlanten.

(Nästa uppdaterade upplaga av Concurrent Programming in Erlang kommer att innehålla ett kapitel om Distribuerad Erlang och Klacke blir inviterad som fjärde författare.)

Det pågår porteringsarbeten av Erlang i flera riktningar, bl a i ett samarbete med APZ-avdelningen på Ericsson. De får Erlang att fungera på regionalprocessorn till AXE 10. Detta kan bli ett sätt för oss att komma in på AXE 10 och därmed bidraga till den tekniska vidareutvecklingen av Ericssons huvudprodukt.

Magnus och Tobbe m fl utvecklar Xerl, en grafisk programmeringsmiljö för Erlang som går ut med den ordinarie 'releasen'.

Magnus utvecklar ett program för att generera Erlang från SDL-flöden. Detta hjälpmedel efterfrågas många gånger men den enda användaren länge visar sig vara ett RACE-projekt där bl a ERA deltar.

På TAL (Telecommunications Architecture Laboratory) färdigställer man ett prototypsystem för 'personal assistants' kallat "Telephone of Tomorrow". ERA beslutar sedan att vidareutveckla denna till ett fältprov i North Carolina. Ingemar deltar i denna prototyputveckling efter arbetet med 'cordless' på ERA. Ingemar gör på detta sätt en viktig insats i teknikspridningen.

Tobbe, Hans och Lennart Öhman (en f d examensarbetare) utvecklar en databas för Erlang, DB2. Hans arbetar vidare på forskningsbas med deduktiva databaser, ett forskningsområde som uppstått ur logikprogrammeringen och som kan ge värdefulla tekniker för hantering av både stora och komplexa datamängder.

Hans kämpar därtill oförtrutet vidare med att försöka visa företaget hur bra Prolog kan vara. Det senaste bidraget är ett hjälpmedel för hantering av GDMO-specifikationer. Dessa specifikationer är av ett sådant slag att de är praktiskt taget omöjliga att hantera och hitta i enbart med papper och penna.

Det treåriga MultiG-projektet avslutas under sommaren efter att ha blivit mycket uppmärksammat. Den viktigaste effekten av MultiG är att det lett fram till etableringen av den nya institutionen för Teleinformatik på KTH (efter den ganska avsomnade TDS). Björn lämnar SICS och blir professor och institutionschef. Institutionen samlas på Electrum som nu börjar bli det kompetenscentrum som avsikten ursprungligen var.

I april etablerades Erlang Systems AB som ett dotterbolag till Ericsson Programatic. Detta var till stor del ett initiativ utanför Datalogilaboratoriet som byggde på att det skulle ligga en affärsidé i att sälja Erlang som överlägset programutvecklingshjälpmedel på den öppna marknaden. Erlangbolaget tog fram en del broschyrer och inte minst ledde till ett initiativ att ta fram dokumentation av hög professionell klass.

Nästa stora steg var att Erlang presenterades för världen (eller i varje fall Sverige) på den stora IT-mässan i oktober. Detta blev något av en happening. Till mässan införskaffades en Märklinanläggning och utvecklades ett demoprogram som körde runt två tåg på samma bana med ett fungerande ATC-system med baliser och allt. Det hörde givetvis också till ett instruktivt grafiskt system. På mässan gjordes tre presentationer och hölls en presskonferens. Erlang blev ganska uppmärksammat, mycket eftersom det var någonting ovanligt att komma från Ericsson.

En annan happening var att vi ställde upp med ett lag i VM i Programmering. Detta var från början Joe's idé men i sista stund kunde han själv inte deltaga utan laget bestod av Robert, Klacke och Sebastian.

Tävlingen går till så att alla lagen får ut uppgiften och får "hacka" i 24 timmar varefter en jury avgör vinnaren.

Nu fick laget inte någon framskjuten position trots att laget klarat uppgiften. Det var delvis för att vi inte klarade att visa den pedagogiskt nog. Tävlingen avsåg i första hand 4GL-system men det var en väldigt spännande upplevelse för de som deltog och om vi ställer upp igen så vet vi betydligt mer om hur vi skall förbereda oss. En viktig erfarenhet är att vi behöver bygga betydligt fler och bättre verktyg kring Erlang såsom 'interface builder' och databasinterface.

Efter en del turbulens kring Erlangbolaget blev Mike inkallad som tf VD och vi kom att sätta oss in ordentligt i företagandets villkor och vad det innebär att Erlang som produkt skall bära sina egna kostnader för fortsatt produktutveckling och underhåll. Hoppet om en lukrativ yttre marknad för Erlang kom snabbt på skam, det blev inga order direkt efter mässan. I själva verket måste vi först koncentrera oss på den inre marknaden (Ericssonkoncernen) och skapa en eller flera referenser innan den yttre marknaden börjar ta fart.

Alla sju examensarbetarna från Uppsala, som tidigare deltagit i "Distortion", fick projektanställningar på olika platser inom Ericsson och Ellemtel för arbete i Erlangprojekt. Dessa övergick senare till fasta anställningar, bl a så satte Programatic upp en Erlang kompetensgrupp.

Joe reste till England på inbjudan av Science and Engineering Research Council, SERC, för att presentera Erlang. SERC har finansierat många projekt i Storbritannien som arbetar med deklarativ programmering men har sett liten effekt i industrin. Joe's främsta råd var "freeze and sell", dvs man måste av och till göra en paus i forskningen och släppa ut något stabilt system på marknaden för praktisk användning. Det är f ö endast på detta sätt som man kan få en återmatning från användare.

Robert blev på samma sätt inbjuden till FORTE, International Conference on Formal Description Techniques, i Boston för att ge en 'tutorial' om Erlang. Han tog också tillfället i akt och besökte AT&T Bell Laboratories och våra vänner på Bellcore.

Den första kommersiella 'releasen' av Erlang, V4.1, blev klar i oktober och släpptes ut till användare. Datalogilaboratoriet kommer allt framgent att ta hand om högskolekunderna och här verkar det gå ut 1 à 2 system per vecka, ibland till så exotiska platser som Malaga, Beijing och Novosibirsk.

Bjarne avverkar EF131 "Datorer i Telesystem" för sista gången. Till nästa år tas den över och vidareutvecklas av KTH/Teleinformatik själva.

Under året initierar Bo Hedfors dels ett 'software seminar' på chefsnivå inom Ericsson, dels en arbetsgrupp SWAT, Software Action Team, för att ta itu med kvalitets- och produktivitetsproblemen med programvara. Datalogilaboratoriet medverkar med både utställning och demo till seminariet och Bjarne blir medlem av SWAT.

Under 1993 fyller Lasse, Calle och Ingemar 50 år. Åren innan har både Jan-Olof och Bjarne gjort det. Labbet börjar likna något av de "gamla entusiasterna". Som tur är så med Klacke, Tobbe, Magnus och Uppsalapojkarna finns det en återväxt av nya entusiaster. Det finns hopp om ungdomen.

1994


Den sista av Uppsalapojkarna, Marcus Arendt, får arbete på Erlangbolaget för att börja arbeta med ett uppdragsprojekt att portera Erlang till Windows NT.

Sebastian som arbetat som projektanställd både på labbet och på Erlangbolaget slutar för att kunna ägna sig åt sina universitetsstudier på heltid. I stället kommer Tony Rogvall från Logikkonsult, f d kurskamrat med Klacke.

Lasse flyttar till Björn Pehrson för att arbeta vidare med fibrer och nät som en naturlig fortsättning efter MultiG-projektet.

Ett tag under 1993 undrade Bjarne om vi skulle klara en återstart nu när Erlang såg ut att gå i mål. Erlang hade trots allt fungerat som fokalpunkt på ett eller annat sätt under nästan ett helt decennium.

Det visade sig dock inte vara något större problem. Årets arbetsprogram (för första gången på engelska) har följande innehåll

- Strategy
- Erlang
- Implementation Technology
- Embedded Systems / Open Systems
- Systems Design and Support Systems
- Databases
- Speech Technology
- Feature Interaction
- Multimedia and Communication
- Technology Transfer

Planerna är att Erlang Systems successivt skall ta över konstruktionsägarskapet och det fortsatta produktunderhållet för Erlang.

Bogdans arbete med Turbo Erlang (vi måste byta namn) pekar mot att vi kommer att kunna släppa ut det som kommersiellt system redan till sommaren. Den gamla JAM'en kommer dock att leva vidare. Planerna är att den blir basen för 'Academic Erlang', ett system som allt framgent distribueras gratis till forskningen.

Samtidigt färdigställer Robert VEE, en alternativ emulator till JAM. VEE bygger delvis på andra principer såsom trådad kod och en annan minneshantering och är omkr 3 ggr snabbare än JAM'en. I slutänden kommer vi troligen att kombinera Turbo Erlang med minneshanteringen från VEE.

Ett viktigt projektområde blir databaser där Hans, Tobbe och Klacke går samman med sin expertis kring bl a deduktiva databaser och distribution för att försöka åstadkomma ett genombrott. Databaser har blivit allt viktigare för telekom, t ex beror både mobilitet och driftstödsystem just på databaser. Ett knepigt problem är bl a att i samma databas både klara extremt snabb åtkomst till enkla data för trafikprocessen och komplexa frågor (queries) från operatören.

Betr implementationsteknik finns mycket kvar att göra inte minst betr 'real time garbage collection'. Erlang klarar nu 'soft real time' på millisekundnivån, ett mål måste vara att även klara 'hard real time' nere på mikrosekundnivån t ex i regionalprocessorer.

Ytterligare ett område som raskt blivit allt mer aktuellt är öppna system. Vi har nu till fullo förstått signifikansen av det arbete då EBC porterade Erlang till ett realtidsoperativsystem. Nya standards kring operativsystem, telephony API (application program interface) m m innebär att man kan börja strukturera system med stor valbarhet mellan olika processorer, operativsystem, språk, telekommaskinvara etc. Det är Joe som driver detta projekt med sedvanlig frenesi och det ser ut att finnas möjligheter till breda samarbeten över Ellemtel, Telia och Ericsson.

Arbetet med tekniköverföring fortsätter. Magnus arbetar med NetSim, ett delsystem i TMOS, och Ingemar med programsystemet för kubväljaren (en osannolik innovation på Ericsson). Samtidigt försöker vi etablera allt bättre kontakter med Telia Research. Med Telias förändrade inriktningar förefaller de bli allt mer intresserade av prototyping, nätakitekturer m m.

Ericssons monter på den stora CeBit-mässan ser ut att innehålla inte mindre än fyra olika system som bygger på Erlang.

Multimedia och kommunikation håller på att växa i signifikans så att de börjar motivera egna laboratorier. Detta innebär att Datalogilaboratoriet återigen kan koncentrera sig på den grundläggande datalogin för telekomtillämpningen.

Efterskrift



Mike's funderingar sedan 1985 har visat sig hålla

- "Find the right methods - design by prototyping.
- Make mistakes in a small scale not in a production project.
- It's not good enough to have ideas - you must also be able to implement them to know that they work."

Men ännu viktigare är att Datalogilaboratoriet har klarat målsättningen från 1984 "att bygga upp en grundteknik inom programvaruområdet inför framtida telekomsystem". Erlang är just detta. Betr strävan att "bidraga till introduktion av ny programvaruteknik i existerande system" så har resultatet varit mer blandat.

En viktig lärdom är att ett teknikutvecklingslaboratorium för att få verkligt genomslag är beroende av chefer som vågar satsa och "tror" på verksamheten som Carl-Göran Larson, Mats Persson och Torbjörn Johnson. Därtill behöver man hjälp av tekniker i omgivningen som vågar använda tekniken i sina projekt som Kerstin Ödling, Anders Danne och Jan van der Meer.

För att ett lab skall fungera krävs också en genuin respekt för medarbetare som människor inte bara som "resurser". Det krävs också en respekt för tekniken och en insikt i dess möjligheter och begränsningar.

Datalogilaboratoriet har fått flera efterföljare i andra laboratorier och andra projekt. Erlang kombinerat med demo-LIM'ar har triggat lyckade prototypprojekt på flera platser inte minst TAL och INLab.

Till sist så är Datalogilaboratoriet ett exempel på den öppna företagskulturen inom Ericsson. Det är faktiskt möjligt att presentera och driva idéer inom företaget och om man producerar system och nyttiga resultat så kan man få förtroende att driva verksamheten vidare.

Uppsalapojkarna


Marcus Arendt, Erlang Systems
Björn Axelsson, Ericsson Data Systems
Anders Dahlin, Erlang kompetensgrupp på Programatic
Henrik Forsgren, Erlang kompetensgrupp på Programatic
Patric Jansson, Ericsson Data Systems
Klas Mikaelsson, Erlang kompetensgrupp på Programatic
Lennart Öhman, Erlang kompetensgrupp på Programatic

Anm. Programatic har sedemera bytt namn till Ericsson Infocom.


Publikationer

(en uppdaterad lista av publikationer)

1983


Konferensbidrag

Using Lisp to Develop Programming Support Environments in an Industrial Environment.
Bjarne Däcker.
International Workshop on Software Development Tools for Telecommunication Systems.
April 6-8, 1983, Anaheim.

The Efficiency of Executive Systems used in Telephony.
Mike Williams.
Software Engineering for Telecommunication Switching Systems.
July 4-8, 1983, Lund.

1984


Konferensbidrag

Problem Areas in the Use of Modern Languages for the Programming of Telecommunication Switching Systems.
Mike Williams.
NT-P Symposium on Languages and Methods for Telecommunications Applications.
March 6-8, 1984, Åbo.

Comparison between Lisp and Pascal for Use in Developing Programming Support Environments.
Bjarne Däcker med Magnus Alburg (ETX).
NT-P Symposium on Languages and Methods for Telecommunications Applications.
March 6-8, 1984, Åbo.

1986


Konferensbidrag

Design of an Expert System and Man-Machine Interface for Operation and Maintenance of AXE Telephone Exchanges.
Roger Skagerwall och Carl Wilhelm Welin.
International Seminar on Digital Communications.
March 11-13, 1986, Zurich.

Experiments with Programming Languages and Techniques for Telecommunications Applications.
Bjarne Däcker, Nabiel Elshiewy, Per Hedeland, Carl Wilhelm Welin och Mike Williams.
Software Engineering for Telecommunication Switching Systems.
April 14-18, 1986, Eindhoven.

Extended Parlog: Logic Programming of Real Time Systems.
Nabiel Elshiewy.
Fourth Japanese-Swedish Workshop on Fifth Generation Computer Systems.
July 7-8, 1986, Skokloster.

The Phoning Philosphers' Problem or Logic Programmig for Telecommunications Applications.
Joe Armstrong, Nabiel Elshiewy och Robert Virding.
Third IEEE Symposium on Logic Programming.
September 23-26, 1986, Salt Lake City.

1988



Konferensbidrag

Committed Choice Functional Programming.
Göran Båge med Gary Lindstrom (Univ of Utah).
International Conference on Fifth Generation Computer Systems.
November 28-December 2, 1988, Tokyo.

Modular and Communicating Objects in SICStus Prolog.
Nabiel Elshiewy.
International Conference on Fifth Generation Computer Systems.
November 28-December 2, 1988, Tokyo.

1989



Tidskriftsartiklar

Logikprogrammering för utveckling av telekomsystem.
Nabiel Elshiewy.
Televerkets Tekniska Tidskrift TELE, nr 1, 1989.

Konferensbidrag

FINE - A Feature Design Environment.
Roger Skagerwall med Staffan Liljegren (EUA).
Software Engineering for Telecommunication Switching Systems.
July 3-6, 1989, Bournemouth.

Using Prolog for Rapid Prototyping of Telecommunication Systems.
Joe Armstrong och Mike Williams.
Software Engineering for Telecommunication Switching Systems.
July 3-6, 1989, Bournemouth.

1990



Böcker

Programming Telephony.
Joe Armstrong och Robert Virding.
Kapitel 13 ur Strand - New Concepts in Parallel Programming.
Ian Foster och Stephen Taylor.
Prentice Hall, 1990.

Tidskriftsartiklar

Combinator Evaluation of Functional Programs with Logical Variables.
Göran Båge med Gary Lindstrom (Univ of Utah).
Lisp and Symbolic Computation, nr 3, 1990.

Logic Programming for Real Time Control of Telecommunication Switching Systems.
Nabiel Elshiewy.
Journal of Logic Programming, nr 8, 1990.

Konferensbidrag

Erlang - An Experimental Telephony Programming Language.
Joe Armstrong och Robert Virding.
XIII International Switching Symposium.
May 27-June 1, 1990, Stockholm.

Doktorsavhandlingar

Robust Coordinated Reactive Computing in SANDRA.
Nabiel Elshiewy.
Ph D Thesis, TRITA-TCS-9005.
Kungliga Tekniska Högskolan, Stockholm, 1990.

1991



Konferensbidrag

Management of Technology with Regard to Software.
Bjarne Däcker.
Invited Paper.
First Australian Conference on Telecommunications Software (ACTS).
April 22-24, 1991, Melbourne.

Forskningsrapporter

The External Storage Facility in SICStus Prolog.
Hans Nilsson.
SICS Research Report R91:13 ISSN 0283-3638.

1992



Tidskriftsartiklar

Multi-Gigabit Networking based on PTM - A TDM Medium Access Technique with Dynamic Bandwidth Allocation.
Lars Gauffin med Lars Håkansson (KTH) och Björn Pehrson (SICS).
Computer and Networks and ISDN Systems, vol 24, no 2, April 1992.

Konferensbidrag

Swedish Optical Fiber Network.
Lars Gauffin med Björn Pehrson (SICS), Frank Reichert (Telia), Per Lindgren, Christer Bohm, Lars Håkansson, Lotten Elmstedt och Per von Knorring (KTH).
Optical Fiber Communication Conference.
February 2-7, 1992, San José.

Implementing a Functional Language for Highly Parallel Real Time Applications.
Joe Armstrong, Bjarne Däcker, Robert Virding och Mike Williams.
Software Engineering for Telecommunication Systems and Services.
March 30-April 1, 1992, Florence.

Processing ASN.1 Specifications in a Declarative Language.
Claes Wikström.
Software Engineering for Telecommunication Systems and Services.
March 30-April 1, 1992, Florence.

SCE - A Tool for Defining Routing Information for the Freephone Services in AXE.
Hans Nilsson.
The Practical Application of Prolog.
April 1-3, 1992, London.

Use of Prolog for Developing a New Programming Language.
Joe Armstrong, Robert Virding och Mike Williams.
The Practical Application of Prolog.
April 1-3, 1992, London.

Towards Using the Andorra Kernel Language for Industrial Real-Time Applications.
Bogumil Hausman.
Logic Programming and Automated Reasoning.
July 15-20, 1992, S:t Petersburg.

The External Database in SICStus Prolog.
Hans Nilsson.
Logic Programming and Automated Reasoning.
July 15-20, 1992, S:t Petersburg.

Prototyping Cordless Using Declarative Programming.
Ingemar Ahlberg med Anders Danne och John-Olof Bauner (ERA).
XIV International Switching Symposium.
October 25-30, 1992, Yokohama.

1993


Böcker

Concurrent Programming in Erlang.
Joe Armstrong, Mike Williams och Robert Virding.
Prentice Hall, 1993.

Tidskriftsartiklar

Erlang - A New Programming Language.
Bjarne Däcker.
Ericsson Review, nr 2, 1993.

Prototyping Cordless Using Declarative Programming.
Ingemar Ahlberg med Anders Danne och John-Olof Bauner (ERA).
Ericsson Review, nr 2, 1993.

Konferensbidrag

Communicative Computer Systems.
Lars Gauffin med Tomas Jonsson (KTH).
Third Nordic Transputer Conference.
May 14-15, 1993, Copenhagen.

Breakthrough in Software Design Productivity through the Use of Declarative Progamming.
Bjarne Däcker.
Eighth World Productivity Congress.
May 23-27, 1993, Stockholm.

Turbo Erlang: An Efficient Implementation of a Concurrent Programming Language. Bogumil Hausman.
Compulog-Net Area Meeting on Parallelism and Implementation Technology.
May 24-25, 1993, Madrid.

Carpe Diem - Some Implementation Aspects of Turbo Erlang.
Bogumil Hausman.
International Conference on Logic Programming. Post-conference Workshop on Practical Implementations and Systems Experience.
June 21-25, 1993, Budapest.

Turbo Erlang.
Bogumil Hausman.
International Logic Programming Symposium.
October 26-29, 1993, Vancouver.

Automatic Code Generation from SDL to a Declarative Programming Language.
Magnus Fröberg.
Sixth SDL Forum.
October 11-15, 1993, Darmstadt.

Inbjudna föreläsningar

Erlang.
Mike Williams.
Second Summer School on Telecommunications.
August 9-13, 1993, Lappeenranta.

Keynote address.
Joe Armstrong.
Open Declarative Systems Workshop.
September 21-22, 1993, Swindon.

Erlang.
Robert Virding.
FORTE - Sixth International Conference on Formal Description Techniques.
October 26-29, 1993, Boston.

Nya konsumenttjänster via telenätet.
Ola Carlvik.
Gränslös kommunikation.
November 23-26, 1993, Stockholm.

1994



Konferensbidrag

xgdmo - A Browser for GDMO Specifications Written in Prolog.
Hans Nilsson.
The Practical Application of Prolog
April 27-29, 1994, London.