(rss)
June 27, 2018
Frock: Clojure-flavoured PHP

Frock is a little experimental tool for writing PHP scripts using Clojure-like LISP syntax.

If you want to see what the code looks like, here's an example which fetches and lists top news items from the Hacker News API.

Some Frock code

Frock could be interesting to you if you are LISP or Clojure programmer writing a web application which is mostly front-end code, but which needs some small amount of server side logic for e.g. proxying, authentication, data persistence etc. and you want this application to be easily deployable by semi-technical users on commodity hosting.

Basically if your target audience is graphic designers, you like Clojure, and your backend requirements are slim, then you might be interested.

Why?

Pythagoras says no to Fava beans

PHP is an old server-side web development language which is simultaneously loathed by software developers everywhere, and also wildly popular and widely deployed. To reconcile this paradox let's take a look at some pros and cons of PHP.

Cons:

Pros:

The pros make PHP quite democratic. It's very easy to install PHP code on widely available, cheap, commodity hosting. It's easy to get started writing PHP applications; the PHP binary comes pre-installed on OSX for example. PHP contains a lot of capabilities by default: zipping files, opening sockets, encryption, command execution.

Frock exists to make the language semantics and features less of a con for brace wrangling LISP heads, whilst retaining the wide deployment surface and other democratic features of PHP.

4 months, 1 week ago - Thu 02 Aug 2018

Great pics and code man, thanks for sharing. Special thanks for simplifying pd websockets, havent tried it out yet, maybe it will be an answer to not having JAVA sockets to play with by default in web browsers soon. Am hoping that your javascript .send() function is compatible with the one I have in place that sends pd messages through JAVA. https://archive.org/download/xensynth/xesynthcontrol/

Leave a comment

(use markdown syntax if you like)