From transfire at gmail.com Mon Sep 3 12:28:07 2007 From: transfire at gmail.com (Trans) Date: Mon, 03 Sep 2007 16:28:07 -0000 Subject: [Facets] Two vs. one mailing list? Message-ID: <1188836887.938215.62800@w3g2000hsg.googlegroups.com> Hi-- Just wondering what arguments others might have for or against having two mailing lists (one for development and the other for end-usage) vs. having just this one list. In particular, has the number of ticket tracking posts on this list bother anyone? Or do you deem it actually a good thing, as an end- user, to have a closer tie to th pulse of development? Thanks, T. From o.renaud at laposte.net Mon Sep 3 15:50:27 2007 From: o.renaud at laposte.net (Olivier Renaud) Date: Mon, 3 Sep 2007 21:50:27 +0200 Subject: [Facets] Two vs. one mailing list? In-Reply-To: <1188836887.938215.62800@w3g2000hsg.googlegroups.com> References: <1188836887.938215.62800@w3g2000hsg.googlegroups.com> Message-ID: <200709032150.27572.o.renaud@laposte.net> Le lundi 03 septembre 2007 18:28, Trans a ?crit?: > Hi-- > > Just wondering what arguments others might have for or against having > two mailing lists (one for development and the other for end-usage) > vs. having just this one list. > > In particular, has the number of ticket tracking posts on this list > bother anyone? Or do you deem it actually a good thing, as an end- > user, to have a closer tie to th pulse of development? > > Thanks, > T. Hi, I think the traffic of this list is low enough for not being split into two separate lists. The tickets posts are not a problem for me. -- Olivier Renaud From transfire at gmail.com Wed Sep 5 21:05:51 2007 From: transfire at gmail.com (Trans) Date: Thu, 06 Sep 2007 01:05:51 -0000 Subject: [Facets] 2.w00t!!! Message-ID: <1189040751.101556.258970@19g2000hsx.googlegroups.com> 15:54 trans facets/trunk]% task/test Loaded suite task/test Started ......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Finished in 6.790911 seconds. 714 tests, 1785 assertions, 0 failures, 0 errors From calamitates at gmail.com Thu Sep 6 03:56:29 2007 From: calamitates at gmail.com (Calamitas) Date: Thu, 6 Sep 2007 09:56:29 +0200 Subject: [Facets] 2.w00t!!! In-Reply-To: <1189040751.101556.258970@19g2000hsx.googlegroups.com> References: <1189040751.101556.258970@19g2000hsx.googlegroups.com> Message-ID: Congratulations, Tom. You made it! We should celebrate! Well, next time I get to the US that is... Peter PS: the link to the core API on http://facets.rubyforge.org/learn.html is broken. From transfire at gmail.com Thu Sep 6 08:17:33 2007 From: transfire at gmail.com (TRANS) Date: Thu, 6 Sep 2007 08:17:33 -0400 Subject: [Facets] 2.w00t!!! In-Reply-To: References: <1189040751.101556.258970@19g2000hsx.googlegroups.com> Message-ID: <4b6f054f0709060517r4d994a67sf5b5e21352651cd0@mail.gmail.com> On 9/6/07, Calamitas wrote: > Congratulations, Tom. You made it! We should celebrate! Well, next > time I get to the US that is... Hey, I was just about to write you this morning -- you beat me to it! :) First I wanted to apologize for not being in touch more -- I have been quite busy trying to get all this Ruby code ready. Now that Facets 2.0 is nearly out, I will soon finally be ready to transition away from Ruby --and to "Prime/Fly". BTW, did you see Matz post on ruby-talk: http://groups.google.com/group/ruby-talk-google/browse_thread/thread/488b3e196a15c80b/c6ecc9647e1d6d08?hl=en#c6ecc9647e1d6d08 Takes me back to our first conversations on AOP. How odd(?), after all this time, he's coming around to some of those original ideas. On another front. I finally got around to creating a test case for units.rb. Unfortunately I have to report that much of it is broken :( I'd like to get Stick released sooner rather than later, so I was hoping maybe you could find a little time to have a look. (And if so maybe you could split off the currency into a separate require too?) If you're too busy I understand. But if you can, it would a big time saver for me... and well, how about a six-pack of your favorite beverage? ;) Also, while I've all but written-off the RCR process, I'm going to take our Cuts RCR, update it with some new undertstanding I've gained in my attempts to implement it (Facets 2.0 has a pretty good implementation btw --much better than any of those I made before). My "new" understanding is to return to the "old" roots, where by a Cut is, pure and simple, a transparent subclass --no target or join language. On top of that simple construct we build an Aspect class that has the special language. A little further out, maybe generalize it beyond Ruby and make a little paper out of it. Are there C.S. journals that it could be submitted to I wonder? > PS: the link to the core API on http://facets.rubyforge.org/learn.html > is broken. Ah, thanks. So how is your new job? Are you really working on AOP for Ruby? T. From transfire at gmail.com Thu Sep 6 09:57:18 2007 From: transfire at gmail.com (Trans) Date: Thu, 06 Sep 2007 13:57:18 -0000 Subject: [Facets] 2.w00t!!! In-Reply-To: References: <1189040751.101556.258970@19g2000hsx.googlegroups.com> Message-ID: <1189087038.666980.94010@k79g2000hse.googlegroups.com> Ooops. Sorry all, my last post was meant to go to Peter directly. No big deal, but just so you realize. Thanks, T. From noreply at rubyforge.org Fri Sep 7 07:01:56 2007 From: noreply at rubyforge.org (noreply at rubyforge.org) Date: Fri, 7 Sep 2007 07:01:56 -0400 (EDT) Subject: [Facets] [ facets-Patches-13750 ] Factorial Refactoring Message-ID: <20070907110156.62DF55240A39@rubyforge.org> Patches item #13750, was opened at 2007-09-07 06:01 You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=3171&aid=13750&group_id=804 Category: None Group: None Status: Open Resolution: None Priority: 3 Submitted By: Drew Olson (dfg59) Assigned to: Nobody (None) Summary: Factorial Refactoring Initial Comment: Refactoring of the factorial code using inject. ---------------------------------------------------------------------- You can respond by visiting: http://rubyforge.org/tracker/?func=detail&atid=3171&aid=13750&group_id=804 From transfire at gmail.com Fri Sep 7 07:52:59 2007 From: transfire at gmail.com (Trans) Date: Fri, 07 Sep 2007 11:52:59 -0000 Subject: [Facets] Two vs. one mailing list? In-Reply-To: <200709032150.27572.o.renaud@laposte.net> References: <1188836887.938215.62800@w3g2000hsg.googlegroups.com> <200709032150.27572.o.renaud@laposte.net> Message-ID: <1189165979.413869.252860@57g2000hsv.googlegroups.com> On Sep 3, 12:50 pm, Olivier Renaud wrote: > I think the traffic of this list is low enough for not being split into two > separate lists. The tickets posts are not a problem for me. Hi Olivier, Glad to hear your voice. And being the only one on the topic at hand, doubly verifies that you are absolutely correct ;) Which is, Yea!, less work for me anyway. Thanks, T. From transfire at gmail.com Fri Sep 7 15:21:12 2007 From: transfire at gmail.com (Trans) Date: Fri, 07 Sep 2007 19:21:12 -0000 Subject: [Facets] [ facets-Patches-13750 ] Factorial Refactoring In-Reply-To: <20070907110156.62DF55240A39@rubyforge.org> References: <20070907110156.62DF55240A39@rubyforge.org> Message-ID: <1189192872.288022.133340@w3g2000hsg.googlegroups.com> On Sep 7, 4:01 am, wrote: > Patches item #13750, was opened at 2007-09-07 06:01 > You can respond by visiting:http://rubyforge.org/tracker/?func=detail&atid=3171&aid=13750&group_i... > Refactoring of the factorial code using inject. Don't know why it didn't come over to the mailing list. Anyway, I may a reply to this on the tacker forum. Thanks, T. From o.renaud at laposte.net Fri Sep 7 18:44:32 2007 From: o.renaud at laposte.net (Olivier Renaud) Date: Sat, 8 Sep 2007 00:44:32 +0200 Subject: [Facets] Two vs. one mailing list? In-Reply-To: <1189165979.413869.252860@57g2000hsv.googlegroups.com> References: <1188836887.938215.62800@w3g2000hsg.googlegroups.com> <200709032150.27572.o.renaud@laposte.net> <1189165979.413869.252860@57g2000hsv.googlegroups.com> Message-ID: <200709080044.32229.o.renaud@laposte.net> Le vendredi 07 septembre 2007 13:52, Trans a ?crit?: > On Sep 3, 12:50 pm, Olivier Renaud wrote: > > I think the traffic of this list is low enough for not being split into > > two separate lists. The tickets posts are not a problem for me. > > Hi Olivier, > > Glad to hear your voice. And being the only one on the topic at hand, > doubly verifies that you are absolutely correct ;) > > Which is, Yea!, less work for me anyway. > > Thanks, > T. Thanks. Oh yeah, I like this list : my opinions are truly taken into account :D -- Olivier Renaud From transfire at gmail.com Sun Sep 9 09:57:21 2007 From: transfire at gmail.com (Trans) Date: Sun, 09 Sep 2007 13:57:21 -0000 Subject: [Facets] Lay me out 2.0 Message-ID: <1189346241.282037.147980@y42g2000hsy.googlegroups.com> I'm just about ready to release version 2.0. I have only one last major decision to make, and it is an important one. So I thought it a good idea to put it out to the community. As you know, Facets 1.8+ is laid out between facets/core/ and facets/ more/ subdirectories. There is also a facet/ shortcut directory that simply contains files that redirect back to the first two. The idea being that the extension method libs were in core/, the other libs in more/, and facet/ was for convenience. With Facets 2.0 there are two points that make things different: 1) A goal of 2.0 was to make all the libs directly available via facets/, without the need for core/ or more/ or redirection. 2) The extensions are no longer stored one-file-per-method, but are instead bundled with other closely related methods. However, Facets will still provide per-method requires via redirection files. So those two points change things a bit. To take them into account, the current 2.0 layout looks like this: lib/facets/ <-- all libs lib/facet/ <-- method redirects Unfortunately this layout almost completely breaks backward- compatibility with 1.8. Is there a remedy? I could offer backward compatibility if I did this instead: lib/facets/core/ <-- method redirects lib/facets/more/ <-- additional libs lib/facets/xore/ <-- extension libs Yes, the xore/ is a bit weird (do you have a better name?), but it keeps with the flow. With this layout I can use RubyGems' libpath specification parameter to add more/ and xore/ to the load path and achieve my first goal while remaining backward compatible with 1.8. The problem though, is that _manual_ installs have no means of automatically adding to the load path. So those will need a special file that would either have to be loaded at the start of ones app or added to the RUBYOPT environment variable. Is that extra hassle worth it? And, with regard to require statements, how important is backward compatibility to you? Thanks, T. From o.renaud at laposte.net Tue Sep 11 16:40:09 2007 From: o.renaud at laposte.net (Olivier Renaud) Date: Tue, 11 Sep 2007 22:40:09 +0200 Subject: [Facets] Lay me out 2.0 In-Reply-To: <1189346241.282037.147980@y42g2000hsy.googlegroups.com> References: <1189346241.282037.147980@y42g2000hsy.googlegroups.com> Message-ID: <200709112240.10583.o.renaud@laposte.net> Le dimanche 09 septembre 2007 15:57, Trans a ?crit?: > I'm just about ready to release version 2.0. I have only one last > major decision to make, and it is an important one. So I thought it a > good idea to put it out to the community. > > As you know, Facets 1.8+ is laid out between facets/core/ and facets/ > more/ subdirectories. There is also a facet/ shortcut directory that > simply contains files that redirect back to the first two. The idea > being that the extension method libs were in core/, the other libs in > more/, and facet/ was for convenience. > > With Facets 2.0 there are two points that make things different: > > 1) A goal of 2.0 was to make all the libs directly available via > facets/, without the need for core/ or more/ or redirection. > > 2) The extensions are no longer stored one-file-per-method, but are > instead bundled with other closely related methods. However, Facets > will still provide per-method requires via redirection files. > > So those two points change things a bit. To take them into account, > the current 2.0 layout looks like this: > > lib/facets/ <-- all libs > lib/facet/ <-- method redirects > > Unfortunately this layout almost completely breaks backward- > compatibility with 1.8. > > Is there a remedy? I could offer backward compatibility if I did this > instead: > > lib/facets/core/ <-- method redirects > lib/facets/more/ <-- additional libs > lib/facets/xore/ <-- extension libs > > Yes, the xore/ is a bit weird (do you have a better name?), but it > keeps with the flow. With this layout I can use RubyGems' libpath > specification parameter to add more/ and xore/ to the load path and > achieve my first goal while remaining backward compatible with 1.8. > > The problem though, is that _manual_ installs have no means of > automatically adding to the load path. So those will need a special > file that would either have to be loaded at the start of ones app or > added to the RUBYOPT environment variable. > > Is that extra hassle worth it? > > And, with regard to require statements, how important is backward > compatibility to you? > > Thanks, > T. Uh oh, dilemma ahead ! I thought this 2.0 version would completely break backward compatibility. But if there is a way to be backward compatible, this possibility should be made feasible. However, the solution you are presenting does the opposite : it keeps the same old layout, and provides a hack for being used the way you first intended to. Not a big deal, but I think the better would be : let the new layout be the default, and provide a way to be backward compatible. I don't know if this is possible. Anyway, I say this, but I personnaly broke the API of PQueue when I worked on it ! Someone on rubytalk pointed out the incompatibility, so I think there's a real need for backward compatibility. -- Olivier Renaud From transfire at gmail.com Sat Sep 15 07:43:44 2007 From: transfire at gmail.com (Trans) Date: Sat, 15 Sep 2007 11:43:44 -0000 Subject: [Facets] Lay me out 2.0 In-Reply-To: <200709112240.10583.o.renaud@laposte.net> References: <1189346241.282037.147980@y42g2000hsy.googlegroups.com> <200709112240.10583.o.renaud@laposte.net> Message-ID: <1189856624.425676.88360@50g2000hsm.googlegroups.com> On Sep 11, 1:40 pm, Olivier Renaud wrote: > Uh oh, dilemma ahead ! > I thought this 2.0 version would completely break backward compatibility. But > if there is a way to be backward compatible, this possibility should be made > feasible. However, the solution you are presenting does the opposite : it > keeps the same old layout, and provides a hack for being used the way you > first intended to. Not a big deal, but I think the better would be : let the > new layout be the default, and provide a way to be backward compatible. I > don't know if this is possible. > Anyway, I say this, but I personnaly broke the API of PQueue when I worked on > it ! Someone on rubytalk pointed out the incompatibility, so I think there's > a real need for backward compatibility. Backward compatibility is important, of course. And except for the libs that have been moved to their own projects, the vast majority of Facets is backward compatible with 1.8 series. That's not to say there won't be upgrade issues to address, but mostly 2.0 was a matter of restructuring, not so much altering functionality. I actually made a mistake in my analysis of the possibility for backward compatibility of the require statements. Turns out, it's simply not possible (short of hacking #require itself). So that's that. Thankfully this is only a matter of require statements --so it's not difficult to update a project. All requires are now simply: require 'facets/{name}' There is no longer more/ or core/, or even singular facet/. This is achieved via RubyGem's libpath parameter (or a specialized installer in the case of site_ruby installs --that was the tricky part ;) Also note, that if you do: require 'facets' You're loading the entire "core" library. (Look in lib/core/facets, to see what that contains). This is quite different from the old require 'facets' which only loaded a dozen or so very basic extensions and added facets/core and facets/more to the LOAD_PATH. I may make an extra lib for the latter functionality, but it's not as important now that everything is simply under facets/. T. From transfire at gmail.com Sat Sep 15 07:58:43 2007 From: transfire at gmail.com (Trans) Date: Sat, 15 Sep 2007 11:58:43 -0000 Subject: [Facets] 2.0 Beta Gem Message-ID: <1189857523.903632.118090@g4g2000hsf.googlegroups.com> If you'd like to try 2.0 out, you can get a beta gem here: $ wget http://facets.rubyforge.org/pkg/facets-2.0.0.gem $ gem install facets-2.0.0.gem Usage is simple: require 'facets/{lib}' Where {lib} is the name of a library, class, module or method reference. Some examples: require 'facets/openobject' require 'facets/hash' require 'facets/string/indexable' require 'facets/integer/factorial' You can also do require 'facets' This loads all Facets' core extensions (look in lib/core/facets to see what this includes), and is the recommended approach if you are using numerous extensions. (Note that require 'facets' is not the same as in 1.8 --it no longer adds facets' lib locations to the load path.) I know of only one feature I have to fix before release (adding #new to Multiton), though surely a few others will pop up. Please let me know if you come across anything while trying it out. T. From transfire at gmail.com Sun Sep 16 13:17:09 2007 From: transfire at gmail.com (Trans) Date: Sun, 16 Sep 2007 17:17:09 -0000 Subject: [Facets] 2.0 Beta Gem In-Reply-To: <1189857523.903632.118090@g4g2000hsf.googlegroups.com> References: <1189857523.903632.118090@g4g2000hsf.googlegroups.com> Message-ID: <1189963029.126847.81370@k79g2000hse.googlegroups.com> On Sep 15, 4:58 am, Trans wrote: > If you'd like to try 2.0 out, you can get a beta gem here: > > $ wgethttp://facets.rubyforge.org/pkg/facets-2.0.0.gem > $ gem install facets-2.0.0.gem Just updated the gem with a few minor fixes. T.