Skip to content

Commit 0080199

Browse files
committed
---
yaml --- r: 234487 b: refs/heads/tmp c: 5ff5594 h: refs/heads/master i: 234485: 2db27ad 234483: 21fd7ce 234479: 895304c v: v3
1 parent aa2832a commit 0080199

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+2707
-387
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ refs/tags/0.11.0: e1247cb1d0d681be034adb4b558b5a0c0d5720f9
2525
refs/tags/0.12.0: f0c419429ef30723ceaf6b42f9b5a2aeb5d2e2d1
2626
refs/heads/beta: d2e13e822a73e0ea46ae9e21afdd3155fc997f6d
2727
refs/tags/1.0.0-alpha: e42bd6d93a1d3433c486200587f8f9e12590a4d7
28-
refs/heads/tmp: 01de381b4883a960ec28e2929eb08334952a57c8
28+
refs/heads/tmp: 5ff55943a38f2b581bd4ae5d521f57defd1a8b29
2929
refs/tags/1.0.0-alpha.2: 4c705f6bc559886632d3871b04f58aab093bfa2f
3030
refs/tags/homu-tmp: ab792abf1fcc28afbd315426213f6428da25c085
3131
refs/tags/1.0.0-beta: 8cbb92b53468ee2b0c2d3eeb8567005953d40828

branches/tmp/COPYRIGHT

Lines changed: 0 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -22,104 +22,6 @@ The Rust Project includes packages written by third parties.
2222
The following third party packages are included, and carry
2323
their own copyright notices and license terms:
2424

25-
* Two header files that are part of the Valgrind
26-
package. These files are found at src/rt/valgrind/valgrind.h and
27-
src/rt/valgrind/memcheck.h, within this distribution. These files
28-
are redistributed under the following terms, as noted in
29-
them:
30-
31-
for src/rt/valgrind/valgrind.h:
32-
33-
This file is part of Valgrind, a dynamic binary
34-
instrumentation framework.
35-
36-
Copyright (C) 2000-2010 Julian Seward. All rights
37-
reserved.
38-
39-
Redistribution and use in source and binary forms, with
40-
or without modification, are permitted provided that the
41-
following conditions are met:
42-
43-
1. Redistributions of source code must retain the above
44-
copyright notice, this list of conditions and the
45-
following disclaimer.
46-
47-
2. The origin of this software must not be
48-
misrepresented; you must not claim that you wrote the
49-
original software. If you use this software in a
50-
product, an acknowledgment in the product
51-
documentation would be appreciated but is not
52-
required.
53-
54-
3. Altered source versions must be plainly marked as
55-
such, and must not be misrepresented as being the
56-
original software.
57-
58-
4. The name of the author may not be used to endorse or
59-
promote products derived from this software without
60-
specific prior written permission.
61-
62-
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND
63-
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
64-
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
65-
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
66-
NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
67-
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
68-
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
69-
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
70-
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
71-
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
72-
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
73-
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
74-
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
75-
OF SUCH DAMAGE.
76-
77-
for src/rt/valgrind/memcheck.h:
78-
79-
This file is part of MemCheck, a heavyweight Valgrind
80-
tool for detecting memory errors.
81-
82-
Copyright (C) 2000-2010 Julian Seward. All rights
83-
reserved.
84-
85-
Redistribution and use in source and binary forms, with
86-
or without modification, are permitted provided that the
87-
following conditions are met:
88-
89-
1. Redistributions of source code must retain the above
90-
copyright notice, this list of conditions and the
91-
following disclaimer.
92-
93-
2. The origin of this software must not be
94-
misrepresented; you must not claim that you wrote the
95-
original software. If you use this software in a
96-
product, an acknowledgment in the product
97-
documentation would be appreciated but is not
98-
required.
99-
100-
3. Altered source versions must be plainly marked as
101-
such, and must not be misrepresented as being the
102-
original software.
103-
104-
4. The name of the author may not be used to endorse or
105-
promote products derived from this software without
106-
specific prior written permission.
107-
108-
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND
109-
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
110-
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
111-
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
112-
NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
113-
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
114-
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
115-
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
116-
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
117-
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
118-
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
119-
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
120-
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
121-
OF SUCH DAMAGE.
122-
12325
* The src/rt/miniz.c file, carrying an implementation of
12426
RFC1950/RFC1951 DEFLATE, by Rich Geldreich
12527
<[email protected]>. All uses of this file are

