Hey guys, another release is up. A couple of fixes, and one main new feature - a search feature based on parse tree matching.
This lets you find just about any pattern in the code that you can describe. You can look in a class, a class category, or all the system (that'll take a while!).
The way the search work is like this - You give it a pattern that looks like the code you want to match `@exp halt
will match "3 halt" and also "(3 + 4) halt".
You can also specify a test clause. For example,
The pattern - `@Expression with the test clause - aNode isVariable and: [(class _ Smalltalk classNamed: aNode name) isBehavior and: [class allSuperclasses includes: Morph]]
Will look for every expression, that's a variable, that's really a global, and a class, and a subclass of Morph (In short, you'll see all the methods that reference some Morph class explicitly).
Note that the clause is really compiled as the body of a block, that recieves aNode as it's only parameters.
To invoke the search, go to the "RB - Class" menu, and poke the "ind code like..." item. Invoking it with no class will apply the search to the category, if no category either, then all categories.
To load the RB, do (btw, tests show you must delete any Squeak%20RB projects from your Squeaklets directory) - ProjectLoading installRemoteNamed: 'Squeak%20RB.pr' from: 'http://squeak.heeg.de:8080/TFODC69UQ0MFRIHMG40DRML1CU7VYZ9-4/Squeak%20R B.pr' named: 'SqueakRB' in: Project current.
Daniel PS - anyone know the rationale for Project>>fromUrl: working only for the predefined servers?
Hi Daniel,
I got a walk back 'Error: subscript is out of bounds: 0' when clicking in SmallLint Results window where there are no result messages.
I am learning to use RB and found that SmallLint reports 39 'messages sent but not implemented' bugs for Kernel-Objects and Kernel-Classes. Are there really bugs for these two categories or it's SmallLint's bug ;-)
Cheers,
PhiHo
----- Original Message ----- From: danielv@netvision.net.il To: squeak-dev@lists.squeakfoundation.org Sent: Friday, September 28, 2001 8:51 PM Subject: [ANN] Squeak RB release
Hey guys, another release is up. A couple of fixes, and one main new feature - a search feature based on parse tree matching.
This lets you find just about any pattern in the code that you can describe. You can look in a class, a class category, or all the system (that'll take a while!).
The way the search work is like this - You give it a pattern that looks like the code you want to match `@exp halt
will match "3 halt" and also "(3 + 4) halt".
You can also specify a test clause. For example,
The pattern - `@Expression with the test clause - aNode isVariable and: [(class _ Smalltalk classNamed: aNode name) isBehavior and: [class allSuperclasses includes: Morph]]
Will look for every expression, that's a variable, that's really a global, and a class, and a subclass of Morph (In short, you'll see all the methods that reference some Morph class explicitly).
Note that the clause is really compiled as the body of a block, that recieves aNode as it's only parameters.
To invoke the search, go to the "RB - Class" menu, and poke the "ind code like..." item. Invoking it with no class will apply the search to the category, if no category either, then all categories.
To load the RB, do (btw, tests show you must delete any Squeak%20RB projects from your Squeaklets directory) - ProjectLoading installRemoteNamed: 'Squeak%20RB.pr' from: 'http://squeak.heeg.de:8080/TFODC69UQ0MFRIHMG40DRML1CU7VYZ9-4/Squeak%20R B.pr' named: 'SqueakRB' in: Project current.
Daniel PS - anyone know the rationale for Project>>fromUrl: working only for the predefined servers?
squeak-dev@lists.squeakfoundation.org