Whats happening with IronSmalltalk ?

Steve Wart steve.wart at gmail.com
Tue Aug 19 18:04:58 UTC 2008


I don't think the approaches are that much different, except the design
choice to build the compiler in Smalltalk versus C# offers the ability to
support both a scripting model and an image-based model. It also makes the
AST available as Smalltalk objects in addition to .NET reflection. I haven't
seen much about what the DLR does outside of a scripting context but it
seems to me you would need wrappers for all the hosted objects. The
scripting model model is necessary in any case, if you want to allow
fileins.

In my opinion the Smalltalk image and the .NET application domain are very
similar concepts, although existing .NET tools don't emphasize that much.
The DLR seems to address that, but it shouldn't matter what language it's
written in. If there are MS scripting services that are already built in C#
it should be straightforward for them to call .NET objects written in
Smalltalk.

Smalltalk's incremental approach is much more flexible, and I think this is
why most people don't do "scripting" in Smalltalk. IMHO, the best approach
to support a development community is to build the best possible tools for
yourself and make them available to whoever wants to use them. I wouldn't
want to second-guess that people want something that I'm not happy with. The
more mainstream tools are also 20+ years old and a lot of the reasons they
are the way they are is because that's how they've always been, if you know
what I mean :-)

Most of the work is done already in #Smalltalk so it makes sense to me to
start there. I'm not familiar with the parser generator and tokenizer tools
for .NET - do IronPython and IronRuby use some equivalent of yacc and lex
(aka bison and flex)? By all accounts the ruby parser is particularly nasty,
but the Smalltalk syntax should be much easier to deal with. The SmaCC
grammar should be possible to port if you think that's a superior approach.

Steve

2008/8/19 Gary Short <gary at garyshort.org>

