AUTHORS

  Contributions - improvements, fixes, new features - from developers
  make the Erlang 'Open Source' project a success. To give credit
  where it's due, we've added a file called AUTHORS to each
  application sub-directory with a list of everyone who has contributed
  It might also contain the names of the original authors at Ericsson.

  Speaking of original authors, we don't want to forget all the people
  working full time with Erlang and OTP. So, thanks to everyone
  working with Erlang at the OTP group, the Computer Science
  Laboratory and the Software Architecture Laboratory.


------------------------------------------------------------------------
erts


 %CopyrightBegin%
 
 Copyright Ericsson AB 1999-2016. All Rights Reserved.
 
 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at
 
     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 
 %CopyrightEnd%

--------------------------------------------------------------------------------

The original JAM emulator was first implemented by Mike Williams (the
instruction set was argued out with Joe Armstrong).

The original BEAM emulator and loader were first implemented by Bogumil Hausman.
They were completely rewritten by Björn Gustavsson.

Over the years the emulator has been basically completely rewritten by
a large number of individuals. Most(?) notably Claes Wikström, Tony
Rogvall, Björn Gustavsson, Patrik Nyblom, Rickard Green, Raimo Niskanen
and Arndt Jonasson.

Marcus Arendt did the original port for Windows NT. Most of this code
was rewritten by Björn Gustavsson, Patrik Nyblom, Kenneth Lundin,
Fredrik Tillman and Mattias Nilsson.

Per Hedeland did the original port for VxWorks. This port was
improved by Peter Högfeldt, Patrik Nyblom and Patrik Winroth.

Mikael Pettersson, of the HiPE project, designed and implemented
the new 2-bit tag scheme.

The SMP support has mainly been designed and implemented by Rickard Green,
Tony Rogvall (mostly ets), Mikael Pettersson (mostly optimized synchronization
primitives, and timer thread), and Patrik Nyblom (mostly dynamic drivers, and
Windows port). Also Björn Gustavsson and Raimo Niskanen have contributed.

There are also a lot of people who have contributed smaller (and
bigger) things to the emulator and runtime system: Per Hedeland,
Peter Högfeldt, Kenneth Lundin, Fredrik Tillman, Mattias Nilsson,
Kent Boortz, Markus Torpvret, Jan-Erik Dahlin, Sebastian Strollo
and perhaps more...

Björn Gustavsson (mostly matching) and Arndt Jonasson (mostly construction)
implemented the bit syntax instructions, borrowing some code from
the original prototype implementation by Tony Rogvall and Claes Wikström.

The HiPE project (Kostis Sagonas, Mikael Petterson, Erik Johansson,
Richard Carlsson, Ulf Magnusson, Jesper Wilhelmsson) added the
hipe runtime to the Beam emulator. Björn Gustavsson helped to
integrate the hipe runtime.

Rickard Green has designed and implemented the erts_alloc framework and
memory allocators.

Per Gustafsson (and perhaps others in the HiPE group) come up with
idea for bit-level binaries and binary comprehensions. Per Gustafsson
and Björn Gustavsson implemented them in the BEAM compiler and run-time
system. Björn Gustavsson implemented the new optimizations for matching
and appending of binaries in BEAM compiler and run-time system, while
Per Gustafsson implemented the optimizations in the HiPE compiler and
HiPE run-time system.

The big heap-fragment-elimination project has been going on for many
years and several releases, and was finally finished in R12B. Suggested
by the HiPE group in order to support constant pools and possible
future GC improvements, most of the work was carried out by
Björn Gustavsson, with help from Mikael Pettersson and the HiPE group.


Original Authors and Contributors:

Mike Williams
Joe Armstrong
Bogumil Hausman
Björn Gustavsson
Claes Wikström
Tony Rogvall
Patrik Nyblom
Rickard Green
Raimo Niskanen
Arndt Jonasson
Marcus Arendt
Kenneth Lundin
Fredrik Tillman
Mattias Nilsson
Per Hedeland
Peter Högfeldt
Patrik Winroth
Mikael Pettersson
Kent Boortz
Markus Torpvret
Jan-Erik Dahlin
Sebastian Strollo
Kostis Sagonis
Erik Johansson
Richard Carlsson
Ulf Magnusson
Jesper Wilhelmsson
Jakob Cederlund
Magnus Fröberg
Per Gustafsson
Björn-Egil Dahlberg

