# Symbolics

Symbolics, Inc. was een Amerikaans bedrijf dat in 1980 opgericht werd door Russell Noftsker als spin-off van het MIT Artificial Intelligence Laboratory om Lisp-machines te bouwen. Het bedrijf was gevestigd in Concord (Massachusetts). Na het faillissement in 1996 werden de activa van het bedrijf overgenomen door het niet-beursgenoteerde bedrijf Symbolics dat het Open Genera Lisp-systeem en het Macsyma-computeralgebrasysteem blijft verkopen en onderhouden.

## Historiek
### Oprichting

In 1979 had het Lisp-machineproject, dat in 1973 ontstaan was aan het MIT en geleid werd door Richard Greenblatt, meer dan 30 CADR-machines gebouwd waarvan merendeel gebruikt werden door verschillende andere projecten aan het MIT. Russell Noftsker, die enkele jaren het Artificial Intelligence Lab van het MIT geleid had, was ervan overtuigd dat computers op basis van de Lisp-programmeertaal een grote commerciële toekomst hadden voor AI-toepassingen. De CADR-machines van het MIT hadden immers de interesse gewekt van diverse bedrijven die het MIT bezocht hadden.
Greenblatt en Noftsker verschilden echter grondig van mening over de structuur en de financiering van het voorgestelde bedrijf. Noftsker wou durfkapitaal aantrekken om het bedrijf een solide startbasis te geven. Dat zou wel betekenen dat de investeerders de zeggenschap over het bedrijf zouden krijgen. Greenblatt was van mening dat het beter was om het bedrijf te financieren op basis van de bestellingen van klanten, van wie sommigen bereid waren om vooruit te betalen. Op die manier konden de oprichters de volledige zeggenschap over het bedrijf behouden en zich uitsluitend bezig houden met de best mogelijke Lisp-machines te ontwerpen. De twee kwamen niet tot een akkoord en de discussies over de keuze verdeelden het AI lab in twee kampen, waarbij de meerderheid uiteindelijk de kant van Noftsker koos in de overtuiging dat een bedrijf dat door durfkapitaal gesteund werd een betere kans had om te overleven. Noftsker richtte daarop Symbolics, Inc. op en nam 14 medewerkers van het AI lab in dienst. Enkele maanden later zou Greenblatt Lisp Machines, Inc. (LMI) oprichten.
De systeemsoftware van de Lisp-machine was in die tijd auteursrechtelijk beschermd door het MIT en werd in licentie gegeven aan zowel Symbolics als LMI. Aanvankelijk had Symbolics geen gebouwen of apparatuur, maar Noftsker sloot een akkoord met het MIT waardoor Symbolics de infrastructuur van het MIT mocht gebruiken. In ruil daarvoor deelde Symbolics al zijn auteursrechtelijk beschermde verbeteringen aan de broncode met het MIT. Dat akkoord was echter niet naar de zin van een andere MIT-medewerker, Richard Stallman, die Symbolics ervan beschuldigde een tactiek te hanteren waarbij het MIT gedwongen werd om alle door Symbolics auteursrechtelijk beschermde verbeteringen aan het besturingssysteem van de Lisp-machines alleen beschikbaar te maken voor Symbolics en voor het MIT zelf, maar niet voor Symbolics-concurrenten. Symbolics zou op die manier geprobeerd hebben om LMI, dat op dat moment onvoldoende middelen had om het besturingssysteem en de omgeving onafhankelijk te onderhouden of te ontwikkelen, uit de markt te drukken. Volgens andere bronnen was dit geen bewuste strategie maar gewoon een gevolg van de overeenkomst die zowel Symbolics als LMI met het MIT gesloten hadden: verbeteringen aan het besturingssysteem bleven eigendom van het bedrijf dat de verbeteringen aangebracht had, dat was zowel het geval voor verbeteringen van Symbolics als voor verbeteringen van LMI.

### Eerste commerciële werkstations

