Arne Babenhauserheide

draketo.de · Personal blog · on HN since 2011

Arne Babenhauserheide writes about Wisp, a whitespace-based syntax for Scheme, plus Guile, Freenet and decentralized tools.

What HN saysHN commenters point to Wisp as a good indentation-based Lisp syntax, praise its ':' operator, and note it grew alongside SRFI-110 and SRFI-119.
59HN people shared it
26linked it in comments
60stories submitted
318story points
4 months agolast shared
2011people per year2026

Most-shared posts

  1. 1
    Wisp: Whitespace to Lisp
    11 people · 123 points · first shared 2021 · 67 comments on HN
  2. 2
    Going from Python to Guile Scheme: A Natural Progression
    10 people · 21 points · first shared 2014 · discussion on HN
  3. 3
  4. 4
    Wisp: Whitespace to Lisp
    4 people · 3 points · first shared 2016 · discussion on HN
  5. 5
    Freenet: The forgotten cryptopunk paradise
    2 people · 15 points · first shared 2015 · 2 comments on HN
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
    Comparing long term performance of git vs hg
    2 people · 2 points · first shared 2011 · discussion on HN
  11. 11
    FOSS book: programming essentials with Guile Scheme
    2 people · 2 points · first shared 2026 · 1 comments on HN
  12. 12
    Learn to program with Wisp, a Lisp without parentheses
    2 people · 2 points · first shared 2023 · discussion on HN
  13. 13
    Test of the hg evolve extension for easier upstreaming
    2 people · 1 points · first shared 2013 · discussion on HN
  14. 14
  15. 15
    Wisp lisp indentation preprocessor
    2 people · first shared 2014

What HN people wrote when they linked it

