Fare Rideau | 13 Jan 11:56 1998
Picon
Picon

Re: Sleeping? Language Design.

Dear OS listers,
   as of language design, I'd recommend all of you to learn a lot about
other languages than C, Pascal, and look-alikes, before you start
designing your own. I particularly recommend the study of such languages
as LISP and ML dialects (the main ones are Scheme and CommonLISP for LISP,
OCaml and SML for ML), and if you have time, perhaps even study pure
functional languages like Haskell and Clean. A completely different approach
is logic programming, for which there exist LISP modules, or specialized
languages such as the Prolog family, or its more elaborate cousins like
Mercury or Goedel. There are lots of other languages of interest, like
Forth, Perl, Icon, and many more. Not to talk about parallel programming,
be it as explicit constructs (OCaml, some LISPs, etc), or as implicit
properties of the language (Clean, some LISPs, SISAL, Occam, etc).
I don't even count libraries that help manually simulate parallel programming
in low-level languages like C as real automatic parallel programming,
though their study might be interesting *as ways to implement the above
parallel programming models*.

The matter is not to learn languages for the sake of knowing many of them,
but for the sake of groking the *concepts* that lie in each of them,
and that sometimes just can't be imagined with other languages, particularly,
with stubborn inexpressive languages like BASIC, Pascal, C.
Why reinvent an approximate plain wood wheel, when there already exists
structured steel wheels with pneumatic tires? Why fall again in ever the
same traps, when they already have been discovered and marked?
Ignoring history is just having to redo it from the beginning.
Not that *everything* good has been done already,
but that even if you have original ideas, if you can't benefit of modern
ideas, you'll have to express them in primitive forms, with lots of
difficulties and errors, which will hide to you as well as to most everyone
(Continue reading)

David E. Manifold | 14 Jan 01:01 1998

Re: Sleeping? Language Design.


On Tue, 13 Jan 1998, Fare Rideau wrote:

> Again, this is not gratuitous criticism. Anyone who's passionate about
> language design should be able to do something original; the problem is
> that something that's original with respect to a primitive notion of
> computing is most likely to be a long-known thing; if you want to be
> original with respect to modern, elaborate, notions of computing, do
> learn them. We're in 1998, not in 1968. Don't do 1968 computing!

Ahh, but we aren't inventing any new concepts.  I see Tunes as simply a
unification of many existing concepts.

Yes, I do intend on incorporating "notions" from both old and new
languages into the Tunes metalanguage.  But you have found most of the
concepts yourself and put them on your web page!

My reasoning for not looking into new languages is that I'm not really
designing a language.  I'm just describing the way we talk about
languages.  Anyone can do that, but it requires a little abstract
thinking (something I enjoy).

The actual language features can be added after I initiate the framework
(consisting of the most abstract concepts).

At this point, it is my opinion that there is plenty of work I can do on
Tunes that doesn't require me to learn any new languages.  The features
from your web pages should be enough.

My main concern is that Tunes proceed immediately.  Learning a language
(Continue reading)

Lachlan Pitts | 18 Jan 09:28 1998
Picon

Tunes lurker question : Does Tunes equal an "Intentional Programming" based Computing System with knobs?

Hi Tunesters,

	Sorry to take up bandwidth if it is a dumb question but I was wondering at
the plethora of terms used to define Tunes - even in its most succinct
description. (I must admit to a certain befuddlement over some terms - after
all I only just scraped through both my _Program Verification_ and
_Declarative Languages_ subjects at uni).  After re-reading through
Microsoft's Research documentation regarding Intentional Programming (IP), I
became interested in what looks to me like a huge step forward in software
implementation technologies.

My question is - the test-bed that is mentioned in the above document (while
obviously running on Windoze (IOMoveToBinNow) and C (ugh) at the moment)
seems to provide a useful tool for increasing the abstraction level of
programming while still maintaining (or even increasing) the flexibility of
implementation.  Is this not what Tunes' High Level Language (HLL) is about?

Could not Tunes per se be initially developed from an existent system such
as the one described?  Is Tunes being harmed by using a textual language
rather than an intentional tree structure such as the one described?

