Suggestion : Future directions, zoom out etc

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Suggestion : Future directions, zoom out etc

paulmatthews
It seems there is an amply sufficiency of little languages that lack 
rigour. That is, you don't need to declare variables, the name space 
is polluted, there is no const correctness, type coercion all over 
the place, etc. There is an existing heavyweight language that has 
most of these features, i.e. Java.

Maybe lua should be the little lightweight language that supports 
rigour in programming. That is, decare vaiables, parameters can be 
const, no explicit casting.

Other than that, a higher speed array type (integer only index).


Reply | Threaded
Open this post in threaded view
|

Re: Suggestion : Future directions, zoom out etc

Steve Dekorte-4

On Tuesday, February 5, 2002, at 03:25  PM, paulmatthews wrote:
It seems there is an amply sufficiency of little languages that lack
rigour. ...There is an existing heavyweight language that has
most of these features, i.e. Java.

It's interesting that are no languages that are both lightweight and strongly typed. (At least none that I know of) Could this be more than coincidence?

Steve



Reply | Threaded
Open this post in threaded view
|

Re: Suggestion : Future directions, zoom out etc

David Jeske-3
On Tue, Feb 05, 2002 at 05:21:56PM -0800, Steve Dekorte wrote:
> On Tuesday, February 5, 2002, at 03:25  PM, paulmatthews wrote:
> > It seems there is an amply sufficiency of little languages that lack
> > rigour. ...There is an existing heavyweight language that has
> > most of these features, i.e. Java.
> 
> It's interesting that are no languages that are both lightweight and 
> strongly typed. (At least none that I know of) Could this be more than 
> coincidence?

(hey steve :)

I would guess the reason for this is that coming up with a strong type
system which is staticly checked and is at the same time both usefully
expressive and unobtrusive is a "hard problem", so most little
languages (in fact most languages) punt and ignore that problem
entirely.

To paraphrase an ML presentation to a bunch of Perl programmers:

  "Given that static typing, as implemented by C and Pascal, 
   is a failure, what can we do about it?

   One strategy is to simply give up...and Perl gives up more
   than other languages."

   http://perl.plover.com/yak/typing/typing.html

It's pretty to easy to see why having great static type-checking is
going to make the language implementation bigger, because writing
software smart enough to save you from yourself and others -- without
getting in your way too much of the time -- dosn't come for free.

It seems to me that most staticly typechecked languages have opted to
make the problem easier by getting in your way more often.

Those ML and Haskell folks keep chanting on about how they've solved
this problem, but I can never understand how to get enough of that
functional programming and pattern matching stuff out of my way to get
some simple UI widgets on the screen. Ohh well.

-- 
David Jeske (N9LCA) + http://www.chat.net/~jeske/ + [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Suggestion : Future directions, zoom out etc

Enrico Colombini
In reply to this post by Steve Dekorte-4
>It's interesting that are no languages that are both lightweight and 
>strongly typed. (At least none that I know of) Could this be more than 
>coincidence?

As far as I am concerned, I *strongly* prefer a *weakly* typed language
like Lua.

Optional variable declaration checking (even as a separate program) could
be useful, though; forgetting a "local" is the most common (and potentially
dangerous) mistake I find myself making.

  Enrico


Reply | Threaded
Open this post in threaded view
|

Re: Suggestion : Future directions, zoom out etc

Luiz Henrique de Figueiredo
In reply to this post by paulmatthews
>Other than that, a higher speed array type (integer only index).

In the current work version, tables are already optimized in a "smart" way
for being used as arrays.
--lhf

Reply | Threaded
Open this post in threaded view
|

Re: Suggestion : Future directions, zoom out etc

Luiz Henrique de Figueiredo
In reply to this post by paulmatthews
>Optional variable declaration checking (even as a separate program) could
>be useful

See test/globals.lua in the distribution for a first step in this direction.
--lhf

Reply | Threaded
Open this post in threaded view
|

Re: Suggestion : Future directions, zoom out etc

Thomas Wrensch-2
In reply to this post by Luiz Henrique de Figueiredo
On Sun, 10 Feb 2002, Luiz Henrique de Figueiredo wrote:

> >Other than that, a higher speed array type (integer only index).
> 
> In the current work version, tables are already optimized in a "smart" way
> for being used as arrays.
> --lhf

I too had wanted this in Lua, but over time I've realized that tables can
do anything a "proper" array would do. The only arguments remaining in
their favor (in my mind) are:

   1. The possibility of an ordered iterator over the array contents
   2. Reduced memory usage


  - Tom Wrensch