1. The "perfect" language...

This is my first post ever to this list: it might be met with
some scepsis (and that would be just fair: I may very well
have missed something out).

Anyway: this is what I have:

After several months of intense thinking, I think I am almost
finished designing a new language, named Kafka=A8, which I am going
to implement as a "preprocessor" to Euphoria.

However, it's syntax is different from Euphoria's, and it has kind
of a different paradigm, so I wouldn't call it an "Euphoria
preprocessor" or "Euphoria++":   it's a new language (though cross-
compatible with Eu).

Kafka=A8 will have most of Euphorias features, and on top on this
object-orientation is added, in an in my opinion simple and elegant
way. Kafka=A8 also has some other features, most of them pretty useless,
which are there mainly for the sake of completeness.

-----------------------------------------------

Short description of Kafka=A8:

It's *probject-oriented*. Probjects are mixtures between functions and
OOP-objects. Sequences can be regarded as a special kind of probjects.
Everything evaluates to something: perhaps Kafka=A8 can be viewed as some
kind of remote Lisp-clone.

There is virtually no special syntax for OOP: no classes or interfaces;
just two built-in probjects.
The transition between OOP-style- and none-OOP-style programming will be
easy and almost unnoticeable.

------------------------------------------------



The problem is that for the moment, I am rather busy: It will take me at
least a month to program a working first version.

So my questions are:

Is there any interest for this among Euphorians (or RDS); or do you feel
Mike Nelson's and other people's OOP-libraries are simply enough?

Are there any similar projects going on?

Is Euphoria 2.3 on it's way? Will it have namespaces?


If the answer is "yes",
   I might concentrate my energies on writing a good language description
   before doing the implementation; so everybody can read it and get some
   ideas.
Otherwise,
   I prefer to release everything at the same time, because it is a rather
   unique language with many new concepts (probjects, cells etc) and I think=

   it will be better recieved if people can play around trial/error-wise
   with the Kafka=A8-compiler and some example programs.



Martin Nilsson
skrjablin at mail.com

new topic     » topic index » view message » categorize

2. Re: The "perfect" language...

Martin Nilsson wrote:

snip
>
>Short description of Kafka=A8:
>
>It's *probject-oriented*. Probjects are mixtures between functions and
>OOP-objects. Sequences can be regarded as a special kind of probjects.
>Everything evaluates to something: perhaps Kafka=A8 can be viewed as some
>kind of remote Lisp-clone.
>
>There is virtually no special syntax for OOP: no classes or interfaces;
>just two built-in probjects.
>The transition between OOP-style- and none-OOP-style programming will be
>easy and almost unnoticeable.
>
snip
>So my questions are:
>
>Is there any interest for this among Euphorians (or RDS); or do you feel
>Mike Nelson's and other people's OOP-libraries are simply enough?
>
>Are there any similar projects going on?

As far as I am concerned, the more the merrier.

>Is Euphoria 2.3 on it's way? Will it have namespaces?

Rob hints that it will, but who knows what that means and when it will come.=

If anybody else has heard more hints on time than I have, I would welcome
the knowledge.

>If the answer is "yes",
>   I might concentrate my energies on writing a good language description
>   before doing the implementation; so everybody can read it and get some
>   ideas.

I would always recommend writing a good language description before
implementation. That way, you can compare what you have done with
what you intended and trim one or the other, but at least you will know
where you were originally headed when you get buried down in the
"probject" smile

>Otherwise,
>   I prefer to release everything at the same time, because it is a rather
>   unique language with many new concepts (probjects, cells etc) and I thin=
k
>   it will be better recieved if people can play around trial/error-wise
>   with the Kafka=A8-compiler and some example programs.

If the language desciption comes out first, at least you can get a comment
or three before committing to code. There might be one or two dead-ends
that could be avoided with more than one set of eyes on the design.

I know that a lot of people on the list would prefer the whole ball of wax o=
r
even the compiler without the language description. I have yet to see a
really clean project that was coded first and designed later. I have seen
some interesting "proof of concept" code done that way, but something as
large as a language has way too many gotcha's for that kind of "only real
men can code without a design" macho.

Everett L.(Rett) Williams
rett at gvtc.com

new topic     » goto parent     » topic index » view message » categorize

3. Re: The "perfect" language...