tmtvl · 2022-11-02
As always when "Wisp" is mentioned in relation to Lisp, it is not to be confused with Arne Babenhauserheide's excellent Wisp syntax for Scheme: https://www.draketo.de/software/wisp.
retrac · 2022-08-28
Unfortunately, as with all standards, there's so many wonderful alternatives to choose from. I rather like Wisp: https://www.draketo.de/software/wisp I wish all languages had the : operator that Wisp has. It's $ in Haskell. It simply says that what follows to the end of line is wrapped in brackets. So: putStrLn $ somefunc $ process val = putStrLn (somefunc (process val)) Like a UNIX pipe, but moving to the left.
ArneBab · 2022-08-09
Wisp was developed alongside SRFI-110 for a while and branched to SRFI-119[1], because SRFI-110 got more and more complex to improve edge cases while the focus of wisp is to preserve the simplicity of lisp. For more details, see the history part on the website[2]. The background of calling it Python-like is that this is the motivation behind starting Wisp: » I love the syntax of Python, but crave the simplicity and power of Lisp.« [1]: https://srfi.schemers.org/srfi-119/srfi-119.html [2]: https://www.draketo.de/software/wisp#sec-5
qwertyuiop924 · 2016-08-05
Actually, that's already been done in Scheme. Three times. Wisp(http://www.draketo.de/proj/wisp/) is probably the best one. It runs as a preprocessor, but if you use a scheme with the right syntax hooks (guile, racket, a few others), you might find a direct implementation. In fact, the main distribution has one for guile. There's also something similar for Common Lisp, but I don't know where or what.
616c · 2016-06-26
Wisp (aka Whitespace Lisp; actually Scheme but whatever): http://www.draketo.de/english/wisp/shakespeare OpenDylan (I have heard it referred to HN as a Lisp without parens more than once): http://opendylan.org/ And Rebol, not being lispy by the standards of few/some/many, is insane with macros from what I gather. Someone posted Red, a Rebol analogue that is an open source attempt to duplicate its expressiveness out of admiration. http://www.red-lang.org/2015/12/answers-to-community-questions.html I am confused though because this is says macros are not there. I obviously don't use it, but the last HN thread about it made it sound crazy. https://news.ycombinator.com/item?id=11364447 Anyway, re the strong imperative thing, someone posted Bone Lisp a couple days back, but this will not please you, it is classic parens Lisp, sans GC (I read but still have no clue how that works).
cptndarling · 2015-09-03
I would highly recommend org-mode for writing documents and papers. I'm an academic, and have been using org-mode for the last 4 years as part of the paper writing process. One of the best features of this pipeline is the fact that I can write a large chunk of the document whilst conducting research. I can jot down notes, caveats, schedule TODO items etc. and just tag the bits I want for my own reference as 'noexport', so that they don't make it into the exported tex or pdf document. Another great feature is that I can embed code for producing tables/figures all within the document and specify whether I want the code or result or both to be included. Finally, once I am happy I have most of the document the way I want it, I export to tex to deal with the final tweaks to finesse things -- spacing for the entire document, fine-grained adjustment of figure formatting. This ensures that I have all the information that went into constructing the document and allows me to deal with various venue-specific constraints like submitting a source archive, or pdf as necessary. Here are some resources for getting started with this: - https://github.com/vikasrawal/orgpaper/blob/master/orgpapers.org - http://draketo.de/english/emacs/writing-papers-in-org-mode-acpd - http://www.clarkdonley.com/blog/2014-10-26-org-mode-and-writing-papers…
shakna · 2026-06-22
I actually find wisp [0] harder to read/write than just plain Scheme. But there's quite a few little reader projects that swap out the first layer of syntax for another. Lisp isn't entirely tied to one representation. [0] https://www.draketo.de/software/wisp
arethuza · 2026-02-09
After programming in Common Lisp for a few years (a long time ago) and then later on having a brief period where I was fond of Python, I did also become fascinated with the concept of lisps where indentation replaces parenthesis such as Wisp: https://www.draketo.de/software/wisp Mind you - I usually end up concluding that Lisp syntax is actually pretty good as it is...
lproven · 2023-08-08
Wisp: https://www.draketo.de/proj/with-guise-and-guile/wisp-tutorial.html (Along with the others already mentioned.)
arboles · 2022-11-25
Haven't quite reached the ceiling yet. Go parenless. https://www.draketo.de/software/wisp
Ciantic · 2021-04-07
We programmers are very picky sometimes. I wonder if the Lisp would have taken off better if it had parentheses free syntax. It could have been easier to sell for uninitiated that way. I just found out that there exists Wisp [1], that basically removes the parentheses for indentation. https://www.draketo.de/software/wisp
throwawaybbb · 2019-12-18
Simple question: do you know enough lisp to write a self hosting interpreter in it? People talk up their language until they learn lisp then this happens: https://www.draketo.de/proj/py2guile/
bibyte · 2019-03-11
A very similar idea is the Wisp[1] mode in Guile. 1. https://www.draketo.de/proj/wisp/
chriswarbo · 2019-01-31
Wisp seems to override the reader too (so no transpiler needed) https://www.draketo.de/proj/wisp/src/94bae1032ef07e441a942c5881bb00963… I agree about the extra dependency and indirection; although the syntaxes (syntaxen?) are equivalent, so examples can be translated automatically if copy/pasted. > They're there if you want them, though. Yep, although as I wrote on my blog: "Whilst the parenthesis-heavy format of s-expressions is not necessary, it usually crops up in anything discussing Lisp and its derivatives, simply because it's much more popular than these alternatives. To me, that mostly indicates that concerns about "too many parentheses" are really a non-issue, despite being made by many who are new to the format."
civodul · 2019-01-15
Wisp provides a Python-like syntax for Scheme that gives you something very close to the above: http://draketo.de/english/wisp . (Though me and my editor don't view parentheses as an obstacle, quite the opposite...)
lake99 · 2018-09-20
> Speed wise it blew Bazaar and Mercurial out of the water. Benchmarks for this are hard to come by, and are for versions that are considered quite outdated now. But from what little there is, there wasn't that much of a performance difference between git and hg. For example, see this: https://www.draketo.de/proj/hg-vs-git-server/test-results.html
anon90556382956 · 2017-10-13
Yes, wisp : http://www.draketo.de/english/wisp But most lisper prefer parentheses. As for me I'm just starting to learn scheme because of GuixSD and I'm trying to get used to parentheses. It's not that bad if you use paredit/parinfer/...
brudgers · 2016-08-06
The URL without an anchor further down the page: http://www.draketo.de/proj/py2guile/
doublec · 2016-05-07
Decentralized microblogging using Sone, the twitter-like system on Freenet. Freemail, the encrypted email system. FMS, the forums. I also use the distributed data store for storing data. Basically anything you'd use IPFS for but more anonymity. Here's an example of using it for the backing store for my blog: https://bluishcoder.co.nz/2015/09/14/using-freenet-for-static-websites… Here's a series of articles on writing dynamic apps for Freenet - in this case chat-like things http://www.draketo.de/light/english/freenet/communication-primitives-1…
typish · 2015-09-09
They could take an approach similar to how Freenet does dynamic things. See here for details: http://draketo.de/light/english/freenet/communication-primitives-2-dis… Freenet has a similar immutable datastore but chat, microblogging, etc have been built on it.
franek · 2015-03-12
> If there is a way to structure LC like Python There is Wisp (Whitespace to Lisp): https://bitbucket.org/ArneBab/wisp http://draketo.de/light/english/wisp-lisp-indentation-preprocessor (I have never tried it.)
agumonkey · 2014-12-29
Found this recently, pretty useful to start http://draketo.de/proj/guile-basics/
tonfa · 2013-01-31
Evolve for Mercurial (starting to show up in core mercurial) is trying to cleanly solve this. It provides (safe) mutable history for local changes (the VCS tracks what is safe and what isn't), and a way to still be able to collaborate on changes without "surprising" the people who pull from you. E.g.: http://draketo.de/light/english/mercurial/hg-evolve-2013-01-12
nameless912 · 2016-09-12
I don't have the dotfile up anywhere, but I can run you through the basics really quickly: * SPC-l gives you the layouts micro-state, which allows you to do all of this. First, set up your layout however you'd like, then open up the micro-state and run the save-as command (SPC-l-S) and that will allow you to save the layout to a layouts file somewhere deep in the bowels of Spacemacs. * When you're ready to use your layout, use SPC-l-L to load the layout from a file. Type its name (Helm is used, so you get narrowing/fuzzy-find for free) and the layout will load. Note that if you already had another layout loaded, it will load it to the next workspace (accessible through SPC-l-<workspace-number>). * As for the org Kanban board, check here: http://www.draketo.de/light/english/free-software/el-kanban-org-table To add this to spacemacs, just open your .spacemacs file (SPC-f-e-d) and add `kanban` to your `dotspacemacs-additional-packages` list.
dredmorbius · 2016-05-06
Speaking for your opposition whilst misrepresenting their arguments is very dirty pool. There are numerous long-term expert users and developers of Linux who've spoken against systemd, its design, its behavior, and its developers. Including Linus Torvalds, Alan Cox, Ted T'so, and Patrick Volkerding (That's the original developer of Linux, the long-time second in command, the lead filesystem developer, and the Slackware distro's maintainer -- the oldest extant linux distro.) Mark Shuttleworth, Eric Raymond, and Ian Jackson are notable other critics. For actual arguments against systemd: http://without-systemd.org/wiki/index.php/Arguments_against_systemd https://igurublog.wordpress.com/2014/04/03/tso-and-linus-and-the-impot… The laptop vs server divide: http://www.infoworld.com/article/2837182/linux/back-into-linux-systemd… Bad design and bad attitude. One or the other might be survivable. Both are likely not. http://www.infoworld.com/article/2608798/data-center/systemd--harbinge… Uselessd's observations on misrepresentations by systemd advocates: http://uselessd.darknedgy.net/ProSystemdAntiSystemd/ Five troubles: http://www.draketo.de/light/english/top-5-systemd-troubles LWN on Debian's debates: https://lwn.net/Articles/452865/ Wikipedia on Systemd's controversy: https://en.m.wikipedia.org/wiki/Systemd#History_and_controversy

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close