1
0
mirror of https://github.com/golang/go synced 2024-11-13 17:30:24 -07:00
Commit Graph

175 Commits

Author SHA1 Message Date
Robert Griesemer
77ccfb090c making go-spec conform with 6g:
- equality of struct types requires equality of field names

DELTA=4  (0 added, 1 deleted, 3 changed)
OCL=24478
CL=24487
2009-02-05 16:11:14 -08:00
Rob Pike
6aabf31a83 a few tweaks triggered by tgs's comments
DELTA=46  (25 added, 1 deleted, 20 changed)
OCL=24342
CL=24354
2009-02-04 15:13:07 -08:00
Rob Pike
25a2b3626d needless semicolons
R=rsc
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=23967
CL=23970
2009-01-30 15:10:22 -08:00
Robert Griesemer
2b9fe0ea24 Test balloon: Changed the spec to see the implications of changing the
syntax of function types and making them "reference types" like slice,
map, and chan. First step in Russ' proposal.

DELTA=111  (32 added, 15 deleted, 64 changed)
OCL=23669
CL=23964
2009-01-30 14:48:29 -08:00
Russ Cox
4cf7711568 update go code tree to new func rules.
R=r
DELTA=367  (111 added, 59 deleted, 197 changed)
OCL=23957
CL=23960
2009-01-30 14:39:31 -08:00
Rob Pike
b59dbd7fe0 rename variable at rsc's request
R=rsc
DELTA=4  (0 added, 0 deleted, 4 changed)
OCL=23896
CL=23928
2009-01-30 11:14:48 -08:00
Rob Pike
96777ea2a7 clean up server code in tutorial
R=rsc
DELTA=15  (1 added, 0 deleted, 14 changed)
OCL=23889
CL=23889
2009-01-30 10:18:58 -08:00
Robert Griesemer
7471eab96f - added missing sections on comparisons for some types
- clarified legal map key types (must support comparison)
- updated open issues/todo list

R=r
DELTA=81  (48 added, 19 deleted, 14 changed)
OCL=23580
CL=23621
2009-01-27 14:51:24 -08:00
Robert Griesemer
4a903e0b32 defer statement
R=r
DELTA=30  (26 added, 0 deleted, 4 changed)
OCL=23533
CL=23569
2009-01-27 09:29:40 -08:00
Robert Griesemer
18b05c1a8d - clarified slice index bounds rules
- clarified comparisons of interfaces, slices, maps, channels
- removed respective TODO's

R=r
DELTA=76  (42 added, 16 deleted, 18 changed)
OCL=23132
CL=23479
2009-01-26 09:34:19 -08:00
Robert Griesemer
ae299f0d69 cosmetic change only:
- slightly simplified a couple of productions (CommClause, SwitchClause)
  by reordering

R=r
DELTA=5  (0 added, 0 deleted, 5 changed)
OCL=23304
CL=23323
2009-01-22 15:16:48 -08:00
Rob Pike
ae05f00b46 update tutorial for new export scheme
R=ken,rsc
DELTA=101  (9 added, 0 deleted, 92 changed)
OCL=23174
CL=23188
2009-01-20 19:32:36 -08:00
Russ Cox
839a68469b delete export
TBR=r
OCL=23121
CL=23127
2009-01-20 14:40:40 -08:00
Robert Griesemer
9f4a27cbe6 - added TODO
R=r
DELTA=3  (3 added, 0 deleted, 0 changed)
OCL=23003
CL=23003
2009-01-16 15:44:08 -08:00
Robert Griesemer
1593ab6bb4 - cleanup todo list
- fixed language for arrays slightly

R=r
DELTA=81  (39 added, 25 deleted, 17 changed)
OCL=23000
CL=23000
2009-01-16 15:36:46 -08:00
Russ Cox
360962420c casify, cleanup sys
R=r
OCL=22978
CL=22984
2009-01-16 14:58:14 -08:00
Robert Griesemer
83c17606d7 - language for export via capitalized identifiers
- removed explicit "export" declarations and keyword
- fixed a few glitches and adjusted examples

(The details of what "export" mean should be clarified
in the spec, this is just so we have a working doc for
now.)

R=r
DELTA=131  (7 added, 63 deleted, 61 changed)
OCL=22753
CL=22970
2009-01-16 14:12:50 -08:00
Rob Pike
1a91b9a8a9 casify syscall and sequelae
R=rsc
DELTA=337  (0 added, 1 deleted, 336 changed)
OCL=22950
CL=22950
2009-01-16 11:36:44 -08:00
Rob Pike
293c8f8c65 casify tutorial examples
will bring document in line in a later CL, which may include revisiting some of the names

