1 / 48

CSLab and all that …

CSLab and all that …. Bjarne Däcker Tekn lic , Tekn dr h c Ericsson employee 1966 – 2002 Manager CSLab 1984 – 2002 Now retired. CSLab Computer Science Laboratory at Ericsson 1980 informally started 1984 formally established

zeroun
Download Presentation

CSLab and all that …

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CSLab and all that … • Bjarne Däcker Tekn lic, Tekn dr h c • Ericsson employee 1966 – 2002 • Manager CSLab 1984 – 2002 • Nowretired

  2. CSLab • Computer Science Laboratory at Ericsson • 1980 informallystarted • 1984 formallyestablished • 1997 – 2001 SARC (Software Architecture Research Centre) • spunoff from CSLab • 2002 closeddown • Thus 10 – 15 peopleduring 20 years → 200 – 300 manyears !!!

  3. Basic Research • Discover or create new knowledge for mankind • Applied Research • Apply new knowledge to problems or applications in the real world

  4. The Process of Applied Research Productification and exploitation New knowledge Experiment Evaluation Problem or opportunity Idea dropped Can be problem driven or technology driven Terrible lessonlearntonlytoo late: Marketing is all important. People might not believe (in) somethingtheyseeworkingbutmightwell be prepared to trust something that theyhaveonlyheard of. It works for othertechnologies, why not try doing this for software as well …

  5. CSLab charter • Develop software technology for futuretelecom • systems and support systems • In the near term contribute to the introduction • of new technology in existing systems • April 19, 1984

  6. Mike Williams’ credo • Find the right methods – design by prototyping • Make mistakes in a small scale – not in a productionproject • It is not goodenough to haveideas – you must also be able • to implementthemyourself to know that they work

  7. CSLab’slucky timing • The JapaneseFifth Generation project • The European Esprit project • The British Alveyproject

  8. Someotherprojects at CSLab • Unix • TCP/IP • Transputer • RISC Architectures • Super conductors (!) • Smalltalk computer • Prolog, Lisp • Work stations • Graphics user interface • Expert Systems • IP access over passive cablenetworks

  9. A typical Pascal program (?) Start Whatmore is requiredwhenused for designing largereal-time control systems ? Read input Perform computation Print output Stop

  10. A typical Pascal program (?) Start • A moduleconcept for structuring • a large program system being • designed by manypeople • A processconcept to describe • concurrentactivities • A process communicationconcept • Means to communicate with • hardware, externalclock etc. Read input Perform computation Print output Stop

  11. Some systems programming languages Pascal 1968 Modula 1976 Modula-2 1978 Chill Ada 1980 1980

  12. Modula and Modula-2 Designed by Nikolaus Wirth A moduleconceptmodule A process conceptprocess Process communication by usingshared variables in interface modules

  13. Ada Designed by a committee under Jean Ichbiah ordered by the US Dept of Defense A moduleconceptpackage A process concepttask Process communication by rendez-vous, i.e. one task calls a procedure in another task with synchronization

  14. Chill • Designed by a committeeworking under C.C.I.T.T. • A moduleconceptmodule • A process conceptprocess • Three methods for process communication • regions like Modula’s interface modules • buffers like mailboxeswhereprocessescandeposit and retreivemessages • signalswhich are messages sent directly from one process to another • Whenthere are severalmessageswaiting it is • undefinedwhichone that will be received

  15. EriPascal Designed at Ericsson intended to be equivalent to a subset of Chill A moduleconceptmodule A process conceptprocess corresponding to a normal Pascal program Process communication by signals and selective receive like in Erlang (except no patternmatching)

  16. Laboratoryenvironment for experiments with telecommsprogramming VAX VAX 11 running Unix Small private exchange Telephones

  17. Techniquestried • Imperative Programming Languages • ConcurrentEuclid • Ada • DeclarativeProgramming Languages • PFL (ParallelFunctional Language) • LPL (LogicProgramming Language) • RulesBased Systems • OPS4 • ObjectOriented Languages • Frames • CLU

  18. Conclusions 1 • Telecoms can apparently be programmed in any language • A small language like Concurrent Euclid managedverywell • The process concept is veryuseful • Concepts like buffers or rendez-vous are veryawkward • Functionallanguages are powerfulbutneedsomedatabase • Logiclanguages and rulebased systems give a nice • declarative approach butneedmodularisation • Objectorientedlanguageshandlemodularitybut • needconcurrency

  19. Conclusions 2 • Dealing with concurrency in imperative languages by means of • process abstraction and the methods for process interwork are • nowestablishedtechnologies • Addingconcurrency to CLU couldprobably be done in a • fairlyconventionalmanner… • Future systems willprobably be built up usingmany of the • techniquesused in these experiments, for example expert systems • for maintenancefunctions, logicprogramming for programming • signal system interfaces and the underlying OS might be • programmed in an advanced imperative language

  20. Signal-state or state-signal ? Cooperatingautomatons are popular in telecomms The figure shows the programming model of a PLEX program for AXE with entry points for different signals The programmer has to administer the program flow himself Signals (messages) arrivingwhen not expectedrequire special action

  21. Generalizingtelecomms • The holding wire becomes linked processes • Trafficcasesbecomeusecases (in OO) • Messagepassing • Requirements for 7-24 service • Update systems during operation • etc…

  22. The Obvious Conclusion • Combine the goodies, avoid the baddies and create a new language • Wewerehesitatingbecause of Ada and Chill. Perhaps this should be done at some international level? • This did not deter Joe Armstrong from start experimenting with Prolog, addingconcurrencyetc • Thusbegins the Erlang story…

  23. Erlang Design Team Joe Armstrong, Robert Virding and Mike Williams visitingBellcore in December 1989

  24. CSLab plus friends at an outing in June 1990

  25. EarlyErlanghistory

  26. Language manual • EriPascal – An internal Ericsson report 1984 • Erlang – A bookprinted by Prentice Hall 1993

  27. ? Applied Research Product Development and Maintenance

  28. ! Applied Research Product Development and Maintenance • Someproposedstrategies • Throw it over the wall and seewhathappens • Move the people

  29. Technology transfer Project management Product management Mnesia SASL Compiler Etc … Release management

  30. Technology transfer Phase 1 Project management Product management CSLab Mnesia SASL Compiler Etc … CSLab + OTP CSLab + OTP CSLab + OTP CSLab + OTP Release management OTP

  31. Technology transfer Phase 2 Project management Product management OTP Mnesia SASL Compiler Etc … CSLab + OTP CSLab + OTP CSLab + OTP CSLab + OTP Release management OTP

  32. Technology transfer Phase 3 … Project management Product management OTP Mnesia SASL Compiler Etc … OTP + CSLab OTP + CSLab OTP + CSLab OTP + CSLab CSLabsuccessivelyphasedout Release management OTP

  33. Academic research Ownapplied research Own technology development and maintenance Externalsuppliers Approvedbasic technology External users System platform Application Oriented research Application development Application development Application development

  34. HiPE CSLab and SARC Academic research Ownapplied research Own technology development and maintenance Externalsuppliers Erlang/OTP Team Approvedbasic technology External users System platform erlang.org AXD301, GPRS… Application development Application development Application development

  35. EarlyErlanghistory Management intervenes …

  36. Organizationalconcerns • Frequentreorganizationsbring in new managers • Different business areas have different policies • Internalcompetitionbetweenplatforms and technologies • Is software a core technology for telecomms? • ”I don’t trust them”, quote Joe Armstrong • etc…

  37. Late Erlanghistory …. is verymuch the history of www.erlang.org

  38. Requests per year to www.erlang.org Steadygrowthyear by year…

  39. Requests per year to www.erlang.org Take-off in 2009…

  40. Erlang/OTP International User Conferences are heldeveryyearin Stockholm The 11thEUC in 2005 with 130 participants

  41. Erlang/OTP International User Conferences are heldeveryyear in Stockholm The 15thEUC in 2009 with 240 participants

  42. EUC Participation

  43. ACM SIGPLAN Erlang Workshops have been held since 2002 in connection with ICFP International Conference on Functional Programming The ACM SIGPLAN workshops wereheld 2002 in Pittsburgh, 2003 in Uppsala, 2004 in Snowbird, Utah, 2005 in Tallinn, 2006 in Portland, 2007 in Freiburg , 2008 in Victoria, B.C. and 2009 in Edinburgh. The photographshows the audience of the workshop in Tallinn The next workshop will be on September 30, 2010, in Baltimore, MD

  44. The importance of chance and individuals • Mike Williams coming from within Ericsson • Joe Armstrong coming from outside Ericsson • BogdanHausman from SICS creates first BEAM • Claes Wikström creatingdistributedErlang and Mnesia • Thomas Lindgren initiatingHiPE • Kostis SagonasrunningHiPE • Jane Walerud getting approval for Open Source • Francesco Cesarini setting up ErlangTraining & Consulting • Kenneth Lundin ensuring a professionalqualityproduct • MickaëlRémondwriting a French book on Erlang • etc. etc. etc. etc.

  45. CSLab after Erlang • SIP, Megaco and otherprotocol stuff • Program verification • Speech technology • Collaboration with various Ericsson projects • like homecommunication …

  46. Whathappened to them all ? More info at the nostalgichomepagewww.cs-lab.org

  47. Conclusions Basic Research Applied Research Development and Maintenance Training and User Support • It’s a rôle game. All parts are required • Keepthem separate but in closecooperation • Mike Williams’ credo #2 – If you don’t experiment, • your projectwillbecome an experiment

More Related