What exactly is Athens?

1.4k views Asked by At

While i have already played with Athens (see PharoBoids) and liked it, i still miss the exact point about what it is.

I came up with these two diagrams (see below) by myself. Are they correct? And also there are the corresponding Canvas classes. What is their role?

Pharo/Squeak without Athens Pharo with Athens

1

There are 1 answers

0
Igor Stasenko On BEST ANSWER

Athens is a vector graphics framework. It has own API, which going to replace Balloon/BitBlt used today in Morphic. The replacement will be gradual and at the end we want to have all Morphic widgets to use Athens API. Athens abstracts the implementation backend through its API. Currently, there is a fully supported backend with Cairo graphics library. Also there's a port of Athens for Amber (a browser-based smalltalk implementation). In a future we want to have more backends supported, like OpenGL (via nvPath extension or without it), Quartz on Mac OS, and GDI+ on Windows. Also, it is important to note, that Athens is standalone and low-level graphics API. There's no direct connection with Morphic except that Morphic using it for rendering (like anything else you can imagine, for instance: rendering into PDF or SVG content etc).