[ANN] Slate 0.2 with introduction

Brian T Rice water at tunes.org
Sat Dec 6 16:51:09 UTC 2003


Well, I see that you are outputting .o files, so you must be using ECL.
This is probably some new and always-surprising bug in that
implementation. I suggest you switch to CLISP and use that, as 0.2 is
officially released with that implementation in mind.

Of course, bugs like this are why we dropped ECL support.

On Sat, 6 Dec 2003, Alexandre Bergel wrote:

> Hello Brian,
>
> When I read your post, I rush myself to try out Slate. Unfortunately I
> get the following:

> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> godfroy at darkside:~/Slate/slate$ uname -a
> Linux darkside 2.4.19 #3 SMP Thu Jul 10 15:25:38 CEST 2003 i686 unknown
> godfroy at darkside:~/Slate/slate$ ls
> NEWS        compiler.lisp  etc            object.lisp  repl.lisp   src
> README      compiler.o     license.txt    object.o     repl.o      x11.lisp
> build.lisp  demo           no-cache.lisp  prims.lisp   slate
> cache.lisp  doc            no-cache.o     prims.o      slate.lisp
> godfroy at darkside:~/Slate/slate$ ./slate
> ;;; Warning: READ-SEQUENCE is being redefined.
> ;;; Warning: WRITE-SEQUENCE is being redefined.
> Slate 1> (load "slate.lisp")
> './src/init.slate' fileIn.
> Bad selector name in keyword method invocation on line 2: ./src/init.slate
> Top level.
> > The variable FILEIN. is unbound.
> Broken at EVAL.
> >>
> godfroy at darkside:~/Slate/slate$
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>
> Any hint?
>
> Cheers,
> Alexandre
>
>
> On Fri, Dec 05, 2003 at 04:21:15PM -0800, Brian T Rice wrote:
> > Hello all,
> >
> > This is my first release announcement of Slate on this mailing list,
> > although I've alluded to it many times and discussed it individually with
> > quite a few Squeak users. I've been hesitant to announce it since
> > Squeakers have high standards when it comes to an environment, especially
> > for something like Slate which aims to be a lot like Squeak, even if only
> > by learning lessons from it.
> >
> > So, here's the short of it:
> >
> > Slate is a "clean slate" Smalltalk; the purpose of it is to provide the
> > most powerful and yet simple language that can possibly be easily
> > recognized as Smalltalk-compatible. So, Slate includes prototype-based
> > object programming, using multiple arguments to define a method's
> > signature, instead of just the first. We currently use Self's delegation
> > slots for inheritance, although at some point in the future we will
> > provide something more class-friendly, after having learned how the mix of
> > mechanisms best works.
> >
> > And then, there are the really powerful libraries we've been building with
> > it over the last year and a half. Craig Latta's Flow framework is included
> > and even extended in Slate, the collections are quite enhanced themselves,
> > with much the same ideas as in the Traits project, the exceptions are
> > enhanced to have object-oriented restarts (handlers), and many many other
> > small details that accumulated sometimes without planning into a new
> > powerful possibility.
> >
> > We have some interesting new language experiments which may interest
> > people here, such as subjective programming (somewhat similar to PIE and
> > other related ideas) and optional keyword arguments or positional
> > arguments (done without C-style syntax). There is also a syntactic
> > abstraction support built in to the language, which seems on first glance
> > to be contradictory to the Smalltalk way of doing things, but actually
> > makes good sense when you take the time to understand it.
> >
> > With all that said, Slate is not ready for prime-time, being written in
> > Lisp (with an inlining compiler, but still), and not having the full kind
> > of access you get with a dedicated VM. 0.2 to 0.3 will consist of shifting
> > to a Squeak-style VM implementation, although my dialect for the
> > C-translation is a lot easier to work in, I believe.
> >
> > The upside is that we've taken great care to document everything in a
> > reference manual and add comments to nearly every method and area of
> > definition. This is of course necessary in any new work, but we're
> > particularly keen on ensuring that there's no mystery in the system.
> >
> > Slate's environment right now consists of a command-line semi-compiler, a
> > debugger, inspector, and Emacs interaction mode with source highlighting.
> > Slate images can be saved and restored transparently through the host Lisp
> > system. There is a graphical system whose bare functions may be tested if
> > one is handy with Lisp, but otherwise it is not for use until 0.3 or 0.4
> > fully support it.
> >
> > Slate's website is http://slate.tunes.org/ , and the 0.2 release is
> > announced there and available under the Downloads section. Slate is
> > MIT-licensed, and whenever we patterned some source after another's
> > library, we cited them in the comments; all such libraries were similarly
> > freely available.
> >
> > Feel free to ask questions, but I am not going to make any stance on
> > policy about Slate vs. Squeak, except that I personally consider it more
> > worthwhile to develop the largest-scale improvements to Squeak in Slate.
> >
> > PS: This obviously is a lot of information to digest. There is quite a
> > set of materials for learning the basics on the site, and the reference
> > manual is meticulously updated by yours truly, so make good use of them.
> > :)
> >
> > --
> > Brian T. Rice
> > LOGOS Research and Development
> > http://tunes.org/~water/
>
>

-- 
Brian T. Rice
LOGOS Research and Development
http://tunes.org/~water/



More information about the Squeak-dev mailing list