Almraet Th/.¢ paper dnscv/bes a sys'tfm we haw de~/optJd to bnpmw ~ sp~ed wtd sacce~ rote w/th wMch wws bmw~ aoJh,~//brav/~ The s3etem/, a/eambtg Learning Apprentice for Browsing "Browsing" is the searching of a computer hl~aty for an individmd ~ item. The bnnmn doing the search (the "user') ,i,,, to find an item (the "target') that best meets his/her nxluimn~ts. The user's mental model of the tazget is called the "sentr, h goal'. Our testbed browsing applic~ion is software rense. The h'bmx7 is a collection of object-oriented softwa~. An item in the library is a "class" containing locally defined "instance vaziables" and "methods'. A class also inherits the va6ables and methods of its superclass in the inhesitance hletat~y. A class's functionality is detetm/ned by its methods. The aim of browsing is to find the class whose functionality is closest to the requinKi functional/ty. In our browsing system the user is initially presented with a list of all the claues in the h'bnwy. As browsing proceeds additional class lists and method lists are created by the nsef's actions. To apply an operator to a class, the user selects the class from any available class list and then specifies the operator to be applied. An example of a clau-hased operator is "Defined Methods"; when applied to class C this creates a list of the methods C defines locally. To apply an operator to a method is a two step process. Hnt one must select the method in the method fist produced by "Defmed Methods'. ~ "opens" the method in a window that is used for inspecting a method's details. To apply an operate, the user must "magk" one of more methods in this window and then specLCy the operator-For example the operator "Used By" creates a list of classes oniesed by the degnm to which each uses ill the cun, ently marked methods. A cless's score is based on the si~ of the madmd methods' names to the nmnes of the methods that are called by the class's own methods