Converting a Stack to many formats starting from XML

Richard Gaskin ambassador at fourthworld.com
Thu Jun 7 13:01:36 EDT 2012


Alejandro Tejada wrote:

> Richard Gaskin wrote
>>
>> [snip]
>> Maybe, but the absence of other devs anxious to dive in to help may also
>> merely suggest that such a translator has limited utility to the
>> community.
>> [snip]
>> But LiveCode stacks are only useful when run with the LiveCode engine.
>
> Well, that is an interesting point of view, because I see LiveCode stacks
> as a set of controls (Buttons, Scrollbars, menus, images, text fields,
> vector graphics, etc...) driven by user interactions and controled by a
> script language.
>
> Under that "broad" definition we could fit most (not all) of the current
> script driven software development and document creation.
>
> For this reason, I focus more in the similarities than in the differences
> among different file formats. I want to see the day when a stack
> could be exported to SVG, HTML webpages, SWF movies, PDF documents
> (Jan Schenkel have already created this library), OpenOffice or LibreOffice
> documents and others.

Using LiveCode as a drawing tool does indeed have some benefits, but as 
Jan and others have done, translating the objects directly into the 
target format (HTML, SVG, etc.) may be more beneficial than using an 
intermediary format such as XML, which would require finding another 
tool on the other side to translate from XML into the actual target format.


> Colin Holgate-2 wrote
>>
>> [snip]
>> You could choose to export a set of things from LiveCode that
>> you know to be common amongst other tools, and that would
>> at least give you a starting point for the interface design.
>> Converting code would be tricky though, and any of LiveCode's
>> custom features might be impossible to export in a way that
>> other tools could make sense of.
>>
>> So, the main use for exporting XML might be as a way to take
>> a stack and get it into an older version of LiveCode, or perhaps
>> as a text file backup of a stack.
>
> Mark Wieder wrote about using XML to convert stacks in a format
> that could be used in version control systems. This would allow many
> developers to work in the same stack or development project.

Most projects I manage have between three and five developers working on 
them.  The largest project I've managed had 20, using Gain Momentum, 
another xTalk that ran on Unix systems.

Gain included its own check-in/check-out/version control system, made 
with Gain itself and using stack files as the container format; I 
continue to use stack-file-based methods for managing LiveCode projects 
as well.

In the LiveCode world there are many ad hoc stack-based solutions for 
specific projects, and Chipp made a generalized tool, Magic Carpet, 
which is also stack-based.

LiveCode is an unusual beast in many respects, from its language to its 
object model, all the way down to the structure of its source in which 
code exists in objects in a proprietary binary format.

Many of us who use LiveCode find that its unusual nature yields equally 
unusual gains in productivity, but nothing in the imperfect world is 
ideal in all respects and everything involves tradeoffs.

The tradeoff with LiveCode is that it doesn't naturally lend itself to 
using version control systems designed for other languages.

With traditional languages, the source is comprised of hundreds of tiny 
text files, and traditional team management tools are designed to work 
with that sort of representation.

Contorting work files to conform to the expectations of a version 
control system (such as translating LC stack files to XML and back) 
seems a bit backwards to me.  It can be done, but is it worthwhile?

It's so much easier to do LiveCode work with LiveCode stack files.

I recognize that some enterprise workflows can benefit from using 
"standard" tools, but in practice how often is that really holding 
anyone back?

If a project manager thinks he needs to have two developers editing 
different lines of the same script simultaneously, that's not a version 
control tools problem, that's a project management problem. :)

--
  Richard Gaskin
  Fourth World
  LiveCode training and consulting: http://www.fourthworld.com
  Webzine for LiveCode developers: http://www.LiveCodeJournal.com
  Follow me on Twitter:  http://twitter.com/FourthWorldSys




More information about the use-livecode mailing list