Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request for Backend Rewrite in a Cross-Compatible Language for liveSPICE #207

Open
standard-librarian opened this issue Oct 31, 2023 · 2 comments

Comments

@standard-librarian
Copy link

We’re looking into the possibility of rewriting the backend of liveSPICE in a different language to address the challenges related to using C# and .NET on Mac and Linux systems. The current backend’s reliance on C# and .NET poses limitations for cross-platform compatibility, hindering its accessibility and usability on non-Windows environments.

To enhance the accessibility and versatility of liveSPICE, we’re considering alternative languages such as C, Java, Python, Go, or Rust, which offer better cross-platform support and are more conducive for Mac and Linux users.

M y teammate and I are open to exploring potential contributions to this migration effort, considering the rewiring of the liveSPICE backend for improved cross-compatibility. If the project aligns with our capabilities and goals, we would consider actively engaging in the migration process, should it be a feasible and practical endeavor.

@dsharlet
Copy link
Owner

dsharlet commented Oct 31, 2023

There are a few things that C# gives us that are hard to replicate in other languages:

  • I like making GUIs in C# more so than other languages. LiveSPICE (at least the GUI application) is a pretty complicated GUI.
  • We use the LINQ expression mechanism to provide us with a really nice easy to use JIT compiler. This isn't impossible in other languages, but it usually means pulling in a pretty big dependency (e.g. LLVM), or doing a lot more of the low level optimizations ourselves.

That said: I think .net core is supported on Mac and Linux? Just googling around, people seem to think that .net core (3.1 or later) on Linux is a pretty good environment and performs well (this was not true prior to 3.1). I think the main thing that we are missing is WPF, but that's only needed for the GUI. If you just want the backend on Mac/Linux, maybe the .net code currently just works?

@Federerer
Copy link
Collaborator

Federerer commented Oct 31, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants