From: Rob Pike Date: Mon, 5 Oct 2009 18:13:56 +0000 (-0700) Subject: a few fixups. delete the TODO block. X-Git-Tag: weekly.2009-11-06~416 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=ff97fde26b7b7cfc032dc4e0d29d2aeeb952f55b;p=gostls13.git a few fixups. delete the TODO block. R=rsc DELTA=23 (0 added, 20 deleted, 3 changed) OCL=35330 CL=35330 --- diff --git a/doc/go_lang_faq.html b/doc/go_lang_faq.html index e7a11bd3d7..65d1048094 100644 --- a/doc/go_lang_faq.html +++ b/doc/go_lang_faq.html @@ -370,16 +370,16 @@ equality of structs and arrays should mean, it was simpler to leave it out for n Why build concurrency on the ideas of CSP?

Concurrency and multi-threaded programming have a reputation -for difficulty. We believe the problem is partly due to complex +for difficulty. We believe the problem is due partly to complex designs such as pthreads and partly to overemphasis on low-level details -such as mutexes, condition variables, and eve memory barriers. +such as mutexes, condition variables, and even memory barriers. Higher-level interfaces enable much simpler code, even if there are still mutexes and such under the covers.

One of the most successful models for providing high-level linguistic support for concurrency comes from Hoare's Communicating Sequential Processes, or CSP. -Occam and Erlang are two commercial languages that stem from CSP. +Occam and Erlang are two well known languages that stem from CSP. Go's concurrency primitives derive from a different part of the family tree whose main contribution is the powerful notion of channels as first class objects.

@@ -425,23 +425,3 @@ The language does not preclude atomic map updates. When required, such as when hosting an untrusted program, the implementation could interlock map access.

- -

-TODO

-

TODO:

- -
-explain:
-package design
-slices
-oo separate from storage (abstraction vs. implementation)
-
-embedding?
-dependency declarations in the language
-
-oo questions
-	no data in interfaces
-	dynamic dispatch
-
-make vs new
-