PCE version 4C man_modulenamespaceid_tablemodified current_idOIxN class/obtainN referenceC hash_tablerefersizeOIxNbothIsN V.?._contextCman_variable_card identifiermodule last_modifiednamesummary descriptionsee_alsoinheritdefaultsOIxN V.?._contextRICdateOIx5†iÃN_contextnnnCchainsizeOIxIeN $class/message$V.message.contextXnsNC.?Cman_class_card identifiermodule last_modifiednamesummary descriptionsee_alsoinherituser_interfacebugsOIxNC.?RIOIx/±gN?nCstringOIxyClass ? is (pronounced as `obtainer') is a template for the virtual machine instruction get in the same fashion as a message object is a template to the send operation. Obtainers are the most commonly used function objects. Obtainers add a very powerful mechanism to PCE. Understanding them is critical for writing readable and fast PCE programs. Please study the examples. In the example below, an obtainer is used to combine dialog_item selections to create a single call to the application: ?- new(D, dialog), send(D, append, new(label)), % for feedback send(D, append, new(Name, text_item(name, ''))), send(D, append, new(Age, text_item(age, ''))), send(D, append, button(create, message(@prolog, create_person, Name?selection, Age?selection))), send(D, open). Of course, the application must define the predicate create_person.OI xIeN$objects$O.arg1eN $topics$117eN$class/get_method$C.get_methodeN$class/block$C.blockeN $topics$102eN $examples$3eN$class/object$M.object.G._sloteN$$class/object$M.object.G._referenceseN!$class/object$M.object.G._inspecteN$class/object$M.object.G._flagseN$$class/object$M.object.G._class_nameeN$class/object$M.object.G._classeN$class/object$M.object.G._arityeN$class/object$M.object.G._argEN!$class/object$M.object.S._inspecteN$class/object$M.object.S._freeXnnnXaCnumberOI xx