<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otp.git/lib/stdlib/doc/src, branch R16B02_yielding_binary_to_term</title>
<subtitle>Mirror of Erlang/OTP repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/'/>
<entry>
<title>Prepare release</title>
<updated>2013-09-16T18:11:53+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2013-09-16T18:11:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=20641fe0f2ea745873fc7557448d3a7deb1bd639'/>
<id>20641fe0f2ea745873fc7557448d3a7deb1bd639</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Change encoding of troublesome notes.xml files to utf-8</title>
<updated>2013-09-06T12:01:49+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2013-09-06T11:40:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=c011973178d860f280c6ce18b07ce4176aec5b35'/>
<id>c011973178d860f280c6ce18b07ce4176aec5b35</id>
<content type='text'>
Most notes.xml files will be updated in every release and cause
the kind of the problems described in the previous commit.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most notes.xml files will be updated in every release and cause
the kind of the problems described in the previous commit.
</pre>
</div>
</content>
</entry>
<entry>
<title>Correct the specifications of io_lib:fread/2,3</title>
<updated>2013-08-21T13:53:37+00:00</updated>
<author>
<name>Hans Bolinder</name>
<email>hasse@erlang.org</email>
</author>
<published>2013-08-21T11:50:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=a474bdfda30a3b6a520bf2be4b4550b251095703'/>
<id>a474bdfda30a3b6a520bf2be4b4550b251095703</id>
<content type='text'>
Thanks to Chris King and Kostis Sagonas for pinpointing the bug.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Thanks to Chris King and Kostis Sagonas for pinpointing the bug.
</pre>
</div>
</content>
</entry>
<entry>
<title>stdlib: Include file:all datatypes in filelib</title>
<updated>2013-08-08T09:39:15+00:00</updated>
<author>
<name>Lukas Larsson</name>
<email>lukas@erlang-solutions.com</email>
</author>
<published>2013-08-08T09:39:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=7e8e435fc04623caefbd1a9e7ce3ce57690753ea'/>
<id>7e8e435fc04623caefbd1a9e7ce3ce57690753ea</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix supervisor typo</title>
<updated>2013-07-11T08:33:27+00:00</updated>
<author>
<name>goofansu</name>
<email>goofan.su@gmail.com</email>
</author>
<published>2013-07-11T08:33:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=0fdb5a9cc8ed44aed9851627bbe3faff1b199570'/>
<id>0fdb5a9cc8ed44aed9851627bbe3faff1b199570</id>
<content type='text'>
`I` should be `If`
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`I` should be `If`
</pre>
</div>
</content>
</entry>
<entry>
<title>Prepare release</title>
<updated>2013-06-17T14:23:55+00:00</updated>
<author>
<name>Erlang/OTP</name>
<email>otp@erlang.org</email>
</author>
<published>2013-06-17T14:23:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=8cece79b77952c991e62ae595bcf71cde016a052'/>
<id>8cece79b77952c991e62ae595bcf71cde016a052</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright years</title>
<updated>2013-06-12T17:37:57+00:00</updated>
<author>
<name>Björn-Egil Dahlberg</name>
<email>egil@erlang.org</email>
</author>
<published>2013-06-12T17:37:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=710b07ca18417976459335a8b0b81a6f6aa82699'/>
<id>710b07ca18417976459335a8b0b81a6f6aa82699</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'nox/erl_eval-receive/OTP-11137' into maint</title>
<updated>2013-06-03T14:11:15+00:00</updated>
<author>
<name>Fredrik Gustafsson</name>
<email>fredrik@erlang.org</email>
</author>
<published>2013-06-03T14:11:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=46c45db2558cda8e36dc7d977db722b1b8d8c86f'/>
<id>46c45db2558cda8e36dc7d977db722b1b8d8c86f</id>
<content type='text'>
* nox/erl_eval-receive/OTP-11137:
  Updated primary bootstrap for erl_eval
  Added preloaded prim_eval
  Fix receive support in erl_eval with a BEAM module
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* nox/erl_eval-receive/OTP-11137:
  Updated primary bootstrap for erl_eval
  Added preloaded prim_eval
  Fix receive support in erl_eval with a BEAM module
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix receive support in erl_eval with a BEAM module</title>
<updated>2013-05-28T10:19:34+00:00</updated>
<author>
<name>Anthony Ramine</name>
<email>n.oxyde@gmail.com</email>
</author>
<published>2013-05-06T18:09:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=acb8ef5d18cc3976bf580a8e6925cb5641acd401'/>
<id>acb8ef5d18cc3976bf580a8e6925cb5641acd401</id>
<content type='text'>
Using the low-level BEAM instructions, we can loop over each message in
the process queue and removes the first message that matches, without
receiving them all to later send them back to itself.

