MonoidMusician / dhall-purescript

Dhall implementation in PureScript
https://monoidmusician.github.io/dhall-purescript/index.html
BSD 2-Clause "Simplified" License
95 stars 5 forks source link

dhall-json functionality #16

Open MonoidMusician opened 3 years ago

MonoidMusician commented 3 years ago

Users will probably want to be able to export (and possibly import) JSON from Dhall expressions, so we should probably add some of the functionality of dhall-json to this library (wouldn't need to have 100% feature parity). Would be a good issue for someone else to tackle.

mithray commented 2 years ago

I would love to help out but I really don't know how to get this working. I want to use this but I am pretty new to Purescript and the Documentation is unclear to me, and even misleading at points. I've built the package with spago. So why does this follow with a section about using bower? Shouldn't it be under a separate subheading if it's not part of the same process? I've used the the cli to convert the packages.dhall in the root directory, but how do I use this in a browser? Sorry it's really unclear to me.

mithray commented 2 years ago

Similarly, why are the dependencies listed in the readme as if they should be executed when they are inside the package.json? Being included within a section title "installation" implies that they should be run, but they are already run if you install it with npm.

purefunctor commented 2 years ago

@mithrayls Hi there, just answering a few questions:

So why does this follow with a section about using bower?

PureScript used to use the Bower registry and tooling for its packages, with pulp being the build tool. Eventually, we switched to using spago and its package set system, only recently getting our own registry up and running.

Similarly, why are the dependencies listed in the readme as if they should be executed when they are inside the package.json?

I believe the Installation section is for downstream consumers of dhall-purescript, since spago by itself cannot orchestrate building foreign dependencies or run build scripts at the moment.