On 08/11/2015 01:18 PM, Marcus Daniels wrote:
Let's say a device managing a SCSI disk drive. A Unikernel based on a strongly typed language would ensure that illegal or poorly formed SCSI command blocks simply could not be formed. Whether or not a L_1 language hosts a L_0 with a similar virtual device doesn't matter, there's still no way to bypass the typing in the L_0 implementation. In a language like C, it is trivial matter to bypass typing. It's just best-effort by the developer.
OK. But there are 2 types of commands (that may not crash): 1) those that are ill-formed and 2) those that are well-formed but not expected/predicted by the developers. Ill-formed commands that still don't crash may have partial effects, right? For example, in a lazy language, if the ill-formed part occurs later in the expression, then the well-formed first part is still executed. In the context of a deployable that is configured (constrained to a sub-region of it's possible behavior), we need some way of ensuring the crispness of the boundary: these commands are allowed, these other one's are not. Could these be loopholes in strong but non-strict languages? -- ⇔ glen ============================================================ FRIAM Applied Complexity Group listserv Meets Fridays 9a-11:30 at cafe at St. John's College to unsubscribe http://redfish.com/mailman/listinfo/friam_redfish.com
