So what is considered CS theory in the US and Canada?
http://blog.computationalcomplexity.org
Also check out the STOC, FOCS, and SODA conferences.
How about any of these?
Semantics
Concurrency theory
Theories of refinement
Type theory
The Curry-Howard Correspondence (and results derived from it)
(Finite) automata
...
Shall I go on?
Those are all "theoretical CS". Programming language theorists qualify as "theoretical CS" practitioners in most cases. Simon Peyton Jones certainly qualifies.
I think you have a strange, narrow definition of theoretical CS that isn't shared by many people.
You're wrong in the "not shared by many" part.
http://weblog.fortnow.com/2009/03/lets-congradulate-gerard-h...
At least the first dozen comments on that link support my position that programming, logic and semantics are all "theoretical computer science". You appear to have produced an example of one person questioning whether his definition of TCS is too narrow, and then pages of comments from people telling him that it is.
What was your point, again?
You obviously didn't read the thread.
Highlighted therein is the contrast between TCS scenes in US and Europe. That is the amichail's point. These are two separate communities scarcely communicating with each other.
In the "first dozen of comments" you have Mitzenmacher, member of program committee of leading US conference comparing your field's importance and utility for TCS (as defined in the US) with that of e.g. chemistry's.
The "contrast" is being highlighted, but I can't see anyone in there seriously advancing the idea that all of the things I've described aren't "theoretical CS" - they just suggest that there aren't many people in the US doing them. One commenter rightly notes that there are plenty of people doing the kind of "theoretical CS" I'm talking about at CMU, for example (and I can think of a handful of other places doing similar work in the US).
So I stand by my original assertion: the definition of TCS as being exactly complexity and algorithmic analysis is a particularly narrow definition that is inconsistent with the way in which most people use and understand "theoretical computer science".
It is my experience that people in casual conversations automatically assume topic to be complexity theory, despite I'm in Europe.
Or maybe I will, just a bit ;) Because in fact, in casual conversations noone seem to be insiting, or in fact using adj. theoretical when talking about languages, semantics, logic, universal algebra, category theory. This is computer science after all, no need for special adjectives. It would be a bit like calling category theory a "theoretical mathematics".
Fact is, major part of the community uses term exclusively in the meaning we talk about. It could be argued if rightly and people outside may justifiably think in broader sense. Maybe better words could be found instead of theoretical, such as "analytical", and in fact I recall one of European departments reorganizing into two institutes, one for "Analytical CS".
> It is my experience that people in casual conversations automatically assume topic to be complexity theory, despite I'm in Europe.
What one community decides to define itself as isn't really a concern of mine. I'm also in Europe and I've found that "theoretical computer science" is pretty widely understood to mean the kinds of things I'm arguing that it means.
> It would be a bit like calling category theory a "theoretical mathematics"
So why would it make any more sense to apply it to complexity theory? It's not like work on languages, semantics or logic are any more "applied" than complexity.
Ehh, then I won't be able to convince you that it's not true that what you called crazy view on TCS is in fact common view. Not that I was able to do that anyways; I'm not that eloquent.
Amichail said SPJ is not member of that community and that's perfectly true. You opted to that on ontological grounds. Fine. I've shown that leaders of CS theory in US doesn't give a flip about that ontology and just mind their own business. TCS community is fragmented in two disjoint ways.
Why T in TCS then at all? Maybe because most of people are not linguists and doesn't care. Mathematicians for example doesn't care at all about naming. Most common path of least action is just call the thing by the surname of whomever was loudest shouting about it. They rightly assume it's just irrelevant anyways even if troublesome at times. By the Arnol'd principle name almost never reflects of who actually made the discovery anyways and the rest of msthematics' ontology and semantics is horrendous, http://cornellmath.wordpress.com/2007/07/12/unfortunate-math.... I can perfectly imagine category theory being more relevant to programming than resolving PvsNP. Conversely TCS is about computation and computability and rest are further abstractions, so this can be argued any way one wants.
My argument was that it is impossible to exclude SPJ from any sensible definition of "theoretical computer science", unless you are taking those words and re-defining them to mean something other than what they actually mean as a collection of words.
I accept that there may be a group of people who call what they do "theoretical computer science", and who believe that nothing else is "theoretical computer science", but in that case, the onus is on those people to remember to translate "theoretical computer science" as a term into "complexity theory" when they talk to people outside the complexity theory community, because the rest of us have a much stronger claim to the general meaning of the term, which encompasses both this idiosyncratic use of "TCS" as well as all of the other things that it can correctly be taken to mean.
Allow me to make my argument entirely concrete:
Let's say that I do "organic chemistry" and I go to organic chemistry conferences with other organic chemists. Obviously there are other sub-branches of chemistry. If I decided to stop calling what I do "organic chemistry" and start calling it just "chemistry" instead, to the exclusion of any other kind of chemistry, you can understand why people would be very confused (and probably a little annoyed) when I start telling them that Alfred Nobel wasn't a chemist.
I will go even further to say that the test for a sensible definition of "theoretical computer science" is probably which people it includes, and SPJ would probably be on that list, IMHO (along with Hoare and Milner and countless others who are excluded by this supposedly widely-held definition).
And I really don't think it's widely-held outside of the community that calls itself the TCS community, which by definition, doesn't make it a "widely held view", does it?
Yes, there is. Vide my last sentence above.
Proving that is futile because you want to argue anywas and as I said I'm not that eloquent.
Nobody takes away from SPJ of what he is.
Edit: you expanded your argument after I wrote above. I don't feel like I have anything useful to say. Not that I felt that in the first place, I just gave a counterexaple showing of how world stands. Next time I'll run into someone I'll first ask what school he attends and who is his advisor instead of arguing about what he semantically meant describing his field. Then it would be evident what he works in and if we have anything to learn from eachother insetad of wasting our both time for idle argument.
If you actually meant the reverse of that, then I agree that would be a far superior topic of conversation than school of origin or advisor.
As Richard Hamming said, one may either just do research accepting things as they are, or changing people's minds, but not both.
By the way, last time I checked there was no satisfactory definition of "computer" amongst various theoretical computer sciences. Thank god it's not my problem.
;)
No. But it makes it "shared by many", your original quantification.
You see, you're misreading for the numerous time. First you didn't care to read what OP linked and went into generalisations having nothing to do with the case. [[BTW I just don't know what you're arguing with me about since it's the same thing you observed in that comment. I just feel like being trolled, I agree with your comment I'm responding to now and I agree with the comment #837189, http://news.ycombinator.com/item?id=837189 ]] Then you didn't read mine, or decided to start petty argument supposing it's isolated incident of just Gasarch not knowing a thing about logic and verification scene where there was a common agreement in the thread that fields became separated to a point of sillness. Now your changing from ontological view to my position that communities define fields by what they call themselves (TCS is what SPJ does). Never mind changing quantifiers suggesting that I want to argue about who has holy right and the majority. It was just a point it's not isolated view. Of course america is isolated, in a sense, by the sea. If SPJ defines TCS then he still has nothing to do with whole TCS community. Because TCS forms no consistent community besides having to do with computers.
I'm prone to trolling.
The original article comments may have been talking about a specific community that happens to be called "the theoretical computer science community", hence my point that it is up to members of that community to remember to mentally translate into words that the rest of the universe can understand when talking to people outside their community (which I view as a sub-group of theoretical computer science, for the record).
For some reason you picked up the argument which was only directed at amichail's original comments.
Basically, the framing of the question should actually have read "Are people who go to conference X friendly?" - the actual discussion point was buried in the comments. The question annoyed me, and amichail's even stronger re-statement of this same viewpoint annoyed me further.
And then it just got silly, because now we're arguing about the meanings of words like "many" (my word), or "common" (your word), when really the use of quantifiers in this is really not necessary.
My point was not that there are only a small number of people who use this definition of TCS that I'm complaining about (although I do believe that to be the case) - my point, illustrated with my example about chemistry above, is that it is completely bonkers to use it in this way outside of that community.