De eerste Lisp-machine die door Symbolics in 1981 op de markt gebracht werd, was de LM-2. Dit was in feite het eerste commercieel verkrijgbare werkstation, hoewel die term toen nog niet bedacht was. De LM-2 was grotendeels identiek aan de CADR Lisp-machine die aan het MIT AI-lab ontwikkeld was. Het besturingssysteem en de Lisp-ontwikkelomgeving, meer dan 500.000 regels, was bovenop de microcode in Lisp geschreven en gebaseerd op Lisp Machine Lisp van het MIT. De softwarebundel werd later omgedoopt tot ZetaLisp, om het product van Symbolics te onderscheiden van andere leveranciers die ook een licentie hadden voor de MIT-software. De Zmacs-teksteditor van Symbolics, een variant van Emacs, werd geïmplementeerd in een tekstverwerkingspakket met de naam ZWEI, een acroniem voor "Zwei Was Eine Initially", waarbij Eine een acroniem was voor "Eine Is Not Emacs". Beide zijn recursieve acroniemen en woordspelingen op de Duitse woorden voor één (eins, eine) en twee (zwei).
Vanaf 1981 begon Symbolics een eigen kopie van de software te gebruiken, die niet langer bewaard werd op servers van het MIT. Symbolics vond immers dat ze niet langer voldoende controle hadden over hun product, terwijl Stallman beweerde dat Symbolics dat deed om te voorkomen dat de Lisp-verbeteringen bij LMI zouden terechtkomen. Op basis van die kopie heeft Symbolics uitgebreide verbeteringen aangebracht aan zowat elk onderdeel van de software en bijna alle broncode aan hun klanten geleverd, inclusief het MIT. Het beleid verbood het MIT-personeel echter om de Symbolics-versie van de software aan anderen te verspreiden, waarmee een einde kwam aan de MIT-hackergemeenschap. Als reactie hierop startte Stallman het GNU-project om een nieuwe gemeenschap op te richten. Uiteindelijk zouden Copyleft en de GNU General Public License ervoor zorgen dat vrije software zou kunnen blijven bestaan. Op deze manier speelde Symbolics een belangrijke, zij het dubieuze rol bij het ontstaan van de vrije softwarebeweging.

### De 3600-serie

Met ruim een jaar vertraging bracht Symbolics in 1983 zijn tweede generatie Lisp-machines op de markt: de Symbolics 3600-familie, die intern de codenaam "L-machine" kreeg. Dit was een nieuw ontwerp dat geïnspireerd was door de CADR-architectuur maar er weinig implementatiedetails mee gemeen had. De Lisp-processor hanteerde een 36 bits woordlengte en de machines hadden hardware-ondersteuning voor virtueel geheugen en voor garbage collection. Het eerste model, de 3600, had de afmetingen van een stevige koelkast. Dit was deels te wijten aan de omvang van de Lisp-processor die uit vijf printplaten bestond en deels aan de grootte van de harde schijf-technologie in het begin van de jaren tachtig. Latere modellen in de 3600-familie waren veel compacter. Door het gebruik van geïntegreerde schakelingen kon het processorontwerp gereduceerd worden tot twee printplaten. Dit zorgde niet alleen voor betere prestaties, het betekende ook een grote besparing op de fabricagekosten. Met de komst van geheugenchips met een hogere capaciteit en kleinere harde schijven hadden de laatste modellen van de 3600-familie, de zogenaamde "G-machines" zoals de 3620, ongeveer de afmetingen van een moderne grote tower-behuizing voor pc's.
Het besturingssysteem had lange tijd geen naam, maar werd uiteindelijk rond 1984 Genera gedoopt. Het systeem omvatte verschillende geavanceerde Lisp-dialecten. Het besturingssysteem was aanvankelijk geschreven in Lisp Machine Lisp, een Lisp-dialect dat aan het MIT ontwikkeld was. Symbolics gebruikte de naam ZetaLisp. Later werd nieuwe software geschreven in Symbolics Common Lisp, de Symbolics-versie van de Common Lisp-standaard.