Open Source Contributors:

Mick Dwyer
Geoff Wong
Maurice Castro
Luke Gorrie 
Shawn Pearce 
Ruslan Shevchenko <Ruslan@Shevchenko.Kiev.UA>
Tony Rogvall (at Bluetail): New faster inet_drv (R7)
			    HTTP packet mode (R8)
Sebastian Strollo (at Bluetail): poll() as alternative to select()
Mikael Pettersson (HiPE)

Leonid Timochouk <l (dot) timochouk (at) gmail (dot) com> and
Serge Aleynikov <saleyn (at) gmail (dot) com>
	then (2006) at IDT Corp.
	Wrote the original SCTP implementation, adapted by the OTP team;
	in inet_drv.c in the emulator, as well as the parts in the
	kernel application. They continue to provide patches.

Mat Hostetter at Tilera Corporation:
	Implemented ethr_atomic_cmpxchg() for all, at the time
	of writing, supported platforms and improved the process lock
	implementation by using ethr_atomic_cmpxchg() instead of
	ethr_atomic_or_old() and ethr_atomic_and_old().

------------------------------------------------------------------------
asn1


Original Authors:
This asn.1 application was created by
Kenneth Lundin (kenneth@erix.ericsson.se)
with help from Esko Vierumäki.
The work was initially inspired by a previous ASN.1 compiler for Erlang
written by Claes Wikström.
Version 1.1.1 - 1.2.6
additional functionality and bugfixes by:
Kenneth Lundin (kenneth@erix.ericsson.se)

Contributors:

------------------------------------------------------------------------
common_test

Original Authors and Contributors:

Peter Andersson
Siri Hansen
Kenneth Lundin
Ingela Anderton
Niclas Eklund
Andrey Pampukha

------------------------------------------------------------------------
compiler

The original JAM compiler was first implemented by Joe Armstrong.

The original BEAM compiler (v1) was first implemented by Bogumil Hausman.

The original v2 and v3 compilers were implemented by Robert Virding.
Björn Gustavsson adapted the code generation for the BEAM machine and
added the optimisation passes.

General improvements and corrections were made by Robert Virding,
Arndt Jonasson, Tony Rogvall, Björn Gustavsson and Jan-Erik Dahlin.

The bit syntax support was implemented by Björn Gustavsson, Arndt Jonasson
and Robert Virding.

The Core Erlang is used as an intermediate format in the v3 compiler (R7).
Core Erlang was suggested by Richard Carlsson (HiPE).

The new inliner in R8 is written by Richard Carlsson (HiPE).

Updates, extensions, and bugfixes in the R8 compiler were made by Robert Virding,
Richard Carlsson (HiPE), and Björn Gustavsson.

Bjorn Gustavsson and Raimo Niskanen implemented the beam_validator compiler
pass for R10B-2 (it makes that the compiler did not generate code that could
crash the run-time system).

The current maintainer of the compiler is Bjorn Gustavsson. To the R12B he
added a simple form of stack trimming, as well as other optimizations.

Original Authors and Contributors:

Joe Armstrong
Bogumil Hausman
Robert Virding
Björn Gustavsson
Arndt Jonasson
Tony Rogvall
Jan-Erik Dahlin
Richard Carlsson
Raimo Niskanen

Open Source Contributors:

Robert Virding

------------------------------------------------------------------------
crypto

Original Authors and Contributors:

Peter Högfeldt
Jakob Cederlund

------------------------------------------------------------------------
debugger

Original Authors and Contributors:

Magnus Fröberg
Francesco Cesarini
Peter Olin
Stefan Anbratt
Fredrik Gustafson
Kent Boortz
Björn Gustavsson
Raimo Niskanen
Dan Gudmundsson
Gunilla Arendt

------------------------------------------------------------------------
dialyzer

Original Authors and Contributors:

Tobias Lindahl
Kostis Sagonas

------------------------------------------------------------------------
diameter

Original Authors:	

	Anders Svensson
	Ulf Wiger

