I'm kind of new to language development, and have wondered how names are usually chosen for different programming languages, like Cs. C, C++, C#, then F#, and even J#. I've been developing a new language which is dynamic and cross-platform, and have been considering either calling it XVAR (since it runs on any platform, including WP7, ZuneHD, Windows, and Linux), or B♭ (for the sake of consistency).
The syntax of a general program to store the operating system architecture in a variable and print it are as follows:
callnative RoutedCommands getArchitecture null test callnative RoutedCommands print test Optional, deletes variable test from system memory. However, it would be deleted anyways, because the virtual machine terminates at the end of the program execution. delete test
When I execute the above code, I get the following output: Microsoft Windows NT 6.1.7600.0
The new language is a managed language, similar to Java or .NET, but does NOT have a garbage collector like .NET. When a variable is created, it will not be removed from RAM until delete is called on it. It features different levels of security, such as Trusted, Intermediate, and VirtualOnly. These security levels indicate the following things in a program:
- The program's ability to call into native libraries
- The program's level of access to the filesystem. Programs running in a VirtualOnly machine will only have accessed to a 'sandboxed' filesystem, similar to the way the Windows Phone 7 works.
- Various library capabilities which haven't been determined yet.
- Objects from outside a virtual machine instance (host machine) can be passed into the virtual environment, overriding any security settings defined by VM access policies. However; if these objects are 'delete'd, these additional priveledges are lost.
- Native system libraries transferred to a Trusted VM must be passed in at initialization of the VM; not afterwards.
- Native libraries may NOT be accessed in a Intermediate or VirtualOnly machine. Native calls can only be made if an object is passed into the program from native code at any time.
So my question is; based off of this information, what should the language be called, and WHY?