View Single Post
Old 07-08-2006, 03:31 PM   #56
GrimFang4
Forum hobbit

 
Join Date: Jun 2006
Location: Strafford, United States
Posts: 31
Send a message via ICQ to GrimFang4
Default

Can I get any more quotey?

<div class='quotetop'>QUOTE(plix @ Jul 27 2006, 10:16 PM) [snapback]245589[/snapback]</div>
Quote:
<div class='quotetop'>QUOTE(GrimFang4 @ Jul 26 2006, 11:23 AM) [snapback]245244[/snapback]
Quote:
Hey, but JavaScript could be.[/b]
JavaScript is a full-blown programming language (it's Self with a C-like syntax). That doesn't have anything to do with the fact that HTML is a markup language and not a programming language.
[/b][/quote]

JavaScript has quite a bit to do with HTML when it is usually included within HTML code. I'm trying to point out that within the common usage of HTML, you can find a programming language, JavaScript.


<div class='quotetop'>QUOTE(plix @ Jul 27 2006, 10:16 PM) [snapback]245589[/snapback]</div>
Quote:
<div class='quotetop'>QUOTE(GrimFang4 @ Jul 26 2006, 11:23 AM) [snapback]245244[/snapback]
Quote:
Scheme (a dialect of LISP) is yucky. Don't use Scheme or LISP. I got good with it, but the only good use for it is a strongly list-based program. Perl might be good for internet stuff, but I'd expect that PHP and Python are more widely used (and that's what matters when you depend on your server running the programs).[/b]
Perl is extremely widely used outside of web/internet applications. On any *nix machine you're likely to run in to it constantly (the auto* family of GNU tools, numerous system administration tools, etc). PHP and Python are both widely used, but Perl is quite a bit older, more mature, and I'd bet pretty strongly that it still has a significantly larger market share.
[/b][/quote]

I've found that if you choose a random server, they more often than not support Python and PHP whereas you have to ask them nicely to install Perl. Perl can be good for other internet stuff, but Python and PHP I would suspect are better for webpages. You'll notice that my experience is with Perl, not Python or PHP.


<div class='quotetop'>QUOTE(plix @ Jul 27 2006, 10:16 PM) [snapback]245589[/snapback]</div>
Quote:
As for Lisp, I believe you're quite wrong. The syntax isn't at all C-like, but Lisp is easily one of the most elegant, powerful environments ever created. Really learning Lisp gives you an understanding of true programming concepts (functional, reflective, and otherwise) that make it unlike anything else. Scheme is a restricted subset; I might suggest ANSI Common Lisp instead. Lisp macros alone distinguish the language.
[/b]
Lisp is elegant, yes. But does that make it less yucky of a language? Scheme and Lisp are indeed great for learning programming concepts, but why should I use them if anything else (read "useful" or "fun") is too convoluted to do easily? This is especially true because in order to do anything beyond learning programming ideas with Scheme/Lisp, you need to break it's natural elegance with a structural "begin" statement. Scheme is a little restricted, but it represents a lot about Lisp.


<div class='quotetop'>QUOTE(plix @ Jul 27 2006, 10:16 PM) [snapback]245589[/snapback]</div>
Quote:
<div class='quotetop'>QUOTE(GrimFang4 @ Jul 26 2006, 11:23 AM) [snapback]245244[/snapback]
Quote:
And finally, I'm strongly against interpreted languages! Even though I know a few of them, I can't stand that I can't just send my friends an executable when I program in Java, Perl, or Scheme! That's why I love C++. Python, Java, D, and C# might have some great uses, but I want a compiler, not an interpreter! :ranting:
[/b]
Java isn't an interpreted language, it's a bytecode-compiled language (just like C#). Java and C# are also almost always JITed and, as velik_m mentioned, there are AOT compilers available for Java (such as GCJ). "Just sending [your] friend[s]" and executable also illustrates a point explicitly "solved" by Java: portability. Sending your friends a "true" executable is only workable when your friends are running the same OS on the same architecture. What if they're running Linux or FreeBSD; what if they're running on an Alpha or an Arm or a Sparc?
[/b][/quote]

Java is interpreted. The bytecode is read at run-time just like a script. The evidence behind it being an interpreted language: You need to install a bytecode interpreter to run any Java programs! This isn't portability as long as Java isn't standard on all machines. "Write once run anywhere" that there happens to be a certain other program installed. Newer Java programs can't be run on some older Java Run-time Environment installations either. Now, I mostly write games. What is the gaming scene like on Linux compared to Windows? FreeBSD vs. Windows? Mac vs. Windows? If I really want to port to another system, then I'll crosscompile it (SDL is portable).


<div class='quotetop'>QUOTE(plix @ Jul 27 2006, 10:16 PM) [snapback]245589[/snapback]</div>
Quote:
I love C (I can't stand the abomination which is C++) and I always will, but that doesn't prevent me from appreciating the elegance of Lisp, the sheer power of Perl when it comes to text processing, or the usefulness of Java in middleware.
[/b]
Programming languages are easier to use, more powerful, and more popular when they reflect a human's interpretation of the real world. Why doesn't everyone use assembly? C++ offers abstractions and even just organization that reflects the real world. As in a book I read, wanna make a microwave in C++? Make a class Microwave that inherits from class Oven and has functions like insertFood(Food item), cook(int time), and removeFood(). Can you do that in C without a severe cluttering of the namespace? Wait... There are no namespaces.

*Final note on Lisp: An elegant girl can be trashy when she tries to have fun.
__________________
GrimFang4 is offline                         Send a private message to GrimFang4
Reply With Quote