Hacker News new | past | comments | ask | show | jobs | submit login

it's a programming language in the same way that a flashing light can be a programming language. If someone on the other side is using it to make decisions then you're technically programming something so it's a "programming" language.

I mean sure, technically that's true, but it's also not interesting.

The interesting thing about regexp is that it's really damned close to the mathematical notations used for describing regular grammars, and therefore it's a good, tight way to specify pattern matches on regular grammars.

No one ever really answers with "I've been programming the regular grammar parser". Sure, maybe technically that's what they've been doing, but the context isn't really right.




> it's a programming language in the same way that a flashing light can be a programming language. If someone on the other side is using it to make decisions then you're technically programming something so it's a "programming" language.

You're totally missing my point. A regular expression describes a computation - the series of state transitions a nondeterministic finite state automaton undergoes in order to decide whether an input string belongs to a language. (The fact that this computation is typically optimized by regex compilers is another matter.)

A programming language doesn't need to be general-purpose to be a programming language.

> The interesting thing about regexp is that it's really damned close to the mathematical notations used for describing regular grammars, and therefore it's a good, tight way to specify pattern matches on regular grammars.

Are you saying that what matters most about a language is its surface syntax? Seriously? Wow.


> A regular expression describes a computation

So does the flashing light, it also has the cool advantage of being parameterized by time.

> Are you saying that what matters most about a language is its surface syntax? Seriously? Wow.

If that's what you took from that then there's a knowledge gap and it will do us no good to continue this conversation.




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

Search: