Hacker Newsnew | comments | show | ask | jobs | submit | apgwoz's commentslogin

They're very "geek" friendly since IO is input/output.

reply


It throws away the data if there are no consumers. This probably isn't the best idea, but it's simplest. I'll think a bit about alternatives.

And,at this point you need to write your own consumer. The project started because I want to do some real-time visualization from a program written in C. There's a switch which turns on verbose metrics which I can then pipe to wipes.

-----

tedchs 71 days ago | link

Got it. You mind find that wipes would be more similar to other tools that read from STDIN (cat, tail, etc.) if it implements "back pressure" by not reading from STDIN until it has an output to write to. To the user it would appear that wipes is blocking on receiving a websocket connection.

-----


You probably mean websocketd? Yes, this is really quite similar, but also much simpler.

-----


Whoops! Thanks moderators!

-----


This isn't meant to be a tool for production usage. It's meant to be a quick "I need to pipe this data into the browser quick for testing / visualization."

Though, I am curious -- why do you dislike "." by default?

-----

apgwoz 148 days ago | link | parent | on: Keybase.io

Done by the extra talented Caroline Hadilaksono! http://www.hadilaksono.com/

-----

scotty79 147 days ago | link

For me it increased the perceived trustworthiness of the website 10 times. I've seen illustrations drawn in similar style in Scientfic Amercian and subconsciously carried over the trust I have for SA to this site.

-----


but, to be fair, you've obviously had lots of experience, and understand a great deal more about formal languages and how they translate to something that is trivially parsed, than the majority of people who will read this article. should they attempt a language, they'll likely fail to produce a working parser long before they spendthe rest of the hours on it.

-----

jerf 158 days ago | link

If you can not trivially implement a parser, you probably shouldn't be implementing your own language. The problems only get worse from there.

I'm egalitarian inasmuch as I believe every serious programmer ought to implement some sort of toy language at some point, but I'm not so stupid as to think that this is a good idea at all phases of a programmer's development. Beginners should concentrate on other basic tasks, even low-intermediate really should too. I wouldn't reserve this task for "experts" though, because this is one of the big steps in moving from intermediate to expert. (Anyone who has assembled the skill set to implement a toy-but-nontrivial language has assembled the skill set to accomplish a very wide variety of programming tasks. If I were interviewing someone and they could demonstrate this, I would almost entirely cease to care what actual languages or frameworks they may have worked in.)

-----

apgwoz 157 days ago | link

I agree in principle, but that won't stop someone from fighting with shift reduce conflicts or dangling elses for hours on end before giving up. constructing an unambiguous CFG isn't trivial without experience, and it's tough to get that without bashing your head a few times.

-----

munificent 156 days ago | link

> someone from fighting with shift reduce conflicts or dangling elses for hours on end before giving up.

Right, but if you just hand-write a recursive descent parser, you won't have to deal with shift-reduce conflicts. Dangling elses are trivial to solve. The nice thing about hand-writing a parser is that it lets you learn one new thing (how to implement a parser for a grammar) while taking advantage of what you already know (how to write, run, test, and debug code in some existing language).

Throwing a parser generator at someone means they end up learning the weird vagaries of that generator instead of focusing on their own language. Meanwhile, the resulting generated code is nigh-unreadable, so all of those debugging skills and nice IDE they have go to waste.

-----


This was the part that I stumbled on for a few hours late at night and kept me up. Next morning, when investigating what git hash-object did, it was obvious. should have just went to sleep.

-----

apgwoz 197 days ago | link | parent | on: Brookyln

I think the solution is the non-solution. Yes, it sucks, but backing something on Kickstarter is a risk.

-----


I struggled with a name. This morning in the shower, I liked "trip" but, I'm not sure I'll change it--certainly not because of homebrew.

-----

More

Guidelines | FAQ | Lists | Bookmarklet | DMCA | News News | Bugs and Feature Requests | Y Combinator | Apply | Library | Contact

Search: