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.

Introducing Verve: minimalistic, static, functional language

164 pointsby milenalmost 9 years ago

15 comments

doomroboalmost 9 years ago
Nice work. One note: what you defined in your example is an algebraic data type, but not a generalized algebraic data type. The data constructors&#x27; are implicitly defined, as opposed to being explicitly defined. I liked this wiki page as a guide <a href="https:&#x2F;&#x2F;wiki.haskell.org&#x2F;GADTs_for_dummies" rel="nofollow">https:&#x2F;&#x2F;wiki.haskell.org&#x2F;GADTs_for_dummies</a>
评论 #12059182 未加载
chipunialmost 9 years ago
Looks like you had fun making this project!<p>I&#x27;m throwing out a challenge for you:<p>What will Verve do well, that no (major) language does well?<p>I hope you continue developing it, and that you keep having fun creating it.
评论 #12059578 未加载
评论 #12059488 未加载
niftichalmost 9 years ago
Hi! Nice work!<p>Reading through it, I&#x27;m unsure whether the VM is necessary or included. To me, &#x27;unnecessary&#x27; and &#x27;runs on it by default&#x27; seem slightly contradictory, or at least surprising. I don&#x27;t have time to read through your source code right now, but if you&#x27;re not running on your VM, what output do you produce? elf executables against the x86-64 Linux ABI?<p>I was also surprised that so many terms in your post have links to the definition in Wikipedia. After finishing the article and scrolling all the way down, I got to your paragraph that explained your rationale for doing so, so that&#x27;s fair. However, I admit I expected these terms to link to some Verve documentation about that particular component or concept to explain details about your implementation. I realize that you may have a different audience in mind than, say, the Haskell or Python docs, but I wouldn&#x27;t expect those sites to link to dictionary definitions at all.<p>Thanks for posting!
评论 #12059396 未加载
ubertacoalmost 9 years ago
Looks really cool! I&#x27;m gonna have to watch this one.<p>I cloned the repo locally to try to build it (ubuntu 15.10) and hit 9 of compile errors. My stdout and sterr are here: <a href="http:&#x2F;&#x2F;sprunge.us&#x2F;TdXb" rel="nofollow">http:&#x2F;&#x2F;sprunge.us&#x2F;TdXb</a>
评论 #12058860 未加载
fennecfoxenalmost 9 years ago
Verve? Okay, nostalgia drive, activate:<p>...<p>Residents of the San Francisco Bay area should also check out Verve, a coffee roaster based out of Santa Cruz. There&#x27;s two locations (the Opal Cliffs one on 41st Ave is nicer, IMHO, and easier to find parking for - plus there&#x27;s the cliffs&#x2F;beach nearby). It&#x27;s one of the better roasters, the cafes have good atmosphere, and it&#x27;s just one of those things you miss when you move away from California.<p><a href="http:&#x2F;&#x2F;vervecoffee.com&#x2F;pages&#x2F;locations" rel="nofollow">http:&#x2F;&#x2F;vervecoffee.com&#x2F;pages&#x2F;locations</a><p>We now return you to your regularly scheduled programming language.
sdegutisalmost 9 years ago
&gt; <i>But first of all, why am I writing this language? The short answer is: For fun.</i><p>&gt; <i>One of the first things I usually hear is “Why don’t you target LLVM?” (or some other runtime), and the answer is: because that wouldn’t be as much fun. Sure, it’d be much easier to get “production ready” that way, but as I said, the goal here is really to learn and have fun.</i><p>This is awesome. So glad to see people writing languages just for fun.<p>For anyone else into that kind of thing, check out #proglangdesign on freenode. Several really smart people who also just want to write languages for fun often chat there, about language design and implementation.
willtimalmost 9 years ago
What I want to see is a functional language that embraces structural typing and extensable records&#x2F;variants, instead of nominal typing. This would be an excellent fit for a world full of SQL databases and JSON documents. It would also be a considerable implementation challenge!
评论 #12059360 未加载
评论 #12059710 未加载
评论 #12060287 未加载
评论 #12059605 未加载
hamidralmost 9 years ago
What do you mean by minimal? The syntax? I guess not since it&#x27;s not that much minimal to other fp-langs such as clojure or even Rust.
评论 #12058995 未加载
Ruud-v-Aalmost 9 years ago
What is the motivation for making it self-hosting? Just for fun too? It creates a lot of trouble around bootstrapping.
评论 #12060967 未加载
mamcxalmost 9 years ago
I have a question about the &quot;extern&quot; keyword. If this is a interpreter, how this can possible work? ie: How is the interface between the host and the language?<p>I&#x27;m doing a interpreter (F#) and I have find that surfacing functions from the host is not that easy as I have imagined before.
评论 #12059427 未加载
nerdponxalmost 9 years ago
Why no explicit returns? I&#x27;m used to them from R, but I thought that was considered a quirk, not a feature.
评论 #12059430 未加载
评论 #12060637 未加载
RobLachalmost 9 years ago
Cool. I like the philosophy behind it.<p>Hate having to type &quot;-&gt;&quot; which seems to popping up all over the place. :P
评论 #12059440 未加载
minitechalmost 9 years ago
Typo on the &quot;its&quot; here:<p>&gt; Right now Verve runs on it’s own Virtual Machine (VM)
duanebalmost 9 years ago
...no dependencies but x86-64 linux abi, which is a pretty massive hard dependency.
评论 #12059025 未加载
评论 #12059355 未加载
sengiley88almost 9 years ago
purely functional language with no GC!<p>that&#x27;s real fun!
评论 #12060710 未加载