about summary refs log tree commit diff
path: root/src/libsyntax/ext/pipes/mod.rs
AgeCommit message (Collapse)AuthorLines
2013-08-01Remove the pipes compilerBrian Anderson-84/+0
The pipes compiler produced data types that encoded efficient and safe bounded message passing protocols between two endpoints. It was also capable of producing unbounded protocols. It was useful research but was arguably done before its proper time. I am removing it for the following reasons: * In practice we used it only for producing the `oneshot` and `stream` unbounded protocols and all communication in Rust use those. * The interface between the proto! macro and the standard library has a large surface area and was difficult to maintain through language and library changes. * It is now written in an old dialect of Rust and generates code which would likely be considered non-idiomatic. * Both the compiler and the runtime are difficult to understand, and likewise the relationship between the generated code and the library is hard to understand. Debugging is difficult. * The new scheduler implements `stream` and `oneshot` by hand in a way that will be significantly easier to maintain. This shouldn't be taken as an indication that 'channel protocols' for Rust are not worth pursuing again in the future.
2013-07-17librustc: Remove all uses of "copy".Patrick Walton-1/+1
2013-07-17librustc: Add a lint mode for unnecessary `copy` and remove a bunch of them.Patrick Walton-1/+1
2013-06-25great renaming propagation: syntaxCorey Richardson-1/+0
2013-06-05removed unused imports (and one unused argument)John Clements-1/+0
2013-06-05remove interner from tt_readerJohn Clements-1/+0
2013-06-05just use TLS internerJohn Clements-2/+2
2013-05-22syntax/ext: modernise ext_ctxt to be CamelCase and use new.Huon Wilson-2/+2
2013-05-11Warning policeTim Chevalier-1/+1
2013-05-03add gitattributes and fix whitespace issuesDaniel Micay-1/+0
2013-03-28Removing unused importsAlex Crichton-1/+1
2013-03-13librustc: Don't accept `as Trait` anymore; fix all occurrences of it.Patrick Walton-3/+5
2013-03-04Remove unused imports throughout src/Alex Crichton-1/+0
2013-02-26libsyntax: remove vecs_implicitly_copyable from the syntax extensionsErick Tryzelaar-2/+2
2013-02-22libsyntax: De-mut the pipe compilerPatrick Walton-1/+1
2013-02-21Get rid of structural records in libsyntax and the last bit in librustc.Luqman Aden-1/+1
2013-01-29libsyntax: De-export libsyntax. rs=deexportingPatrick Walton-9/+8
2013-01-29libsyntax: De-export a lot of libsyntax. rs=deëxportingPatrick Walton-6/+0
2013-01-29libstd: Remove "dual impls" from the language and enforce coherence rules. ↵Patrick Walton-0/+1
r=brson "Dual impls" are impls that are both type implementations and trait implementations. They can lead to ambiguity and so this patch removes them from the language. This also enforces coherence rules. Without this patch, records can implement traits not defined in the current crate. This patch fixes this, and updates all of rustc to adhere to the new enforcement. Most of this patch is fixing rustc to obey the coherence rules, which involves converting a bunch of records to structs.
2013-01-23renaming to adhere to conventionsJohn Clements-2/+2
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-0/+2
module scope. r=tjc
2013-01-08Revert "librustc: Make unqualified identifier searches terminate at the ↵Patrick Walton-2/+0
nearest module scope. r=tjc" This reverts commit a8d37af2473da79be704c9ce2374f278c47177b6.
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-0/+2
module scope. r=tjc
2012-12-27librustc: Terminate name searches at the nearest module scope for paths that ↵Patrick Walton-4/+5
contain at least two components. r=graydon
2012-12-13librustc: Make `use` statements crate-relative by default. r=brsonPatrick Walton-3/+2
2012-12-03Update license, add license boilerplate to most files. Remainder will follow.Graydon Hoare-0/+10
2012-11-29impls of traits cannot define methods on the anonymous traitBrian Anderson-1/+0
2012-11-28Remove uses of #[merge]Brian Anderson-0/+70
2012-11-26Remove the crate languageBrian Anderson-0/+12