

Lispkit – A Lisp browser using WebKit - wtbob
https://github.com/AeroNotix/lispkit

======
justin_vanw
Ahem, this is a thin UI wrapper around a browser engine written in C++ called
WebKit, the main UI elements being in reality a thin lisp wrapper around a C
UI framework called GTK.

Calling this a Lisp browser is like using Xmonad and calling Linux a Haskell
Operating System.

~~~
AeroNotix
Author here.

Using that logic you can reduce a whole _heap_ of things down to just "thin
wrappers".

Yes, LispKit is a wrapper around a C++/C browser library. But would you really
want someone writing _yet another browser implementation_ in 2014? It's just
not good engineering to rewrite things such as that. They're complicated,
filled with security edge cases and would take a substantial amount of time
compared to "just" writing a wrapper library.

In reality, LispKit exposes the WebKit API through Lisp using a bunch of
relatively idiomatic (if I do say so myself!) functions and macros. For the
most part it seems as if Lispkit was built from the ground up in Lisp. It does
not feel like a "thin wrapper".

~~~
justin_vanw
Fantastic!

Wrapping WebKit is a great idea. I mean it generally hasn't worked well for
other libraries that have tried it, none of them have managed to avoid lots
and lots of bugs and quirky behavior, but maybe you do, so congratulations.

My only point is that this isn't a browser written in Lisp. It's not even
remotely close to that! Yet that is what the title of the HN story implies.
But it's not that, it's a wrapper, which is not what the title says, so I
mentioned that. You are agreeing with me except you seem to think I'm implying
something bad, which I'm not, beyond all the things implied by the facts, such
as:

It does inevitably just feel like a thin wrapper. There is no way for a lisp
hacker to get in there and play with it, or take this work and extend it using
lisp. They can change how WebKit is wrapped, but changing or extending
WebKit's behavior means digging into WebKit's millions of lines of C++.

------
lispm
Good to see people experimenting with SBCL, gtk and webkit. I'll hope we see
more of that...

------
alexandre_m
Limp Lispkit would be a much cooler name.

~~~
AeroNotix
Got a chuckle out of me!

------
cmiles74
This looks pretty neat!

I've started writing a scraper around the WebKit implementation that comes
with Java 8 in Clojure. Lately I've been toying with the idea of trying to put
a Conkeror-like browser together that's extensible (well, to some degree) with
Clojure code.

[https://github.com/cmiles74/scraper](https://github.com/cmiles74/scraper)

------
ludwigvan
What would it take to embed webkit in emacs proper?

~~~
AeroNotix
Work is already underway with this, I believe.

------
abecedarius
Is a Lisp browser a browser of Lisp code, or a web browser in Lisp? I won't
watch a video to find out, and it wasn't immediately obvious from the source
code.

~~~
vertex-four
It probably took you longer to write that than to click a video and fast-
forward to about half-way in to see.

~~~
sklogic
Video is the worst media possible. If something is not clear from a plain
text, it's quite likely something worthless.

It is really annoying that so many people are producing useless video content
now instead of writing nice, clean text.

~~~
kyberias
I agree 100%. All kinds of "tutorials" in video format are almost the worst.
It's not searchable etc. I'm expected to grab headphones and watch the whole
thing in order to learn that one thing.

~~~
jnbiche
I couldn't agree more, but we're in the minority. But if I see a
project/company has limited its marketing/explanation to video only, I just
close the browser tab. I can't stand watching a 10-minute video for an
explanation, when reading a brief, well-written paragraph could give me all
the info I need.