branches/tmp/configure

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -956,7 +956,7 @@ then
956956
LLVM_VERSION=$($LLVM_CONFIG --version)
957957

958958
case $LLVM_VERSION in
959-
(3.[5-7]*)
959+
(3.[5-8]*)
960960
msg "found ok version of LLVM: $LLVM_VERSION"
961961
;;
962962
(*)
@@ -1030,7 +1030,7 @@ then
10301030
esac
10311031
else
10321032
case $CFG_CLANG_VERSION in
1033-
(3.2* | 3.3* | 3.4* | 3.5* | 3.6* | 3.7*)
1033+
(3.2* | 3.3* | 3.4* | 3.5* | 3.6* | 3.7* | 3.8*)
10341034
step_msg "found ok version of CLANG: $CFG_CLANG_VERSION"
10351035
;;
10361036
(*)

branches/tmp/src/doc/reference.md

Lines changed: 42 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1095,12 +1095,12 @@ typecheck:
10951095
# fn my_err(s: &str) -> ! { panic!() }
10961096
10971097
fn f(i: i32) -> i32 {
1098-
if i == 42 {
1099-
return 42;
1100-
}
1101-
else {
1102-
my_err("Bad number!");
1103-
}
1098+
if i == 42 {
1099+
return 42;
1100+
}
1101+
else {
1102+
my_err("Bad number!");
1103+
}
11041104
}
11051105
```
11061106

@@ -1399,9 +1399,9 @@ functions](#generic-functions).
13991399

14001400
```
14011401
trait Seq<T> {
1402-
fn len(&self) -> u32;
1403-
fn elt_at(&self, n: u32) -> T;
1404-
fn iter<F>(&self, F) where F: Fn(T);
1402+
fn len(&self) -> u32;
1403+
fn elt_at(&self, n: u32) -> T;
1404+
fn iter<F>(&self, F) where F: Fn(T);
14051405
}
14061406
```
14071407

@@ -1489,14 +1489,14 @@ impl Num for f64 {
14891489
let x: f64 = Num::from_i32(42);
14901490
```
14911491

1492-
Traits may inherit from other traits. For example, in
1492+
Traits may inherit from other traits. Consider the following example:
14931493

14941494
```
14951495
trait Shape { fn area(&self) -> f64; }
14961496
trait Circle : Shape { fn radius(&self) -> f64; }
14971497
```
14981498