### Ivory en Open Genera

In de tweede helft van de jaren tachtig was Symbolics erin geslaagd om de Symbolics-architectuur te reduceren tot één chip: de Ivory-processor. Vanaf 1987 werd op basis van deze processor de Ivory-familie ontwikkeld, bestaande uit werkstations (de XL-modellen) en embedded systemen (de NXP1000), maar ook coprocessorkaarten voor Sun- en Macintosh-computers (respectievelijk de UX-kaarten en de MacIvory-kaarten).
Lisp-machines met een Ivory-processor waren twee tot zes keer sneller dan Lisp-machines uit de 3600-serie, afhankelijk van het model en de revisie van de Ivory-chip.
De Ivory-instructieset werd later geëmuleerd in software voor de DEC Alpha, een 64-bits RISC-microprocessor die oorspronkelijk ontwikkeld en gefabriceerd werd door Digital Equipment Corporation (DEC). Deze "Virtual Lisp Machine"-emulator, gecombineerd met het besturingssysteem en de softwareontwikkelingsomgeving van de Ivory-machines, wordt verkocht als Open Genera.

### Sunstone

Sunstone was een Lisp-processor op basis van een RISC-architectuur, die kort na de Ivory zou uitgebracht worden. Het project werd echter geannuleerd nog voor het definitieve ontwerp klaar was.

### Teloorgang en faillissement

De commerciële AI-interesse in het midden van de jaren tachtig had van Symbolics op korte tijd een gevestigde waarde gemaakt. Eind jaren tachtig en begin jaren negentig nam die interesse echter sterk af toen bleek dat AI-toepassingen heel duur waren om te onderhouden en alleen nuttig waren in heel specifieke contexten. Daarnaast had Symbolics sterk te lijden onder de vertraging van het Strategic Defense Initiative van de toenmalige president van de Verenigde Staten Ronald Reagan, waarvoor het Defense Advanced Research Projects Agency (DARPA) zwaar had geïnvesteerd in AI-oplossingen.
Ook de snelle evolutie in microprocessortechnologie, de nieuwe werkstations van bedrijven als Sun en Apollo, de vooruitgang in Lisp-compilertechnologie en de economische aspecten van het vervaardigen van op maat gemaakte microprocessors deden de commerciële voordelen van speciaal gebouwde Lisp-machines teniet. In 1995 was het tijdperk van de Lisp-machine voorbij.
Bovendien kreunde Symbolics onder een interne oorlog tussen Noftsker en CEO Brian Sear over de vraag of het bedrijf zich moest concentreren op de verkoop van zijn software, dan wel of het opnieuw de kaart moesten trekken van zijn superieure hardware. Door het gebrek aan focus nadat beiden ontslagen werden kelderde de verkoop. Dit, in combinatie met enkele onverstandige vastgoeddeals door het management van het bedrijf tijdens de hoogconjunctuur, resulteerde in 1996 in een faillissement.
Symbolics ging daarna verder als een onderneming met zeer beperkte inkomsten, voornamelijk afkomstig uit onderhoudscontracten voor de resterende MacIvory, UX-1200, UX-1201 en andere machines die nog steeds door commerciële klanten werden gebruikt. Symbolics verkocht ook tweedehands MacIvory II-kaarten, Symbolics-toetsenborden en "Virtual Lisp Machine"-software voor werkstations van DEC, Compaq en Hewlett-Packard.
In juli 2005 sloot Symbolics zijn onderhoudsfaciliteit in Chatsworth (Californië). De teruggetrokken eigenaar van het bedrijf, Andrew Topping, overleed datzelfde jaar. In 2011 kende het Amerikaanse ministerie van Defensie (US DoD) Symbolics een 5-jarig onderhoudscontract toe.

## Symbolics Graphics Division

