gmStudio enables an agile Tool-Assisted Rewrite Methodology that accelerates the work of rewriting large software systems without sacrificing quality or control. As a migration development platform, gmStudio helps you verify, improve, and customize your translations so that they fit the unique requirements of your source code and .NET development standards. gmStudio supports preparation, translation, and verification activities and includes extensive analysis and reporting capabilities to help you plan, track and manage even the most large and complex migration projects.
The hallmark features and capabilities of gmStudio include the following:
Comprehensive Input System – source language descriptions, application code, COM API details, and custom rules are all used to direct the upgrade
Choice of Target Language -- automatically rewrite in either C# or VB.NET
Choice of Target Tools -- supports all Visual Studio and .NET Framework versions
Multi-Project Capability -- translate a group of inter-dependent VB6 projects as a coherent set and avoid using COM interop
ASP to ASP.NET -- create Web-Application Projects with codebehind and advanced restructuring for #include files
Custom COM Replacement -- replace COM classes with .NET code that meets your standards
Custom API Replacement -- replace Win32 API calls with .NET code that meets your standards
Custom Language Replacement -- replace VB6 intrinsic functions and classes with .NET code that meets your standards
Multiple Customization Options – customize your conversion using declarative XML, interpreted scripts, or DLLs developed in C, managed C++, C# or VB.NET.
Refactoring Commands -- fine tune the translation with renaming, reauthoring, dead-code removal, etc.
Shared File Consolidation – re-host content from shared code files into assemblies
Circular Reference Resolution – break circular references by converting circular references to interface references
Pre-Editing -- use translation script commands to alter the VB6/ASP code before translation
Post-Editing -- use translation script commands to alter the .NET code after translation
High Performance -- read, interpret, and rewrite up to 500K LOC per minute
COM Stub Generation -- generate stubbed-out .NET classes for the COM components used by your applications
Application Stub Generation -- stub out functions, modules or entire projects you plan to rewrite by hand
Content Templates -- use custom, dynamic templates for project files, AssemblyInfo files, and many other code structures
Custom Deployment/Build Processes -- add your tasks to the deployment/build processes for the translated code
Automatic Configurable Type Inference -- minimize the use of weak typing when a stronger type is more correct
Build Order Calculation -- compute the translation/build order for a set of inter-dependent VB6 projects
Include Order Calculation -- compute the translation/build order for a set of inter-dependent ASP pages and #include files
Analytics -- plan and track your progress with an extensive customizable set of migration analysis and reporting tools
"Under the hood"
gmStudio is powered by a highly configurable, robust computer language processing system called gmBasic. gmBasic is the result of over thirty years' research and development in the area of compiler design and linguistic theory applied to create a unique semantic translation technology that allows more accurate and complex transformations of program source codes.
gmBasic has three integrated components
Compiler: Builds a comprehensive semantic model of the source codebase and external COM components
Analyzer: evaluates and restructures the model to fit the desired architecture patterns.
Author: interprets the optimized model to generate clean, correct code that meets custom standards and conventions.