Cuis is a modern implementation of Smalltalk 80. It runs on the OpenSmalltalk COG VM. It has a big, active and dynamic community and it is growing in features, projects and functionality.We will talk about the many active research and development projects done by the community, and briefly demo some of them.At the end we will talk about the next steps and ideas for the future.
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
Cuis Smalltalk: Past, present and future by By Hernán Wilkinson & Juan Vuletich
1. Cuis Smalltalk
Past, Present and What’s next
Hernán A. Wilkinson - @hernanwilkinson
10Pines founder – Professor at UBA
agile software development & services
Juan Vuletich - @juanvuletich
LabWare
2. Cuis Spirit
Some typical problems of the software world
● A system you don't understand is a system you can't help evolve
● Accidental complexity makes it harder to understand
● Code bloat makes it impossible to understand!
● Just implementing what you need might mean not understanding the rest
We can do better!
● A system can be as easy to understand as a well written book
● Accidental complexity can be kept to a minimum
● Code bloat can be avoided if you care
● Understanding where your work fits in a larger whole allows for consistency
● The system can help you understand
4. Cuis Community
➔ Students per Semester: around 120
◆ Got +10 contributions this semester, from refactorings to bug fixing
➔ Active List members: A few dozen
➔ Package Authors: Around 20, over 100 packages
➔ The rest of the Smalltalk Community:
◆ People developing VMs for Smalltalk test their work on Cuis
◆ People using other dialects share discussion, fixes and enhancements with Cuis
◆ People using tools/packages developed in Cuis
➔ The “Wise Elders”: Smalltalk creators and pioneers love Cuis!
➔ Total: We estimate around 200 people use Cuis on a regular basis
5. We want everyone to feel safe,
to feel appreciated and
have a good time with Cuis
13. Other Research Projects
➔Generics for LiveTyping (Ana Felisatti & Mariano De Sousa)
➔Annotate closure types (Ines Sosa)
➔LiveTyping on JIT VM (Federico Grosso)
➔Type Checking improvements (Julian Luini)
➔Cuis OO Protector - COOP (Gaston Testay-Martin Gonzalez)
14. Vector Graphics Engine
● Both for Text and Graphics
● Unprecedented quality
● 100% Smalltalk
● High Performance OpenCL version will replace BitBlt
● Currently used for TrueType glyph rasterization
15. TrueType Fonts
● Entirely portable
● Doesn't use FreeType, host OS support or FFI
● 100% Smalltalk
● High quality (higher than FreeType, ClearType or Quartz)
● High performance
● Uses the Vector Graphics Engine
16. OpenCL
● OpenCL is the open standard alternative to CUDA
● Used for high performance computing on GPU and CPU
● OpenCL code embedded in Smalltalk code
● Immediate feedback, no external compile
● Used for satellite image processing & vector graphics engine
19. What’s next
� Image modularization to be able to use GitHub as real source code
repo
�Changes model improvements
�Make LiveTyping part of Cuis by default
�More Refactorings! (Simple and Complex ones)
�New VM with Boris JIT, Pocho’s PowerLand & LiveTyping
❓Compiler improvement based on LiveTyping to generate and
initialize the PIC at compile time!!
❓Image Bootstraping
21. Conclusion
✌Cuis is a Smalltalk that it is fulfilling its purpose
�It is a nice place to collaborate and learn
�Ample room for improvement and tools re-thinking
�It is an open and friendly community