Re: Introducing PlayDB (The Model, The Language, The DBMS)

From: Tony Douglas <tonyisyourpal_at_netscape.net>
Date: 3 Nov 2003 10:31:24 -0800
Message-ID: <bcb8c360.0311031031.2f916474_at_posting.google.com>


mikepreece <member31023_at_dbforums.com> wrote in message news:<3551763.1067835858_at_dbforums.com>...
> Originally posted by Christopher Browne
>
> > SELF isn't "typeless;" the only language I recall that _claimed_ to be
>
> > such was BCPL (predecessor to B and C), and even there, that wasn't
>
> > honestly typeless; it was instead pretty "loose" about them.
>

Umm & argh. BCPL *was* effectively typeless; it was really monotyped (comes to the same thing). Everything was a bit pattern; you could offer the compiler some broad hints on what you intended a cell's contents to be used for, but there was absolutely nothing to stop you using an integer variable as if it were a function, for example. Want to do a jump to machine location four ? Easy, just code '4()' and off you go. (This was indeed how the global vector worked, and how BCPL/Tripos dodged the whole linker issue.)

> > What could be of _some_ merit would be to have a system that is 'type
>
> > agnostic;' that is, you have containers/slots in which you can put any
>
> > type. That's sort of what Self does; that's _certainly_
>
> > characteristic of the Lisp family. The latter is strongly typed, but
>
> > common data structures allow plunking in data of any type, in contrast
>
> > with (say) ML.
>
> >
>

A while ago, I defined the semantics of a language which did just this; I've still got 30-odd pages of equations around somewhere; it also went the whole hog and made types first class values (so you could have variables of type type, functions that returned types, etc. etc.)   

> > Whether or not this is any good for databases is another
> > question.

Almost certainly not, especially where types are first class values (imagine a relation with dependent types; not pleasant). I thought about this quite a bit before abandoning it.

> PickBasic treats everything as a string - except that in some contexts
> strings are treated as numerics. Apart from that it's "type-less".

Well now this is vey poor news; 85% of programming errors are type errors; typelessness doesn't appeal to me one jot with that particular (long-standing) statistic around. (This was why one commentator on the language mentioned previously stated bluntly he'd rather program in C - the biggest insult he could think of at the time.)

  • Tony
Received on Mon Nov 03 2003 - 19:31:24 CET

Original text of this message