The Artima Developer Community
Sponsored Link

Agile Buzz Forum
Ambrai Smalltalk for Mac OS X

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
James Robertson

Posts: 29924
Nickname: jarober61
Registered: Jun, 2003

David Buck, Smalltalker at large
Ambrai Smalltalk for Mac OS X Posted: Jul 17, 2003 8:36 AM
Reply to this message Reply

This post originated from an RSS feed registered with Agile Buzz by James Robertson.
Original Post: Ambrai Smalltalk for Mac OS X
Feed Title: Cincom Smalltalk Blog - Smalltalk with Rants
Feed URL: http://www.cincomsmalltalk.com/rssBlog/rssBlogView.xml
Feed Description: James Robertson comments on Cincom Smalltalk, the Smalltalk development community, and IT trends and issues in general.
Latest Agile Buzz Posts
Latest Agile Buzz Posts by James Robertson
Latest Posts From Cincom Smalltalk Blog - Smalltalk with Rants

Advertisement
Dorin Sandu and Mark Suska

VM - the basics

  • Interpreter

  • mark and sweep gc

  • direct pointers

  • non-moving objects

  • weak reference



It's small, it's portable. The VM is 68k compiled, the image (with all source) is 3MB. The VM is implemented in C++ and has been run on other platforms than Mac OS X. Minimal set of primitives, reclaims circular weak by key refs. Given the small number of primitives, platform ports are possible and not too hard. Have run it on Windows and older versions of Mac OS.

Native Framwork

  • interfaces to shared libs

  • automatic interface generation from C headers

  • C code translated one to one to ST equivalent

  • functions and callbacks

  • type checking

  • bounds checking



Native calls can call back into Smalltalk. The VM is single threaded from an OS perspective.

Now a look at the system - the browsere looks like a VW browser without Store loaded. Some of the 'system' level code (Behavior, Blocks, etc) is a bit sparse, but it is a new implementation.

Smalltalk Environment

  • no development time state or behavior in kernel classes

  • "SmalltalkEnvironment current" - gets current state info

  • Modular design of the entire system - tools, app, GUI, environment, kernel, native ifc, VM and libs - cleanly separated. For instance, GUI can be cleanly removed



Generating a stanalone image - scripts to remove unneeded classes (is there wizard type support for that? Not clear).

Now Dorin is talking about the UI framework. The goal - provide a consistent, intuitive API over the Mac API (which is confusing and hard to use, in his opinion. I wouldn't know :) ). The GUI framework is using the kind of composition pattern you would expect - doesn't look that different from what I've seen in VW (at the 30,000 foot level, mind you). Resource management was critical as well - need to manage the lifecycle of the widgets, since it's all native.
Heh - the demo ended with the screen saver coming up after he didn't touch the kbd for awhile :)

Questions
Why did you do it? - To learn, interested in the problem. We were just interested in the problem
Is it downloadable? - Alpha available within a month. Probably free for personal use, will probably follow the Dolphin model of sales
Plan to make commercial then? - yes
GUI Builder? - I have one for Dolphin, will port it to this
How long have you been working on this? - Started in 1998, 2 years. Broke for 2 years, then started again. Mostly nights/weekends, started pushing once the talk for StS got accepted.
Any decent sized apps done? - have ODBC, probably will port GLORP. Have an app they use to manage tasks for this project
With non-moving objects, is the allocator more complex? - some fragmentation issues, but have had image running for weeks. Compact memory on image save.
What is your commercial model? - Dorin was mostly a Windows guy - other dev environments for Mac are expensive, and/or limited. Taragetting the hobbyists and smaller developers who do not want to spend the "big bucks".
Cooperating with other ST vendors (small) like Dolphin? - possible, but needs exploration.
Eliot - suggests that they partner with Dolphin

Read: Ambrai Smalltalk for Mac OS X

Topic: Store BOF at StS Previous Topic   Next Topic Topic: Chad Dickerson explains the value in RSS

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use