|class||method category||method and all deep senders||refers to/used by||TODO?|
|Object||testing||isWebBrowser (and all deep-senders)||Scamper||remove or put to class extension *Scamper|
|Object||creation||Morphs||put all to class extension *Morphic|
|Object class||documentation||-||this is documentation not behavior -> remove / create a documentation/finder tool|
|UndefinedObject||3ds parser support||from3DS:||-||remove|
|ClassDescription||private||linesOfCode||-||purpose ? remove or replace by parseTree statements (more accurate)|
|Color||instance creation||colorFrom:||many||use oop|
|Object||viewer||assureUniClass||EToyys||move to EToys|
... ... ...
"B3D" - what is this (good for) ?
- Number > asB3DVector3
- SketchMorph > canBeEnlargedWithB3D
From class >> #readFromOldFormat:
- look at the first line
- a class with and instance side and only class variables
OldSocket / OldSimpleClientSocket Smalltalk allClasses select: [ :each | each name last = $2 ] Morphs: AnimationMagicMorph, PasteUpMroph, SyntaxMorph
Date / DateAndTime / Timestamp
- whats the difference between DateAndTime and Timestamp anyway?
- we really need a new one ! (more abstract, clean, easier)
- accessing files in not threadsafe
- accessing the source of a method is not threadsafe
- FileDirectory sucks
- DirectoryEntry sucks more
- asking for the size or existence of a file is way easier in unix shell
- FileDirectory >> #fileExists: -> Drugs ?!? walks over parent directory
- Why a subclass of StandardFileStream?!?
- methods are spread over the whole image/kernel
- refactor this stuff into one package or ....
- Ugly, crappy piece of shit. Even AK admits that. In fact it is so embarrassing to him that he does not show it on demos.
- Replace with Scratch or Etoys 2.
- keyboard support (left, right, ... change focus without mouse)
- any Morph in General
- html -> *Network, ...
- asUrl —> *Network, ...
- asUrlRelativeTo: —> *Network, ...
- comparison polllution —> cleanup (intelligent names + comments)
- asHtml, asIRCLowerCase, asUrl, unHtml, encodeForHTTP, ...... —> *Network, *IRC, ...
- duplication: #findBetweenSubStrs:, #subStrings:, #findTokens:, #splitAtCommas,
- asIRCLowercase, ....... —> *Nertwork, *IRC
- isTraditionalDomestic —> *Locals", "*Languages, ...
- doesn't work (ie. POST does not respect proxy settings)
- huge methods
- copy pasted all over the way, triplicated code ...
- data was slow -> WTF?!?
- huge methods that are not understandable (shift here, mask there)
- no cheap blocks (clean)
- no closures
- two different, not nested block
- slows down normal blocks too
- decompiling does not work if receiver of #ifTrue:ifFalse: is cascade
- don't scale
- freeze image for long time
- old generation collector is not incremental
- tuned for memory sizes of ten years ago
- Integer readFromString: 'VB rocks'
urlClassForScheme:, how about asking the subclasses like SM does?
- Url absoluteFromText: 'http://smallwiki.unibe.ch/' and Url absoluteFromText: 'https://smallwiki.unibe.ch/' return objects that have a very different protocol
- all those #become: when the something bad happens
- why are they all subclasses and not wrapped (e.g. StandardFileStream, HtmlFileStream, CrLfStream)
- reading form a closed stream returns nil
- in 3.8 is a subclass of PositionableStream but not positionable
- abstract, like every other class
- can not deal with changing index of instance variables
- has a limit for big chunks but of course does not warn
- Look at the description of system window.
- Count the number of ivars
- Notice how many responsibilities it has.
- isOrAreStringWith - hä?, not part of Number-Behavior
- stringForReadout, same
- isInfinite, couldnt we represent this as an Object instead of a string ?
- detentBy: atMultiplesOf: snap:
- there are a lot of conversion methods that don't belong to the Behavior of Number -> class extensions
- "dices", nice but not core behavior of Random
- initialize, couldnt be more ugly
- ScrollBar >> #delete -> WFT?!?
- select class pane horizontal scrollbar in browser and remove it
Behavior >> #formalHeaderPartsFor:
"Returns whether the argument class is \*really\* obsolete. (Due to a bug, the method isObsolete isObsolete does not always return the right answer"
copy and pasted all over the system, needs to be a trait
needs to be able to handle overlappy sections correctly (memmove gives this abstraction)
- needs no further explanation
- SmalltalkImage >> calcEndianness -> 'Ted is confused'. Srsly?
- From >> # hackBits:
... ... ...