On Sun, Dec 5, 2010 at 9:52 PM, St�phane Ducasse <
stephane.ducasse@inria.fr> wrote:
Hi guys
�I decided that I will not integrate any code that is not documented in Pharo.
�I strongly suggest to remove from Pharo-dev packages whose classes are not commented.
I think this is not a good idea...look this approx:
�| pharoCorePackages packagesDev nonCommentedClasses totalClasses |
�pharoCorePackages := #('MultilingualTests' 'Morphic' 'ToolBuilder-Kernel' 'PackageInfo' 'Polymorph-ToolBuilder' 'Network-Kernel' 'Network-Protocols' 'Compiler' 'System-Finalization' 'Settings-Graphics' 'Collections' 'Network-RemoteDirectory' 'Traits' 'Network-URI' 'Settings-Display' 'Collections-Abstract' 'Settings-Compiler' 'MonticelloMocks' 'ScriptLoader11' 'System-Digital Signatures' 'System-Localization' 'MenuRegistration' 'Polymorph-TaskbarIcons' 'Monticello' 'ToolBuilder-Morphic' 'MCDirtyPackage' 'Collections-Weak' 'Settings-Polymorph' 'Tests' 'HelpSystem-Core-Utilities' 'SUnit' 'Collections-Text' 'Compression' 'Morphic-MorphTreeWidget' 'HelpSystem-Core' 'ToolsTest' 'Gofer-Core' 'Gofer-Tests' 'Collections-Stack' 'FreeType' 'MonticelloConfigurations' 'Polymorph-Geometry' 'Collections-Support' 'SUnitGUI' 'HelpSystem-Core-Model' 'Tests-VM' 'System-Change Notification' 'System' 'Tests-ObjectsAsMethods' 'HostMenus' 'Network-MIME' 'Network-RFC822' 'VB-Regex' 'TrueType' 'Depr
�ecatedPreferences' 'System-Clipboard' 'System-Settings' 'MorphicTests' 'System-Serial Port' 'NetworkTests' 'Collections-Unordered' 'System-Changes' 'System-Object Storage' 'Collections-Traits' 'System-Platforms' 'Tests-PrimCallController' 'Morphic-TrueType' 'Multilingual' 'Graphics' 'Collections-Strings' 'KernelTests' 'System-FileRegistry' 'Tests-Bugs' 'ToolBuilder-SUnit' 'Tests-Release' 'Morphic-Balloon' 'Settings-Network' 'System-Applications' 'Polymorph-Tools-Diff' 'Settings-Tools' 'ScriptLoader' 'ST80' 'FreeTypeSubPixelAntiAliasing' 'Settings-Kernel' 'Settings-System' 'CompilerTests' 'System-Tools' 'System-Hashing' 'System-Download' 'Collections-Streams' 'Tests-SystemChangeNotification' 'GraphicsTests' 'Polymorph-Widgets' 'Kernel' 'Tools' 'Settings-FreeType' 'FreeTypeTests' 'Settings-Monticello' 'HelpSystem-Tests' 'Polymorph-EventEnhancements' 'System-Support' 'MonticelloGUI' 'System-FilePackage' 'System-Object Events' 'Announcements' 'System-Text' 'Exceptions' 'Network-
�UUID' 'System-Pools' 'FixUnderscores' 'HelpSystem-Core-UI' 'GraphicsResources' 'Files' 'Gofer' 'Network-MailSending' 'Collections-Arrayed' 'CollectionsTests' 'Balloon' 'Network-Url' 'Collections-Sequenceable' ).
�packagesDev := (PackageInfo allPackages
�collect: [:each | each packageName])
�difference: pharoCorePackages.
�nonCommentedClasses := packagesDev
�inject: 0
�into: [:sum :each | sum + (((PackageInfo named: each) classes
�select: [:aClass | aClass comment asString includesSubString: 'is xxxxxxxxx.']) size)].
�Transcript show: 'nonCommentedClasses: ', nonCommentedClasses asString.
�totalClasses :=� packagesDev inject: 0 into: [:sum :each | sum + (PackageInfo named: each) classes size ].
�Transcript show: 'totalClasses: ', totalClasses asString.
Shows:
nonCommentedClasses: 1116
totalClasses: 1369
I'm not sure that I will look at code or answer question to code that is not commented.
�We should change our mindset and it seems that we do not care, so we should take radical decisions:
�less changes, less progress, more comments.
�And for once I will not bash the past. Smalltalk was always with methods fully documented.
�We are just plain lazy and this is a shame.
�Stef