You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(5) |
Nov
(13) |
Dec
(5) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(5) |
Feb
|
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
(9) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2003 |
Jan
|
Feb
(2) |
Mar
(2) |
Apr
|
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Frank T. <ft...@ne...> - 2002-01-16 23:17:55
|
Juergen Hermann, at 00:15 +0100 on 2002-01-17, wrote: > No clue, never needed that. And I don't really see a reason for the > separate distro. After all, people can always ignore what they do not > need, IMHO it just adds confusion to rip apart things. The reason I ask is because the aop.py module is fairly completed, but the rest Pythius has stagnated, preventing a release. I'd like to get a release of the aop.py out, so that I can get comments back on its usefulness, bugs, etc. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2002-01-16 23:15:07
|
On Wed, 16 Jan 2002 17:52:50 -0500 (EST), Frank Tobin wrote: >More of, I'd like to release the aop.py separately as a package; is the= >setup.py scheme stuff capable of handling a 'subpackage' in that respec= t? No clue, never needed that. And I don't really see a reason for the separate distro. After all, people can always ignore what they do not ne= ed, IMHO it just adds confusion to rip apart things. Ciao, J=FCrgen |
From: Frank T. <ft...@ne...> - 2002-01-16 22:52:54
|
Juergen Hermann, at 05:58 +0100 on 2001-12-19, wrote: > >A thought: it might be advisable to put out the aop.py module as a > >separate package of Pythius. Kinda like a 'subproject' of Pythius. > > I see absolutely no problem in making it a subpackage of pythius > (pythius/pythius/aop/__init__.py). Feel free to do anything in that > respect (but do not forget to add your new subpackage to setup.py). > > If you think of either creating a second top-level package, or even an > own CVS module, that opens a can of worms regarding packaging and stuff > that I'd want to discuss before it happens. More of, I'd like to release the aop.py separately as a package; is the setup.py scheme stuff capable of handling a 'subpackage' in that respect? -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2001-12-19 04:59:12
|
On Tue, 18 Dec 2001 23:24:56 -0500 (EST), Frank Tobin wrote: >A thought: it might be advisable to put out the aop.py module as a >separate package of Pythius. Kinda like a 'subproject' of Pythius. I see absolutely no problem in making it a subpackage of pythius (pythius/pythius/aop/__init__.py). Feel free to do anything in that respect (but do not forget to add your new subpackage to setup.py). If you think of either creating a second top-level package, or even an own CVS module, that opens a can of worms regarding packaging and stuff = that I'd want to discuss before it happens. Ciao, J=FCrgen |
From: Frank T. <ft...@ne...> - 2001-12-19 04:24:59
|
A thought: it might be advisable to put out the aop.py module as a separate package of Pythius. Kinda like a 'subproject' of Pythius. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2001-12-08 07:12:52
|
On Fri, 7 Dec 2001 23:18:30 -0500 (EST), Frank Tobin wrote: >I don't know if anyone is noticing, but I modified the API for the aop.= py >module; it doesn't use the 'point' timeframe anymore, and simply uses o= ne >of ('before', 'after', 'around') instead, mainly for simplicity for the= >user's sake. I plan to take a look at your code during xmas, currently I'm too busy w= ith MoinMoin (and writing a win32 cron service in python ;). Ciao, J=FCrgen |
From: Frank T. <ft...@ne...> - 2001-12-08 04:18:33
|
I don't know if anyone is noticing, but I modified the API for the aop.py module; it doesn't use the 'point' timeframe anymore, and simply uses one of ('before', 'after', 'around') instead, mainly for simplicity for the user's sake. Also, instead of using myaspect.at(), for readibility, you can use myaspect.before(), myaspect.after(), or myaspect.around() instead. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Frank T. <ft...@ne...> - 2001-12-04 04:31:28
|
I've finally finished what I would consider an alpha version of the aop.py submodule. It is documented, and has unittests for it. Ideally, I'd like to hear some comments on it, suggestions, etc, etc. There are a couple of advanced features I can think of, like complex pointcut definition like AspectJ can do (e.g., 'caught exception within foobar() method), but for right now, I think I have a workable alpha (oxymoron?). The documentation can be viewed via pydoc, and is quite large (and probably full of typos; I haven't proofread). Actually, the documentation is larger than the code, but given the complexity of the subject, I think its appropriate. I'd be glad to work with someone to try and get aop.py worked into Pythius or even another project, for I'm sure that working with aop.py will probably be a new, trying experience. The whole module is quite small (225 lines including whitespace?), but the key hindrance was finally figuring out what model I wanted. To run the unittests simply run "python aop-unittests.py" (gives a small report). To run the doctest tests, run "python aop.py" (should return empty).. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Frank T. <ft...@ne...> - 2001-11-21 20:52:00
|
Juergen Hermann, at 21:24 +0100 on 2001-11-21, wrote: No prob, if you give me your sf.net login. ftobin -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2001-11-21 20:24:42
|
On Wed, 21 Nov 2001 12:39:37 -0500 (EST), Frank Tobin wrote: >Could I be placed as a developer for Pythius so that I can use the CVS >repository at least? I've been working quite hard at figuring out what= >exactly I want pyaspect.py to do, and have been constantly re-writing >code, and I'd like a repository for this. No prob, if you give me your sf.net login. Ciao, J=FCrgen |
From: Frank T. <ft...@ne...> - 2001-11-21 17:39:47
|
Could I be placed as a developer for Pythius so that I can use the CVS repository at least? I've been working quite hard at figuring out what exactly I want pyaspect.py to do, and have been constantly re-writing code, and I'd like a repository for this. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Frank T. <ft...@ne...> - 2001-11-09 04:37:35
|
Juergen Hermann, at 04:35 +0100 on 2001-11-09, wrote: My original plan was to use "text-mode" (non-dynamic, source code level, static) aspects, i.e. #if MODE #code #code #endif MODE and remove/insert the "#" via that tool. Ick. We'll have to talk about this in the future when I get my stuff ready. Putting functionality in comments doesn't pass my smell test. (It's kinda like Javadoc, but without the nice run-time-accessible structure that Python strings give you). Still, it could be interesting for listing dynamic aspects it detects in the code; we'll see when you have you implementation ready. A lot will depend upon how I actually decide to make the API available, I guess. FYI, it seems like the Beaudy hook is actually not the right way for me to go about things. For one, it requires users adding an metaclass instance to their bases. That is, modifying existing code; this goes against one huge design goal of mine: to absolutely minimize the modifying of existing code. It destroys any hope of applying aspects to others' modules you are using but can't edit. However, of course, the Beaudy hook is nothing magic; it can be implemented in a roundabout way, and actually, I think implementing in the roundabout way I'm working on makes the whole thing a *lot* simpler to comprehend. It still uses metaclasses, but without the hook which makes your mind go round-and-round. Metaclasses are a simple concept. The Beaudy hook is just an evil hack for what should be something in the Python language (defining metaclasses, etc). -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2001-11-09 03:33:07
|
On Thu, 8 Nov 2001 21:18:52 -0500 (EST), Frank Tobin wrote: >I don't see how a command-line program is applicable to the aspects part >of the project... My original plan was to use "text-mode" (non-dynamic, source code level, static) aspects, i.e. #if MODE #code #code #endif MODE and remove/insert the "#" via that tool. Still, it could be interesting for listing dynamic aspects it detects in the code; we'll see when you have you implementation ready. |
From: Frank T. <ft...@ne...> - 2001-11-09 02:18:58
|
Juergen Hermann, at 03:16 +0100 on 2001-11-09, wrote: I implied that YOU make a "mkdir aop". :) Ah. Silly me :) pyaspect.py is a placeholder for you to fill out, similar to the other two commands (i.e. take the content of pydent.py and adapt it). I don't see how a command-line program is applicable to the aspects part of the project... -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2001-11-09 02:14:26
|
On Thu, 8 Nov 2001 21:09:06 -0500 (EST), Frank Tobin wrote: >I don't see any .aop or .aspects submodule in CVS. I see the pyaspect.py >file, but it's functionaly empty. I implied that YOU make a "mkdir aop". :) pyaspect.py is a placeholder for you to fill out, similar to the other two commands (i.e. take the content of pydent.py and adapt it). |
From: Frank T. <ft...@ne...> - 2001-11-09 02:09:19
|
Juergen Hermann, at 01:46 +0100 on 2001-11-07, wrote: I reorganized the project and added distutils support. Frank, take a look and try to add stuff into the existing structure, like into a pythius.aop or .aspects submodule. Note that commands have to go to pythius.scripts, look at the examples there. I don't see any .aop or .aspects submodule in CVS. I see the pyaspect.py file, but it's functionaly empty. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2001-11-07 00:44:25
|
Hi! I reorganized the project and added distutils support. Frank, take a look and try to add stuff into the existing structure, like into a pythius.aop or .aspects submodule. Note that commands have to go to pythius.scripts, look at the examples there. If you have any questions, ask. It's generally much easier to get the package layout right immediately than fixing it later. :) NB: I'm anal about naming. :) As a general rule, use lowercase module names, CapsStartCamelCase class names and verbObject method names. Ciao, J=FCrgen |
From: Frank T. <ft...@ne...> - 2001-11-04 23:07:38
|
Shae Erisson, at 11:55 +0200 on 2001-11-04, wrote: A metaclass specifies how classes work. Python has multiple inheritance, Java does not. A metaclass object in Python could specify that Python cannot do multiple inheritance. A particular metaclass instance could let Python have only instances and instance inheritance/delegation like Javascript, NewtonScript, and Self. It helps a little. Metaclasses are such a divergence from the concept of statically-defined classes, though, that it might take me a while to digest what magic you can do with them. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Shae E. <sh...@we...> - 2001-11-04 09:56:06
|
From: Frank Tobin <ft...@ne...> Subject: Re: [Pythius-developers] python metaclasses Date: Sun, 4 Nov 2001 00:29:52 -0500 (EST) > Metaclasses seem more and more like a good way to go. As Python > progresses, metaclasses will be more and more possible, because of the Metaclasses are called that because they affect how classes themselves work. If you've read about or used Java, C++, and Python, you'll realize they have slightly different ways of doing inheritance or operator overloading, or other useful things. If you consider specifying how inheritance and operator overloading work with an object, that object would be a metaclass. A metaclass specifies how classes work. Python has multiple inheritance, Java does not. A metaclass object in Python could specify that Python cannot do multiple inheritance. A particular metaclass instance could let Python have only instances and instance inheritance/delegation like Javascript, NewtonScript, and Self. Does this help any? ---- Shae Matijs Erisson - http://www.webwitches.com/~shae/ Rabid Linux/XEmacs User - MSOffice documents will be returned as LaTeX |
From: Frank T. <ft...@ne...> - 2001-11-04 05:29:57
|
Frank Tobin, at 23:15 -0500 on 2001-11-03, wrote: Metaclasses are how TransWarp implements its AOP system, but I'm still not quite sure I like their model/API. Metaclasses seem more and more like a good way to go. As Python progresses, metaclasses will be more and more possible, because of the unifying of types and classes (I'm not *exactly* sure how it helps, but I did read it someplace, and it vaguely make sense; but enough talking about things I'm not sure of). However, TransWrap implements an 'old-style' type of Metaclass that relies on C extensions. I'm not too keen on writing C extensions for Python (or Perl or anything, for that matter, unless it is for algorithmic efficiency). But there are means to implement Aspects in pure python (as described in the paper I mentioned), so I'm going to investigate those. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Frank T. <ft...@ne...> - 2001-11-04 04:16:03
|
FYI, I just read a great document on Python metaclases: Metaclasses in Python 1.5 http://www.python.org/doc/essays/metaclasses/ The paper never really mentions AOP, but it is quite clear they are talking about AOP. Metaclasses are how TransWarp implements its AOP system, but I'm still not quite sure I like their model/API. I'm going to have to do more research into the metaclass approach and see if it is a good way to go. It's a difficult idea to grasp, and I haven't quite seen its full implications yet. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Frank T. <ft...@ne...> - 2001-10-31 02:01:15
|
Juergen Hermann, at 00:58 +0100 on 2001-10-31, wrote: Sure. I'll work on the project structure this weekend, so you can reasonably add things. From the looks of things, initially I'll be able to give aspect access (before, after, around) to specific methods (done), and class instance constructions/destructions (working on). Unfortunately, setattr/getattr access cannot be achieved, since according to the Language Reference, __*attr__ methods are cached when the class is read in, so they can't be modified during runtime (which is my means of access). Stage two would be to get method-matching regexes, so you can say things like "run F before all methods of class C that match '^get_' ". -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Frank T. <ft...@ne...> - 2001-10-30 00:11:08
|
Juergen Hermann, at 15:56 +0200 on 2001-10-27, wrote: Not much, lately, I'm too involved in other projects, and also I was alone so far on the project (always a motivation killer). So if you're inclined, I'm certainly open to add you to the project. If you're still interested in working on Pythius, I'd be glad to contribute, because the Pythius idea (specifically run-time code-metrics) gives a good front-end application to AOP. An AOP library by itself would not nearly be as interesting. My current idea of how we could work this out would be that I write an AOP module, and then try to work with you to get Pythius using it to do some stats. Sound reasonable? -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Frank T. <ft...@ne...> - 2001-10-27 20:02:40
|
Juergen Hermann, at 15:56 +0200 on 2001-10-27, wrote: http://www.zope.org/Members/pje/Wikis/TransWarp/HomePage and compare it to your ideas. I don't like TransWarp's aspect model. They are extending classes horizontally, and I don't think it's a model that provides anything near what AspectJ's model does (the before/after/around pointcut system). AspectR also follows AspectJ's model. Likewise, I'm shooting more for AspectJ's model. -- Frank Tobin http://www.neverending.org/~ftobin/ |
From: Juergen H. <jh...@we...> - 2001-10-27 13:55:07
|
On Sat, 27 Oct 2001 00:12:43 -0400 (EDT), Frank Tobin wrote: >I'm fairly new to AOP, and was thinking about implementing my own toolk= it >for AOP and getting a project on SF for it, but I looked around and fou= nd >your project partly-started, so I thought I'd nudge in and see what's >happening. Not much, lately, I'm too involved in other projects, and also I was alo= ne so far on the project (always a motivation killer). So if you're inclined, = I'm certainly open to add you to the project. Please take a look at this: http://www.zope.org/Members/pje/Wikis/TransWarp/HomePage and compare it to your ideas. Ciao, J=FCrgen |