4 ms·
But they are not written in cool languages therefore should be rewritten :( In all seriousness, I am struggling a bit to see a point in porting everything to J
by gedrap 11y ago
But they are not written in cool languages therefore should be rewritten :(
In all seriousness, I am struggling a bit to see a point in porting everything to JS (beyond a weekend project because why not, let's learn something).
I might be a bit out of the loop since it's been a while that I worked on Windows (and have been using msys2 instead of cygwin back then), but how come DDL and native compiling are the issues in cygwin?
And the 1/15th of the size bit. It's largely simply negligible with hard drives (and even SSDs recently) nowadays.
No snark intended (well, other than the first line, sorry), just genuinely curious.
- KirinDave 11y agoWell if Cygwin weren't a terrible mess, maybe we'd be using it more? It's universally reviled by most folks actually on the Windows platform. The value of this is that it works easily, portably, and with minimal overhead. By bigger question is, why does posix sh deserve to win? It's plaintext pipes approach is really frustrating in 2016.
- fao_ 11y ago> why does posix sh deserve to win? It's plaintext pipes approach is really frustrating in 2016. I think that in many aspects plaintext has won. Many historical records of the last century will be or have already been lost, because of formats that nobody can read. OTOH, plaintext is readable and supported by almost everything under the sun.
- KirinDave 11y agoI think it is weird that people say "plaintext has won" when basically every data format under the sun is structured, no one keeps data unencrypted, and transport protocols have basically grabbed all the mindshare as storage protocols. But keep in mind I think it is bad for pipes only.
- zwetan 11y agoI have no problems with powershell wanting to pipe "objects" but I still want a POSIX environment under Windows. And about why POSIX deserve to win ? For me it's about cross-platform command-line, I need to be able to run command-line tools that just behave the same under Windows, Mac OS X and Linux. So far, Windows has ignored the command-line for years, and when they don't ignore it they change it every couple of years, from scripting hosts WSH to PowerShell to whatever else ... Just sayin' it's hard to take Windows seriously when it come to the command-line environment, it is a huge mess.
- KirinDave 11y ago> For me it's about cross-platform command-line, I need to be able to run command-line tools that just behave the same under Windows, Mac OS X and Linux Then join my headache world of all 3 versions of bash doing subtly different things. We used to think our automation/deploy scripting could be cross platform if we used bash. Oh what heady and foolish days those were.
- EvanPlaice 11y agoPorting existig software to JS is advantageous for a few reasons. NPM makes cross-platform installation simple, easy, and scriptable by default. Dependency management. The package manager supports both local and global installations, as well as the ability to manage multiple versions of a dependency where necessary. Not by convention, by default. Dependency hell simply isn't an issue in the JS ecosystem. More secure. Scipt installation/management doesn't require root privileges. The runtime uses it's own sandbox. No matter how safe the underlying OS is, it's virtually impossible for a malicious script to break out and mutate memory/data outside of it's context. PwnToOwn competitions are frequently held to test, identify, and harden security. Project hosting is trivial to setup. Package installation, upgrade, removal is supported by default. Scripts aren't tightly coupled to the OS. So you don't have to import the entire universe to use them. For example, Cygwin or MiniGW not required. Scripts don't require compilation. If you run into problems, it's trivial to open up the source and correct the issue yourself. Shorter iteration/feedback loops on OSS projects means more users are capable of contributing fixes and/or new features. In short, all of the pain points that suck about native application development have been solved in the JS ecosystem. Just the 'import the universe' point alone is enough to deter any dane dev from porting a *nix binary to Windows. Disk space isn't the concern, surface area for potential security issues, bugs, and the maintenance overhead of keeping an OS emulation layer updated are. Javascript is a truly cross-platform solution.