Pliant announce forum

Pliant announce forum

Pliant release 33

This debate has been automatically converted from the old Pliant forum
Message posted by maybe hubert.tonneau@heliosam.fr on 2000/03/01 05:38:04
Pliant is now one year old, and one of my goals is to start freezing
the language. So, I am a bit ashamed about this release because it will
require most programs using generic functions to update some protypes
form 'arg...' to 'oarg ...' and from 'map' to 'omap'.

On the other hand, in previous releases, the compiler did not not know
if an argument was a true object (something with a header containing
a pointer to the true data type, and a reference count) or not, and this
is really bad because generic functions should be applyed only to true
onjects.
Thanks to Patrice for pointing this, and sorry to others for breaking
your programs once more.
Message posted by maybe Patrice Ossona de Mendez on 2000/03/01 16:08:59
I agree it is probably time to freeze, but I am afraid it will still take some
time: The first evolution was "application and performance driven". Now, it will
be time to write down some specification or exhaustive doc (I know it is a hard
work that nobody really wants to do ...) which will unweil most of the 
modifications which may be needed in order to get something coherent and
somehow complete (as a core level).

So, it is time to have a look at all the features of Pliant, one by one, (and
also all togather) to start freezing the specs and discuss them.
Message posted by maybe Patrice Ossona de Mendez on 2000/03/01 17:55:28
Stupid question: why is not "object" a qualifier like "readable" "writable",
so that you could write arg_orw, ...

Or even better: why isn't it an AccessType,so that we may write
"arg Type AccessType Name" or  "Address map Type AccessType".

This way, it would be easier to provide some evolution in access types, like
the possibility to add accesses through the net, a database, aso.
In this case, we should only give the specs of what an AccessType should provide
and the registration tools to add user-defined ones.
Message posted by maybe Hubert Tonneau on 2000/03/01 18:37:35
> Stupid question: why is not "object" a qualifier like "readable" "writable",
> so that you could write arg_orw, ...

Before 'arg' you have the status of the argument, just like the
status of a variable is before 'var' (like 'gvar' or 'cvar')
and after 'arg' you have the access you will perform on that
argument.

> Or even better: why isn't it an AccessType,so that we may write
> "arg Type AccessType Name" or  "Address map Type AccessType".

I wanted to have compact prototypes because I find them easier to read.

> This way, it would be easier to provide some evolution in access types, like
> the possibility to add accesses through the net, a database, aso.
> In this case, we should only give the specs of what an AccessType should provide
> and the registration tools to add user-defined ones.

I bet you're a bit optimistic on the usability of so extensions. If we add
new flags, we have to modify existing programs, and most time, even the
compiler core (I had to for 'access_object').
I plan (because it will be required) to add a 'volatile' flag at some point
in order to help the optimiser, but it will be specifyed in the function
body, just like the 'share' function is currently used for 'thread' and
'parallel' instructions.

The possibility to add access through the net or anything else is rather
covered through the possibility to have several kind of pointers (you
already have two, and can define yours, such as the Pliant database engine
will do), and it mostly rely on the power of the Pliant casting and compile
time rewriting mecanism.