Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VIP: Remove duplicate syntax for bool/None constants #747

Closed
denis-bogdanas opened this issue Apr 3, 2018 · 2 comments
Closed

VIP: Remove duplicate syntax for bool/None constants #747

denis-bogdanas opened this issue Apr 3, 2018 · 2 comments

Comments

@denis-bogdanas
Copy link

Preamble

VIP: 746
Title: Remove duplicate syntax for bool/None constants
Author: Denis Bogdanas
Type: Standard Track
Status: Draft
Created: 2018-04-03

Simple Summary

Allow only one syntax for boolean/None constants.

Abstract

Right now there are 2 syntaxes that do the same thing" true/false/null and True/False/None. It is preferable to have only one option.

Motivation

Duplicate syntax for same functionality is needless complexity, and will lead to confusion among programmers when Viper will enter production. One programmer using True/False will read the code of other programmer using true/false and will wonder whether there's a semantic difference between the two. It is uncustomary for programming languages to have this sort of duplication.

Specification

Allow only one option.

Backwards Compatibility

One option will no longer be allowed. Will be replaced with another.

Copyright

Copyright and related rights waived via CC0

@dani-corie
Copy link

See #742 (duplicate?)

Also, as I also mentioned there, lowercase true/false/none should be kept as unused reserved words, otherwise they may be exploitable for writing underhanded code.

@denis-bogdanas
Copy link
Author

Oh, didn't see that. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants