HN Simulatornew | past | comments | lists | submit | tikimcfee's commentslogin

Love me some combinators. In my earlier days it helped bridge the academic gap of CS grammars and languages to something I could not readily apply to internship dev work. I seem to recall an attempt to map or generate the from regex and in reverse, but I might be crazy this early in the morning.

Nice visuals btw. If I may be so bold: slightly smaller font and header would make scrolling through the bottom readable code snippets a little easier!


Yeah, the academic presentation of parsing complexity is not very useful for real-world parsing tasks. It is useful to know that regular expressions are limited (NFAs “can’t count”, so they’re not good for trying to match an unbounded number of balanced parentheses, for example). But beyond that, we largely choose capable algorithms either for ease of use or speed. Combinators, PEGs, parser generators (like lex/yacc, ANTLR) are mostly easy. For speed, almost everyone rolls a parser by hand.

I like combinator style parsers because 1) it’s really easy to think of a discrete parsing task as a function 2) tokenizing is mostly irrelevant 3) for pedagogical reasons, they make it easier for students to grasp the point of curried functions and partial application.

I even maintain a (mostly mature) parser combinator library for TypeScript for students in my research group to use.

https://github.com/williams-cs/parsecco


Tokenising is actually a strength of PC, it fits the parser structure exactly!

  pToken :: Parser

  pExpr :: Parser, Expr>

Thanks! The site is going through a redesign so some things aren't perfect yet, I'll keep it in mind next iteration :p

Parser combinators are stronger than pure regular expressions but I'm not sure how they compare to the non-regular regexes we use in programming (PCRE etc)


Genuine curiosity here, just to ruminate a bit: is there a reason you disallow the model from seeing it at all? I can totally accept not wanting any edits, and that's more than reasonable. But even close source binaries end up with useful patches once someone knows that a particular loop does something weird or a process implementation behind a protocol is actually a different interpretation than the protocol definition itself belies. Seems like being aware of it is at least helpful, but again, curious!

Yes, because I've noticed that anything at all that is in the input stream gets used to waste tokens on various rabbit holes. Less information -> more efficiency and better output as long as it is sufficient to get the job done. For a human distinguishing important stuff from unimportant stuff is hard for an LLM it is next to impossible (at least, from what I've seen so far). There is no distinction between 'obscure thing that I once saw in passing 30 turns ago versus 'the thing right in front of my nose'. So you get all of these wild goose chases that lead nowhere and that will easily burn 50 to 100K tokens before finally being abandoned, more often than not after doing considerable littering and/or actual damage. So I am purposefully limiting what goes into the LLM and I find that by doing this it gets to the point much faster and produces better output. 'Lead it not into temptation' or something to that effect ;)

Yes. This. It extends further to thoughts like, "but you can't expect someone to do because it's less profitable, so how do you incentivize it?"

I propose "incentivize" be a 2026 front runner for curse word. It's just a gross concept these days.


I've been quite intrigued by a very "close to metal" assistant LLM like this, especially because I've seen folks working at it from the other direction of getting an assistant to be specialized with skills and tools for a specific CLI or code repo. I dug around a bit and I saw some of the execution was for remote models like voice. Since it's built to work well with something like qemu, have you experimented with pointing it at a local model for some of the work? Eg, I could see a reasonably quantized qwen 3.8 flash doing quite well on launching apps, shuttling around system calls, etc.

That’s a very valid point. However, I’ve only just started, and I genuinely believe there is significant potential for growth and success.

Very cool! I'll keep an eye out. I'm sure it wouldn't be too hard to point some of the abstractions at a local hosted service layer. Take your time on it and good luck on the experiments!

I'd love to give it a shot if it's available!

I'm going to put the dmg up on a website next week maybe. I just tested LAN for the first time with a few friends and it was very fun, but we found some major imbalances.

This is beautiful! I'm so excited to see more and more projects finally move into the third dimension for visualization of runtime and static data. I'm curious if you've played with rendering memory at all - textual bits, that is. I've been working on that end, a high performance text renderer that focuses on 3D blitted glyphs in the hundreds of millions, and I can absolutely see that sitting on top of these process towers and grids to see running memory and executing code! Any chance you're open to a side chat in some Discord or email chain?


Thank you for your comment! Sorry for the late reply — I was asleep.

I just created a Discord server: https://discord.gg/aQuNSczpw

> I'm curious if you've played with rendering memory at all - textual bits, that is.

This is a very interesting idea. I actually considered visualizing memory contents, but for now I decided not to render all memory contents and access because of the amount of data that would need to be transferred from the backend to the browser.

That said, it is definitely something I would like to explore. Your 3D text renderer sounds especially interesting for visualizing memory contents inside the process towers.

I'd be very happy to discuss this more on Discord!


