Top all-time · #1168
Ian Piumarta
Personal blog · piumarta.comprogrammingsystems
Ian Piumarta's personal blog at piumarta.com covers programming and systems. Since 2008, 62 different Hacker News readers have linked it 113 times, most often “Maru – A self-hosted symbolic expression evaluator (2012)”. No feed was found, so read it on the site itself.
Most-linked posts?
- Maru – A self-hosted symbolic expression evaluator (2012)11 people · 20 mentions · first linked 2012-05-09
- Peg/leg - recursive-descent parser generators for C8 people · 8 mentions · first linked 2009-03-23
- Cola – combined lambda/object architecture6 people · 10 mentions · first linked 2009-04-12
- Cola – combined lambda/object architecture4 people · 5 mentions · first linked 2023-08-03
- Open, extensible object models (2007) [pdf]4 people · 4 mentions · first linked 2009-09-17
- Lysp: 21kb self-contained Lisp interpreter w/ macros etc.3 people · 4 mentions · first linked 2009-02-07
- /software/id-objmodel/objmodel2.pdf2 people · 4 mentions · first linked 2021-11-14
- /software/maru/2 people · 3 mentions · first linked 2020-09-14
- /software/cola/objmodel2.pdf2 people · 2 mentions · first linked 2020-01-01
- /software/id-objmodel/2 people · 2 mentions · first linked 2022-09-11
What Hacker News says?
I'd also mention https://www.piumarta.com
Comment linking /
on “Niklaus Wirth has died”Submitted LYSP (a really tiny lisp) as a story · 98 points
HN discussionMy favorite small and understandable implementation of Lisp in C is by Ian Piumarta. [1] [1] http://piumarta.com/software/lysp/
Comment linking /software/lysp/
on “Learn C and build your own Lisp”Submitted Open, extensible object models (2007) [pdf] as a story · 28 points
HN discussionI love this! I have done a lot of CS research lately, and some of these I haven’t come across yet. Let me share some of my favourites not listed here, off the top of my head: - Ian Piumarta’s “Open, Extensible Object Models” ( https://www.piumarta.com/software/id-objmodel/objmodel2.pdf ) is about creating the most minimal object-oriented metaobject system that allows the maximum amount of freedom for the programmer.…
Comment linking /software/id-objmodel/objmodel2.pdf
on “Writing that changed how I think about programming languages”Submitted Peg/leg - recursive-descent parser generators for C as a story · 15 points
HN discussionI'm grateful for the interest! Not really thought about a location - I'll probably use my github account when I've got some material, and ping you when it's there. As an aside, most of the stuff I've on my account is higher level eg. https://github.com/alexisread/noreml deals more with a new method of visually programming cross-plaform UIs ie. using nodered dashboards and flow-based programming in a drag and drop fa…
Comment linking /software/maru/
on “David Patterson Says It’s Time for New Computer Architectures and Languages”Submitted Lysp: 21kb self-contained Lisp interpreter w/ macros etc. as a story · 10 points
HN discussionAnother small lisp implementation: http://piumarta.com/software/lysp/ Also, another, more interesting Lisp by the same author: ( http://piumarta.com/software/maru/ ). Maru is basically a lisp where some of the core functions like eval and apply are extensible from user code. There's basically a global map of types to evaluators and applicators, with some functions for you to register your own types and get the evalu…
Comment linking /software/maru/
on “Lisp in fewer than 200 lines of C”Submitted LYSP — 50 Years of Symbolic Processing as a story · 8 points
HN discussionLet me guess, you're stuck fighting yacc and shift-reduce conflicts? I find writing your own parser to be much more instructive and a better way to understand why parser generators work the way they do. Alternatively you can use a PEG generator such as peg/leg[1] and your grammar will more or less work (until it resolves an ambiguity in some way you didn't expect, anyway). 1: http://piumarta.com/software/peg/
Comment linking /software/peg/
on “How I wrote a self-hosting C compiler in 40 days”Submitted Maru – A self-hosted symbolic expression evaluator (2012) as a story · 7 points
HN discussionI really enjoyed skimming through Ian Piumarta's Maru, a Lisp in C, very pretty code, very concise. (I already mentioned it in other topics) http://piumarta.com/software/maru/
Comment linking /software/maru/
on “Ask HN: What source code is worth studying? ”Submitted Peg/leg — recursive-descent parser generators for C as a story · 5 points
HN discussion> Find the dependencies —and eliminate them Excel team motto.[1] While I understand Rasmus' response is legitimate, I also see that depending on something as crucial as a programming language implementation is less of a good idea than it might seem at first. Makes things like Maru (the programming language[2], not the cat) much more appealing: if there's something you don't like in your compiler, at least you stand…
Comment linking /software/maru/
on “We will try to stop fixing bugs in PHP”Submitted Cola – combined lambda/object architecture as a story · 3 points
HN discussionThanks, a lot of this is new and useful to me. > Recently I've been wondering if there's enough interest for a Discord server or something. (In the spirit of STEPS, it'd be ideal to make a new collaborative thing that's really different than static text/audio/video on the web, but gotta start somewhere. :) ) Unfortunately, I have had other, higher-priority projects at the moment, so I have taken no initiative to try…
Comment linking /software/id-objmodel/
on “Ohm – A library and language for building parsers, interpreters, compilers, etc.”Submitted Points of View – A Tribute to Alan Kay [pdf](2010) as a story · 3 points
HN discussionmaru lisp by ian piumarta : Maru is a symbolic expression evaluator that can compile its own implementation language. http://piumarta.com/software/maru/
Comment linking /software/maru/
on “Ask HN: What are some examples of beautiful software?”Submitted Maru: Symbolic Expression Evaluator as a story · 3 points
HN discussionI like Piumarta's code https://piumarta.com/software/maru/maru-2.4/ bsd code is clean minikanren some old lisp (le lisp or eulisp I forgot)
Comment linking /software/maru/maru-2.4/
on “Ask HN: What's the best source code you've read?”Submitted Simple dynamic dispatch for C as a story · 3 points
HN discussionI wrote hbr (handbrake runner) [0]. It takes a global config, a per-file config, and individual outfile sections then calls HandBrakeCLI to encode video. I use it to encode movies/series from optical media. Additionally there is hbscan.py to generate a list of potential outfiles from handbrake's --scan argument. One day I'd like to integrate it with hbr (in C) using peg/leg [1]. Currently using pyparsing. This is st…
Comment linking /software/peg/
on “Ask HN: Tools you have made for yourself?”Submitted Cola: combined lambda/object architecture as a story · 2 points
HN discussionAccording to the last yearly report that is available: http://www.vpri.org/pdf/tr2011004_steps11.pdf "This year we are able to write this entire report in the Frank part of STEPS, including producing the PDF version for NSF’s web site. We can give comprehensive high‐quality, high‐resolution presentations using STEPS which include live code and in situ demos, and which show working versions of a number of the documen…
Comment linking /software/cola/
on “The Future of Programming in Node.js”Submitted Open, extensible object models as a story · 2 points
HN discussionMaybe a little irationally, the idea of programming an os in c++ strikes me as very opaque. I think the vipri[1] approach of layering dsls, or the smalltalk idea of a relatively simple vm to seem more understandable than an os that embeds a c++ runtime... As a side note, when looking up [1] I also ran across [2]. [1] http://piumarta.com/software/cola/ [2] http://www.acm.uiuc.edu/sigops/roll_your_own/1.helloworld.ht.…
Comment linking /software/cola/
on “How to Make a Computer Operating System in C/C++”Submitted Cola – combined lambda/object architecture as a story · 1 points
HN discussionThe proof is not far. See their last report here: http://www.vpri.org/pdf/tr2011004_steps11.pdf Also, a good deal of their code is accessible here: http://vpri.org/fonc_wiki/index.php/Installation_Guide As far as I can tell, several things can explain how they fit a whole library in a single book (assuming 50 lines per page, 400 page books, 10.000 books in a library). First, the use of dedicated languages instead of…
Comment linking /software/maru
on “Why Lua?”Submitted LYSP – 50 Years of Symbolic Processing as a story · 1 points
HN discussion