Some ideas of larger projects
Language
- Comments... One Line Comments? Nested Comments? see http://code.google.com/p/pharo/issues/detail?id=3523
Clean and Order
- Clean category / comments (some package are totally wrong)
- Towards SLint clean (integrate SLint rules as unit tests)
- PopMenu cleaning + request notification as fundation
Files and Streams
- Files: Use Filesystem instead
- Stream fixing? VW Dolphin compatibility discussions may be as a package
Packages, frameworks, tools and libraries
- May be load a simpler dateAndTime model and rely on chronos or aconcagua for the more specifc time issues.
- Package fileouter (HTML, Latex, chunk)
- Use better algorithm for substring matching (Boyer Moore).
UI
Tools
- All tools should support traits (esp. the browser)
- Better interface for smallLint
- Debugger code completion should take into account the types of the objects that are actually assigned to variables
- it would be nice to have a better test runner that
- use a tree to show the tests under a class
- takes advantage of the history showing which tests degrades since the last run.
- use icons to represent the status of the run tests at the packages, class, level.
Color highlightin based on http://ethanschoonover.com/solarized
Packages and SCM
- we need a way to refactor packages (naming, merging, ...)
- How can we version non-smalltalk things?
- Taking package per package and checking comments and adequacy| of the package in terms of classes containing it: We should have a real map of each package and its status for the next milestones.
Fixes and enhancement
- evaluate extension of moose for inclusions in pharo base library
Networking
- URI and URL need to be merged
General
- OS process and other
- Fix FFI
Language and MOP
- BetterMop
- Do not store class definitions as do-its in changeset
- Distinguish workspace do-its from refactoring do-its in the changes
Currently under Active Development
- Better code meta model (Ring)
- Scripting syntax (Coral)
- Compiler (Opal)
- First class representation of instance variables (Slots)
- Rewrite ClassBuilder (Slots Project)
- Traits with State (Slots Project)
- Cleaning Morphic (better integration of Polymorph, i.e., no overrides)
- Kernel image: add process to create UI-less image (Nuts)
- One single default better and faster browser (Nautilus)
- A modern Canvas (Athens)
- First class Packages (RPackage)
- SSL support