News for hackers. Stuff that matters.
Re:Bakeware – Compile Elixir applications into single execut... by jdellinger on Thursday September 17, 2020 @07:24AM (#24503285)
In .NET we have a very similar tool for creating such packed binaries, dotnet-warp. I used it in one of my projects and quite liked it, since it's also quite easy to cross compile (cross-pack?) for the 3 major operating systems.

I like the general idea, your independent of the system wide framework version and it still has this "one-click" install procedure (dropping the binary in your path). However, I guess this is also the negativ Part. Users don't expect that a single binary extracts itself to somewhere --> uninstalling the binary leaves traces on the system.

Definitely looking forward to try it out for elixir, wondering how fast the erlang/elixir startup really is.

Re:Bakeware – Compile Elixir applications into single execut... by rhplus on Thursday September 17, 2020 @08:01AM (#24503546)
Single-file, platform-specific executables, framework independence and dependency trimming are all available in .NET Core 3.0:

https://www.hanselman.com/blog/MakingATinyNETCore30EntirelyS...

https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotne...

Re:Bakeware – Compile Elixir applications into single execut... by at_a_remove on Thursday September 17, 2020 @10:20AM (#24504941)
Complete n00b question -- you can do that?

The last time I touched anything .NET was about a decade ago. My somewhat old-school superiors were unimpressed with the ability to come up with a plain .exe at the end of the process. My lack of familiarity with how Visual Studio had evolved certainly played into it; the IDE made me feel like a chimp dropped into an airliner cockpit. I had the worst time trying to figure out how to turn off the "of course you have an enterprise server dedicated to delivering upgrades!" setting. None of it seemed to, uh, scale down for our piddly purposes.

Re:Bakeware – Compile Elixir applications into single execut... by rhplus on Thursday September 17, 2020 @11:04AM (#24505493)
.NET Core is a ground-up rewrite of the frameworks and tools. It's completely decoupled from Visual Studio. This would get you started on a toy project (one source file, one project file) now:

    dotnet new console --output sample1
    dotnet publish --self-contained -r linux-x64 sample1
https://docs.microsoft.com/en-us/dotnet/core/get-started
Re:Bakeware – Compile Elixir applications into single execut... by csdreamer7 on Thursday September 17, 2020 @08:02AM (#24503551)
Is there anything like this in Java?

I am aware of launch4j, but curious if there is a single step approach for all 3 platforms.

Re:Bakeware – Compile Elixir applications into single execut... by madduci on Thursday September 17, 2020 @09:31AM (#24504356)
Yes, since Java 9: it is called "jlink" and it's shipped with the OpenJDK. It assumes you have modularized jars.

An alternative is the GraalVM, which can compile the code as a C++ binary or a shared application, using LLVM as backend. If you work with Webservices (especially JavaEE), you might also want to have a look at Quarkus, which also uses GraalVM to create single binary executables

Re:Bakeware – Compile Elixir applications into single execut... by vips7L on Thursday September 17, 2020 @01:07PM (#24507171)
jlink/jpackage just isn't the same as the other things. It doesn't produce a single executable like .Net core or Bakeware which embed the vm into the binary. In .Net's case it self extracts on first run.

With jlink/jpackage you either ship an installer or a zip file.

Re:Bakeware – Compile Elixir applications into single execut... by crusso on Thursday September 17, 2020 @07:47AM (#24503443)
From the page: ~0.5s startup times or better on our computers
Re:Bakeware – Compile Elixir applications into single execut... by tasogare on Thursday September 17, 2020 @07:48AM (#24503450)
The lack of single binary output will be fixed in dotnet 5.