Here is the original slide deck
RubyTalk's goal is to provide an interactive, visual programming environment, much like Smalltalk or Self. Build your applications by interacting directly with objects in memory, rather than their textual representation on the filesystem.
The larger goal is to think in higher-level abstractions than we currently have.
While a better mechanism for interacting with both definitions and instances is desirable, when it comes to sharing and saving, we're concerned (in the short term) only with sharing and saving definitions. We still want an environment with both, but saving and sharing instances of objects is a much hairier problem, however awesome it could be to have them.
The visualizations we use will constrain how we think about our objects and programs. Therefore we must choose carefully!
Please note this project is PRE ALPHA. Not ready for even personal use!
- Inspector
- Workspace improvements
- print vs do
- local bindings for lifetime of workspace
- Observer pattern in GUI
- Persistent Data
- ability to store data in postgres and retrieve it
- Web Framework
- run servers in background threads
- views render using HAML
- pull in activerecord for ORM support
- how to map routes onto functionality
- controllers?
- RESTful?
- Object memory modifications
- support for instances and modules
- seralization overhaul
- on open/close
- store in postgres or somewhere sensible
- open files, network connections
- resolving dependencies and superclasses
- multiple users
- transactions
- Debugging modifications
- resumable exceptions
- exceptions in other threads
- Process Handling (threads)
- Better GUI toolkit
- jarvis
- craigslist notifier (upon new search results)
- hipchat
- os x menubar applet (workspaces in smalltalk)
- hubot
- notifications when someone re-pushes to a pull request
(only tested on OS X 10.9.1)
Download the community edition of ActiveTcl
$ rvm install 2.1.0 --with-pthread --with-tcl --with-tk
$ gem install bundler
$ brew install portaudio
$ brew install mpg123
$ bundle install
$ ./world.rb
After you close the GUI, exit
will quit RubyTalk.