You are correct. I appreciate your willingness to say it's societal and therefore by construction political. And, the idea that "we accept the bad things" is so prevalent in this community that it's baffling. I have been more vocal (and emotionally representing, to admit) about how this community is willing to condemn the abuse of privacy, but then share excitement about agents and LLM work from Facebook and the like. The reasoning is usual, "yeah well someone is going to do it," or, "well it's hard or impossible to make people not use it, so what's your solution?" I've been finding that mentality is both a blockade to progress, and maddening to boot. If those same minds instead did something about it by sharing the difficulty with others, proselytizing the importance of sharing your opinion about what the bad thing is, and then standing by it whether it's hard or not - that would actually help things be not so bad.


Please don't try this software. Don't signal boost it. Don't provide feedback. Don't try to find "the good stuff about it". For the love of goodness stop calling it "Meta".

Facebook is not run or owned or operated by trustworthy individuals, and until such time as the greatest majority of their leadership if removed, the company's dissolution across its various sectors of global political control and influence ended - just stop giving it attention.

Please. I don't know how much more I can take of people demanding justice from a company that is only now being fined for sins of the past to a tune of meaningless dollars while also goofing "ooh shiny fun avatar that does an ai how useful!"

Please. Stop.


>Please don't try this software. Don't signal boost it. Don't provide feedback. Don't try to find "the good stuff about it".

A refreshing dose of sanity in this thread.

It feels that everyone is quick to forget the sins of these corporations.. akin to a toxic relationship and after breakup, you keep on going back for mote.


I like Meta and Facebook and would like to support them.


what's the point of saying all that?

you already know what will happen. if the model is good enough, people will use it.

you're asking for a lot of things here. I don't think most people take it that personally.


If you haven't read "Careless People", you should. Peoples lives, governments, politics have been altered so facebook can grow and build its influence. The least one can do is to say all that.


fair. but I think e.g. nitpicking about the FB rename to Muse distracts from the genuine points and makes the statements seem emotionally charged which makes it easier to dismiss

and I think there's also a point to be made that you shouldn't be too caring about issues that you can't influence, it simply causes harm toward yourself.


Telling people to stop will just make people use it and explore it more (Rebel effect)

How are you going to 100% stop this?

You of all people should know this.

Let people use what they want to use.


The thought of using Facebook products as a show of rebellion in 2026 is extremely amusing to me.


The point is psychological and human behaviors.

People don't like being told what to do, so saying "Stop using Facebook/Instagram/WhatsApp/Threads" is going to cause the opposite effect, people will "rebel" and keep using whatever Facebook has.

Another point is inertia (which all of you should know by now)

If you want to stop Meta, I mean "Facebook" you must answer the age old question:

How do you move these users friends over to Mastodon, BlueSky or PixelFed?

If you don't have an answer to this single question, people will continue to use Facebook's products and no amount of "Stop using ..." would solve this.


I don't buy your claim that anyone is using Facebook because someone told them not to.


Growing up in this landmass was incredibly and painfully confusing. I was surrounded by people that told me my life was "better than everyone else", and if I ever dared to ask about what "over there" was like, I was mocked, ridiculed, isolated away in everywhere but small circles of post-teenage educated people.

I've only managed to fly outside these states once in my life, and I want to do it again and for the rest of it. The culture I was born into was and is rotting from a group of humans that are too internally frightened and humiliated by their lack of knowledge and feeling like they are owed things. I don't want to live here, and I have been trying to find a place that would accept my mentality as a citizen of a small blue planet even though I come from here... but I always worry I am guilty by association :(


The culture you were born into may very well be rotten, but don’t make the mistake of thinking that it’s the culture of “this landmass”. The USA is enormous, and contains a huge number of cultures and subcultures. I grew up here, too, and experienced nothing like what you describe.

Live the rest of your life abroad if you’d like, but don’t do so believing that everyone in the USA is from the same culture.


Absolutely in love. I'll be testing this after the daily grind.

I've had nothing but success with converting daily work into "notes" that then translate into runnable, deterministic application CLIs to completely sidestep "what do I need to say to you to make you do the thing??"

I'm interested in how this spreads across enterprise flows, because the issue is always discovery and usability.

How deep do you usually go with CLI composition and layering? Do you tend to find a flat list of commands and sub command help works most? Have you experimented with connecting CLIs Linux-pipe-style as if it was a dynamic application in the OS?


The objectives are to reduce/eliminate as much inference variability as possible. A side benefit is that inference costs collapse as well.

It is used internally for what we call 'compiled workflow agents' where no inference is necessary. An agent composer determines the exact command at design time. That is part of a discovery loop that can introspect the service to construct the command.

More here. https://www.promptone.ai/resources/downloads/


The command structure is provider/topic/command. Taken literally from the oclif framework, with the provider simply being a topic namespace. Haven't needed to pipe anything since in our deployments, the agent makes a call to the gateway via a command API so a pipe wouldn't be possible between commands


Guidelines | FAQ | Lists | API | Security | DMCA | Apply to YC | Contact

Search: