1 / 21

Erlang – A survey of the language & applications

Erlang – A survey of the language & applications. Paper by: Joe Armstrong, Computer Science Laboratory, Ericsson Telecom Labs. PRESENTATION BY: Vishal Nehru. Contents of this Presentation:. Introduction to Erlang Understanding the essence of Erlang Industrial Uses of Erlang

Download Presentation

Erlang – A survey of the language & applications

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. Erlang – A survey of the language & applications Paper by: Joe Armstrong, Computer Science Laboratory, Ericsson Telecom Labs PRESENTATION BY: Vishal Nehru

  2. Contents of this Presentation: • Introduction to Erlang • Understanding the essence of Erlang • Industrial Uses of Erlang • Conclusion

  3. Introduction to Erlang

  4. What is Erlang? • A Functional Programming Language • Designed by Ericsson Computer Science Laboratory (ERicssonLANGuage) • First used in 1987, was too slow initially for large scale use. • 1994: First International Erlang Conference in Stockholm. Held annually since.

  5. Introduction to Erlang • Understanding the essence of Erlang • Industrial Uses of Erlang • Conclusion

  6. The Essence of Erlang

  7. Salient features of Erlang: • Control Systems Design - Designed for programming real- time control systems, such as telephone exchanges or ATM machines. • Real time - Faster response times for its applications. • Very Large Programs - Control systems may have millions of lines of code. • Non-stop Systems - Erlang abstract machine allows program code to be changed in a running system. - Debugging/upgrades occur without stopping the system.

  8. More features of Erlang: • Portability - Can be run on many different operating systems • Concurrency - Big strength, best applications use concurrency extensively. - Most processes are lightweight – hence millions of spawned processes are handled well. • Portability - Can be run on many different operating systems • Inter-Process Communication - The Erlang abstract machine supports communication between the lightweight processes.

  9. Even more features of Erlang: • Garbage Collection - As a real time system, bounded-time garbage techniques are critical. • Incremental Code Loading - Users can control how code is loaded (all at boot time, only as needed etc - lazy loading?) • Robustness - Fault tolerant systems can be structured through 3 independent error-detection mechanisms - Processes even on different processors can monitor each other to ensure greater robustness. • Timing - Erlang provides mechanisms for allowing processes to timeout while waiting for events. • External Interfaces - Supports a port mechanism, similar to networking layers - Processes can communicate with the ‘outside world’ – OS and other processes, even those written in other languages.

  10. Let us examine Erlang syntax and programming style

  11. Introduction to Erlang • Understanding the essence of Erlang • Industrial Uses of Erlang • Conclusion

  12. Industrial Uses of Erlang (1) • NetSim: - Network Simulator, simulates the maintenance and operations behavior of a telephone exchange. - In use currently in over 20 countries.

  13. Industrial Uses of Erlang (2) • Mobility Server: - Intelligent call control system, written almost entirely in Erlang. - Principal attraction: introduction of personal number services for all mobile users. - 486 Erlang Modules, 230000 lines of Erlang code. - Was written by 35 programmers, all of whom had NO previous experience with Erlang.

  14. Industrial Uses of Erlang (3) • Distributed Resource Controller: - Written in distributed Erlang - Runs on low cost hardware. - Uses dedicated scripting language - Able to control audio devices, human operators, database systems and other multimedia resources. - The whole project took only 11000 man hours and nine programmers.

  15. Introduction to Erlang • Understanding the essence of Erlang • Industrial Uses of Erlang • Conclusion

  16. Conclusion

  17. Conclusion: highlights of Erlang TIME TO MARKET: Use of Erlang instead of a comparable language, in an appropriate application, can greatly reduce the “time-to-market”. ERLANG’S FORTE REAL TIME GARBAGE COLLECTION: In built garbage collection system in Erlang reduces memory management headaches associated with seemingly faster languages that do not provide real-time garbage collection. PERFORMANCE: For larger programs, Erlang does much better than C, especially in telecommunications related applications.

  18. Introduction to Erlang • Understanding the essence of Erlang • Industrial Uses of Erlang • Conclusion END

  19. Credits and Acknowledgements: • Joe Armstrong, “Erlang – A survey of the language and its industrial applications”, Ericsson Labs 1996 • www.erlang.org , “Getting Started With Erlang” • www.erlanger.de • Picture credits: www.st.se/erlangquestionaire/erlang.htm

  20. Thank you for listening. Any questions?

More Related