Contributors:





------------------------------------------------------------------------
eldap

Original author:
     Torbjorn Tornkvist

With patches from:
     Simon MacMullen
     Manuel DurÃ¡n Aguete
     voluntas
------------------------------------------------------------------------
erl_interface

Original Authors and Contributors:

Torbjörn Törnqvist
Claes Wikström
Tony Rogval
Björn Gustavsson
Kenneth Lundin
Jakob Cederlund
Gordon Beaton

------------------------------------------------------------------------
et

Original Authors:

    Håkan Mattsson

Contributors:

------------------------------------------------------------------------
ftp

Original Authors:

Peter HÃ¶gfeldt - first version of ftp

Contributors:

Ingela Anderton Andin
Martin Gustafsson
Johan Blom
TorbjÃ¶rn TÃ¶rnkvist
Joe Armstrong
------------------------------------------------------------------------
inets

Original Authors:	

Ingela Anderton Andin - supported http client
Johan Blom - unsupported http client
Håkan Mattsson - tftp
Peter Högfeldt - first version of ftp
Joakim Grebenö - first version of httpd
Mattias Nilsson - first version of httpd

Contributors:

Ingela Anderton Andin 
Martin Gustafsson
Johan Blom
Torbjörn Törnkvist 
Joe Armstrong
Tyler Hughes



------------------------------------------------------------------------
jinterface

Original Authors and Contributors:

Gordon Beaton
Babbis Xagorarakis
Patrik Nyblom

------------------------------------------------------------------------
kernel

Original Authors and Contributors:

Joe Armstrong
Robert Virding
Claes Wikström
Mike Williams
Tony Rogvall
Magnus Fröberg
Martin Björklund
Björn Gustavsson
Patrik Nyblom
Arndt Jonasson
Kenneth Lundin
Esko Vierumäki
Peter Olin
Micael Karlberg
Raimo Niskanen
Rickard Green
Gunilla Arendt
Hans Bolinder
Dan Gudmundsson
Jan-Erik Dahlin
Jakob Cederlund
The HiPE project (mainly loading of native code)
Rickard Carlsson

and probably others...

Open source contributors:

Tony Rogvall (now at Bluetail)
	Rewrote inet_{tcp,udp}.erl and gen_{tcp,udp}.erl among others, 
	added prim_{file,inet}.erl. When adding a new and faster
	inet_drv.
Leonid Timochouk <l (dot) timochouk (at) gmail (dot) com> and
Serge Aleynikov <saleyn (at) gmail (dot) com>
	then (2006) at IDT Corp.
	Wrote the original SCTP implementation, adapted by the OTP team;
	in {gen,inet,inet6}_sctp.erl, inet_sctp.hrl, as well as the parts
	in e.g prim_inet.erl and also inet_drv.c in the emulator. Their
	included edoc documentation was manually extracted and reworked
	into gen_sctp.xml. They continue to provide patches.

------------------------------------------------------------------------
megaco

Original Authors:	

	Håkan Mattsson
	Lars Thorsen

Contributors:

------------------------------------------------------------------------
mnesia

Original Authors:
  Claes Wikström   Wrote the initial release.
  Håkan Mattsson   Rewrote alot of it.
  Dan Gudmundsson  Current maintainer.
Contributors:

------------------------------------------------------------------------
observer

Original Authors and Contributors:

Siri Hansen

------------------------------------------------------------------------
odbc

Original Authors:
 Ingela Anderton - version 1.0
 Ingvar Meyer - version 0.9.1
 Joakim Hirsch  - first version	 

Contributors:
Scott Lystig Fritchie - input/output variables for stored procedures
willi@talk24.com - Some 64 bits adjustments
Juhani Ränkimies -  SQL_WCHAR and SQL_WVARCHAR support
Juhani Ränkimies -  TIMESTAMP support
------------------------------------------------------------------------
os_mon

Original Authors and Contributors:

Martin Björklund 
Mats Nilsson 
Magnus Fröberg 
Janne Lindblad
Kenneth Lundin 
Patrik Nyblom 
Peter Högfeldt
Rickard Green
Ingela Anderton
Björn-Egil Dahlberg

