The Artima Developer Community
Sponsored Link

Agile Buzz Forum
Where's the guy that does that...

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
Where's the guy that does that... Posted: Aug 8, 2006 3:56 PM
Reply to this message Reply

This post originated from an RSS feed registered with Agile Buzz by James Robertson.
Original Post: Where's the guy that does that...
Feed Title: Michael Lucas-Smith
Feed URL: http://www.michaellucassmith.com/site.atom
Feed Description: Smalltalk and my misinterpretations of life
Latest Agile Buzz Posts
Latest Agile Buzz Posts by James Robertson
Latest Posts From Michael Lucas-Smith

Advertisement

Where's the guy, at Cincom, working on Smalltalk, that wraps up libraries?

VisualWorks comes with DLLCC which is mostly adequate for building interfaces to C libraries. It happens to have a parser that's complete junk, but once you get past that and start wrapping up the struct's and procedures, most things work really well.

So, here we have the ability to write lots of foundation code, lots of interface code with only a moderate amount of effort. We could wrap up WinGDI for example, or WinGDI+, or any number of other graphical libraries for different platforms.

We could wrap up BerkeleyDB, we could wrap up LibTidy, .. the sheer number of useful libraries out there is staggering.

"But what about cross platform" I hear people screaming from Cincom. Sod it. If a library works on more than one platform, wonderful. If not, there may or may not be an equivalent on another platform. The point is to wrap up the library -first-, then you can build an abstraction layer over the top of the implementations -where it makes sense and is appropriate-.

Right now, for example, the VM handles all of the graphics code in VisualWorks. It makes some 'unique' abstractions for the developers, hiding away the native C structures. Instead of being liberal and exposing the entire API for the platform you're on, you're stuck with the subset that works on all platforms. As time moves on, this subset is no longer true nor valid for all platforms.

How about something simpler.. files. There's no obvious way to get at the FILE struct which happens to be common across almost all platforms (certainly the platforms that matter the most).

I'm all for having lovely Smalltalk libraries that make my life easier, but not at the expense of being able to get nasty on a particular platform.

So, .. where is 'that guy' at Cincom who's job it is to wrap up C libraries from all different walks of life. I'm not specifically griping about Graphics here, just the lack of someone outputting more and more libraries from the C world each release of VisualWorks. It's not hard work, it's easy to test and it adds value with every new library to the powerful platform. What's more, it makes it possible to start considering good abstractions of the C libraries.

The wonderful thing about this proposition is that Cincom gets to sit pretty and pick and choose the libraries to wrap up based on popularity and demand. What better place to be when you're trying to keep your customers happy?

Read: Where's the guy that does that...

Topic: Moving the ball forward Previous Topic   Next Topic Topic: Scene, not herd

Sponsored Links



Google
  Web Artima.com   

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