De Symbolics Graphics Division (SGD), opgericht in 1981 en verkocht aan Nichimen Graphics in 1992, ontwikkelde het S-Graphics softwarepakket (S-Paint, S-Geometry, S-Dynamics, S-Render) voor Symbolics Genera.
Craig Reynolds ontwikkelde als werknemer van SGD in 1986 Boids, een simulatieprogramma voor het zwermgedrag van vogels. Boids kende zijn debuut in 1987 op de jaarlijkse computergraphics-conferentie SIGGRAPH met de animatiefilm Stanley and Stella in: Breaking the Ice, een kortfilm die door de Graphics Division gemaakt werd.

## Netwerkmogelijkheden

Genera beschikte over de tot dan toe meest uitgebreide softwareondersteuning voor netwerkinteroperabiliteit. Chaosnet was een lokaal netwerksysteem dat speciaal voor de Lisp-machine ontwikkeld was, nog vóór de commerciële beschikbaarheid van Ethernet. Het Symbolics-besturingssysteem ondersteunde Chaosnet, maar had ook een van de eerste TCP/IP-implementaties. Er was ook ondersteuning voor DECnet en de SNA-netwerkprotocollen van IBM. Via een Dialnet-protocol konden telefoonlijnen en modems gebruikt worden.
Genera kon, met behulp van hints uit zijn "distributed namespace database" (enigszins vergelijkbaar met DNS maar dan uitgebreider), automatisch de beste protocolcombinatie selecteren om te gebruiken bij het verbinden met een netwerkservice. Een toepassingsprogramma of een gebruikerscommando specificeerde alleen de naam van de computer en de gewenste service. Een computernaam en een "Terminal Connection"-verzoek konden bijvoorbeeld een verbinding opleveren via TCP/IP met behulp van het telnet-protocol. Evenzo kon bij het aanvragen van een bestandsbewerking, zoals een opdracht "bestand kopiëren", gekozen worden uit NFS, FTP, NFILE (het Symbolics-protocol voor toegang tot bestanden op het netwerk) of een van de vele andere mogelijkheden, en het verzoek kon uitgevoerd worden via TCP/IP, Chaosnet of welk ander netwerk dan ook dat het meest geschikt was.

## Bijdragen aan de informatica

De R&D-medewerkers van Symbolics, aanvankelijk bij het MIT en later bij het bedrijf zelf, brachten verschillende belangrijke innovaties op het gebied van softwaretechnologie voort:
* MIT Flavors, een van de eerste objectgeoriënteerde programmeeruitbreidingen van Lisp, was een objectsysteem voor het doorgeven van berichten in de stijl van Smalltalk, maar met diverse verbeteringen. Het Symbolics-besturingssysteem maakte intensief gebruik van Flavors-objecten. De opgedane ervaring met Flavors leidde tot het ontwerp van New Flavors, een kortstondige opvolger gebaseerd op generieke functies in plaats van het doorgeven van berichten. Veel van de concepten in New Flavors vormden de basis van de latere CLOS-standaard.
* Door verbeterde garbage collection-technieken, met name "generational scavenging" waarbij van de veronderstelling wordt uitgegaan dat in veel programma's de meest recent gecreëerde objecten ook de objecten zullen zijn die het snelst onbereikbaar worden, konden Symbolics-computers maandenlang grote Lisp-programma's uitvoeren.
* Symbolics heeft belangrijke bijdragen geleverd aan de opkomende Common Lisp-taalstandaard vanaf het midden van de jaren tachtig tot de publicatie ervan in 1994 door het American National Standards Institute (ANSI).
* Symbolics introduceerde in 1989 Statice, een van de eerste commerciële objectgeoriënteerde databases. De ontwikkelaars richtten later het bedrijf Object Design, Inc. op en creëerden ObjectStore.
* Symbolics introduceerde in 1987 een van de eerste commerciële microprocessors die specifiek ontworpen was om de uitvoering van Lisp-programma's te ondersteunen: de Symbolics Ivory. Symbolics gebruikte zijn eigen CAD-systeem (NS, New Schematic) bij het ontwerp van deze Ivory-chip.
* In opdracht van AT&T ontwikkelde Symbolics Minima, een realtime Lisp runtime-omgeving en besturingssysteem voor de Ivory-processor. Dit werd geleverd in een kleine hardwareconfiguratie met veel RAM, geen schijf en dubbele netwerkpoorten. Het werd gebruikt als basis voor een nieuwe telefooncentrale.
* Het Symbolics Document Examiner hypertext-systeem dat gebaseerd was op Zmacs en oorspronkelijk gebruikt werd voor de Symbolics-handleidingen bleek van groot belang in de verdere evolutie van hypertext.
* Symbolics was zeer actief bij het ontwerp en de ontwikkeling van de Common Lisp Interface Manager (CLIM), een grafische gebruikersomgeving. CLIM is een afstammeling van Dynamic Windows, het eigen venstersysteem van Symbolics. CLIM was het resultaat van de samenwerking van verschillende Lisp-bedrijven.
* Symbolics produceerde het eerste werkstation dat kon genlocken, het eerste werkstation met realtime video-I/O, het eerste werkstation dat digitale video-I/O ondersteunde en het eerste werkstation met HDTV.

