Skip to content
This repository has been archived by the owner on Mar 3, 2019. It is now read-only.

Port Perl to Haskell #16

Closed
xcthulhu opened this issue Aug 21, 2018 · 7 comments
Closed

Port Perl to Haskell #16

xcthulhu opened this issue Aug 21, 2018 · 7 comments

Comments

@xcthulhu
Copy link

This is a follow up on a conversation we had on slack. There I suggested that the perl scripts in the scripts could be executables written in Haskell.

There are pros and cons to this suggestion:

Cons

  • Aeson is more far more annoying than jq for pulling data out of a JSON
  • Hackage dependencies can and will break; scripts avoid dependency hell a lot better
  • Probably should have CI to make sure the PRs don't break the build
  • Haskell is harder to rapid prototype than perl scripts

Pros

  • Spacchetti could be published to Hackage, which makes for easier installs with cabal install spacchetti, nix-env -iA nixpkgs.haskellPackages.spacchetti and so on.
  • Dhall and psc-package are written in Haskell. Haskell is a natural fit for gluing them together.
  • In the long run pure functional code is more maintainable than shell scripts

I have some spare cycles right now to do the port, but perhaps this is premature. So I'll wait for you to give me the go ahead...

@justinwoo
Copy link
Contributor

justinwoo commented Aug 21, 2018

Sounds good. I guess only a few of the scripts are actually useful to port (add/prepare/update from bower), then there's some feature improvements I'd like to do in the future (mostly making local overrides setup easy and scriptless).

I only ask that the perl files not be removed since I'll keep using and maintaining them 😄

@xcthulhu
Copy link
Author

I only ask that the perl files not be removed since I'll keep using and maintaining them 😄

Sure thing!

@Profpatsch
Copy link
Collaborator

fyi I already have some Haskell setup from my experiments.

@Profpatsch
Copy link
Collaborator

@xcthulhu You might be interested in #17

@justinwoo
Copy link
Contributor

I guess a lot of the above desired could be implemented in https://github.com/justinwoo/spacchetti-cli

@justinwoo
Copy link
Contributor

Since the Spacchetti CLI largely only does some basic psc-package set generation and does management of projects from Dhall, I think this now does kind of belong here. But I'm not entirely sure who all even wants to work on this, and I have been a happy consumer of my own perl scripts for quite a while now.

@xcthulhu
Copy link
Author

xcthulhu commented Nov 3, 2018

Sounds good! I don't have time to work on this right now, so I will close this issue.

@xcthulhu xcthulhu closed this as completed Nov 3, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants