keneequa brown chris duzan navaid khalfay
DESCRIPTION
Keneequa Brown Chris Duzan Navaid Khalfay. Originally developed in 1986 by Joe Armstrong as a proprietary language within Ericsson Released as open source in 1998 Currently on release R15B03 The origin of it's name is not confirmed An abbreviation of “Ericsson Language” - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/1.jpg)
Keneequa BrownChris DuzanNavaid Khalfay
![Page 2: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/2.jpg)
Originally developed in 1986 by Joe Armstrong as a proprietary language within Ericsson
Released as open source in 1998 Currently on release R15B03
The origin of it's name is not confirmed An abbreviation of “Ericsson Language” Named after Daish Mathematician Agner
Krarup Erlang
![Page 3: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/3.jpg)
Designed as a control program for a small telephone exchange
Designed to solve problems involving: Telecommunication systems/applications, Servers for internet applications, and Database applications that require soft real-
time behavior. Accidentally created in the process,
Ericsson didn't set out trying to make a new language
![Page 4: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/4.jpg)
1986
First developedInitial version was implemented in Prolog and influenced by the programming language PLEX.
1995
Erlang went from lab product to real application following the collapse of AXE-N.
![Page 5: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/5.jpg)
1998
Erlang was banned in new Ericsson products, causing Armstrong to leave and Erlang becoming open source by the end of the year.
2006
Native symmetric multiprocessing support added to the runtime system and virtual machine.
1995
![Page 6: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/6.jpg)
Eight primitive data types: Integers Atoms Floats References Binaries Pids Ports Funs
![Page 7: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/7.jpg)
Two compound data types Tuples Lists
Two forms of syntactic sugar Strings Records
![Page 8: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/8.jpg)
Integer arithmetic is exact Only limited by available memory
Floats have a range of +/- 10308
Support for concurrency Small but powerful set of primitives
to create processes and communicate among them Processes are the primary reason to
structure an Erlang project
![Page 9: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/9.jpg)
Else → semicolon ( ; ) End if or 'function end' → period ( . ) Comment → percent sign ( % )
![Page 10: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/10.jpg)
![Page 11: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/11.jpg)
Quicksort ExampleQuicksort Example
![Page 12: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/12.jpg)
Erlang JavaFunctional
vs. Imperative
Servers & embedded systems
Erlang uses pattern matching which allows for more compact code
Imperative
Web Apps
Use virtual machines
Support multi-threading
Provide “garbage collection”
Don't have to worry about returning allocated space
BOTH
![Page 13: Keneequa Brown Chris Duzan Navaid Khalfay](https://reader036.vdocuments.net/reader036/viewer/2022062304/56813d29550346895da6edb4/html5/thumbnails/13.jpg)
Facebook Chat service
Yahoo Social bookmarking service
T-Mobile SMS and authentication systems
Amazon Implement SimpleDB (database services)