## Het eerste .com-domein

Op 15 maart 1985 werd symbolics.com het eerste geregistreerde ".com"-domein van internet. Aangezien het nog steeds geregistreerd is, is het ook de oudste domeinnaam. In 2009 werd de domeinnaam gekocht door XF.com Investments.
Dit artikel of een eerdere versie ervan is een (gedeeltelijke) vertaling van het artikel Symbolics op de Engelstalige Wikipedia, dat onder de licentie Creative Commons Naamsvermelding/Gelijk delen valt. Zie de bewerkingsgeschiedenis aldaar.
* 1 2 (en) Graylin, Alvin; Kjølaas, Kari Anne Høier; Loflin, Jonathan; Walker III, Jimmie D., Symbolics, Inc.: A failure of heterogeneous engineering. Gearchiveerd op 13 januari 2023. Geraadpleegd op 13 januari 2023.
* ↑ (en) Stallman, Richard, My Lisp Experiences and the Development of GNU Emacs (toespraak). gnu.org (28 oktober 2002).
* ↑ (en) Weinreb, Dan, Rebuttal to Stallman’s Story About The Formation of Symbolics and LMI. Dan Weinreb's blog (11 november 2007). Gearchiveerd op 7 november 2012.
* ↑ Hacker in de betekenis van "iemand die een programmeertaal of -omgeving zo goed kent dat hij/zij zonder zichtbare moeite een programma kan schrijven"
* ↑ (en) Sunstone Architecture. www.bitsavers.org. Symbolics, Inc. (11 maart 1987).
* ↑ (en) Weinreb, Dan, Why Did Symbolics Fail?. Dan Weinreb's blog (16 november 2007). Gearchiveerd op 9 december 2009.
* ↑ (en) Symbolics Bancruptcy Filed. Symbolics Lisp Machine Museum. Gearchiveerd op 14 augustus 2022. Geraadpleegd op 13 januari 2023.
* ↑ MIT CADR Lisp Machine FAQ. Unlambda.com.
* ↑ (en) Definitive Contract PIID W91WAW11C0055. www.usaspending.gov.
* 1 2 (en) Symbolics Graphics Division. historyofcg.com.
* ↑ (en) Reynolds, Craig (4 juli 1987). Flocks, herds and schools. A distributed behavioral model. ACM SIGGRAPH Computer Graphics 21 (4): 25-34. DOI:10.1145/37402.37406.
* ↑ Stanley & Stella in Breaking the Ice (1987). youtube.com.
* ↑ (en) Wauters, Robin, 25 Years Later, First Registered Domain Name Changes Hands. techcrunch.com (27 augustus 2009).