Darren Newton's simple-http library 
(https://github.com/DarrenN/simple-http) vastly eases working with REST 
APIs and is very much modeled off of the http client libraries you'd expect 
to see in other language ecosystems.

For some quick, useful, and opinionated perspective on REST services, I 
like to point people to this vignette from the R 
The httr package works similarly to the simple-http package in R.

As an aside, if any members of the academic Racket community are out there, 
I'd humbly submit that the R community would be an ideal place to start 
plundering if the goal were ever to grow the Racket ecosystem. While the R 
language itself can be a little idiosyncratic (it originally started as a 
bunch of Scheme macros I believe), the community is addressing longstanding 
challenges in creative, researched ways. When watching the Python and R 
data science communities, I find myself feeling that the Python community's 
comparative advantage is in being able to write code, while the R 
community's comparative advantage is in having the disposition to read 
about prior art before writing code. Occasionally both of those skills are 
manifest in the same place, producing truly great contributions like ggplot 
and dplyr (the httr package mentioned above was similarly well-researched 
and executed, but there's is much prior art). I can't help but look at the 
ggplot data visualization DSL and the dplyr data manipulation / RDBMS 
interaction DSL and think that Racket's facilities couldn't enable 
something even more powerful. If I had more time and computer science 
know-how, this would surely be my dream task.


On Wednesday, April 11, 2018 at 11:36:50 AM UTC-7, Paulo Matos wrote:
> Hi, 
> I am interested in developing a Racket wrapper for hetzner cloud rest 
> api. This is a REST API defined in: 
> https://docs.hetzner.cloud/ 
> I however, have no experience with accessing REST APIs in racket much 
> less developing one. 
> 1. Are there any examples out there of wrapping rest apis in racket? 
> 2. If you look at how this is done in Python[1] as expected everything 
> is an object. However, from what I generally see, libraries seem to 
> rarely touch the racket object system (although I think it's great). So, 
> I guess instead of having an object 'Client' to which you would do (send 
> client login "username" "password"), is it generally preferable to have 
> a (make-client ...), which you would follow with (client-login 
> "username" "password")? 
> Any thoughts would be appreciated before I commit myself, only to find 
> it goes against the racket way once I publish it. :) 
> [1] https://github.com/elsyms/hetznercloud-py/ 
> -- 
> Paulo Matos 

You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to