NAME

sql.cam - rudimentary SQL-like operations on top of ffs.cam


SYNOPSYS

 sqlUpdate(c1:A,ue:B->B,c2:A,se:A->2,ffs:(A->B)-set):(A->B)-set
 sqlSelect(cs:A-set,c:A,se:B->2,ffs:(A->B)-set):(A->B)-set
 sqlDelete(c:A,se:A->2,ffs:(A->B)-set):(A->B)-set


DESCRIPTION

This is a CAMILA library for very rudimentary SQL-like operations

whose semantics are specified on top of ffs.cam.

This is expected to evolve towards realistic CAMILA animation of a

formal semantics of mSQL.

Last Update: 1999.11.11

The informal semantics of the operators are as follows:

sqlUpdate(c1:A,ue:B->B,c2:A,se:A->2,ffs:(A->B)-set):(A->B)-set
sqlUpdate(c1,ue,c2,se,ffs) corresponds to the outcome of the SQL command ``UPDATE ffs SET c1=ue WHERE se(c2)'', where the update expression ue and the selection predicate se are provided as lambda-expressions.

sqlSelect(cs:A-set,c:A,se:B->2,ffs:(A->B)-set):(A->B)-set
sqlSelect(cs,c,se,ffs) specifies the outcome of SQL command `` SELECT cs FROM ffs WHERE se(c) '', where the selection predicate se is provided as a lambda-expression.

sqlDelete(c:A,se:A->2,ffs:(A->B)-set):(A->B)-set
sqlDelete(c,se,ffs) specifies the outcome of SQL command ``DELETE FROM ffs WHERE se(c) '', where the selection predicate se is provided as a lambda-expression.


SEE ALSO

Manual(s) of ffs.cam.


AUTHOR

J.N. Oliveira (jno@di.uminho.pt)