I'll email you offline. On Tue, Nov 7, 2017 at 1:36 PM, Mark Waddingham via use-livecode < use-livecode@lists.runrev.com> wrote:
> On 2017-11-07 17:42, Mike Kerner via use-livecode wrote: > >> No, the ERP is written in HP BASIC, so I would want to emulate the >> language, given the breadth and number of programs. I was thinking about >> writing wrappers for the various commands and functions of the language, >> but it won't be easy, no matter what I do. >> > > In this case 'ease' is probably related to the breadth of the language and > how complex individual commands/functions are - if you have a good > architecture for the emulator, most of the work will be in recreating that > functionality, rather than the parsing/execution mechanism. > > There are also binary resources that I would have to have recreated such as >> forms and dialogs, and I would have to take the db schemas and convert >> them >> to a modern database, which seems like the least work of this entire silly >> idea. >> > > From what you've said it doesn't sound like a silly idea at all. > > Would it be less work to rewrite it? I doubt it. Would it be less effort >> to cough up for an off-the-self ERP package? Possibly, but the one piece >> that is extremely valuable is the payroll piece, because it is so >> expensive >> to hire a service or to pay for someone else's payroll software. For >> example, look at the time and attendance piece. I was able to write a >> timeclock app that runs on a tablet for a tiny fraction of what it would >> cost to replace the existing timeclocks. Timekeeping software is also >> crazy expensive, and payroll is akin to highway robbery. >> > > If it is a system you've been maintaining for 30 years, then I suspect you > are correct - it won't be less work to rewrite as you'll spend a lot of > time making things work as they did before... After all, I suspect that > after 30 years working on it even you can't remember where all the bodies > are buried! > > (I certainly find zombies popping up now and again to bite me in the > LiveCode engine from things I've done in the past!) > > Would it be easier to try to build an emulator in Xojo? I've thought about >> it, but before I add yet another development tool to the mix, here, I >> thought I'd chase this idea, first. >> > > Well I can certainly say that LiveCode is perfectly capable, and indeed > very good for writing compilers/interpreters because of the way its arrays > work (copy-on-write in particular), and the ability to pass references to > array elements to functions. (I've writing a few such things in the last 12 > months - the SVG compiler being the most recent example). > > I'd generally recommend using a LiveCode array to represent the source > structure (after parsing - which will be a tree), and then write a > recursive evaluator for it, threading through the node which is being > executed and a mutable context array which contains all the current > execution state: > > on langExecute @xContext, pNode > - dispatch to do what you need to do for node, using state from > xContext > end langExecute > > If you can figure out how to map the source language to (essentially) a > sequence of command invocations, then you can write the each piece of > functionality provided by the language (i.e. the bits other than variable > manipulations and control transfer) as a single handler which takes the > xContext parameter. > > Okay, so all the above is a bit vague - but it is just to give an idea of > how I've found the best way to structure such things in LiveCode. > > Warmest Regards, > > P.S. Do you have the online links for the reference manuals? I'm > intrigued... > > > -- > Mark Waddingham ~ m...@livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode