.Open Smalltalk Methods Initially defined in Our Smalltalk. . Array methods lessthan::= `theArray < aCollection`::=` Test for lexicographic ordering`. equals::= `theArray = aCollection`::=` Test for all elements equal`. atput::= `theArray at: index put: value`::=` returns an array with an element change`. binaryDo::= `theArray binaryDo: aBlock`::=`Sends aBlock subscript and element pairs`. collect::= `theArray collect: aBlock `::=` TheArray is fed thru aBlock to become a new array``. copyFromlowto::= `theArray copyFrom: low to: high `::=` returns a subarray low..hig`. deepCopy::= `theArray deepCopy`. deepCopyFromto::= `theArray deepCopyFrom: low to: high `. do::= `theArray do: aBlock`::=` sending its elements to the block one by one`. exchange::= `theArray exchange: a and: b `::=`returns object with elements interchanged`. grow::= `theArray grow: aValue` ::= ` produces a larger array from theArray``. includesKey::= `theArray includesKey: index `::=`returns a Boolea`. new::= `theArray new` ::= ` produces a new empty array object``. reverseDo::= `theArray reverseDo: aBlock `::=`sends elements from last to first into aBlock``. select::= `theArray select: aCond` ::= ` selects elements in theArray that fit aCond giving an array``. shallowCopy::= `theArray shallowCopy`. size::= `theArray size `::=`returns an Integer equal to the number of elements`. withdo::= `theArray with: aCollection do: aBlock `::=`sends pairs from theArray and aCollection to aBlock`. with::= `theArray with: aCollection ifAbsent: z do: aBlock `. with::= `theArray with: newElement Returns a new array with newElement added to it``. . Block methods blockContext::= `theBlock blockContext: aContext`. checkArgumentCount::= `theBlock checkArgumentCount: count `::=`returns True object if number arguments in theBlock is equal to count`. value::= `theBlock value `::=`returns the object returned by the last statement in the bloc`. value::= `theBlock value: x Evaluate using x as an argument and return value of last statement`. valuevalue::= `theBlock value: x value: y Evaluate using x an y as arguments..`. valuevaluevalue:= `theBlock value: x value: y value: z Evaluate using x,y and z as argument`. whileFalse::= `theBlock whileFalse: aBlock repeats theBlock until aBlock is true``. whileTrue::= `theBlock whileTrue` ::= ` repeating the block if its value is Tru`. whileTrue::= `theBlock whileTrue: aBlock repeating aBlock and while theBlock returns true`. . Boolean Methods and::= `theBoolean and: aBlock if theBoolean is true then evaluates block. If both true returns true, else returns false`. ifFalse::= `theBoolean ifFalse: falseBlock if theBoolean is false evaluate the block`. ifFalse::= `theBoolean ifFalse: falseBlock ifTrue: trueBlock ifthenelse, in fact handled by either True or False`. ifTrue::= `theBoolean ifTrue: trueBlock if theBoolean is true then evaluate the trueBlock`. or::= `theBoolean or: aBlock If theBoolean is false evaluates aBlock and returns True if aBlock returns true`. . ByteArray methods asString::= `theByteArray asString `::=`returns converted array as a string`. basicAt::= `theByteArray basicAt: index `::=`returns byte at index position in the ByteArray`. basicAt::= `theByteArray basicAt: index put: value `::=`returns array of bytes with element at index changed to be value`. size::= `theByteArray size `::=`returns an integer equal number of elements in array`. size::= `theByteArray size: value ?`. . Char methods <::= `theChar < aValue `::=`returns Boolean true/false depending on comparison`. =::= `theChar = aValue `::=`returns Boolean true/false depending on comparison`. ==::= `theChar == aValue `::=`returns true iff same objects`. asInteger::= `theChar asInteger `::=`returns numeric equivalent of character`. asString::= `theChar asString `::=`returns the string with theChar as its single element`. digitValue::= `theChar digitValue `::=`return result of converting theChar to a digit(decimal?)`. isAlphaNumeric::= `theChar isAlphaNumeric `::=`returns Boolean, true when letter or digit`. isAlphabetic::= `theChar isAlphabetic `::=`returns Boolean, true when letter`. isBlank::= `theChar isBlank `::=`returns a Boolean, true when theChar is blank`. isChar::= `theChar isChar`. isDigit::= `theChar isDigit `::=`returns Boolean, true when theCahr is a digit`. isLowercase::= `theChar isLowercase `::=`returns a Boolean, true when theCahr is a lower case letter`. isUppercase::= `theChar isUppercase `::=`returns a Boolean, tru when a capital letter`. printString::= `theChar printString `::=`returns printable image`. value::= `theChar value: aValue private - used for initialization ``. . Class methods addMethod::= `theClass addMethod ` ::= ` Lets you add a new method to theClass - using an editor``. addSubClass::= `theClass addSubClass` ::= ` Adds a new class with variables, name etc - interactive.``. addSubClass::= `theClass addSubClass: aSymbol instanceVariableNames: aString `. display::= `theClass display`. doEdit::= `theClass doEdit: method`. editMethod::= `theClass editMethod: aSymbol Lets you edit method of theClass called aSymbol``. fileOut::= `theClass fileOut `::=`Sends text version of theClass to open file``. fileOutMethodsOn::= `theClass fileOutMethodsOn: aFile`. fileOutOn::= `theClass fileOutOn: aFile`. initialize::= `theClass initialize ?`. instanceSize::= `theClass instanceSize ?`. methodNamed::= `theClass methodNamed: aSymbol ?``. methods::= `theClass methods` ::= ` generates a dictionary of methods of theClass`. name::= `theClass name `::=`returns the name of theClass`. name::= `theClass name: aString ?``. new::= `theClass new `::=`returns a new object as an instance of class and also sends it a `new' message if the Class has one'. new::= `theClass new: size hack out block the right size and class ``. printString::= `theClass printString `::=`returns printable image`. readInstanceVariables::= `theClass readInstanceVariables`. readMethods::= `theClass readMethods`. respondsTo::= `theClass respondsTo `::=`returns a collection of methods that theClass responds to`. respondsTo::= `theClass respondsTo: theSymbol `::=`returns Boolean, true if theClass responds to theSymbol`. subClasses::= `theClass subClasses ?`. superClass::= `theClass superClass `::=`returns the Class theClass is a subclass of`. superClass::= `theClass superClass: aClass `::=`returns Boolean, true if aClass is a super class of theClass`. upSuperclassChain::= `theClass upSuperclassChain: aBlock ?`. variables::= `theClass variables `::=`returns a Collection of the instance variables of theClass`. variables::= `theClass variables: nameArray ?`. viewMethod::= `theClass viewMethod: methodNameSymbol`. watch::= `theClass watch: name `. . Collection methods <::= `theCollection < aCollection `::=`returns Boolean true/false depending on comparison`. =::= `theCollection = aCollection ` ::= `Test for equality`. asArray::= `theCollection asArray `::=`return an array of elements in theCollection`. asByteArray::= `theCollection asByteArray `::=`return an array of elements in theCollection`. asSet::= `theCollection asSet `::=`return a set of elements in theCollection with noduplicates`. asString::= `theCollection asString `::=`return a string representing the collection`. display::= `theCollection display` ::= ` output the elements in the array to the termina`. includes::= `theCollection includes: value`. includes::= `theCollection includes: value `::=`return Boolean, True if valu is in theCollection`. inject::= `theCollection inject: thisValue into: binaryBlock `. inject::= `theCollection inject: thisValue into: binaryBlock ?`. isEmpty::= `theCollection isEmpty `::=`returns Boolean, true whne theCollection is empty`. occurrencesOf::= `theCollection occurrencesOf: anObject `::=`returns an Integer count of the number of times anObject occurs in theCollection`. printString::= `theCollection printString `::=`returns printable image`. size::= `theCollection size `::=`returns integer equal to number of elements in theCollection`. sort::= `theCollection sort `::=`returns a collection of elements in lexographic order`. sort::= `theCollection sort: aBlock `::=`returns sorted collection using block to compare pairs`. . Context methods arguments::= `theContext arguments: value ?`. atput::= `theContext at: key put: value`. blockReturn::= `theContext blockReturn`. copy::= `theContext copy`. executeFromcreator::= `theContext executeFrom: value creator: interp ?`. method::= `theContext method: value ?`. returnToBlock::= `theContext returnToBlock: bytePtr`. temporaries::= `theContext temporaries ?`. temporaries::= `theContext temporaries: theTemporary ?``. . Dictinary methods at::= `theDictionary at: aKey ifAbsent: exceptionBlock `::=`returns element with aKey or returns value of exceptionBlock`. at::= `theDictionary at: aKey put: aValue Places aValue in theDictionary with key Akay`. basicRemoveKey::= `theDictionary basicRemoveKey: aKey`::=` removes aKey from theDictionary`. binaryDo::= `theDictionary binaryDo: aBlock `::=`Sends pairs of subscripts and relevant values to aBlock`. display::= `theDictionary display ` ::= `show what keys are in theDictionary`. hash::= `theDictionary hash: aKey ?`. includesKey::= `theDictionary includesKey: aKey True if aKey is in theDictionar`. new::= `theDictionary new `::=`returns an empty dictionary - automatic done when any dictionary is created`. removeKey::= `theDictionary removeKey: aKey`::=` removes aKey from theDictionary`. removeKey::= `theDictionary removeKey: aKey ifAbsent: exceptionBlock`::=` removes aKey or evaluates the excptionBlock`. . False Methods ifTrue::= `theFalse ifTrue: trueBlock ifFalse: falseBlock Evaluates the trueBlock`. not::= `theFalse not `::=`returns True`. printString::= `theFalse printString`. xor::= `theFalse xor: aBoolean`. . File methods asString::= `theFile asString `. close::= `theFile close`. delete::= `theFile delete`. fileIn::= `theFile fileIn`. fileIn::= `theFile fileIn: name`. getNumber::= `theFile getNumber`. getString::= `theFile getString`. mode::= `theFile mode: m`. name::= `theFile name`. name::= `theFile name: string`. open::= `theFile open`. open::= `theFile open: m`. print::= `theFile print: aString`. printNoReturn::= `theFile printNoReturn: aString`. readUntil::= `theFile readUntil: conditionBlock doing: actionBlock `. saveImage::= `theFile saveImage`. scratchFile::= `theFile scratchFile`. . Float methods *::= `theFloat * value `::=`returns product as floating point`. +::= `theFloat + value `::=`returns sum`. -::= `theFloat - value `::=`returns the difference`. /::= `theFloat / value `::=`returns the result of floating point division`. <::= `theFloat < value `::=`returns Boolean true/false depending on comparison`. =::= `theFloat = value `::=`returns Boolean true/false depending on comparison`. ceiling::= `theFloat ceiling `::=`returns next integer equal or above theFloat`. coerce::= `theFloat coerce: value `::=`returns a value in a different class(?)`. exp::= `theFloat exp `::=`returns e to the power (theFloat)`. floor::= `theFloat floor `::=`returns largest integer less than of equal to theFloat`. fractionalPart::= `theFloat fractionalPart `::=`return the fractional part of theFloat`. generality::= `theFloat generality `::=`returns an integer indicating direction of coercions`. integerPart::= `theFloat integerPart `::=`returns integer`. isFloat::= `theFloat isFloat`. ln::= `theFloat ln `::=`returns the natural logarithm of theFloat`. new::= `theFloat new`. printString::= `theFloat printString `::=`returns printable image`. quo::= `theFloat quo: value`. rounded::= `theFloat rounded `::=`returns an Integer closest to theFloat`. sqrt::= `theFloat sqrt `::=`returns the square root of theFloat`. truncated::= `theFloat truncated `::=`returns Integer below(?) or closer to zero(?) theFloat`. . Fraction methods *::= `theFraction * f` ::= `multiplication``. +::= `theFraction + f` ::= `sum, addition``. -::= `theFraction - f` ::= `difference, subtraction``. /::= `theFraction / f`. <::= `theFraction < f` ::= `Returns Boolean comparison, less than``. =::= `theFraction = f`. abs::= `theFraction abs`. asFloat::= `theFraction asFloat`. bottom::= `theFraction bottom`. coerce::= `theFraction coerce: x`. generality::= `theFraction generality`. isFraction::= `theFraction isFraction`. ln::= `theFraction ln`. printString::= `theFraction printString`. raisedTo::= `theFraction raisedTo: x`. reciprocal::= `theFraction reciprocal`. top::= `theFraction top`. truncated::= `theFraction truncated`. with::= `theFraction with: t over: b`. . IndexedCollection methods addAll::= `theIndexedCollection addAll: aCollection Adds whole of aCollection to theIndexedCollection`. asArray::= `theIndexedCollection asArray `::=`returns equivalent array`. asDictionary::= `theIndexedCollection asDictionary `::=`returns equivalent dictionary object`. at::= `theIndexedCollection at: aKey `::=`return item with aKey as key`. at::= `theIndexedCollection at: index ifAbsent: exceptionBlock Place aValue in theIndexedCollection with index value index`. binaryInject::= `theIndexedCollection binaryInject: thisValue into: aBlock ?`. collect::= `theIndexedCollection collect: aBlock `::=`returns a similar collection with each element the value returned by the block when given an element in theCollection as an argument`. do::= `theIndexedCollection do: aBlock For each item in theIndexedCollection in turn apply the block to the item`. indexOf::= `theIndexedCollection indexOf: aBlock ?`. indexOf::= `theIndexedCollection indexOf: aBlock ifAbsent: exceptionBlock ?`. keys::= `theIndexedCollection keys `::=`returns a collection of keys identifying objects in theIndexedCollection`. select::= `theIndexedCollection select: aBlock `::=`returns a list of items which when passed to aBlock reult in a True value being returned`. values::= `theIndexedCollection values `::=`returns a set of values in theIndexedCollection`. . Integer methods *::= `theInteger * value `::=`returns product as fixed point`. +::= `theInteger + value `::=`returns sum`. ,::= `theInteger , value`. -::= `theInteger - value `::=`returns the difference`. /::= `theInteger / value `::=`returns the fraction`. //::= `theInteger // value `::=`returns result of integer division`. <::= `theInteger < value `::=`returns Boolean true/false depending on comparison`. =::= `theInteger = value `::=`returns Boolean true/false depending on comparison`. >::= `theInteger > value `::=`returns Boolean true/false depending on comparison`. \\::= `theInteger \\ value `::=`returns result of integer division`. allMask::= `theInteger allMask: value ?`. anyMask::= `theInteger anyMask: value ?`. asCharacter::= `theInteger asCharacter `::=`returns equivalent character`. asDigit::= `theInteger asDigit ?`. asFloat::= `theInteger asFloat `::=`returns floating point version of theInteger`. asFraction::= `theInteger asFraction`. asLongInteger::= `theInteger asLongInteger `. asString::= `theInteger asString `::=`returns a string representing theInteger as a decima`. bitAnd::= `theInteger bitAnd: value rturns result of bitwise operation on theInteger and the value`. bitAt::= `theInteger bitAt: value `::=`returns integer(?) bit in position value in theInteger`. bitInvert::= `theInteger bitInvert rturns result of complementing each bit in theInteger`. bitOr::= `theInteger bitOr: value rturns result of bitwise operation on theInteger and the value`. bitShift::= `theInteger bitShift: value `::=`returns the result of shifting bits in theInteger`. bitXor::= `theInteger bitXor: value rturns result of complementing each bit in theInteger`. even::= `theInteger even `::=`return true if theInteger is divisible by 2`. factorial::= `theInteger factorial `::=`returns factorial of theInteger`. gcd::= `theInteger gcd: value `::=`return the greatest common divisor of theInteger and value`. generality::= `theInteger generality `::=`returns an integer indicating direction of coercions.`. isShortInteger::= `theInteger isShortInteger`. lcm::= `theInteger lcm: value `::=`returns the least common multiple of theInteger and value`. new::= `theInteger new`. odd::= `theInteger odd `::=`returns Boolean, true when division by 2 lease a remainder`. printString::= `theInteger printString `::=`returns printable image`. quo::= `theInteger quo: value `::=`returns the quotient of when theInteger is divided by value`. radix::= `theInteger radix: base ?`. rem::= `theInteger rem: value `::=`returns the remainder when theInteger is divided by value`. timesRepeat::= `theInteger timesRepeat: aBlock repats the evaluation of the block theInteger number of times`. truncated::= `theInteger truncated`. . Interval methods do::= `theInterval do: aBlock `. do::= `theInterval do: aBlock `::=`send each item in turn as agument to aBlock`. first::= `theInterval first` ::= ` Starts to generate items in interval, return first`. inRange::= `theInterval inRange: value `::=`returns Boolean: true if value is in theInterval``. lower::= `theInterval lower: aValue changes the lowest value in theInterval`. next::= `theInterval next ` ::= `generates the next item in interval after the last one`. reset::= `theInterval reset`. step::= `theInterval step: aValue specifies the step in theInterval`. upper::= `theInterval upper: aValue changes the upper end of an interval`. . Link methods add::= `theLink add: newValue whenFalse: aBlock ?`. at::= `theLink at: aKey ifAbsent: exceptionBlock `::=`return item with aKey as key`. at::= `theLink at: aKey put: aValue ?`. binaryDo::= `theLink binaryDo: aBlock `::=`Sends pairs of subscripts and relevant values to aBlock`. includesKey::= `theLink includesKey: aKey ?`. key::= `theLink key: aKey ?`. link::= `theLink link: aLink ?`. next::= `theLink next`. removeKey::= `theLink removeKey: aKey ?`. removeValue::= `theLink removeValue: aValue ?`. reverseDo::= `theLink reverseDo: aBlock`. size::= `theLink size `::=`returns integer equal to number of elements`. value::= `theLink value ?`. value::= `theLink value: aValue ?`. . List methods add::= `theList add: aValue adds aValue at the head of theList`. add::= `theList add: aValue ordered: aBlock adds aValue in the correct place to preserve order in theList`. addAll::= `theList addAll: aValue ?`. addFirst::= `theList addFirst: aValue add aValue before the first element of theList`. addLast::= `theList addLast: aValue add aValue after the end of theList`. collect::= `theList collect: aBlock elements in theList are passed to aBlock giving a list of block values`. do::= `theList do: aBlock `::=`send each item in turn as agument to aBlock`. first::= `theList first `::=`returns the first item in the list`. links::= `theList links`. reject::= `theList reject: aBlock `::=`returns a list of items that cause the block to return a False value when given items as arguments`. remove::= `theList remove: value `::=`the value is removed from theList`. removeFirst::= `theList removeFirst `::=`the first value in theList is removed`. reverseDo::= `theList reverseDo: aBlock`. select::= `theList select: aBlock `::=`returns list of items that aBlock gives a True value`. size::= `theList size `::=`returns integer equal to number of elements`. . LongInteger methods *::= `theLongInteger * n` ::= ` multiplication``. +::= `theLongInteger + n ` ::= `sum, addition``. -::= `theLongInteger - n ` ::= `difference, subtraction``. <::= `theLongInteger < n ` ::= `Returns Boolean comparison, less than``. =::= `theLongInteger = n`. abs::= `theLongInteger abs`. asFloat::= `theLongInteger asFloat `. bitShift::= `theLongInteger bitShift: n`. coerce::= `theLongInteger coerce: n`. digits::= `theLongInteger digits`. generality::= `theLongInteger generality`. isLongInteger::= `theLongInteger isLongInteger`. isShortInteger::= `theLongInteger isShortInteger`. negated::= `theLongInteger negated`. negative::= `theLongInteger negative`. new::= `theLongInteger new`. printString::= `theLongInteger printString `. quo::= `theLongInteger quo: value `. sign::= `theLongInteger sign: s digits: d`. timesShort::= `theLongInteger timesShort: value `. with::= `theLongInteger with: n bitDo: aBlock `. . Magnitude methods <::= `theMagnitude < value `::=`returns Boolean true/false depending on comparison`. <=::= `theMagnitude <= value `::=`returns Boolean true/false depending on comparison`. =::= `theMagnitude = value `::=`returns Boolean true/false depending on comparison`. >::= `theMagnitude > value `::=`returns Boolean true/false depending on comparison`. >=::= `theMagnitude >= value `::=`returns Boolean true/false depending on comparison`. between::= `theMagnitude between: low and: high `::=`returns Boolean true if theMagnitude is >=high and <= low`. isChar::= `theMagnitude isChar`. max::= `theMagnitude max: value `::=`returns the largest of theMagnitude and value`. min::= `theMagnitude min: value `::=`returns the lower of theMagnitude and cvalue`. ~=::= `theMagnitude ~= value `::=`returns Boolean value, true if not equal`. . Method methods compileWithClass::= `theMethod compileWithClass: aClass ?`. display::= `theMethod display outputs source code and compiled code of theMethod`. executeWith::= `theMethod executeWith: arguments`. message::= `theMethod message: aSymbol ?`. name::= `theMethod name `::=`returns the name of theMethod`. printString::= `theMethod printString `::=`returns printable image`. signature::= `theMethod signature`. text::= `theMethod text ?`. text::= `theMethod text: aString ?`. watch::= `theMethod watch: aBlock`. watchWith::= `theMethod watchWith: arguments`. . Number methods *::= `theNumber * value `::=`returns product with max generallity`. +::= `theNumber + value `::=`returns sum`. -::= `theNumber - value `::=`returns the difference`. /::= `theNumber / value `::=`returns the result of floating point division`. //::= `theNumber // value` ::= ` integer division, truncate towards negative infinity``. <::= `theNumber < value `::=`returns Boolean true/false depending on comparison`. =::= `theNumber = value `::=`returns Boolean true/false depending on comparison`. \\::= `theNumber \\ value ` ::= ` remainder after integer division ``. abs::= `theNumber abs `::=`returns absolute value`. ceiling::= `theNumber ceiling ` ::= ` the smallest integer greater than or equal this number``. copy::= `theNumber copy`. exp::= `theNumber exp `::=`returns e to the power (theFloat)`. floor::= `theNumber floor` ::= ` The largest integer that is less than or equal to me``. fractionalPart::= `theNumber fractionalPart`. isInteger::= `theNumber isInteger`. isNumber::= `theNumber isNumber`. ln::= `theNumber ln `::=`returns a Floating point natural logarithm of theNumber`. log::= `theNumber log: value Common logarithm (base 10)`. maxgen::= `theNumber maxgen: value ?`. negated::= `theNumber negated `::=`return the nagative of theNumber`. negative::= `theNumber negative `::=`return Boolean, true if less than zero?`. positive::= `theNumber positive `::=`returns a Boolean, true when theNumber is greater than zero`. quo::= `theNumber quo: value`. raisedTo:::= `theNumber raisedTo: n `::=`returns Number that is theNumber to the nth powe`. reciprocal::= `theNumber reciprocal 1.0/theNumeber`. rem:::= `theNumber rem: value`. roundTo:::= `theNumber roundTo: value ?`. sign::= `theNumber sign `::=`returns an Integer sign of theNumber`. sqrt::= `theNumber sqrt `::=`returns the square root of theNumber as a Float`. squared::= `theNumber squared `::=`returns the square of the number`. strictlyPositive::= `theNumber strictlyPositive `::=`returns Boolean, true when greater than zero`. to:::= `theNumber to: value `::=`returns and Interval of Numbers in range theNumber to value`. to:::= `theNumber to: value by: step `::=`returns and Interval of Numbers in range theNumber to value with step between items`. trucateTo:::= `theNumber trucateTo: value ?`. . Object methods =::= `theObject = aValue `::=`returns Boolean true/false depending on comparison`. ==::= `theObject == aValue `::=`returns Boolean , true iff same object`. asString::= `theObject asString`. assign::= `theObject assign: name value: val`. basicAt::= `theObject basicAt: index `::=`returns item with index index`. basicAt::= `theObject basicAt: index put: value` ::= ` change the item at position index in theObject`. basicSize::= `theObject basicSize` ::= ` rteurns integer describing size of theObject`. class::= `theObject class ` ::= `Return the Class in which theObject is an instance`. copy::= `theObject copy`. deepCopy::= `theObject deepCopy `. display::= `theObject display ` ::= `outputs suitable information about object`. hash::= `theObject hash ?`. isFloat::= `theObject isFloat`. isFraction::= `theObject isFraction`. isInteger::= `theObject isInteger`. isKindOf::= `theObject isKindOf: aClass `::=`returns a Boolean, true if theObject is a memebr of a sublass of a subclass...of aClass`. isLongInteger::= `theObject isLongInteger`. isMemberOf::= `theObject isMemberOf: aClass `::=`returns a Boolean, true if theObject is an instance of aClass`. isNil::= `theObject isNil Boolean, true when theObject is the nill object`. isNumber::= `theObject isNumber`. isShortInteger::= `theObject isShortInteger`. message::= `theObject message: m notRecognizedWithArguments: a`. new::= `theObject new default intialisation routine for all objects`. notNil::= `theObject notNil ?`. print::= `theObject print outputs theObject`s printString'. printString::= `theObject printString `::=`returns printable image`. respondsTo::= `theObject respondsTo: message`. shallowCopy::= `theObject shallowCopy `. ~~::= `theObject ~~ aValue `::=`returns Boolean, true if not the same object``. . Random methods between::= `theRandom between: low and: high `::=`returns a random number uniformly distributed in low..high`. next::= `theRandom next `::=`returns a random Float between 0.0 and 1.0`. next::= `theRandom next: n reurns an array of n next random values in 0.0..1.0`. randInteger::= `theRandom randInteger: n `::=`returns a random integer in range 1 to n`. set::= `theRandom set: value ?`. . Scheduler methods initialize::= `theScheduler initialize `. . Set methods add::= `theSet add: value adds a new (nonduplicated) value`. . Smalltalk methods load::= `theSMalltalk load: fileName (local) read in new methods, classes, etc from file fileName`. cantFindGlobal::= `theSmalltalk cantFindGlobal: name Handles exception, outputs message`. class::= `theSmalltalk class: aClass doesNotRespond: aMessage Handles exception, outputs message`. echo::= `theSmalltalk echo` ::= ` toggle whether interpretter echoes its input or not``. error::= `theSmalltalk error: aString`. flushMessageCache::= `theSmalltalk flushMessageCache ?`. getPrompt::= `theSmalltalk getPrompt: aString`. inquire::= `theSmalltalk inquire: aString `. perform::= `theSmalltalk perform: message withArguments: args`. perform::= `theSmalltalk perform: message withArguments: args ifError: aBlock `. saveImage::= `theSmalltalk saveImage`. saveImage::= `theSmalltalk saveImage: name `. watch::= `theSmalltalk watch`. . String methods ,::= `theString , value `::=`returns string made up of TheString and value`s printString'. <::= `theString < value `::=`returns Boolean true/false depending on comparison`. =::= `theString = value `::=`returns Boolean true/false depending on comparison`. asByteArray::= `theString asByteArray `. asInteger::= `theString asInteger `::=`returns result of interpretting theString as an integer.`. asSymbol::= `theString asSymbol `::=`returns a Symbol with string as its representation`. basicAt::= `theString basicAt: index `::=`returns character at position index`. basicAt::= `theString basicAt: index put: aValue change character at position index in theString`. copy::= `theString copy `::=`returns a copy of the string`. copyFrom::= `theString copyFrom: low to: high `::=`returns a substring low..high`. edit::= `theString edit `. execute::= `theString execute `. hash::= `theString hash`. input::= `theString input` ::= ` (local) print theString as a prompt and input from terminal`. load::= `theString load ` ::= `(local) read in a file of definitions with name theString`. print::= `theString print`. printNoReturn::= `theString printNoReturn (local) `::=`send theString to stdout with no end-of-line`. printString::= `theString printString `::=`returns printable image`. size::= `theString size `::=`returns an integer equal to the number of characters in theString`. unixCommand::= `theString unixCommand`. value::= `theString value`. words::= `theString words: aBlock ?`. else::= `theSwitch else: block case statements default case`. ifMatch::= `theSwitch ifMatch: key do: block part of a case statement`. key::= `theSwitch key: value Start of cases`. . Symbol methods asString::= `theSymbol asString `::=`returns a string representing theSymbol`. assign::= `theSymbol assign: value`. copy::= `theSymbol copy`. printString::= `theSymbol printString `::=`returns printable image`. respondsTo::= `theSymbol respondsTo `::=`returns a collection of classes that respond to theSymbol`. value::= `theSymbol value`. apply::= `theSymbol apply: args`. apply::= `theSymbol apply: args ifError: aBlock`. . True methods ifTrue::= `theTrue ifTrue: trueBlock ifFalse: falseBlock evaluates the falseBlock`. not::= `theTrue not `::=`returns a False`. printString::= `theTrue printString`. xor::= `theTrue xor: aBoolean`. . UndefinedObject methods createGlobals::= `theUndefinedObject createGlobals `. initialize::= `theUndefinedObject initialize`. isNil::= `theUndefinedObject isNil `::=`returns True`. notNil::= `theUndefinedObject notNil `::=`returns True if not a nil`. printString::= `theUndefinedObject printString`. .Close Smalltalk Methods Initially defined in Our Smalltalk.