5 ms·
I checked their home page, and I can't quite seem to find the value proposition of Shen. It looks like it's a Lisp implementation? Why would I want to spend tim
by FreezerburnV 6y ago
I checked their home page, and I can't quite seem to find the value proposition of Shen. It looks like it's a Lisp implementation? Why would I want to spend time learning/using this over JS/Go/Java/etc.?
I'm not trying to make any statements about the usability or anything, I just literally cannot find enough details about what Shen is beyond some books on Amazon or vague home page claims to make any judgements about this.
- Jtsummers 6y agohttp://shenlanguage.org/osmanual.htm http://shenlanguage.org/osmanual.htm Here's a now 4 year old version of the manual that ought to provide you with more detail.
- eyelidlessness 6y agoIt’s a statically typed functional lisp, which is a rarity and a good opportunity to try out another programming paradigm. At a glance it looks like it uses a lot of Prolog semantics, so that’s also got Logic Programming heritage which is yet another paradigm exploration opportunity. I’m not sure it’s something I’d want to use in production, but I certainly might play around with it at some point to get some brain juices flowing in different directions. I went from JS -> Clojure/ClojureScript -> TypeScript, and that progression taught me a lot. It probably improved my programming skills many times over. I learned how to much better reason about state (Clojure/FP) and interfaces/contracts (TS/static types), which pays off constantly.
- travv0 6y agoThat's weird, because I just checked their home page and found this list of features: pattern matching, lambda calculus consistency, macros for defining domain specific languages, optional lazy evaluation, static type checking based on sequent calculus, one of the most powerful systems for typing in functional programming, an integrated fully functional Prolog, an inbuilt compiler-compiler, has a BSD kernel that runs under a host of different languages (Lisp, Python, Javascript, C ...) and operating systems (Windows, Linux, OS/X), is extensively documented in a book If those don't interest you, there's probably not a reason for you to spend time learning it. I'm not sure what other info you're expecting to find.
- cwyers 6y agoSo, a Lisp.
- zeugmasyllepsis 6y ago> static type checking based on sequent calculus, one of the most powerful systems for typing in Not exactly a common characteristic for Lisps
- nerdponx 6y agoI enjoyed this Strange Loop talk: https://www.youtube.com/watch?v=lMcRBdSdO_U https://www.youtube.com/watch?v=lMcRBdSdO_U
- openfuture 6y agoThe main idea is extreme portability. You only need to implement something like 46 basic functions (and, or, xor, +, -, *, /, if,...) and then you can use the language on that platform. Besides that it has a lisp-2 macro system so you can do everything..
- analognoise 6y agoDo you have a link to the list of functions? It sounds like it would make for a Forth replacement for an ultra-minimal first boot up language for hardware bring up for custom ISAs.