automatic generalization, 13 enumeration, 50 AutoOpen attribute, 221 equality, 51 AutoOpenAttribute, 305 equational, 257 AutoSerializable attribute, 151, 153, 155 explicit declaration of, 52 base type, 55 flexible type, 113 basic types inflexible type, 113 abbreviations for, 305 member, 259 block expressions, 104 member, 48 bprintf function, 93 nullness, 48, 58, 93, 258 byref arguments, 273 reference type, 50 byref pointers, 67 simple, 258 byref-address-of expression, 98 solving, 257 case names, 152 struct, 49, 258 characters, 28 subtype, 47, 257 class types, 155 unmanaged, 51 additional fields in, 161 ContextStatic attribute, 110, 208 members in, 159 control flow expressions, 104 class/end tokens, 155 copy-and-update record expression, 72 classes, 53 curried form, 175 CLI methods, 276 custom attributes CLI pointer types, 306 effect on signature checking, 233 CLIEvent attribute, 181, 186 in type definitions, 145 CLIMutable, 152 CustomComparison attribute, 190 comments, 25, 277 CustomEquality attribute, 189 compare function, 193 CustomOperationAttribute, 80 CompareTo, 192 declarations comparison attributes, 190 base type, 54 comparison constraint, 51 interface, 54 ComparisonConditionalOn constraint default initialization, 58 dependency, 190 DefaultValue attribute, 161 compatibility features, 315 definition expressions, 109 compilation order, 222 definitions CompilationRepresentation attribute, 182, recursive, 261 206 delayed expression, 76 COMPILED compilation symbol, 23, 224 delegate constraint, 50 compiler directives, 225 delegate implementation expression, 96 computation expression, 76 delegate type, 166 condensation, 269 delegates, 53 Conditional attribute, 255 deterministic disposal expression, 112 conditional compilation, 26, 255 directives ML compatibility and, 315 #load, 224 conditional expressions, 104 #nowarn, 224 constant expressions, 68 compiler, 225 constants with measure annotations, 197 lexical, 225 constrained types, 47 line, 33 constraints, 47 preprocessing, 26 comparison, 51 dispatch slot checking, 75, 273 current inference, 45 dispatch slot inference, 75, 271 default constructor, 49 dispatch slots, 273 delegate, 50 do statements, 157 dependency of, 190 in modules, 210
automatic generalization, 13 AutoOpen attribute, 221 AutoOpenAttribute, 305 AutoSerializable attribute, 151, 153, 155 base type, 55 basic types abbreviations for, 305 block expressions, 104 bprintf function, 93 byref arguments, 273 byref pointers, 67 byref-address-of expression, 98 case names, 152 characters, 28 class types, 155 additional fields in, 161 members in, 159 class/end tokens, 155 classes, 53 CLI methods, 276 CLI pointer types, 306 CLIEvent attribute, 181, 186 CLIMutable, 152 comments, 25, 277 compare function, 193 CompareTo, 192 comparison attributes, 190 comparison constraint, 51 ComparisonConditionalOn constraint dependency, 190 compatibility features, 315 compilation order, 222 CompilationRepresentation attribute, 182, 206 COMPILED compilation symbol, 23, 224 compiler directives, 225 computation expression, 76 condensation, 269 Conditional attribute, 255 conditional compilation, 26, 255 ML compatibility and, 315 conditional expressions, 104 constant expressions, 68 constants with measure annotations, 197 constrained types, 47 constraints, 47 comparison, 51 current inference, 45 default constructor, 49 delegate, 50 dependency of, 190 enumeration, 50 equality, 51 equational, 257 explicit declaration of, 52 flexible type, 113 inflexible type, 113 member, 259 member, 48 nullness, 48, 58, 93, 258 reference type, 50 simple, 258 solving, 257 struct, 49, 258 subtype, 47, 257 unmanaged, 51 ContextStatic attribute, 110, 208 control flow expressions, 104 copy-and-update record expression, 72 curried form, 175 custom attributes effect on signature checking, 233 in type definitions, 145 CustomComparison attribute, 190 CustomEquality attribute, 189 CustomOperationAttribute, 80 declarations base type, 54 interface, 54 default initialization, 58 DefaultValue attribute, 161 definition expressions, 109 definitions recursive, 261 delayed expression, 76 delegate constraint, 50 delegate implementation expression, 96 delegate type, 166 delegates, 53 deterministic disposal expression, 112 directives #load, 224 #nowarn, 224 compiler, 225 lexical, 225 line, 33 preprocessing, 26 dispatch slot checking, 75, 273 dispatch slot inference, 75, 271 dispatch slots, 273 do statements, 157 in modules, 210
FSharpSpec-4.0-latest.docx