Re: Feature freeze imminent

Tuomo Valkonen <[email protected]>
Newsgroups gmane.comp.window-managers.ion.general
Message-ID <[email protected]>
On 2007-02-22, Renee Klawitter <[email protected]> wrote:
> Perhaps you can list your planned features somewhere and others might
> take over ? 

TODO.riot

> Would like to myself, but I lack the time, C skill and determination
> for that; what I've thought of after looking over your code some time
> ago was a C++ port/rewrite 

Rewrites: lame, for kids with a lot of time in their hands.

C++: *yuck*. Too complex beast. There are four essential features
that would make C much less painful, only of which C++ does have,
and even it comes with too much complex baggage:

  1. subtyping, i.e. the basic mechanism for the type system
     to understand inheritance. Would rid object-style C code
     from lots of ugly and unsafe casts, and make object system
     far nicer to use.

  2. Tagged unions/algebraic data types/pattern matching. So you
     can have stuff like:

	data Maybe a = Nothing | Just a

	...

	case x of
	    Nothing -> No parameter set
	    Just y -> Woot! Parameter set.

     This would again rid C code of many unsafe C unions and other
     hacks for unspecified parameter and so on.

  3. Multiple return values for functions.

  4. Function closures/first class functions. Hmm... might demand
     a garbage collector for safe _and_ convenient implementation. 
     In any case, they're an essential feature of a language nice 
     to program in.

I think the first two and maybe the third are featured in some C 
derivatives that still remain "low-level" languages...

-- 
Tuomo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.