HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
jcubic
lips
JavaScript2020–2021
jcubic / lips

lips

Scheme based powerful lisp interpreter in JavaScript

4Distinct people
5Mentions
0Explicit recommenders
511GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Scheme based powerful lisp interpreter in JavaScript

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week5 dated mentions

Observed mentions: 2020-10-27 22:13:20 UTC to 2021-05-22 10:39:38 UTC. Weeks start Monday, UTC.

0122020-10-26 00:00:00 UTC to 2020-11-02 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 commentsOct 262020-11-02 00:00:00 UTC to 2020-11-09 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-11-09 00:00:00 UTC to 2020-11-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-11-16 00:00:00 UTC to 2020-11-23 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-11-23 00:00:00 UTC to 2020-11-30 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-11-30 00:00:00 UTC to 2020-12-07 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-12-07 00:00:00 UTC to 2020-12-14 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-12-14 00:00:00 UTC to 2020-12-21 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-12-21 00:00:00 UTC to 2020-12-28 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-12-28 00:00:00 UTC to 2021-01-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-04 00:00:00 UTC to 2021-01-11 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-11 00:00:00 UTC to 2021-01-18 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2021-01-18 00:00:00 UTC to 2021-01-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-25 00:00:00 UTC to 2021-02-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-02-01 00:00:00 UTC to 2021-02-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsFeb 12021-02-08 00:00:00 UTC to 2021-02-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-02-15 00:00:00 UTC to 2021-02-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-02-22 00:00:00 UTC to 2021-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-03-01 00:00:00 UTC to 2021-03-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-03-08 00:00:00 UTC to 2021-03-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-03-15 00:00:00 UTC to 2021-03-22 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2021-03-22 00:00:00 UTC to 2021-03-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-03-29 00:00:00 UTC to 2021-04-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-04-05 00:00:00 UTC to 2021-04-12 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-04-12 00:00:00 UTC to 2021-04-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-04-19 00:00:00 UTC to 2021-04-26 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-04-26 00:00:00 UTC to 2021-05-03 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-03 00:00:00 UTC to 2021-05-10 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-10 00:00:00 UTC to 2021-05-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-17 00:00:00 UTC to 2021-05-24 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsMay 17

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Oct 262020-10-26 00:00:00 UTC2020-11-02 00:00:00 UTC202
Nov 22020-11-02 00:00:00 UTC2020-11-09 00:00:00 UTC000
Nov 92020-11-09 00:00:00 UTC2020-11-16 00:00:00 UTC000
Nov 162020-11-16 00:00:00 UTC2020-11-23 00:00:00 UTC000
Nov 232020-11-23 00:00:00 UTC2020-11-30 00:00:00 UTC000
Nov 302020-11-30 00:00:00 UTC2020-12-07 00:00:00 UTC000
Dec 72020-12-07 00:00:00 UTC2020-12-14 00:00:00 UTC000
Dec 142020-12-14 00:00:00 UTC2020-12-21 00:00:00 UTC000
Dec 212020-12-21 00:00:00 UTC2020-12-28 00:00:00 UTC000
Dec 282020-12-28 00:00:00 UTC2021-01-04 00:00:00 UTC000
Jan 42021-01-04 00:00:00 UTC2021-01-11 00:00:00 UTC000
Jan 112021-01-11 00:00:00 UTC2021-01-18 00:00:00 UTC101
Jan 182021-01-18 00:00:00 UTC2021-01-25 00:00:00 UTC000
Jan 252021-01-25 00:00:00 UTC2021-02-01 00:00:00 UTC000
Feb 12021-02-01 00:00:00 UTC2021-02-08 00:00:00 UTC000
Feb 82021-02-08 00:00:00 UTC2021-02-15 00:00:00 UTC000
Feb 152021-02-15 00:00:00 UTC2021-02-22 00:00:00 UTC000
Feb 222021-02-22 00:00:00 UTC2021-03-01 00:00:00 UTC000
Mar 12021-03-01 00:00:00 UTC2021-03-08 00:00:00 UTC000
Mar 82021-03-08 00:00:00 UTC2021-03-15 00:00:00 UTC000
Mar 152021-03-15 00:00:00 UTC2021-03-22 00:00:00 UTC110
Mar 222021-03-22 00:00:00 UTC2021-03-29 00:00:00 UTC000
Mar 292021-03-29 00:00:00 UTC2021-04-05 00:00:00 UTC000
Apr 52021-04-05 00:00:00 UTC2021-04-12 00:00:00 UTC000
Apr 122021-04-12 00:00:00 UTC2021-04-19 00:00:00 UTC000
Apr 192021-04-19 00:00:00 UTC2021-04-26 00:00:00 UTC000
Apr 262021-04-26 00:00:00 UTC2021-05-03 00:00:00 UTC000
May 32021-05-03 00:00:00 UTC2021-05-10 00:00:00 UTC000
May 102021-05-10 00:00:00 UTC2021-05-17 00:00:00 UTC000
May 172021-05-17 00:00:00 UTC2021-05-24 00:00:00 UTC101

