Customer center

We are a boutique essay service, not a mass production custom writing factory. Let us create a perfect paper for you today!

Example research essay topic: Programming Languages Black Box - 1,120 words

NOTE: Free essay sample provided on this page should be used for references or sample purposes only. The sample essay is available to anyone, so any direct quoting without mentioning the source will be considered plagiarism by schools, colleges and universities that use plagiarism detection software. To get a completely brand-new, plagiarism-free essay, please use our essay writing service.
One click instant price quote

... d Java (which does have garbage collection) is incredibly slow. Therefore, the chief problem with C, allocating memory before use, being careful only to use memory you own, and then freeing it after use, isn't really remedied by C++. OOP's idea of hiding data and functions that shouldn't be seen elsewhere can already be done in C, with the use of static variables and static functions, and proper use of headers. C doesn't have exactly the right functionality for this, in fact it's rather primitive, but it works fine, and was around long before C++.

A good way to write clean code is to break up a program into discrete chunks, and then create black boxes that do the required actions. This way, nasty unplanned interactions between black boxes can be prevented, while inside each black box there can be any amount of cock machinery you like - though it's better to have yet more black boxes! If OOP "does stuff for you without you having to think about it", that's all well and good. However, you'd better be QUITE sure that you never need to think about it again. In practice, this is not true.

By the way, I would like to take care of a claim that Uche made in his essay on OOP: When the compiler sees [that C++ code], here's the un optimized C-style function it generates before compilation and assembly This is a cock assumption that is not even true on the compiler we both use. DJGPP compiles C++ code natively, without generating C code first. A compiler is a black box. Learning anything beyond what it's supposed to do (as in, the C standard or C++ standard) is an invitation to exploit that non portable behavior.

And if you won't even get anything good out of knowing that non portable behavior, why even bother? I am interested in learning DJGPP's advanced high-resolution clock functions, or its colorized text printing, but I don't care at all about how it actually compiles my code, so long as it conforms to the ANSI standard. To take care of some more of Uche's claims: One claim is that C++'s interface to assembly is one of the things that makes it better than C. This doesn't really matter.

Assembly is inherently non portable, and having a portable way to indicate that non portable code is coming up is just... useless. I am also not interested in operator overloading, either C++'s cout <<"Hello, " <
Actually, I find the C usage clearer. I am interested in good programming practices, because every time my code crashes and mines the data it ought to be treating nicely, it's the fault of my improper technique. I am not interested in video memory, disk controllers, or interrupts (yet). I want to have black box interfaces that do stuff for me that I can completely forget about. And I judge the quality of a black box by how much I can forget about it. One of the reasons, apparently, that Uche dislikes C is that he tried to set a pixel once in C.

In fact, C has no idea what a pixel is. C actually has no idea what a screen is. You can have a printer as your output device - no going back and erasing characters, now! When Uche asked "How do you set a pixel?" , he was asking "How do I do an action that the C language knows nothing about?" . He should criticize his compiler and computer documentation, not C, which has nothing to do with pixels at all. Graphics has always been a cock area for computers; only now with DirectX are we finally getting some much-needed standardization in this area.

Uche also grumbles about some of C's strict limitations, such as the fact that it reserves all identifiers str ANYTHING. I don't see this as a problem. Just stay away from them, and you " re fine! C 99 allows declarations and statements to be intermixed, and allows things like for (int i = 0; blah; blah). These are minor trivialities that say nothing about a language. (Also, remember that C 89 allows variable declarations to occur any time you have an open brace.

Even, uh, in a switch. ) The biggest change C has undergone since its K&R days has been the introduction of function prototypes, which are most certainly a Good Thing. In fact, Uche derides C for those things that were fixed when he and I were in elementary school. Function return types and function arguments must always be specified in C. To do otherwise risks violating C 99 contains.

I am not highly familiar with C 99, so I can't say exactly what's illegal, but a function declaration such as func () {} has been bad style since K&R 2. First of all, default return type of "int" is pretty useless (and I'm fairly certain this is what's illegal in C 99) and secondly, K&R style parameters are lame and bogus, and have been for a dozen years. I wouldn't even know about this if I had learned my C from fully C 99 books. This "criticism" is irrelevant; function prototypes fixed all this long ago. Criticism of non-typeface text formatting is irrelevant. C is not strongly typed.

So be careful, and use good style. Smart compilers can ferret out many errors involving incorrect arguments to printf, too. I would suggest using "gcc -Wall" with DJGPP. One thing Uche says bothers me. Under circumstances such as this, the implementation is free to do whatever it wants to do, so if it doesn't crash or cause a core dump or page fault, consider yourself fortunate. Actually, I like core dumps.

We all should. They are instant and obvious indications that something is wrong. You want a program to stop immediately when something bad happens, so the programmer can go and fix it. (Java's exceptions suck, though. ) The alternative is worse: subtle corruptions of memory that cause bugs and data damage far downstream from the actual error. So, if you haven't figured it out already, I hate functional programming languages (specifically, Dr Scheme). I now hate unstructured imperative programming (specifically, QBASIC).

I am not yet convinced of the glory of the Many, er, the glory of C++, and I downright loathe Java. But C, yum, C is warm and fuzzy. Updates. I may enhance this essay without warning as I learn more programming languages, and more of C and C++.


Free research essays on topics related to: variable, programming languages, portable, black box, interested

Research essay sample on Programming Languages Black Box

Writing service prices per page

  • $18.85 - in 14 days
  • $19.95 - in 3 days
  • $23.95 - within 48 hours
  • $26.95 - within 24 hours
  • $29.95 - within 12 hours
  • $34.95 - within 6 hours
  • $39.95 - within 3 hours
  • Calculate total price

Our guarantee

  • 100% money back guarantee
  • plagiarism-free authentic works
  • completely confidential service
  • timely revisions until completely satisfied
  • 24/7 customer support
  • payments protected by PayPal

Secure payment

With EssayChief you get

  • Strict plagiarism detection regulations
  • 300+ words per page
  • Times New Roman font 12 pts, double-spaced
  • FREE abstract, outline, bibliography
  • Money back guarantee for missed deadline
  • Round-the-clock customer support
  • Complete anonymity of all our clients
  • Custom essays
  • Writing service

EssayChief can handle your

  • essays, term papers
  • book and movie reports
  • Power Point presentations
  • annotated bibliographies
  • theses, dissertations
  • exam preparations
  • editing and proofreading of your texts
  • academic ghostwriting of any kind

Free essay samples

Browse essays by topic:

Stay with EssayChief! We offer 10% discount to all our return customers. Once you place your order you will receive an email with the password. You can use this password for unlimited period and you can share it with your friends!

Academic ghostwriting

About us

© 2002-2024 EssayChief.com