1499-
the syntax `Circle : Shape` means that types that implement `Circle` must also
1499+
The syntax `Circle : Shape` means that types that implement `Circle` must also
15001500
have an implementation for `Shape`. Multiple supertraits are separated by `+`,
15011501
`trait Circle : Shape + PartialEq { }`. In an implementation of `Circle` for a
15021502
given type `T`, methods can refer to `Shape` methods, since the typechecker
@@ -1579,8 +1579,12 @@ impl Shape for Circle {
15791579
fn draw(&self, s: Surface) { do_draw_circle(s, *self); }
15801580
fn bounding_box(&self) -> BoundingBox {
15811581
let r = self.radius;
1582-
BoundingBox{x: self.center.x - r, y: self.center.y - r,
1583-
width: 2.0 * r, height: 2.0 * r}
1582+
BoundingBox {
1583+
x: self.center.x - r,
1584+
y: self.center.y - r,
1585+
width: 2.0 * r,
1586+
height: 2.0 * r,
1587+
}
15841588
}
15851589
}
15861590
```
@@ -1615,10 +1619,10 @@ are written after the `impl` keyword.
16151619
```
16161620
# trait Seq<T> { fn dummy(&self, _: T) { } }
16171621
impl<T> Seq<T> for Vec<T> {
1618-
/* ... */
1622+
/* ... */
16191623
}
16201624
impl Seq<bool> for u32 {
1621-
/* Treat the integer as a sequence of bits */
1625+
/* Treat the integer as a sequence of bits */
16221626
}
16231627
```
16241628

@@ -1850,13 +1854,13 @@ An example of attributes:
18501854
// A function marked as a unit test
18511855
#[test]
18521856
fn test_foo() {
1853-
/* ... */
1857+
/* ... */
18541858
}
18551859
18561860
// A conditionally-compiled module
18571861
#[cfg(target_os="linux")]
18581862
mod bar {
1859-
/* ... */
1863+
/* ... */
18601864
}
18611865
18621866
// A lint attribute used to suppress a warning/error
@@ -2899,9 +2903,9 @@ An example of an `as` expression:
28992903
# fn len(values: &[f64]) -> i32 { 0 }
29002904
29012905
fn average(values: &[f64]) -> f64 {
2902-
let sum: f64 = sum(values);
2903-
let size: f64 = len(values) as f64;
2904-
sum / size
2906+
let sum: f64 = sum(values);
2907+
let size: f64 = len(values) as f64;
2908+
sum / size
29052909
}
29062910
```
29072911

@@ -3207,9 +3211,9 @@ may be specified with `...`. For example:
32073211
# let x = 2;
32083212
32093213
let message = match x {
3210-
0 | 1 => "not many",
3211-
2 ... 9 => "a few",
3212-
_ => "lots"
3214+
0 | 1 => "not many",
3215+
2 ... 9 => "a few",
3216+
_ => "lots"
32133217
};
32143218
```
32153219

@@ -3228,9 +3232,9 @@ may refer to the variables bound within the pattern they follow.
32283232
# fn process_other(i: i32) { }
32293233
32303234
let message = match maybe_digit {
3231-
Some(x) if x < 10 => process_digit(x),
3232-
Some(x) => process_other(x),
3233-
None => panic!()
3235+
Some(x) if x < 10 => process_digit(x),
3236+
Some(x) => process_other(x),
3237+
None => panic!()
32343238
};
32353239
```
32363240

@@ -3274,10 +3278,10 @@ An example of a `return` expression:
32743278

32753279
```
32763280
fn max(a: i32, b: i32) -> i32 {
3277-
if a > b {
3278-
return a;
3279-
}
3280-
return b;
3281+
if a > b {
3282+
return a;
3283+
}
3284+
return b;
32813285
}
32823286
```
32833287

@@ -3521,7 +3525,7 @@ An example of a `fn` type:
35213525

