Has anyone used Moose to deal with a large legacy Progress ABL/4GL codebase, and if yes, what are the caveats, experiences, lessons learned you can share about this?
Progress codebase analysis using Moose
264 Views Asked by p.marino At
1
There are 1 best solutions below
Related Questions in CODE-ANALYSIS
- Unknown code analysis error
- Detect if source is CSS/HTML/JavaScript
- Should nDepend's output folder be added to source control?
- Visual Studio's Rule Set Editor does not open
- Why do I get warning CA2229 (Implement serialization constructors) when inheriting from standard type
- Gradle: Setting PMD Arguments minimumPriority and shortFilenames
- nested using() and code rule CA2202
- How can i create a (design time only) nuget package that doesn't add an assembly reference when installed?
- Why is /optimize in a C# project generating more Code Analysis warnings than without this enabled?
- Code Analysis detected errors. No code analysis issues were detected
- WPF code analyze : CA2202 Do not dispose objects multiple timesObject
- WPF code analyze : CA1001 Types that own disposable fields should be disposable
- How to get better results from LLVM's MemoryDependenceAnalysis pass?
- Assembly name referred in project but same version not available
- Object 'iCrypt' can be disposed more than once
Related Questions in PROGRESS-4GL
- How to stop all hints from progress davaserver for oracle?
- Progress 4GL - Define variable month/year
- OpenEdge progress database insert row - Beginner
- Date Format script Progress 4GL
- What's the right sintax to search for a X(6) format var in Progress 4gl?
- How to check if string is a palindrome in open edge progress 4gl
- How to profile an OpenEdge database?
- Display Value in Epicor
- Is OpenEdge Auditing safe from Dirty Reads
- unexpected frame appears onto another frame after an event
- Publish something else than a jar with gradle to Nexus
- Get temp-table's name in code
- Publish a zip file to Nexus (Maven) with Gradle
- Passing empty DataSet to Appserver
- Edit `TABLE-HANDLER` to point to another temp-table
Related Questions in LEGACY-CODE
- Finding controls by name in .NET 1.1 forms
- How can I have c# and vb.net code behinds in the same ASP.NET Web Forms application?
- VS2005 and Borland C++ Builder Integration
- Aebacus Controls Negative Number Issue
- Why change UB that will always work as intended?
- Sharing session between two ASP.NET applications, where one is nested within the other
- How to use an old single-threaded C++ library in a multithreaded environment
- Is there a tool that would replace passing Excel files back and forth and merging them?
- Where to keep dictionaries in app using Dependency Injection
- Progress codebase analysis using Moose
- Is there any way to see which line of code is being executed, without Breaking execution?
- C++11 on Visual Studio 2005
- how to get the parameters from s-function block in legacy code tool
- Headers already sent php - dealing with legacy code
- Design Philosophy, what defines a bug
Related Questions in MOOSE-TECHNOLOGY
- Progress codebase analysis using Moose
- In Moose, how can I be notified of a special key press?
- Ask "Save or Discard edits" to user that has manipulated a Glamour Text or Smalltalk code presentation
- How to get vertical labels with Roassal?
- Why won't my action's shortcut be executed?
- In Moose, why can't I populate my dynamic presentation with an action?
- How can I find all objects that reference myObject?
- Building a tree/outliner like graphical interface in Pharo/Smalltalk using Moose Glamorous Toolkit
- Edge from a node to itself in Roassal
- Avoid duplication of edges in roasal
- frozen solving environment step in installing a package in ubuntu
- Find methods with return type String
- Is there any event that triggers right after the layout is applied in Roassal?
- Error on importing FAMIX Java model using the VerveineJ
- Make edges not clickable in Roassal visualization from within a Glamour browser
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
From building a Delphi parser for Moose I know that it takes quite a lot of effort to get your FAMIX model complete. I'd recommend to make your feedback cycle as short as possible. From the progress grammar I'd say the system looks a bit more complicated than Delphi. Focus on the real & perceived problems and take shortcuts to find solutions for them. So you might want to delay writing a parser in Smalltalk, and just start using the pro parse stuff to generate a MSE file containing the interesting bits.
If the system is really large you might have to be careful not to run out of memory currently.
You are aware of the humane assessment site? The blog provides lots of examples and things to do/don't.
It really is an environment for developers, extremely powerful and having still a lot of rough edges. The mailing list is very helpful
When dealing with legacy systems, there are a few things I do before starting Moose, to get a feeling for the system. I run a duplication detector and zip the individual table dumps (that works well on progress files). Large files that compress extremely well are interesting discussion topics :)