Rip out db library OR start actually using it

the dblibrary gets installed with every built app whether you want it or not (this is a LC fossil). It inserts itself into the message path as a frontscript.

the original idea was to bind objects automagically to databases. LC eventually got rid of the binding, but the stack still gets forcibly installed in every built project.

we should either not install it no matter what (respect the inclusions) or (and?) bring back binding.

Binding would be a good hook for new users if implemented well.

1 Like

and for prototypes/quick-and-dirty apps/auto-generated layouts.

1 Like

FileMaker Pro does it extremely well, not really seen another platform that does.

Xojo almost does it well with their DBKit module, but unless done very well it becomes useless for experienced devs, as is hte case with DBKit. Nevertheless, a DBKit-style approach done well would be so good…

4D has done it well since v1, in the 80’s. In fact, that’s how you do layouts in 4D. You either bind variables or db fields (attributes) to basically every object on a layout.
I think we all remember when LC had binding, but it wasn’t great. I’m not sure why it went away.

I’ve never used binding in any language, so would be out of my element trying to get something right

I think @xtokjok’s point is that it’s half-implemented already in the engine by the sounds of it.

You probably have zero time with all the work you’re doing in HyperXTalk, but if you had interest you can test binding in Xojo for free (DBKit is a module you’d need to copy from examples->database), and I just saw 4D has a free trial (I’ve never used this).

My main experience with database-bound controls has been with FileMaker Pro - this is in my mind the epitomy of binding although to it’s own internal database only. It’s an incredible accelerator as most apps need some form of data access. I have no experience with 4D, but I’m going to guess FMP is by far the easiest to get into (they offer a 45 day trial).

If not in engine I wonder if this could be implemented as a backscript or some such. An interesting thought-experiment…

no one seems to miss v8 or v6 or whenever it was that database binding was a thing in lc. it might be a nice thing to have. i’m pretty sure the code is all still in the dblibrary. i think LC just modified the PI/PE.
re-enabling (and fixing) it would still be second priority to getting rid of the auto-inclusion of a library that only gets in the way.

Let’s put it on the back-burner for now. This is something that we can add afterwards when we have a chance to look at how it is done in other languages. I just don’t have the time to spend on that right now (sorry)

1 Like

100% agree - not a priority. the original hope was to remove the auto inclusion of the dblibrary from builds.