35223526
```
35233527
fn add(x: i32, y: i32) -> i32 {
3524-
return x + y;
3528+
return x + y;
35253529
}
35263530
35273531
let mut x = add(5,7);
@@ -3601,19 +3605,19 @@ An example of a trait object:
36013605

36023606
```
36033607
trait Printable {
3604-
fn stringify(&self) -> String;
3608+
fn stringify(&self) -> String;
36053609
}
36063610
36073611
impl Printable for i32 {
3608-
fn stringify(&self) -> String { self.to_string() }
3612+
fn stringify(&self) -> String { self.to_string() }
36093613
}
36103614
36113615
fn print(a: Box<Printable>) {
3612-
println!("{}", a.stringify());
3616+
println!("{}", a.stringify());
36133617
}
36143618
36153619
fn main() {
3616-
print(Box::new(10) as Box<Printable>);
3620+
print(Box::new(10) as Box<Printable>);
36173621
}
36183622
```
36193623

@@ -3628,7 +3632,7 @@ its type parameters are types:
36283632
```ignore
36293633
fn to_vec<A: Clone>(xs: &[A]) -> Vec<A> {
36303634
if xs.is_empty() {
3631-
return vec![];
3635+
return vec![];
36323636
}
36333637
let first: A = xs[0].clone();
36343638
let mut rest: Vec<A> = to_vec(&xs[1..]);
@@ -3648,7 +3652,7 @@ it is an alias for the implementing type. For example, in:
36483652

36493653
```
36503654
trait Printable {
3651-
fn make_string(&self) -> String;
3655+
fn make_string(&self) -> String;
36523656
}
36533657
36543658
impl Printable for String {
@@ -3716,7 +3720,7 @@ sites are:
37163720
fn bar(_: i8) { }
37173721

37183722
fn main() {
3719-
bar(128);
3723+
bar(128);
37203724
}
37213725
```
37223726

branches/tmp/src/doc/trpl/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,15 @@ is the first. After this:
2424
* [Syntax and Semantics][ss] - Each bit of Rust, broken down into small chunks.
2525
* [Nightly Rust][nr] - Cutting-edge features that aren’t in stable builds yet.
2626
* [Glossary][gl] - A reference of terms used in the book.
27-
* [Academic Research][ar] - Literature that influenced Rust.
27+
* [Bibliography][bi] - Background on Rust's influences, papers about Rust.
2828

2929
[gs]: getting-started.html
3030
[lr]: learn-rust.html
3131
[er]: effective-rust.html
3232
[ss]: syntax-and-semantics.html
3333
[nr]: nightly-rust.html
3434
[gl]: glossary.html
35-
[ar]: academic-research.html
35+
[bi]: bibliography.html
3636

3737
After reading this introduction, you’ll want to dive into either ‘Learn Rust’
3838
or ‘Syntax and Semantics’, depending on your preference: ‘Learn Rust’ if you

branches/tmp/src/doc/trpl/SUMMARY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,4 +69,4 @@
6969
* [Slice Patterns](slice-patterns.md)
7070
* [Associated Constants](associated-constants.md)
7171
* [Glossary](glossary.md)
72-
* [Academic Research](academic-research.md)
72+
* [Bibliography](bibliography.md)

branches/tmp/src/doc/trpl/academic-research.md renamed to branches/tmp/src/doc/trpl/bibliography.md

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
% Academic Research
1+
% Bibliography
22

3-
An incomplete list of papers that have had some influence in Rust.
4-
5-
Recommended for inspiration and a better understanding of Rust's background.
3+
This is a reading list of material relevant to Rust. It includes prior
4+
research that has - at one time or another - influenced the design of
5+
Rust, as well as publications about Rust.
66

77
### Type system
88

@@ -33,6 +33,7 @@ Recommended for inspiration and a better understanding of Rust's background.
3333
* [Non-blocking steal-half work queues](http://www.cs.bgu.ac.il/%7Ehendlerd/papers/p280-hendler.pdf)
3434
* [Reagents: expressing and composing fine-grained concurrency](http://www.mpi-sws.org/~turon/reagents.pdf)
3535
* [Algorithms for scalable synchronization of shared-memory multiprocessors](https://www.cs.rochester.edu/u/scott/papers/1991_TOCS_synch.pdf)
36+
* [Epoc-based reclamation](https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-579.pdf).
3637

3738
### Others
3839

@@ -71,3 +72,9 @@ Language](http://www.cs.indiana.edu/~eholk/papers/hips2013.pdf). Early GPU work
7172
* [Code Refinement of Stencil
7273
Codes](http://compilers.cs.uni-saarland.de/papers/ppl14_web.pdf). Another
7374
paper using Impala.
75+
* [Parallelization in Rust with fork-join and
76+
friends](http://publications.lib.chalmers.se/records/fulltext/219016/219016.pdf). Linus
77+
Farnstrand's master's thesis.
78+
* [Session Types for
79+
Rust](http://munksgaard.me/papers/laumann-munksgaard-larsen.pdf). Philip
80+
Munksgaard's master's thesis. Research for Servo.

0 commit comments

Comments
 (0)