R=rsc
DELTA=58  (0 added, 0 deleted, 58 changed)
OCL=22906
CL=22908
2009-01-15 17:54:07 -08:00
Rob Pike
61f3302044 printf->Printf etc.
the raw fmt routines will be another, smaller but subtler pass.

R=rsc
DELTA=157  (0 added, 0 deleted, 157 changed)
OCL=22851
CL=22851
2009-01-15 13:48:11 -08:00
Rob Pike
ef51f4baf4 restore "os" identifier to keep consistent with text.
R=presotto
OCL=22733
CL=22733
2009-01-14 08:43:32 -08:00
Rob Pike
40d5435278 update tutorial to new language.
add a section on printing
add a section on allocation

R=rsc
DELTA=500  (278 added, 15 deleted, 207 changed)
OCL=22381
CL=22456
2009-01-09 15:16:31 -08:00
Ian Lance Taylor
dfc3e52310 Use make instead of new to allocate a channel.
R=r
DELTA=2  (0 added, 0 deleted, 2 changed)
OCL=22452
CL=22455
2009-01-09 15:13:26 -08:00
Robert Griesemer
91bbd6484b Adjusted language for literals:
- now have struct, array, slice, and map literals

DELTA=34  (13 added, 6 deleted, 15 changed)
OCL=22180
CL=22204
2009-01-07 09:31:35 -08:00
Rob Pike
8d21004b41 make the tutorial programs run again.
(the text still needs fixing)
add the tutorial programs to the test run.

R=rsc
DELTA=41  (6 added, 0 deleted, 35 changed)
OCL=22174
CL=22174
2009-01-06 15:49:27 -08:00
Robert Griesemer
633957bcce - documenting old "new()"
- adding "init()"
- fixing some bugs with slice documentation

DELTA=118  (45 added, 7 deleted, 66 changed)
OCL=22084
CL=22136
2009-01-06 13:23:20 -08:00
Robert Griesemer
a329471ced A first attempt to capture the type changes.
Instead of trying to make open arrays look like arrays (which they aren't,
they just look like them), I decided to call them "slice types". As a result
they have value semantics, and one can really talk about what they really are.

Note:
- There are lots of missing details
- There are probably lots of mistakes

Looking for some initial feedback.

R=r
DELTA=444  (180 added, 189 deleted, 75 changed)
OCL=21769
CL=22020
2009-01-05 11:17:26 -08:00
Robert Griesemer
6ccca61510 - receiver ident may be optional
R=r
DELTA=5  (2 added, 0 deleted, 3 changed)
OCL=21508
CL=21510
2008-12-18 13:29:11 -08:00
Robert Griesemer
4d23030859 - ripped out excessively fancy way of describing grammar
in favor of explicit constructs
- simpler, clearer, and shorter overall
- no spec changes

(in retrospect it was just a (my) mistake to put it in in the first place)

R=r
DELTA=55  (13 added, 28 deleted, 14 changed)
OCL=21434
CL=21462
2008-12-17 15:39:15 -08:00
Robert Griesemer
6715358652 - Add introduction section (1 page), essentially a condensed form
of an earlier intro.
- Updated contents section.
- Removed left-over text from earlier documents.

No spec changes.

R=r
DELTA=379  (147 added, 227 deleted, 5 changed)
OCL=21312
CL=21331
2008-12-16 14:45:09 -08:00
Robert Griesemer
30a1a8c922 language for range clause
(I have deliberately left away the forms w/ := or = and
the forms with :)

R=r
DELTA=106  (44 added, 13 deleted, 49 changed)
OCL=21192
CL=21283
2008-12-16 11:38:56 -08:00
Robert Griesemer
ef77c22626 - fixed minor bug in example (found by ken)
R=r
OCL=21272
CL=21272
2008-12-16 10:45:39 -08:00
Robert Griesemer
9dfb2ea7af closing a TODO:
- define integer overflow as wrap-around
- be more specific about machine representation

DELTA=54  (34 added, 7 deleted, 13 changed)
OCL=20870
CL=21070
2008-12-12 10:30:10 -08:00
Robert Griesemer
7354b864b5 Revised proposal for const/var cleanup, with
Ken's suggestion for the "iota" extension to tuples.

DELTA=171  (88 added, 57 deleted, 26 changed)
OCL=20460
CL=20544
2008-12-04 17:33:37 -08:00
Robert Griesemer
337af31781 - allow for multiple method names per function type in an interface decl.
- added some initial language with respect to exports

R=r
DELTA=95  (47 added, 31 deleted, 17 changed)
OCL=19407
CL=19426
2008-11-17 18:11:36 -08:00
Robert Griesemer
a1c85ed83e Package-export proposal:
- syntax change
- missing: corresponding language

DELTA=5  (2 added, 0 deleted, 3 changed)
OCL=19221
CL=19352
2008-11-17 09:51:56 -08:00
Robert Griesemer
434c6052d8 - language to define type equality rigorously
- language for type guards
- fixed language for break statements

Also: Removed uses of "we" and replaced by impersonal language.
Minor cosmetic changes.

DELTA=237  (160 added, 34 deleted, 43 changed)
OCL=18620
CL=18800
2008-11-07 13:34:37 -08:00
Robert Griesemer
69e26bf28d - added (incomplete) section on parameter passing
- decribe passing of "..." parameters for a start

R=r
DELTA=70  (69 added, 0 deleted, 1 changed)
OCL=18503
CL=18503
2008-11-04 16:46:45 -08:00
Robert Griesemer
f618f8940d - keeping track of to-do items
R=r
DELTA=15  (10 added, 3 deleted, 2 changed)
OCL=18334
CL=18336
2008-11-03 10:52:28 -08:00
Robert Griesemer
2e90e5424e - language for struct field tags
DELTA=17  (15 added, 0 deleted, 2 changed)
OCL=18177
CL=18184
2008-10-30 15:52:37 -07:00
Robert Griesemer
ebf14c625d - clarified section on numeric types: platform-dependent types
are different from platform-independent types (not just aliases),
  except for byte, uint8
- added missing documentation of new(a, len, cap)
- updated todo/issues lists

DELTA=70  (24 added, 21 deleted, 25 changed)
OCL=17920
CL=18174
2008-10-30 14:50:23 -07:00
Robert Griesemer
2bfa95741f Preparation for varargs: Proposal for syntax.
DELTA=11  (7 added, 0 deleted, 4 changed)
OCL=17772
CL=17804
2008-10-24 13:13:12 -07:00
Robert Griesemer
4712165b17 - clarified that composites are values created every time they
are evaluated, removed corresponding TODO.

R=r
DELTA=5  (3 added, 1 deleted, 1 changed)
OCL=17746
CL=17751
2008-10-23 17:19:56 -07:00
Robert Griesemer
071c91bf48 First cut at incorporating anonymous fields of pointer types into the
spec.

I have deliberately removed the wording about receivers where it was
before because I think it needs to be more precise. There is a TODO.

DELTA=90  (54 added, 0 deleted, 36 changed)
OCL=17597
CL=17716
2008-10-23 12:04:45 -07:00
Robert Griesemer
a6b546fe31 - be even more explicit about ideal number conversion in expressions
- added a note with respect the difference of semantics of *p++ in Go vs C

R=r
DELTA=14  (6 added, 2 deleted, 6 changed)
OCL=17455
CL=17457
2008-10-20 11:46:40 -07:00
Robert Griesemer
71696ac048 clarification of conversion rules for ideal numbers
R=r
DELTA=21  (11 added, 1 deleted, 9 changed)
OCL=17316
CL=17316
2008-10-16 15:03:22 -07:00
Robert Griesemer
b5e0cc7ef5 - added language re: interface compparison using ==, !=
(seems not controversial)

R=r
DELTA=8  (3 added, 2 deleted, 3 changed)
OCL=16940
CL=16940
2008-10-10 16:34:44 -07:00
Robert Griesemer
57b34617e0 - Fixed bug in spec: PrimaryExpr is too restrictive in most places
(for instance *p was not allowed on the left side of "="). Changed
to Expression everywhere (this is too liberal, UnaryExpr is probably
good enough, but it seems funny, and we need to check semantically
anyway). This matches 6g yacc.
- Write expression syntac recursively to express evaluation order
and precedence syntactically.
- Organized open issues list, folded in stuff from todo.txt which
is now obsolete.

R=r
DELTA=108  (41 added, 52 deleted, 15 changed)
OCL=16903
CL=16910
2008-10-10 12:45:44 -07:00
Robert Griesemer
7271e048fc - added missing case for opt. semicolons (labels)
- more precise wording by having an explicit list of cases
- simplified statement list

R=r
DELTA=16  (10 added, 0 deleted, 6 changed)
OCL=16871
CL=16875
2008-10-09 20:05:24 -07:00
Robert Griesemer
bbfe31238b More spec progress:
- language for selectors and array/map indices
- formal description of syntax notation used
- factor out common productions to better show
  symmetries in grammar

R=r
DELTA=113  (77 added, 13 deleted, 23 changed)
OCL=16853
CL=16865
2008-10-09 17:12:09 -07:00