Right:

  • The F# language allows this character in identifiers
  • The design-time editor & tooltips in VS know how to tokenize this
  • The debugger runtime tooltips, however, do not. F# uses the C# expression evaluator (EE) in its runtime debugger, and the C# EE doesn't know about these kinds of identifiers.

    • This also means that when using the debugger on F# code, code in the immediate window or conditional breakpoints or whatnot must use C# syntax, e.g. '==' instead of '='

Eventually we hope to create an F#-specific EE, but the implementation cost was too high for VS2010. As a result, a few debugger features (like F#-but-not-C# identifiers, expression syntax in immediate window, etc.) work less-than-ideally.

I don't have a Beta1 box to check, but in Beta2 the 'locals' window does at least properly show the values of variables with apostrophes in their names (though I don't know that it's possible to refer to them in a 'watch' or 'immediate' window, and as you said, the hover-tooltips don't work).

By on 9/3/2009 4:04 PM ()
IntelliFactory Offices Copyright (c) 2011-2012 IntelliFactory. All rights reserved.
Home | Products | Consulting | Trainings | Blogs | Jobs | Contact Us | Terms of Use | Privacy Policy | Cookie Policy
Built with WebSharper