Re: [rust-dev] Persistent data structures

2013-12-04 Thread Patrick Walton
On 12/3/13 11:28 PM, Isaac Dupree wrote: Is Rc the best smart pointer for persistent data structures? I would think so, for non-thread safe ones. Is it possible for the structure to be parametrized on smart pointer? Not without higher kinded types (which eventually we do want--so the

Re: [rust-dev] method overloading and generic

2013-12-04 Thread Rémi Fontan
thanks for explanation, it all makes sense now. so I will stick to manually implement the overloading for every float type until #8075 is fixed, which is fine for now. cheers, Rémi On Tue, Dec 3, 2013 at 11:50 PM, Eric Reed ecr...@cs.washington.edu wrote: I think you're running into issue

Re: [rust-dev] Practical usage of rustpkg

2013-12-04 Thread Jordi Boggiano
On Tue, Dec 3, 2013 at 8:44 PM, SiegeLord slab...@aim.com wrote: I don't think any of these options are ideal. I don't want to suggest solutions to these issues because I'm not sure how things are supposed to be used/what the planned design is. Does anybody use rustpkg seriously today? Is

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Kevin Ballard
On Dec 4, 2013, at 12:23 AM, Patrick Walton pcwal...@mozilla.com wrote: Yes, but I wouldn't worry about this restriction biting users of your structure too much. Rust data structures rarely ever store non-static references in them, as the stack discipline that references must follow is

Re: [rust-dev] Problem to use Encodable as fn parameter

2013-12-04 Thread Philippe Delrieu
I reply to my questions. It can be helpful to somebody. First the error: wrong number of lifetime parameters The struct encoder is declared pub struct Encoder'self so the 'self lifetime is part of the type and must be keep. The good declaration is pub fn

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Michael Woerister
I've implemented a persistent HAMT [1] a while back: https://github.com/michaelwoerister/rs-persistent-datastructures/blob/master/hamt.rs It's the data structure used for persistent maps in Clojure (and Scala, I think). It's not too hard to implement and it's pretty nifty. I'm not sure about

Re: [rust-dev] Ideas of small projects or improvements

2013-12-04 Thread Steve Klabnik
There is a tag on GitHub specifically for easy issues: https://github.com/mozilla/rust/issues?labels=E-easymilestone=13state=open ___ Rust-dev mailing list Rust-dev@mozilla.org https://mail.mozilla.org/listinfo/rust-dev

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Huon Wilson
On 04/12/13 20:51, Michael Woerister wrote: I've implemented a persistent HAMT [1] a while back: https://github.com/michaelwoerister/rs-persistent-datastructures/blob/master/hamt.rs It's the data structure used for persistent maps in Clojure (and Scala, I think). It's not too hard to

Re: [rust-dev] Distilled essence of placement new

2013-12-04 Thread Gábor Lehel
What's the current plan for the implementation of placement new as you envision it? In particular what would the trait used by Gc etc. to hook into it look like? How does it do the thing where expressions are constructed directly into place? I agree with many parts of your analysis (different

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Michael Woerister
For reference, the FromIterator Extendable traits are the things to implement if one has a structure that can be constructed from/extended with an iterator and wishes to share the behaviour. http://static.rust-lang.org/doc/master/std/iter/trait.FromIterator.html

Re: [rust-dev] Type system thoughts

2013-12-04 Thread Gábor Lehel
On Mon, Dec 2, 2013 at 7:18 PM, Niko Matsakis n...@alum.mit.edu wrote: OK, I read a bit more. I've been working on a blog post about HKR (higher-kinded Rust) and you've been elaborating on some of the same themes as I was thinking about (naturally enough). All makes sense. ...which was part

Re: [rust-dev] Rust forum

2013-12-04 Thread spir
On 12/03/2013 11:01 PM, Martin DeMello wrote: keeping up with email is a lot easier than pretty much everything else, though. the solution to keeping old messages around is mirroring the mailing list to a searchable archive, not moving to a forum en masse and sacrificing ease-of-conversation for

Re: [rust-dev] Meeting-weekly-2013-12-03, str.from_utf8

2013-12-04 Thread Simon Sapin
Hi, In response to: https://github.com/mozilla/rust/wiki/Meeting-weekly-2013-12-03#strfrom_utf8 Yes, error handling other than strict/fail requires allocation. I suggest taking the pull request for the special case of non-allocating strict UTF-8, and keeping error handling for a future,

Re: [rust-dev] How to search the mailing list archives

2013-12-04 Thread Thad Guidry
Actually, you do not have to change the article to thread...instead, just CLICK on the Subject and you get the full thread discussion view. Thanks for the tip Benjamin ! (search at the bottom ? whatever. everyone is copying Firefox these days. :-) ) On Tue, Dec 3, 2013 at 9:11 PM, Benjamin

Re: [rust-dev] Practical usage of rustpkg