>  The way I envisaged this progressing was to proceed much like they did
> with IronPython; creating a tokenizer, a parser and an AST. I would also
> envisage moving away from an image based model to a file based model. I'm
> sure there are many out there who see this a blasphemy but I always saw this
> as an impediment to Smalltalk being taken up by the general programming
> population, even as far back as Smalltalk /V I saw this problem with me
> fellow devs.
>
>
>
> As always, comments welcome.
>
>
>
> Regards,
>
> Gary
>
> http://www.garyshort.org
>
>
>
>
>
> *From:* uksmalltalk-bounces at lists.squeakfoundation.org [mailto:
> uksmalltalk-bounces at lists.squeakfoundation.org] *On Behalf Of *Robert
> Johnson
> *Sent:* 18 August 2008 04:28
> *To:* UK Smalltalk events
> *Subject:* Re: Whats happening with IronSmalltalk ?
>
>
>
> Sorry I haven't communicated sooner but I am fighting off a cold.
>
> Gary I definitely have time to work on this project starting next week.
>
> I think agree with Steve when he says: "The easiest way to get this up and
> running would probably be to have a look at SmaCC and #Smalltalk"
>
> Why reinvent the wheel when there is a working model to create a baseline
> for an IronSmalltalk implementation. I have been in contact with one of the
> authors of #Smalltalk and he was great about answering a few questions.
> Tomorrow I am going to take another look at the #Smaltalk code and
> implementation.
>
> I'm open to any other Ideas that you and Steve ma have.
>
> Robert
>
>
>
>  On Sat, Aug 16, 2008 at 12:15 PM, Steve Wart <steve.wart at gmail.com>
> wrote:
>
> I took a look at the latest snapshots of the IronRuby code from svn://
> rubyforge.org/var/svn/ironruby but I wasn't able to build it this time.
>
> There's an in-depth article about the DLR and IronPython at
> http://msdn.microsoft.com/en-us/magazine/cc163344.aspx. Python builds
> nicely and you can execute sample scripts but the code seems to have been
> refactored quite a bit since then and the tutorial is now quite hard to
> follow. The source is at http://www.codeplex.com/IronPython - you will
> need to install TortoiseSVN and a thing called SvnBridge to get the latest
> code from Microsoft. The license is BSD-compatible.
>
> Both these projects and the underlying DLR seem to assume that dynamic
> languages are scripting languages. I think that this is not entirely
> consistent with the way Smalltalk works, but I suppose there's no reason you
> couldn't build a Smalltalk compiler that works as a scripting language. You
> would need to do something like this to bootstrap the environment anyhow.
>
> One of the things I like about Smalltalk is that all the tools (e.g.
> Transcript, Workspace, Code Browsers and Debuggers) are all written in
> Smalltalk (it's tortoises all the way down!). I think it would be
> interesting to implement these components in a library that could be loaded
> into an application domain for development purposes. I don't think that
> using vim or emacs to develop Smalltalk code would be particularly
> productive and some native tools would provide a more incremental
> development environment than Visual Studio.
>
> To get started on a project like this I guess you would need to have a look
> at building a Smalltalk Language Provider. The easiest way to get this up
> and running would probably be to have a look at SmaCC and #Smalltalk - I
> think the parsing and code generation would be much the same whether you're
> targeting the CLR or the DLR.
>
> A key milestone might be to have something that's self hosting. If the DLR
> was packaged as a DLL instead of a project dependency, then you could write
> the compiler in Smalltalk instead of C#.
>
> The code is here http://www.refactory.com/Software/SharpSmalltalk/ - I
> think it's already self-hosting on the CLR. I believe that John Brant
> discussed some of the conceptual differences between Smalltalk and .NET on
> comp.lang.smalltalk a few years ago.
>
> Steve
>
>
>
>  On Fri, Aug 15, 2008 at 7:06 AM, Steve Wart <steve.wart at gmail.com> wrote:
>
> Could be interesting. I'm not using Windows much anymore but my PC should
> be here in a couple of weeks. I managed to build IronRuby from source at one
> point. Based on what I've read on various blogs it sounds like it should be
> possible to extract the DLR from that, but maybe your contacts in MS can
> point us at a DLR-specific svn repository ;-)
>
> I suggest we set up a google or yahoo group to drive into the details.
> Anyone who's interested in helping or lurking can follow along there.
>
> Cheers,
> Steve
>
> 2008/8/15 Gary Short <gary at garyshort.org>
>
> Hello Robert,
>
>
>
> With regard to IronSmalltalk, I started it up just after I came back from
> the MVP summit in Seattle, I'd been talking to the dynamic languages team
> out there and got really fired up about the idea. As normal, right after I
> posted about it I got swamped with work and so, to date, it has gone
> nowhere. However, coincidentally, I am now in a position to start working on
> it again. I'm in the process of getting my head around the DLR and the ANSI
> Smalltalk spec so, as yet, no actual code has been written, but I'm going to
> be getting to that soon (for some definition of soon <grin>). As for do I
> need help? Hell yeah! LOL, are you (or anybody else) interested?
>
>
>
> Regards,
>
> Gary
>
> http://www.garyshort.org
>
> MVP C#
>
>
>
> *From:* uksmalltalk-bounces at lists.squeakfoundation.org [mailto:
> uksmalltalk-bounces at lists.squeakfoundation.org] *On Behalf Of *Robert
> Johnson
> *Sent:* 14 August 2008 13:30
> *To:* uksmalltalk at lists.squeakfoundation.org
> *Subject:* Whats happening with IronSmalltalk ?
>
>
>
> In May there was some discussion between Gary Short and Steve Wart* *about
> the creating an IronSmalltalk implementation. Is someone currently working
> on IronSmalltalk ? If so do they need any help?
>
> Robert Johnson
>
>
>
> No virus found in this incoming message.
> Checked by AVG.
> Version: 7.5.524 / Virus Database: 270.6.3/1610 - Release Date: 13/08/2008
> 16:14
>
>
>
> No virus found in this outgoing message.
> Checked by AVG.
> Version: 7.5.524 / Virus Database: 270.6.3/1612 - Release Date: 14/08/2008
> 18:03
>
>
>
> _______________________________________________
> uksmalltalk mailing list
> uksmalltalk at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/uksmalltalk
>
>
>
>
>
>
> _______________________________________________
> uksmalltalk mailing list
> uksmalltalk at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/uksmalltalk
>
>
>
>
>
> No virus found in this incoming message.
> Checked by AVG.
> Version: 7.5.524 / Virus Database: 270.6.4/1617 - Release Date: 17/08/2008
> 12:58
>
> No virus found in this outgoing message.
> Checked by AVG.
> Version: 7.5.524 / Virus Database: 270.6.5/1619 - Release Date: 18/08/2008
> 17:39
>
> _______________________________________________
> uksmalltalk mailing list
> uksmalltalk at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/uksmalltalk
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/uksmalltalk/attachments/20080819/c442fe65/attachment-0001.htm


More information about the uksmalltalk mailing list