The function prim_eval:'receive'/2 is equivalent to the
following pseudo-code:

  'receive'(F, T) -&gt;
    RESET MESSAGE QUEUE POINTER,
    LOOP:
      case PEEK CURRENT MESSAGE WITH TIMEOUT T of
        {ok,Msg} -&gt;
          case F(Msg) of
            nomatch -&gt;
              DECREMENT TIMEOUT T,
              ADVANCE MESSAGE QUEUE POINTER,
              GOTO LOOP;
            Result -&gt;
              RESET MESSAGE QUEUE POINTER,
              Result
          end;
        timeout -&gt;
          RESET MESSAGE QUEUE POINTER,
          timeout
      end.

To not break Dialyzer and other tools, we use a stub Erlang module which
abstract code is forcefully inserted into prim_inet.erl afterwards
compilation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Using the low-level BEAM instructions, we can loop over each message in
the process queue and removes the first message that matches, without
receiving them all to later send them back to itself.

The function prim_eval:'receive'/2 is equivalent to the
following pseudo-code:

  'receive'(F, T) -&gt;
    RESET MESSAGE QUEUE POINTER,
    LOOP:
      case PEEK CURRENT MESSAGE WITH TIMEOUT T of
        {ok,Msg} -&gt;
          case F(Msg) of
            nomatch -&gt;
              DECREMENT TIMEOUT T,
              ADVANCE MESSAGE QUEUE POINTER,
              GOTO LOOP;
            Result -&gt;
              RESET MESSAGE QUEUE POINTER,
              Result
          end;
        timeout -&gt;
          RESET MESSAGE QUEUE POINTER,
          timeout
      end.

To not break Dialyzer and other tools, we use a stub Erlang module which
abstract code is forcefully inserted into prim_inet.erl afterwards
compilation.
</pre>
</div>
</content>
</entry>
<entry>
<title>Teach c:ls/1 to show non-directory files</title>
<updated>2013-05-22T09:54:37+00:00</updated>
<author>
<name>Björn Gustavsson</name>
<email>bjorn@erlang.org</email>
</author>
<published>2013-05-22T09:39:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/otp.git/commit/?id=67d83e15fdee068217df7f14a32fb901d7d4d91b'/>
<id>67d83e15fdee068217df7f14a32fb901d7d4d91b</id>
<content type='text'>
In an email to erlang-questions, Bengt Kleberg wrote:

    When I use c:ls/1 it reminds me so much of Unix "ls" that I
    expect c:ls("filename") to work. The resulting error surprises
    me every time (not the same day).

While teaching c:ls/1 to show non-directory files, update the
error handling to make use of the POSIX error codes from
file:list_dir/1 and file:format_error/1 (which had not been
invented when the c module was first implemented).

Suggested-by: Bengt Kleberg
Test-suite-by: Bengt Kleberg
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In an email to erlang-questions, Bengt Kleberg wrote:

    When I use c:ls/1 it reminds me so much of Unix "ls" that I
    expect c:ls("filename") to work. The resulting error surprises
    me every time (not the same day).

While teaching c:ls/1 to show non-directory files, update the
error handling to make use of the POSIX error codes from
file:list_dir/1 and file:format_error/1 (which had not been
invented when the c module was first implemented).

Suggested-by: Bengt Kleberg
Test-suite-by: Bengt Kleberg
</pre>
</div>
</content>
</entry>
</feed>