On Sun, 19 Mar 2000,
> Martin Nilsson wrote:
>
> snip
> >
> >Short description of Kafka¨:
> >
> >It's *probject-oriented*. Probjects are mixtures between functions and
> >OOP-objects. Sequences can be regarded as a special kind of probjects.
> >Everything evaluates to something: perhaps Kafka¨ can be viewed as some
> >kind of remote Lisp-clone.
> >
> >There is virtually no special syntax for OOP: no classes or interfaces;
> >just two built-in probjects.
> >The transition between OOP-style- and none-OOP-style programming will be
> >easy and almost unnoticeable.
> >
> snip
> >So my questions are:
> >
> >Is there any interest for this among Euphorians (or RDS); or do you feel
> >Mike Nelson's and other people's OOP-libraries are simply enough?

Ideas are always welcome. I suggest you write some example code before you
even begin writing the compiler/interpreter, just so we can grasp the concept.
That way we can compare "kafka" with existing languages, and see the benefits
of this new language.

Doing this will also allow you to think carefully about the implementation of
each language structure, and probably lead to a cleaner design.

Regards,
Irv

new topic     » goto parent     » topic index » view message » categorize

4. Re: The "perfect" language...

Martin Nilsson wrote:

<snip>

After several months of intense thinking, I think I am almost
finished designing a new language, named Kafka¨, which I am going
to implement as a "preprocessor" to Euphoria . . .

Short description of Kafka¨:

It's *probject-oriented*. Probjects are mixtures between functions and
OOP-objects. Sequences can be regarded as a special kind of probjects.
Everything evaluates to something: perhaps Kafka¨ can be viewed as some
kind of remote Lisp-clone.

There is virtually no special syntax for OOP: no classes or interfaces;
just two built-in probjects.
The transition between OOP-style- and none-OOP-style programming will be
easy and almost unnoticeable . . .

Martin--I think this is fascinating and I'd love to hear more about it!  I
believe that getting a good design together and posting it before coding
could be very benificial, though I admit I didn't do it that way with Object
Euphoria--I designed before coding but only posted completed versions.

My Object Euphoria is quite Java-like--your Kafka sounds like it will have
an entirely different focus.  Perhaps its somewhat LISP-like nature will
make it strong in areas where OE is weak and vice-versa.   Personally, I'd
love to see multiple viable OOP systems for Euphoria.  Of course, it would
be easier for all of us OOP enthusiasts if Rob implements namespaces and
structures.

My advice is to work out a good design and go for it!

-- Mike Nelson

new topic     » goto parent     » topic index » view message » categorize

5. Re: The "perfect" language...

On Sun, 19 Mar 2000 21:00:04 -0800, Michael Nelson
<MichaelANelson at WORLDNET.ATT.NET> wrote:

>My Object Euphoria is quite Java-like

  Mike:

   I am not a java expert but I know that you are interested in oop and java

   The java VM is a DLL in win32 and a shared library in unix. The VM can

   be launched from win32 and unix.

   Why couldn't you write a special public java class that would be a

   interface with Euphoria. Once the VM is launched the byte code for

   the VM would suppled by Euphoria. This would then make it possible to

   use the java graphics from Euphoria.

 Bernie

new topic     » goto parent     » topic index » view message » categorize

6. Re: The "perfect" language...

Bernie Ryan Wrote:

>   Mike:
>
>    I am not a java expert but I know that you are interested in oop and
java
>
>    The java VM is a DLL in win32 and a shared library in unix. The VM can
>
>    be launched from win32 and unix.
>
>    Why couldn't you write a special public java class that would be a
>
>    interface with Euphoria. Once the VM is launched the byte code for
>
>    the VM would suppled by Euphoria. This would then make it possible to
>
>    use the java graphics from Euphoria.
>
Bernie,

This will be added to my Object Euphoria to do list--no promises when it
will happen as it requires some high-level knowledge of Java I do not yet
possess.  My current project is taking all of my free time--an OE wrapper
for Rob's database.e which will provide full relational DB capabilities.

-- Mike

new topic     » goto parent     » topic index » view message » categorize

7. Re: The "perfect" language...

Thanks for the positive response on Kafka!

I'll do as you suggested and post some kind of document in a couple of
days.

I've realized that I really need your comments: only in the past few days
I've found several problems, and have thought I found a solution, and then
found a new problem and so on: Right now I believe the concept will work;
but that's just a feeling of mine.

I'll throw away my current design notes and create a VERY DETAILED
description of the language and how to implement it, and post it to the
list, before I do anything else.


Martin Nilsson

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu