Skip to content
This repository has been archived by the owner on Nov 26, 2024. It is now read-only.

Added treatment of null-values, and fixed incomplete text on IFormattable #301

Merged
merged 1 commit into from
Mar 28, 2018
Merged

Conversation

abelbraaksma
Copy link
Contributor

The string function casts to IFormattable internally. The original text only mentioned integer and floating point values for InvariantCulture processing, but in fact, there are many more values in the BCL that implement IFormattable and string() affects them too . I improved the text to be more precise.

Furthermore, special treatment of null was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.

…able

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.
@abelbraaksma
Copy link
Contributor Author

abelbraaksma commented Mar 28, 2018

@dend @KevinRansom @cartermp @thedanfernandez @dsyme - please validate this PR. Can this be merged?

Or is anything else needed before this can be merged? I'm not entirely familiar with the process in the docs.

Copy link
Contributor

@cartermp cartermp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @abelbraaksma

@cartermp cartermp merged commit bee636b into MicrosoftDocs:live Mar 28, 2018
Astorlights pushed a commit to Astorlights/visualfsharpdocs that referenced this pull request Jun 20, 2018
…able (MicrosoftDocs#301)

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.
cartermp added a commit that referenced this pull request Jun 20, 2018
* Fix broken table (#269)

* Fix code indentation (#267)

* corrected the output (#276)

* Update collections.array - fsharp .md (#271)

fixed signature for copy function

* fix and consolidate list.xyz2/xyz3 doc for input lists with different lengths (#282)

* Fix escape sequence. (#285)

* Add missing space (#284)

* Fix order of arguments in foldBack lambda (#286)

Running the following in F# Interactive will help explain why I believe this change is necessary:
> List.foldBack (fun elem acc -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 4 elem: 3 elem: 2 elem: 1 val it : int = 10
> List.foldBack (fun acc elem -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 0 elem: 4 elem: 7 elem: 9 val it : int = 10

The accumulator is the second argument in foldBack (contrary to fold where it is the first).
Positioning the arguments in reverse in an example is a great way to confuse a reader.

This also helps promote the fact that the state and list arguments to the folding function
are in the same order as their lambda counterparts.

Feel free to disagree :-).

* Fix Operators.atan2 description (#287)

atan2(y, x) is related to atan(y/x), *not* atan(x/y)

* Fixed code formatting (#288)

* Corrected prefix minus to prefix plus (#289)

* Added missing line break

Added missing line break to class definition of Microsoft.FSharp.Reflection.UnionCaseInfo

* Removed Missing CustomOperationAttribute Issue #266

* JoinConditionWord was Accidentally removed despite not being duplicated. Fixing this.

* Fix typo in Array2D.init docs

* Document that Map.pick can throw KeynotFoundException

* Update async.startchild['t]-method-[fsharp].md

Specify timeout behaviour

* Fix List.compareWith case

* Update walkthrough-using-visual-fsharp-to-create,-debug,-and-deploy-an-application.md

* Added treatment of null-values, and fixed incomplete text on IFormattable (#301)

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.

* Update quotations.patterns-module-[fsharp].md (#302)

Thanks @Columpio

* Clarified how ties are resolved (#304)

* Add except to list modules (#305)

The except function added in fsharp/fslang-design#41 doesn't have a doc here.
cartermp pushed a commit that referenced this pull request Jun 20, 2018
#309)

* Fix broken table (#269)

* Fix code indentation (#267)

* corrected the output (#276)

* Update collections.array - fsharp .md (#271)

fixed signature for copy function

* fix and consolidate list.xyz2/xyz3 doc for input lists with different lengths (#282)

* Fix escape sequence. (#285)

* Add missing space (#284)

* Fix order of arguments in foldBack lambda (#286)

Running the following in F# Interactive will help explain why I believe this change is necessary:
> List.foldBack (fun elem acc -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 4 elem: 3 elem: 2 elem: 1 val it : int = 10
> List.foldBack (fun acc elem -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 0 elem: 4 elem: 7 elem: 9 val it : int = 10

The accumulator is the second argument in foldBack (contrary to fold where it is the first).
Positioning the arguments in reverse in an example is a great way to confuse a reader.

This also helps promote the fact that the state and list arguments to the folding function
are in the same order as their lambda counterparts.

Feel free to disagree :-).

* Fix Operators.atan2 description (#287)

atan2(y, x) is related to atan(y/x), *not* atan(x/y)

* Fixed code formatting (#288)

* Corrected prefix minus to prefix plus (#289)

* Added missing line break

Added missing line break to class definition of Microsoft.FSharp.Reflection.UnionCaseInfo

* Removed Missing CustomOperationAttribute Issue #266

* JoinConditionWord was Accidentally removed despite not being duplicated. Fixing this.

* Fix typo in Array2D.init docs

* Document that Map.pick can throw KeynotFoundException

* Update async.startchild['t]-method-[fsharp].md

Specify timeout behaviour

* Update walkthrough-using-visual-fsharp-to-create,-debug,-and-deploy-an-application.md

* Added treatment of null-values, and fixed incomplete text on IFormattable (#301)

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.

* Update list.partition['t]-function-[fsharp].md
cartermp added a commit that referenced this pull request Jun 20, 2018
* Live -> master (#313)

* Fix broken table (#269)

* Fix code indentation (#267)

* corrected the output (#276)

* Update collections.array - fsharp .md (#271)

fixed signature for copy function

* fix and consolidate list.xyz2/xyz3 doc for input lists with different lengths (#282)

* Fix escape sequence. (#285)

* Add missing space (#284)

* Fix order of arguments in foldBack lambda (#286)

Running the following in F# Interactive will help explain why I believe this change is necessary:
> List.foldBack (fun elem acc -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 4 elem: 3 elem: 2 elem: 1 val it : int = 10
> List.foldBack (fun acc elem -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 0 elem: 4 elem: 7 elem: 9 val it : int = 10

The accumulator is the second argument in foldBack (contrary to fold where it is the first).
Positioning the arguments in reverse in an example is a great way to confuse a reader.

This also helps promote the fact that the state and list arguments to the folding function
are in the same order as their lambda counterparts.

Feel free to disagree :-).

* Fix Operators.atan2 description (#287)

atan2(y, x) is related to atan(y/x), *not* atan(x/y)

* Fixed code formatting (#288)

* Corrected prefix minus to prefix plus (#289)

* Added missing line break

Added missing line break to class definition of Microsoft.FSharp.Reflection.UnionCaseInfo

* Removed Missing CustomOperationAttribute Issue #266

* JoinConditionWord was Accidentally removed despite not being duplicated. Fixing this.

* Fix typo in Array2D.init docs

* Document that Map.pick can throw KeynotFoundException

* Update async.startchild['t]-method-[fsharp].md

Specify timeout behaviour

* Fix List.compareWith case

* Update walkthrough-using-visual-fsharp-to-create,-debug,-and-deploy-an-application.md

* Added treatment of null-values, and fixed incomplete text on IFormattable (#301)

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.

* Update quotations.patterns-module-[fsharp].md (#302)

Thanks @Columpio

* Clarified how ties are resolved (#304)

* Add except to list modules (#305)

The except function added in fsharp/fslang-design#41 doesn't have a doc here.

* Correcting the Return Value in list.partition['t]-function-[fsharp].md  (#309)

* Fix broken table (#269)

* Fix code indentation (#267)

* corrected the output (#276)

* Update collections.array - fsharp .md (#271)

fixed signature for copy function

* fix and consolidate list.xyz2/xyz3 doc for input lists with different lengths (#282)

* Fix escape sequence. (#285)

* Add missing space (#284)

* Fix order of arguments in foldBack lambda (#286)

Running the following in F# Interactive will help explain why I believe this change is necessary:
> List.foldBack (fun elem acc -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 4 elem: 3 elem: 2 elem: 1 val it : int = 10
> List.foldBack (fun acc elem -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 0 elem: 4 elem: 7 elem: 9 val it : int = 10

The accumulator is the second argument in foldBack (contrary to fold where it is the first).
Positioning the arguments in reverse in an example is a great way to confuse a reader.

This also helps promote the fact that the state and list arguments to the folding function
are in the same order as their lambda counterparts.

Feel free to disagree :-).

* Fix Operators.atan2 description (#287)

atan2(y, x) is related to atan(y/x), *not* atan(x/y)

* Fixed code formatting (#288)

* Corrected prefix minus to prefix plus (#289)

* Added missing line break

Added missing line break to class definition of Microsoft.FSharp.Reflection.UnionCaseInfo

* Removed Missing CustomOperationAttribute Issue #266

* JoinConditionWord was Accidentally removed despite not being duplicated. Fixing this.

* Fix typo in Array2D.init docs

* Document that Map.pick can throw KeynotFoundException

* Update async.startchild['t]-method-[fsharp].md

Specify timeout behaviour

* Update walkthrough-using-visual-fsharp-to-create,-debug,-and-deploy-an-application.md

* Added treatment of null-values, and fixed incomplete text on IFormattable (#301)

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.

* Update list.partition['t]-function-[fsharp].md

* Fixed formatting of README (#291)
@cartermp cartermp mentioned this pull request Jun 20, 2018
cartermp added a commit that referenced this pull request Jun 20, 2018
* Live -> master (#313)

* Fix broken table (#269)

* Fix code indentation (#267)

* corrected the output (#276)

* Update collections.array - fsharp .md (#271)

fixed signature for copy function

* fix and consolidate list.xyz2/xyz3 doc for input lists with different lengths (#282)

* Fix escape sequence. (#285)

* Add missing space (#284)

* Fix order of arguments in foldBack lambda (#286)

Running the following in F# Interactive will help explain why I believe this change is necessary:
> List.foldBack (fun elem acc -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 4 elem: 3 elem: 2 elem: 1 val it : int = 10
> List.foldBack (fun acc elem -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 0 elem: 4 elem: 7 elem: 9 val it : int = 10

The accumulator is the second argument in foldBack (contrary to fold where it is the first).
Positioning the arguments in reverse in an example is a great way to confuse a reader.

This also helps promote the fact that the state and list arguments to the folding function
are in the same order as their lambda counterparts.

Feel free to disagree :-).

* Fix Operators.atan2 description (#287)

atan2(y, x) is related to atan(y/x), *not* atan(x/y)

* Fixed code formatting (#288)

* Corrected prefix minus to prefix plus (#289)

* Added missing line break

Added missing line break to class definition of Microsoft.FSharp.Reflection.UnionCaseInfo

* Removed Missing CustomOperationAttribute Issue #266

* JoinConditionWord was Accidentally removed despite not being duplicated. Fixing this.

* Fix typo in Array2D.init docs

* Document that Map.pick can throw KeynotFoundException

* Update async.startchild['t]-method-[fsharp].md

Specify timeout behaviour

* Fix List.compareWith case

* Update walkthrough-using-visual-fsharp-to-create,-debug,-and-deploy-an-application.md

* Added treatment of null-values, and fixed incomplete text on IFormattable (#301)

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.

* Update quotations.patterns-module-[fsharp].md (#302)

Thanks @Columpio

* Clarified how ties are resolved (#304)

* Add except to list modules (#305)

The except function added in fsharp/fslang-design#41 doesn't have a doc here.

* Correcting the Return Value in list.partition['t]-function-[fsharp].md  (#309)

* Fix broken table (#269)

* Fix code indentation (#267)

* corrected the output (#276)

* Update collections.array - fsharp .md (#271)

fixed signature for copy function

* fix and consolidate list.xyz2/xyz3 doc for input lists with different lengths (#282)

* Fix escape sequence. (#285)

* Add missing space (#284)

* Fix order of arguments in foldBack lambda (#286)

Running the following in F# Interactive will help explain why I believe this change is necessary:
> List.foldBack (fun elem acc -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 4 elem: 3 elem: 2 elem: 1 val it : int = 10
> List.foldBack (fun acc elem -> printf "elem: %A " elem; elem + acc) [1;2;3;4] 0;;
elem: 0 elem: 4 elem: 7 elem: 9 val it : int = 10

The accumulator is the second argument in foldBack (contrary to fold where it is the first).
Positioning the arguments in reverse in an example is a great way to confuse a reader.

This also helps promote the fact that the state and list arguments to the folding function
are in the same order as their lambda counterparts.

Feel free to disagree :-).

* Fix Operators.atan2 description (#287)

atan2(y, x) is related to atan(y/x), *not* atan(x/y)

* Fixed code formatting (#288)

* Corrected prefix minus to prefix plus (#289)

* Added missing line break

Added missing line break to class definition of Microsoft.FSharp.Reflection.UnionCaseInfo

* Removed Missing CustomOperationAttribute Issue #266

* JoinConditionWord was Accidentally removed despite not being duplicated. Fixing this.

* Fix typo in Array2D.init docs

* Document that Map.pick can throw KeynotFoundException

* Update async.startchild['t]-method-[fsharp].md

Specify timeout behaviour

* Update walkthrough-using-visual-fsharp-to-create,-debug,-and-deploy-an-application.md

* Added treatment of null-values, and fixed incomplete text on IFormattable (#301)

The `string` function casts to `IFormattable` internally. The original text only mentioned integer and floating point values, but in fact, there are many more values in the BCL that implement IFormattable. I improved the text to be more precise.

Furthermore, special treatment of `null` was not mentioned, I've added that. Expanded supported platforms, and fixed a typo.

* Update list.partition['t]-function-[fsharp].md

* Fixed formatting of README (#291)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants