Log inSign up
(λ LIPS)
171 posts
(λ LIPS) profile banner
@LIPS_scheme

(λ LIPS)

@LIPS_scheme
LIPS: Scheme based powerful lisp interpreter in JavaScript for browsers and Node. Maintained by @jcubic Aspiring R7RS Scheme. Check Scheme Bookmark REPL.
Internet
lips.js.org
Joined November 2020
7
Following
70
Followers
RepliesRepliesRepostsRepostsMediaMedia

Log in or sign up for X

See what’s happening and join the conversation

Continue with phone
or
Log in with username or email
Terms·Privacy·Cookies·Accessibility·Ads Info·© 2026 X Corp.
  • Pinned
    @LIPS_scheme
    (λ LIPS)
    @LIPS_scheme
    Aug 17
    A new beta version of LIPS Scheme got released. This is a huge version. The evaluator was rewritten, and now it supports continuations and TCO (tail call optimization).
    A laptop with LIPS Scheme logo code for Y Combinator in Scheme and a text "LIPS: Scheme based powerful lisp"
    1
  • @LIPS_scheme
    (λ LIPS)
    @LIPS_scheme
    Aug 23
    Chibi R7RS compatibility tests are passing
    @jcubic
    Jakub T. Jankiewicz 🇵🇱
    @jcubic
    Aug 22
    Finally, all Chibi R7RS tests are passing. I can rest now.
    All unit tests are green; at the bottom there is a message: "20 tests passed"
  • @LIPS_scheme
    (λ LIPS)
    @LIPS_scheme
    Aug 21
    LIPS scheme Chibi R7RS compatibility tests status.
    @jcubic
    Jakub T. Jankiewicz 🇵🇱
    @jcubic
    Aug 21
    Chibi R7RS test status so far. Not bad; the numerical syntax requires parser changes. Also, I liked that 1e10 was converted to BigInteger. But this can be done with #e1e10. I'm thinking of obeying the spec and removing that feature.
    List of tests with green checkmark (16) and a red cross (3) with the text [fail]
  • @LIPS_scheme
    (λ LIPS)
    @LIPS_scheme
    Aug 18
    Loop anaphoric macro with continuations Now works in LISP Scheme #lisp #scheme
    (define-macro (loop . body)
  `(call/cc (lambda (break)
              (let continue ()
                ,@body
                (continue)))))

(let ((i 0))
  (loop
   (set! i (+ i 1))
   (if (> i 10)
       (break))
   (if (odd? i)
       (continue))
   (print i)))

;; ==> 2
;; ==> 4
;; ==> 6
;; ==> 8
;; ==> 10
  • @LIPS_scheme
    (λ LIPS)
    @LIPS_scheme
    Aug 14
    The new beta version of LIPS Scheme will allow you to create real JavaScript generators with help from continuations and JavaScript iterator protocol.
    Scheme code that defines an async iterator using call/cc (using a JavaScript object with next and the Symbol.asyncIterator symbol). The generator is used as a base for an anaphoric lambda* macro that exposes the yield operator. Then range* is created using lambda* and the (range* 10) is executed to create a vector from 0 to 9.
Advertisement
Advertisement