What Hacker News says

5 sources
I've created [jQuery Terminal][0] in about 2010 I think it was first library that allow to create CLI applications in Browser. I've started it because I wanted to have SSH like experience on my shared hosting that didn't provide SSH access. I've build application using my Terminal, called [Leash][1]. I don't use it anymore because my current shared hosting have SSH. I've also build [sysend.js][2] (random name with send at the end). It's for sending messages between Open Tabs, It have nice API and it works in all modern browsers and even some older ones like IE11. I didn't know any existing library that did the same, that's why I've created one. Another library of mine is [Tagger][3], because there where no Vanilla JavaScript library like this. I needed it for StackOverflow Q&A site that I've started, but abandoned and it was inspired by S
Read the rest
tackOverflow tag editor. Yet another library is [LIPS][4], Powerful Scheme based lisp in JavaScript. LIPS is acronym LIPS Is Pretty Simple (at least it was when I started the project on [Codepen][5]). It started as lisp in JavaScript, but later I decided that I want fully working Scheme (compliant with R5RS and R7RS). I'm still working on Beta 1.0 version, that is like completely new project. I'm also still working on new website that will showcase beta version better. I've also created [Favloader][7] - favicon animation library. [LILY][8] - Zero dependency, simple version of YARGS for parsing command line arguments. [0]: https://terminal.jcubic.pl/ [1]: https://leash.jcubic.pl/ [2]: https://github.com/jcubic/sysend.js [3]: https://github.com/jcubic/tagger [4]: https://github.com/jcubic/lips [5]: https://codepen.io/jcubic/pen/gvvzdp [6]: https://lips.js.org/ [7]: https://github.com/jcubic/favloader [8]: https://github.com/jcubic/lily
In Ask HN: What are some tools / libraries you built yourself?
I'm working on my Scheme based lips interpreter in JavaScript. With great integration with JavaScript, literal regular expression, auto async/await (with option to quote the promise), self documented like ELisp. I'm working on compatibility with R7RS, recently implemented rest of the functions from R5RS. Big part of the standard library is written in Scheme (small LIPS core) and I'm also working right now on Rollup plugin that will allow to created one bundle for all the Scheme code is I no longer need to load them with Ajax. What's missing are continuations and proper tail calls. And syntax-rules macros need to be heavy refactored (I need to add proper expansion time). If you want to take a look make sure to check out 1.0 Beta version, that is completely different than what's suppose to be stable version. Website: https://lips.js.org/ Gi
Read the rest
tHub: https://github.com/jcubic/lips The most up to date documentation is on the wiki: https://github.com/jcubic/lips/wiki/v1.0-draft
In Ask HN: What are you working on?
[ To save readers a search, LIPS is at https://github.com/jcubic/lips ] I'm happy that eslisp has inspired other language ideas. LIPS is cool. The auto-resolving Promise feature is a great idea that's only really possible when you implement the language as an interpreter like you have. Generated code for that would be a mess... I agree about the (. console log) thing. Such a common operation should be easy to type. I only did it this way to avoid adding any more syntax to the language, because I thought I could solve that problem later by making the syntax configurable by users. ...which I haven't really done well yet. Eslisp has a system called _transform macros_, one of which is https://github.com/anko/eslisp-propertify which turns `console.log` atoms into `(. console log)`, making the syntax legal. The transform macro system is
Read the rest
really awkward to use and limited in functionality. I'm working in private on replacing the whole parser with one that user macros could modify, based on https://github.com/anko/partser. Parser combinators are the future!
In Eslisp – An S-expression syntax for ECMAScript/JavaScript, with Lisp-like macros

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.