This is topic You know you're a geek when: in forum Books, Films, Food and Culture at Hatrack River Forum.


To visit this topic, use this URL:
http://www.hatrack.com/ubb/main/ultimatebb.php?ubb=get_topic;f=2;t=017731

Posted by Hobbes (Member # 433) on :
 
You read the sentance: "No real technical barrier exists to having PHP output C code, although it's probably not a usage whose popularity is going to be sweeping the nation." and chuckle.

[Cool]

Hobbes [Smile]
 
Posted by T_Smith (Member # 3734) on :
 
You know your a geek when your name is Hobbes.

Hobbes, whenever you say you are a geek, it is one of the most redundant statements. You are calling the kettle black, my friend, so theres no need to state the obvious.

Oh sorry, I thought this was the insult thread. [Wink]
 
Posted by Emperor Palpatine (Member # 3544) on :
 
Pretty strong words for someone who couldn't get their sister to give them 30 dollars, which was owed.
 
Posted by saxon75 (Member # 4589) on :
 
He's not really calling the kettle black. It's more like the pot calling itself black.
 
Posted by T_Smith (Member # 3734) on :
 
So anyone who has a sister that doesn't pay up that which was owed is a geek? Holy crap, I think 80 percent of Americans are geeks.
 
Posted by T_Smith (Member # 3734) on :
 
Bawls?
 
Posted by Emperor Palpatine (Member # 3544) on :
 
That reminds me of B. I wonder if I'm gonna be this distant from hatrack once I start?
 
Posted by T_Smith (Member # 3734) on :
 
Ive started and Im not that distant, yet.
 
Posted by Hobbes (Member # 433) on :
 
[Razz] [Razz] [Razz] [Razz] [Razz] [Razz] [Razz]

Hobbes [Smile]
 
Posted by Morbo (Member # 5309) on :
 
You know you're a geek when: you can answer a question like "can the Universe expand faster than c?" without any hesitation.
 
Posted by wieczorek (Member # 5565) on :
 
Hey, that made me think of something. Not that I don't usually think...ah, you know what I mean. I know this sounds really childish, but...here goes. Has anyone ever seen Dexter's Lab? No laughing, you ingrates. [No No] I'm just kidding [Wink] You know how Dexter has this accent that no one else in his family has? Why is that? I'm sure that it's just to make him sound "scientific" or "smart" or some kind of odd something. But, I was curious. [Blushing]

"Remember, the enemy's gate is down"

[ August 22, 2003, 05:07 PM: Message edited by: wieczorek ]
 
Posted by Hobbes (Member # 433) on :
 
Or how about Stweie's (from Family Guy) English accent? I think the creators feel it makes the charecters sound smarter.

And Dexter's Lab rules! [Party] [The Wave] [Party]

Hobbes [Smile]
 
Posted by Elizabeth (Member # 5218) on :
 
You know you're a geek when you suggest a textile museum as the location for the Boston hatracker's Picnic.
 
Posted by Pod (Member # 941) on :
 
I'm just not sure why the quote at the top requires chuckling?

I've been using perl to output xml for a while, and if you program in lisp, you can have it output whatever you want, even more lisp! (mmm macros)

So, i guess i'm a geek since i'm trying to trump the statement, but i don't think it's terribly geeky. Though it is a little.
 
Posted by fugu13 (Member # 2859) on :
 
Pod, have you done much C programming? It's not that there's a technical barrier, but that the idea of writing C with a high level language instead of just using the high level language is (generally) pretty amusing.

I could see some uses for the practice as a sort of system of uber-macros for optimization. However, it will almost always be easier/better to use templates (unless it can't be c++ code, in which case normal macros are pretty darn useful. But perhaps there are circumstances where something more is needed).

I wouldn't choose php as my high level language, though. I'd likely choose something nice and functional, like Haskell (Lisp is for functional wannabes [Wink] ).
 
Posted by Hobbes (Member # 433) on :
 
C++ is about as high level language as I care to deal with. PHP is fine, but if C++ was server language I would be jumping all over it. [Party]

Hobbes [Smile]
 
Posted by fugu13 (Member # 2859) on :
 
Well, it is pretty common to write servers in c++. Apache, for instance. Did you mean cgi language?

Even then, I've seen cgi written in pure c. It can be quite efficient. All your basic cgi gateway does is execute whatever it finds (within certain security restrictions, and with certain IO states). So compiled programs can be stuck in there just fine.

Hobbes, I think what you perceive as c++ being high level may be just the APIs you are working with. I encourage you to try something like C#, which is a high level language with an excellent set of included APIs.
 
Posted by Hobbes (Member # 433) on :
 
I know C++ isn't high level, but I really dislike programming in high level languages. Asembly I'm planning on learning soon, but for most applications that's a little too low level.

Yes, I meant cgi. I didn't know you could do them in C. Hmmm, well, I doubt the server I'm going to have my website on would be happy with me (it's my old high school server and they seem to really want you to do it in PHP). Ohh well.

Hobbes [Smile]
 
Posted by fugu13 (Member # 2859) on :
 
What high level languages have you programmed in? Also, have you considered/tried functional languages?

I love high level programming. While low level programming also has many fascinating aspects (Knuth is God), for most programming problems I'll take a high level language any day.

For instance, with java I do not have problems with memory management, ever. While memory management is generally not terribly hard, adding in the development time needed to code and troubleshoot a memory management system for a web calendar app I'm doing would have been prohibitive (it's usually possible to develop a similar app in java to one in c++ in about one quarter to one half the time).

Not only that, but I would have received very little speed increase due to coding in c++, since most of my speed cost was in database access. C++ code would have been maybe 2 or 3 times as fast, which wasn't enough speed difference to justify the 2 to 4 times as long development cycle, especially as the app could be easily implemented across a cluster (hardware is cheap).

It may seem like I'm putting a fair amount of effort to get you to give high level languages another chance, and I am. While there are places to use low level languages, in most places a high level language is far preferable from an end users point of view. Specifically, high level programming means more featureful programming with fewer bugs.
 
Posted by Pod (Member # 941) on :
 
Fugu, i laugh at your language snobbery. Lisp is old school, and it's still used frequently by very large companies.

So its good that you like Haskell, but i'll stick with lisp [Wink]

As an instructor i once had said "a good programmer can write assembly in any language."

Thus, my point is, that neither writing stuff in a high level language to output code terribly geeky (although it is more geeky than just writing code), nor is outputting c terribly geeky (since just optimizing the heck out of your code would be the same thing).

[ August 23, 2003, 05:19 PM: Message edited by: Pod ]
 
Posted by Pod (Member # 941) on :
 
Oh and since i'm doing scientific computing things, i've run into quite a few people who refuse to use anything but C because they say everything else is too bloated. So, there are reasons to use C (particularly when your programs do things that run in on the order of hours instead of minutes).
 
Posted by fugu13 (Member # 2859) on :
 
Pod, you misunderstand me.

It's not that Lisp isn't useful (it is, I love the language, and CLisp has a great set of libraries), it's that it's not a purely functional language. Haskell is a purely functional language (and has a much cleaner syntax, imho).

The reference to assembly in any language is tongue in cheek. "Good programmer" it is a sarcastic reference to programmers who don't understand and follow the idioms of the language they are working in. Hence they turn out code that looks like assembly (ie, hard to understand). It is not anywhere near the performance of assembly, and is usually much worse performance than a "higher level" implementation in the same language.

As I said, there are reasons to use C. For instance, high performance mathematics. I've written programs for those purposes as well. Desktop applications do not require high performance mathematics (generally; there are exceptions, and it's usually better programming practice to write the parts that need the math speed in c or c++ and heavily audit them, then call them from the high level language). Another good application of c/c++ is real time problems, though java is rapidly closing in on being fast enough for that.

It may not be terribly geeky to write in a high level lagnuage to output a low level language, but it is certainly at least a little geeky. And it is pretty geeky to be able to understand on how many levels the quoted statement was funny (many of which we haven't even discussed, many of which are related to the history of c and php).
 
Posted by fugu13 (Member # 2859) on :
 
I thought I'd append a side note including a bit of evidence for high level languages reducing errors.

By far the most common error found in production code is the buffer overrun. Buffer overruns are used repeatedly throughout the year for remote worms (SQL Slammer). Buffer overruns are used for running arbitrary code (XBox mem card hack). There have been hundreds, probably even thousands, of buffer overruns found in windows, for instance, over time.

High level languages do not have buffer overruns (except possibly in their implementations, but the number of those has been very few, and none for years for many of the high level languages; it's a smaller codebase to deal with). In one stroke, by using a higher level language a programmer has almost completely eliminated the most common programming error. And if a buffer overrun is found in the central library, that doesn't break the API. A recompile (or even just a library replacement in scripting languages) completely fixes the problem.
 
Posted by Pod (Member # 941) on :
 
Fugu:

I think we've misunderstood the funny out of this thread [Wink]

I know the quote is tongue in cheek, thats the point. Again, you can write higher level code to output C, or optimize it to run like assembly, but why on earth wouldn't you just write in assembly?
 
Posted by fugu13 (Member # 2859) on :
 
Ummm, exactly. That's one of the reasons the quote is funny. To geeks. Which is why it's a "chuckling" quote. You said you didn't think it required chuckling.
 
Posted by Pod (Member # 941) on :
 
yeah, i guess i didn't chuckle, i just went "why?"

The good programmer assembly quote i thought required chuckling. But the outputing c just seems silly to me in a non funny way
 
Posted by fugu13 (Member # 2859) on :
 
Okay.

I don't know, the idea of a (primarily) cgi high level language whose syntax was roughly based on c, but with the particular intention of removing all of c's issues with memory management and such from the picture, that became popular largely because it was c without those issues, that isn't particularly good as a stateful syntax processing machine (such as would be best for outputting code in c) particularly because it uses c's syntax (which is absymal for that sort of thing) being used to output c, a low level language written specifically to provide more control than more abstract languages written in a time when processing power was scarce and used to transform one of the most flexible operating systems ever created from an assembly mess into a relatively neat form that could be extended by students and professors the world over, is pretty farkin' funny.
 


Copyright © 2008 Hatrack River Enterprises Inc. All rights reserved.
Reproduction in whole or in part without permission is prohibited.


Powered by Infopop Corporation
UBB.classic™ 6.7.2