Could a system such as the one described be implemented [initially at least]
in something existent and not platform specific - ie. A web-based system
perhaps, with the eXtensible Markup Language (XML) [which - as the
documentation states can be viewed as a tree] as the common source package
language, for example?

Furthermore - wouldn't a system like that provide a much more flexible
test-bed for the areas of debate regarding semantics, operational and
optimization strategies?
(Continue reading)

David E. Manifold | 18 Jan 14:29 1998

Intentional Programming

They have many good ideas, but their implementation will never meet the
needs of Tunes as long as it is proprietary.

David E. Manifold <dem <at> pacificrim.net> http://www.pacificrim.net/~dem/
Computers are useless.  They can only give you answers.  -- Pablo Picasso

Fare Rideau | 18 Jan 19:58 1998
Picon
Picon

Re: Tunes lurker question : Does Tunes equal an "Intentional Programming" based Computing System with knobs?

Dear Tunesmiths,

> After re-reading through
> Microsoft's Research documentation regarding Intentional Programming (IP), I
> became interested in what looks to me like a huge step forward in software
> implementation technologies.
>

> My question is - the test-bed that is mentioned in the above document (while
> obviously running on Windoze (IOMoveToBinNow) and C (ugh) at the moment)
> seems to provide a useful tool for increasing the abstraction level of
> programming while still maintaining (or even increasing) the flexibility of
> implementation.  Is this not what Tunes' High Level Language (HLL) is about?
>
Yes, it is one of the things the Tunes HLL is about;
however, this is only one half of the story: being able to say
that some things are moving and we want to not tie ourselves to one
temporary imperfect instance of it. The other half is being able
to say that some things are invariant and we want to preserve
them indefinitely, despite any future change in the rest of the environment.
The two approaches are dual, just like the Yin and the Yang,
just like liberty and security.

> Could not Tunes per se be initially developed from an existent system such
> as the one described?
I'm sorry I haven't read in detail the MSR IP stuff, so I can't answer.

> Is Tunes being harmed by using a textual language
> rather than an intentional tree structure such as the one described?
Tunes specifically is not based on a textual language (though it will
(Continue reading)

Jerry Fass | 25 Jan 00:21 1998
Picon

New free Virtual Machine available.

Hi Tunesmiths.
I hope you all are doing well.

Here is interesting news, if you are interested in Virtual Machines.

Most/all of you likely know of Squeak, a *Free* version of the Smalltalk
language.

The new Squeak version, 1.3, has a brand new, powerful, *Free* virtual
machine, with Just In Time (JIT) Compiling. It is said to be a beautiful
design, with source code.

It is by VM researcher Ian Piumarta of INRIA, France. He ports Squeak to
many UNIX platforms.

Homepage: http://www-sor.inria.fr/~piumarta/

Email: mailto:Ian.Piumarta <at> inria.fr

Projet SOR: Systemes a Objets Repartis
INRIA Rocquencourt
BP105, 78153 Le Chesnay Cedex, FRANCE
Voice: +33 1 39 63 52 87

Since Piumarta is in France, maybe Fare' can visit him sometime and get
inspired, or get a better job?

Happy new year.

Bye.
(Continue reading)

David E. Manifold | 28 Jan 01:46 1998

draft Tunes FAQ

I started writing, and it ended up as sort of a FAQ, so I ask for your
feedback.  What should I add, and what doesn't make sense?  (What is
blatantly wrong?)

Table of Contents:

What is Tunes?  
What makes Tunes different from other languages?
What does TUNES stand for?
Won't TUNES be slow?
Will TUNES be compatible with current systems?
Is TUNES easy to use?  Is TUNES hard to program in?
What effect will TUNES have on the computing world?
Will TUNES be free?
What is the current status of the TUNES development?

What is Tunes?  

Tunes is a language.  It is a computer language, because you use it to
communicate meaning to computers.  When you use a computer, no matter what
you are doing, you are using a language.  Programming uses one kind of
language.  Entering commands uses another.  Even when you use a pointing
device and graphical interface, you are using a special language.  Tunes
is a general-purpose language, so you can do any of these activities with
it.

What makes Tunes different from other languages?

Tunes is made of very small parts (fine grained), each of which can be
changed (dynamic), separately from all the rest (generic), without outside
(Continue reading)


Gmane