------------------------------------------------------------------------
parsetools

Yecc was written by Carl Wilhelm Welin
Håkan Mattsson made it faster by using ets tables.

Leex was written by Robert Virding.

Original Authors and Contributors:

Carl Wilhelm Welin
Håkan Mattsson
Hans Bolinder

------------------------------------------------------------------------
public_key

Original author:
Ingela Anderton Andin

Contributors:
Dan Gudmundsson
------------------------------------------------------------------------
reltool

Original author:
Hakan Mattsson

Contributors:

------------------------------------------------------------------------
runtime_tools

Original Authors and Contributors:

Patrik Nyblom
Björn Gustavsson
Claes Wikström
Rickard Green

------------------------------------------------------------------------
sasl

Original Authors and Contributors:

Martin Björklund
Magnus Fröberg
Joe Armstrong
Peter Lundell
Esko Vierumäki
Patrik Nyblom
Peter Högfeldt
Hans Bolinder
Gunilla Arendt

------------------------------------------------------------------------
snmp

Original Authors:

Martin Björklund, Klas Eriksson, Peter Högfeldt

Contributors:

------------------------------------------------------------------------
ssh

Original Authors:

Tony Rogvall  - first version
Ingela Anderton Andin - ssh-1.0
        
Contributors:

Magnus Thoäng		
Håkan Mattsson
Jakob Cederlund
Ingela Anderton Andin

------------------------------------------------------------------------
ssl

Original authors

Ingela Anderton Andin - ssl-4.0 (alfa in ssl-3.10) 
Dan Gudmundsson  - ssl-4.0 (alfa in ssl-3.10) 
Ingela Anderton Andin - ssl-4.0 (alfa in ssl-3.9) 
Jakob Cederlund  - ssl-4.0 (alfa in ssl-3.9) 
Peter Högfeldt - first version

------------------------------------------------------------------------
stdlib

Original Authors and Contributors:

Joe Armstrong
Robert Virding
Mike Williams
Claes Wikström
Tony Rogvall
Magnus Fröberg
Martin Björklund
Björn Gustavsson
Patrik Nyblom
Arndt Jonasson
Kenneth Lundin
Peter Högfeldt
Torbjörn Törnkvist
Sebastian Strollo
Carl Wilhelm Welin
Lennart Öhman
Hans Bolinder
Raimo Niskanen
Rickard Green
Gunilla Arendt
Dan Gudmundsson
Peter Andersson
Ingela Anderton
Jakob Cederlund

and probably others...

Open source contributors:
Richard Carlsson and Sven-Olof Nyström: gb_trees and gb_sets
Richard Carlsson (several modules)

------------------------------------------------------------------------
tftp

Original Authors:

HÃ¥kan Mattsson - tftp

Contributors:

Ingela Anderton Andin
Martin Gustafsson
Johan Blom
TorbjÃ¶rn TÃ¶rnkvist
Joe Armstrong
------------------------------------------------------------------------
tools

Original Authors and Contributors:

The modules in "tools" were written by a number of people including:

Joe Armstrong
Claes Wikström
Joakim Hirsch 
Robert Virding
Fredrik Gustafson
Gunilla Arendt
Raimo Niskanen
Ingela Anderton
Anders Lindgren
Arndt Jonasson
Rickard Green
Hans Bolinder
------------------------------------------------------------------------
emacs

Original Authors:
The Erlang emacs mode was written by Anders Lindgren.

Contributors:
Luke Gorrie 
Dave Love

Maintainers:
Sverker Wiberg
Kent Boortz
Björn Gustavsson

Currently maintained by:
Ingela Anderton Andin
Dan Gudmundsson
------------------------------------------------------------------------
wx

Dan Gudmundsson main work.

Matthew Harrison wrote examples, code and helped debugging.

Mats-Ola Persson wrote the the initial wxWidgets binding as
part of his master thesis.

Olle Mattsson wrote most of the demo in examples.

------------------------------------------------------------------------
xmerl

Ulf Wiger
Johan Blom
Richard Carlsson
Mickael Remond
Fredrik Linder
Lon Willett
Sebastien Becuwe
Mikael Karlsson
Vlad Dumitrescu
Bertil Karlsson