of currification. This should provide for error messages that are more easily understood. It also is much better att typechecking function calls utilizing the splice (@) operator. The mechanisms used by the typechecker are also made available as Pike.get_first_arg_type(), Pike.low_check_call() and Pike.get_return_type(). o Added generic attributes for types. Provides a method to hook into the type checker, so that it is possible to make custom type checking.
No syntax yet.
Added such a type checker for sprintf().
o Stricter typing of strings. The string type may now have an (optional) value range. Example: string(0..255) bytes; o Stdio.* Stdio.cp can now work recursively in a directory tree.
also that __func__ behaves like a litteral string, so implicit string concatenation is supported. eg: error("Error in " __func__ ".\n"); o limit() The new toplevel function limit(a, x, b) is a convenience function that works like min(max(a,x),b).
o sprintf() and sscanf()
The format string for sprintf() and sscanf() et al is now
syntax checked at compile-time, and the arguments after it
are matched against it.
o ADT.BitBuffer Added read() method that reads whole bytes from the buffer and returns as a string. o ADT.Queue It is now possible to use sizeof() and value() on a Queue object. o ADT.Stack