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:

Anonymous said...

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

Andrew McKinlay said...

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

Andrew McKinlay said...

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

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

Anonymous said...

Thanks