Friday, May 14, 2021

Another gSuneido Milestone

This screenshot probably doesn't look too significant - just the Suneido IDE. The only noticeable difference is down in the bottom left corner. Normally it would show something like:

Instead it shows:

That means gSuneido is running "standalone", i.e. using its own database instead of connecting as a client to a jSuneido database. While the surface difference is tiny, internally this is a huge jump.

I've been working away on the gSuneido database over the last year at the same time that we've been debugging and then rolling out the gSuneido client.

If I had just ported the jSuneido database implementation it would have been much easier, but what would be the fun in that. I kept the query implementation but redesigned the storage engine and transaction handling. I'd call it second system effect, but it's more like third system since I also redesigned this for jSuneido.

I still have lots to do. Although the IDE starts up, it's quite shaky and easily crashed. Many of the tests fail. But even to get to this point a huge number of pieces have to work correctly together. It's a bit like building a mechanical clock and reaching the point where it first starts to tick.

4 comments:

  1. Anonymous10:03 AM

    Hi Andrew,
    Happy to know the progress of the "go" version.
    I used cSuneido a lot for little personal applications years ago.
    I would like to play/test this new client version. Is it possible?
    Merry Christmas.
    Claudio

    ReplyDelete
  2. Hi Claudio,
    Good to hear from you.
    gSuneido (the Go implementation) still has a few issues, but it is getting close. I can put together something for you to try.
    Best wishes,
    Andrew

    ReplyDelete
  3. I created a release on GitHub that you can play with.

    https://github.com/apmckinlay/gsuneido/releases/tag/2021-12-29

    ReplyDelete
  4. Anonymous11:34 PM

    Thanks

    ReplyDelete