TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

BLisp: A Statically Typed Lisp Like Language

121 pointsby agentofuseralmost 4 years ago

7 comments

tinesalmost 4 years ago
Since the point of s-expression syntax&#x2F;homoiconicity is macros, I&#x27;m surprised to not see any mention of them in the feature list linked here. Does BLisp support macros? If so, what kind?<p>Also, is there an example of the type inference working?
评论 #27657869 未加载
评论 #27658084 未加载
valenterryalmost 4 years ago
I always feel that for lisp-like languages it&#x27;s just not a good idea to make them statically typed. Their power is derived from macros and the fact that code is data and the other way around.<p>For statically typed languages, they only feel ergonomic to me if they have highly specialized syntax and if they really leverage the type-system (which is often in conflict with macros and runtime flexibility).
评论 #27657205 未加载
评论 #27658547 未加载
评论 #27657199 未加载
评论 #27657032 未加载
xixixaoalmost 4 years ago
Why require Pure to be an annotation - why not make that the default without annotation - no effects? (Same as in Haskell)
评论 #27659684 未加载
评论 #27658674 未加载
ytakanoalmost 4 years ago
I&#x27;m an author of BLisp. Thank you for your interest and discussion.<p>I&#x27;m now designing macros, but I cannot spend sufficient time to do. Anyway, macros will be implemented in the near future.<p>This language is being implemented for bare-metal or no_std environments in Rust. This is often called shell. I don&#x27;t want to control OSes or devices by YAML or unsafe scripting languages.
nudpiedoalmost 4 years ago
Finally. I hope to get some time to see whether there are persistent data structures and how errors are reported and how dynamic the runtime is (in order to pass&#x2F;evaluate s-expressions on runtime). My understanding is that it compiles directly to rust, so some compilation to web assembly, and almost direct C interop should be possible, right?
didibusalmost 4 years ago
I wasn&#x27;t fully able to tell if this was interpreted or compiled?<p>In any case, it looks neat, I think the intersection of static types and Lisps is a space that needs more experimentation with, so I&#x27;m happy to see that.<p>I hope eventually it gains more effects as well, with only Pure and IO, you can&#x27;t do much of the cool things that effect systems bring.
评论 #27659853 未加载
moonchildalmost 4 years ago
Is this a lisp? It looks like an ml with s-expressions.
评论 #27666212 未加载