3 ms·
Alternative: pREST : GOlang based RESTful API ( PostgreSQL database ) : https://github.com/nuveo/prest https://github.com/nuveo/prest http://postgres.rest/
by pella 10y ago
Alternative:
pREST : GOlang based RESTful API ( PostgreSQL database ) : https://github.com/nuveo/prest https://github.com/nuveo/prest http://postgres.rest/ http://postgres.rest/
"Problem: There is the PostgREST written in haskell, keep a haskell software in production is not easy job, with this need that was born the pREST."
- Mister_Snuggles 10y agoNot a Haskell user, but what makes it difficult to keep it in Production?
- buckie 10y agoNothing. I honestly have no idea what they're talking about. Haskell apps tend to be tanks once they're deployed. The only issue I've ever seen was a Haskell app getting OOMed because the dev box only had 8GB of RAM and someone deployed some data science infra to the box sometime later (which needed >8GB RAM). I think this statement is more accurate: > "Problem: There is the PostgREST written in Haskell, not in Go" Moreover, if you want to use something like PostgREST but need to extend it, and don't know Haskell, this is a completely legitimate problem. While I'm all for competing implementations, the pREST author's claim for why it's needed is inaccurate.
- Mister_Snuggles 10y agoExtension of something written in a language like Haskell[0] definitely poses challenges. Even if the language makes it un-modifiable in your environment, there's no reason it can't be treated like a black-box component and used. [0] By "like Haskell", I really mean "unreadable/unwritable by the team supporting it". This could apply equally to Ruby, Java, bash, SQL, JavaScript, and Python depending on the makeup of the team supporting it.
- jose_zap 10y agoWhat's difficult about deploying a single binary?
- pella 10y agohttps://github.com/nuveo/prest/issues/41 https://github.com/nuveo/prest/issues/41
- topspin 10y agoA paraphrasing of the discussion: q: "What issues did you have with Haskell in production?" a: "PostgREST doesn't provide binaries and building it is hard" q: "Actually PostgREST binaries are provided for multiple platforms." [1] a: "The real reason is we don't have Haskell developers here." Case closed. From personal experience PostgREST is high quality work; a set it and forget it service that doesn't need babysitting. Bugs are typically about missing capabilities, as opposed to failures. "Low defect" Haskell that does what it says on the tin. [1] I don't know exactly when binaries first appeared but they were available as of April 2016, about seven months before the first prest commit.
- arianvanp 10y agoHaskell literally has the same deployment benefits as go. They both deliver single static binaries with just a few dynamic dependencies (for haskell libc, libgmp)... Honestly, the authors seem to have no clue what they're talking about and were looking for a good excuse to build something cool :). Which is fine!
- pella 10y agohttps://github.com/nuveo/prest/issues/41 https://github.com/nuveo/prest/issues/41
- pella 10y ago[Curious/Discussion] Why the 'problem'? ( Haskell vs. Golang ) Dec 15, 2016: "Today the postgrest is not distributed a binary, need to install Haskell to compile. pREST in its 1.0 version will be binary distributed (cross compiling, run in Windows by example), so you don't need to have anything installed on the server to run. How old is Haskell and how many developers exist? Go has less years and more developers, if you need to fix a problem in postgrest turn where?" "The reason the pREST was born was because of a lack of developer, I am using pREST in my company, I know haskell and my developers nothing, if you have any problem (in production) just sits in my hand (hand want that)." https://github.com/nuveo/prest/issues/41 https://github.com/nuveo/prest/issues/41