2013-12-04 Thread Tim Chevalier
FYI, there's a related bug open: https://github.com/mozilla/rust/issues/8673 (this is about the problem of repeating the same package ID#revision string in different files and not having a way to abstract it out) The preferred way to work on a dependency and the package that depends on it at the

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Niko Matsakis
On Wed, Dec 04, 2013 at 12:23:35AM -0800, Patrick Walton wrote: Not without higher kinded types (which eventually we do want--so the answer is not yet). This. That said, I imagine that if we do it right, it'll be possible to write one persistent map implementation that can be used with GC, ARC,

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Michael Woerister
Is it possible for the structure to be parametrized on smart pointer? Not without higher kinded types (which eventually we do want--so the answer is not yet). I've been thinking about that a bit more and I think it might be possible to support different reference types without higher-kinded

Re: [rust-dev] Meeting-weekly-2013-12-03, str.from_utf8

2013-12-04 Thread Brian Anderson
On 12/04/2013 06:01 AM, Simon Sapin wrote: Hi, In response to: https://github.com/mozilla/rust/wiki/Meeting-weekly-2013-12-03#strfrom_utf8 Yes, error handling other than strict/fail requires allocation. I suggest taking the pull request for the special case of non-allocating strict UTF-8,

Re: [rust-dev] Rust front-end to GCC

2013-12-04 Thread Matthias Urlichs
Hi, fn fib1 (n:int) - int {     if (n = 1) { 1 }     else { n * fib1 (n - 1) } } Wrong function name. That's fac. ;-) fib is ...     else { fib1 (n - 1) + fib1 (n - 2) } -- Matthias Urlichs ___ Rust-dev mailing list Rust-dev@mozilla.org

Re: [rust-dev] Rust front-end to GCC

2013-12-04 Thread Brian Anderson
On 12/03/2013 09:22 AM, Philip Herron wrote: Hey all Some of you may have noticed the gccrs branch on the git mirror. Since PyCon IE 2013 i gave a talk on my Python Front-end pet project and heard about rust by a few people and i never really looked at it before until then but i've kind of

Re: [rust-dev] Please welcome the Rust and Servo GNOME/OPW interns for December 2013-March 2014

2013-12-04 Thread Michael Letterle
So much awesome! On Wed, Dec 4, 2013 at 2:43 PM, Brian Anderson bander...@mozilla.comwrote: Welcome aboard, Nif and Isabelle. I'm looking forward to working with you. And thanks for setting this up, Tim and Lars. On 12/04/2013 08:18 AM, Tim Chevalier wrote: Hello, I'm pleased to

Re: [rust-dev] Separated/Incremential compilation

2013-12-04 Thread Tim Chevalier
On Fri, Nov 29, 2013 at 9:09 AM, Patrick Walton pcwal...@mozilla.com wrote: I shouldn't say that Rust has no problems with build times--it could always be faster, and in particular the memory representations are inefficient, particularly around ASTs--but when you actually run with `-Z

Re: [rust-dev] Separated/Incremential compilation

2013-12-04 Thread Brian Anderson
On 11/29/2013 03:01 AM, Léo Testard wrote: Hello, I think everyone here will agree to say that compilation times in Rust are problematic. Recently, there was an argument on IRC about reducing compilation times by reducing the use of GC and failures. Although I agree it's good to reduce

Re: [rust-dev] Plz separate mail threads for separated compilation [was Re: Separated/Incremential compilation]

2013-12-04 Thread Brian Anderson
Thanks Felix. I added this to https://github.com/mozilla/rust/issues/4047 On 11/29/2013 05:46 AM, Felix S. Klock II wrote: First off, the topic of rustc slowness and long bootstrap times has indeed been discussed many times. If you have not yet tried skimming the archives, I recommend doing

Re: [rust-dev] Separated/Incremential compilation

2013-12-04 Thread Patrick Walton
Maybe this should be done upstream in LLVM, actually. Seems like work that would be applicable to e.g. clang with LTO as well. Tim Chevalier catamorph...@gmail.com wrote: On Fri, Nov 29, 2013 at 9:09 AM, Patrick Walton pcwal...@mozilla.com wrote: I shouldn't say that Rust has no problems with

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Bill Myers
Hello, I already implemented a persistent tree-map called SnapMap: you can find the source code at https://github.com/mozilla/rust/pull/9816 I stopped working on it before I made a serious effort to push it into the Rust codebase and don't have time to work further on it, so it would be

Re: [rust-dev] Please welcome the Rust and Servo GNOME/OPW interns for December 2013-March 2014

2013-12-04 Thread Benjamin Striegel
Hooray, welcome to our new contributors! :) And thanks to our mentors and coordinators as well! On Wed, Dec 4, 2013 at 11:18 AM, Tim Chevalier catamorph...@gmail.comwrote: Hello, I'm pleased to announce that the winter/spring Rust and Servo interns through the GNOME Outreach Program for

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Isaac Dupree
On 12/04/2013 02:09 PM, Michael Woerister wrote: Is it possible for the structure to be parametrized on smart pointer? Not without higher kinded types (which eventually we do want--so the answer is not yet). And then we can define a container type, using the generic reference type: struct

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Daniel Micay
On Wed, Dec 4, 2013 at 4:17 PM, Isaac Dupree m...@isaac.cedarswampstudios.org wrote: On 12/04/2013 02:09 PM, Michael Woerister wrote: Is it possible for the structure to be parametrized on smart pointer? Not without higher kinded types (which eventually we do want--so the answer is not

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Isaac Dupree
On 12/04/2013 03:36 PM, Bill Myers wrote: Hello, I already implemented a persistent tree-map called SnapMap: you can find the source code at https://github.com/mozilla/rust/pull/9816 I stopped working on it before I made a serious effort to push it into the Rust codebase and don't have time to

[rust-dev] Interesting talk about (scala) language/compiler complexity

2013-12-04 Thread Ziad Hatahet
To be taken with a grain of salt, naturally: https://www.youtube.com/watch?v=TS1lpKBMkgg -- Ziad ___ Rust-dev mailing list Rust-dev@mozilla.org https://mail.mozilla.org/listinfo/rust-dev

Re: [rust-dev] Persistent data structures

2013-12-04 Thread Bill Myers
Did COW improve performance? What's a good way to do performance testing of Rust code? The reason I introduced COW when RC 1 is that it allows persistent data structures to be mutated in place if there aren't extra references, just like non-persistent data structures. Lots of languages

Re: [rust-dev] Interesting talk about (scala) language/compiler complexity

2013-12-04 Thread Kevin Cantu
There are a couple parts of the Rust compiler about which I've heard people say if I knew how that worked, I'd fix it so that we could do ... So I definitely thought of Rust when watching that. I think it is very encouraging to see so how many components Rust has pushed out of the core and into

Re: [rust-dev] Interesting talk about (scala) language/compiler complexity

2013-12-04 Thread Patrick Walton
On 12/4/13 7:36 PM, Kevin Cantu wrote: There are a couple parts of the Rust compiler about which I've heard people say if I knew how that worked, I'd fix it so that we could do ... So I definitely thought of Rust when watching that. The Rust compiler is not that bad. Niko and I, as well as

Re: [rust-dev] Interesting talk about (scala) language/compiler complexity

2013-12-04 Thread Patrick Walton
On 12/4/13 5:07 PM, Ziad Hatahet wrote: To be taken with a grain of salt, naturally: https://www.youtube.com/watch?v=TS1lpKBMkgg I watched some of this. Some notes on specific criticisms follow. (Many of the criticisms are too abstract to really confront head-on though--for example,

Re: [rust-dev] Persistent data structures

2013-12-04 Thread David Piepgrass
My next goal is a persistent tree-map, probably cribbing from Haskell's Data.Map. I look forward to hearing how that goes! I've been meaning to make a data structure in Rust too, but it's hard to find the time, so how's about I tell you guys about it instead. I call my data structure an

Re: [rust-dev] Interesting talk about (scala) language/compiler complexity

2013-12-04 Thread Brendan Zabarauskas
On 5 Dec 2013, at 1:46 pm, Patrick Walton pcwal...@mozilla.com wrote: The particular criticisms of the Scala compiler, that the front-end does too much desugaring and that code is a string, are definitely not true for the Rust compiler. (Well, OK, `for` is desugared too early, but that has

Re: [rust-dev] Interesting talk about (scala) language/compiler complexity

2013-12-04 Thread Benjamin Striegel
3. *Using inheritance for collection mutability is bad.* Rust doesn't do it. Is this an argument against generalizing over mutability at all (as I believe has been proposed in the past)? On Wed, Dec 4, 2013 at 10:53 PM, Patrick Walton pcwal...@mozilla.comwrote: On 12/4/13 5:07 PM, Ziad

Re: [rust-dev] Error casting to trait: value may contain borrowed pointers

2013-12-04 Thread Christian Ohler
I see, thanks for the explanation. Looks like a compiler bug, then. I'll work around it with an unsafe transmute for now. Thanks, Christian. On Mon, Dec 2, 2013 at 5:49 AM, Felix S. Klock II pnkfe...@mozilla.com wrote: rust-dev- In general, we need to ensure that for an expression `source

Re: [rust-dev] Persistent data structures

2013-12-04 Thread David Piepgrass
Please disregard this message; I hadn't seen Bill Myers' solution (copy-on-write by cloning only when reference count 1), which sounds like it's probably perfect for Rust. On Wed, Dec 4, 2013 at 9:03 PM, David Piepgrass qwertie...@gmail.comwrote: My next goal is a persistent tree-map,