Re: how to extend a capability on a data source?

David Barbour <[email protected]>
Newsgroups gmane.comp.capabilities.general
Message-ID <CAAOQMSvKKGoWMLqt7ktZrq9rkOD8uhmia9aQsC8MdX5PeEGf3w@mail.gmail.com>
On Mon, Nov 4, 2013 at 7:55 AM, Rob Withers <[email protected]> wrote:

>
>
 So, Smalltalk can do the execution environment stuff of a functional
> language, without sweating all the type theory.
>

Of course, instead of sweating type theory, you sweat other things related
to dynamic structure, reflection,


>
> Say, is that where the functional languages got these ideas from?
>  Smalltalk?
>

I imagine Cardelli and Cook were influenced by Smalltalk and other OO
languages. But I doubt it was their only source of influence.



How can you do agile team development if the code won’t compile for some
> silly reason?
>

It isn't difficult. Silly issues are easy to fix. Serious issues cause you
to seek easier temporary solutions. If code is modular or pluggable,
different people can work on different pieces. What problems do you imagine?


>
> Why do I want to statically enforce some type in a dynamic, distributed,
> heterogeneous environment?  Just dynamically enforce it and go to the next
> item on your task list.
>

I can't say why you might want to. But the reasons I favor are: elegance
and performance. If I can make a few useful guarantees at compile-time, I
can avoid much unnecessary logic (and bugs) in the runtime, and I can avoid
complex partial-failure handling code (and bugs) in the user's logic.
Further, I can more easily compile for heterogeneous environments where
dynamic enforcement is difficult or super expensive: FPGAs, OpenCL,
shaders.

Dynamic systems can be modeled as transitions from one well-typed program
to another, at well-defined boundaries, with a controlled amount of slack
for the input and output types.


>
> Could you post a link to your code so I could take a look at the
> implementation of these ideas you are discussing, over the next days?
>

Sure. My prototype implementation of RDP, in Haskell, is
https://github.com/dmbarbour/Sirea . Sirea uses ambient authority, but can
model capabilities as dynamic behaviors.

I'm still twiddling design and bytecodes and designs of the Awelon project
based on some recent ideas that simplified the language and offer powerful
new approaches to UI.

_______________________________________________
cap-talk mailing list
[email protected]
http://www.eros-os.org/mailman/listinfo/cap-talk
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.