Сообщение от monolithed
|
Хотят придумать TypeScript?
Что-то я не помню такого треда в рассылке
|
http://wiki.ecmascript.org/doku.php?...:typed_objects
const Point2D = new StructType({ x: uint32, y: uint32 });
const Color = new StructType({ r: uint8, g: uint8, b: uint8 });
const Pixel = new StructType({ point: Point2D, color: Color });
const Triangle = Pixel.Array(3);
let t = Triangle([{ point: { x: 0, y: 0 }, color: { r: 255, g: 255, b: 255 } },
{ point: { x: 5, y: 5 }, color: { r: 128, g: 0, b: 0 } },
{ point: { x: 10, y: 0 }, color: { r: 0, g: 0, b: 128 } }]);
Built-in Value Types
uint8, uint8Clamped : 8-bit unsigned integers
uint16 : 16-bit unsigned integers
uint32 : 32-bit unsigned integers
int8 : 8-bit signed integers
int16 : 16-bit signed integers
int32 : 32-bit signed integers
float32 : 32-bit IEEE754 floating-point numbers
float64 : 64-bit IEEE754 floating-point numbers
Сообщение от monolithed
|
Хотят придумать TypeScript?
|
Я бы был рад, если бы добавили опциональную явную декларацию типа, для замены JSDoc.
Т.е.
http://wiki.ecmascript.org/doku.php?id=strawman:guards
let x :: Number = 37;
function f(p :: String, q :: MyType) :: Boolean { ... }
let o = {a :: Number : 42, b: "b"};
И было бы здорово иметь какой нить аналог указателей, чтобы можно было делать так:
function foo(*a) {
&a = 2;
}
var a = 3;
foo(*a);
a // 2
А ещё реализацию легковесных потоков как в Rust ... эх