Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
research:software:obsec [2017/04/27 10:44] – racruz | research:software:obsec [2017/05/18 03:54] (current) – racruz | ||
---|---|---|---|
Line 2: | Line 2: | ||
ObSec is a simple object-oriented language that supports type-based declassification. ObSec was introduced in the paper | ObSec is a simple object-oriented language that supports type-based declassification. ObSec was introduced in the paper | ||
- | {{bib> | + | {{bib> |
This tutorial covers: | This tutorial covers: | ||
- | * how to install a web interpreter (ObSec Pad) for the ObSec language | + | * how to install a web interpreter (ObSec Pad) for the ObSec language. |
- | * a basic presentation of the language syntax | + | * a basic presentation of the language syntax, |
- | * the type-based declassification examples that appears | + | * the type-based declassification examples that appear |
Line 15: | Line 15: | ||
- **Using the online ObSec Pad** at [[https:// | - **Using the online ObSec Pad** at [[https:// | ||
- | - **With the virtual machine**, which can be downloaded [[https:// | + | - **With the virtual machine**, which can be downloaded [[https:// |
- **Local execution of the ObSec Pad**, which can be downloaded [[https:// | - **Local execution of the ObSec Pad**, which can be downloaded [[https:// | ||
Line 101: | Line 101: | ||
{{: | {{: | ||
- | You can define and use object types in different ways. Below, we illustrate by creating an object type with a login method that takes two public strings and returns a public integer: | + | You can define and use object types in different ways. Below, we illustrate |
* Inline structural type definition: the type is defined (anonymously) where it is used < | * Inline structural type definition: the type is defined (anonymously) where it is used < | ||
[{login: String String -> Int}] | [{login: String String -> Int}] |