Go Back   Forums > Community Chatterbox > Tech Corner > Programming
Memberlist Forum Rules Today's Posts
Search Forums:
Click here to use Advanced Search

Reply
 
Thread Tools Display Modes
Old 28-07-2006, 04:54 PM   #51
velik_m
Game Wizzard

 
Join Date: Sep 2005
Location: Agalli, Albania
Posts: 271
Default

i never said it sucked, i said it's ugly, full of constructs that do nothing but make the code harder to understand. C modular? <_< hardly.
and if i wanted to use asembler i would use asembler.
__________________
To the east, always to the east...
velik_m is offline                         Send a private message to velik_m
Reply With Quote
Old 28-07-2006, 05:42 PM   #52
guesst
Abandonia Homie
 
guesst's Avatar

 
Join Date: May 2005
Location: Aurora, United States
Posts: 606
Default

<div class='quotetop'>QUOTE(velik_m @ Jul 28 2006, 04:54 PM) [snapback]245671[/snapback]</div>
Quote:
i never said it sucked, i said it's ugly, full of constructs that do nothing but make the code harder to understand. C modular? <_< hardly.
and if i wanted to use asembler i would use asembler.
[/b]
Of course it's modular. That's what #include is for. Try doing that in BASIC. (The original, not VB.) It's been a standard of every language since. And the fact that there are still programs written in C is a tribute to it's strength. No matter what new language comes and outlives it's purpose, C stays around and get's languages based on it over and over again.

Now I'm not defending C to the debasement of other languages. infact, I'm kinda tired of this now, so I'm going to have this be my final word on the subject. Still think C is not as good as toher languages? Fine, whatever.
guesst is offline                         Send a private message to guesst
Reply With Quote
Old 28-07-2006, 06:42 PM   #53
velik_m
Game Wizzard

 
Join Date: Sep 2005
Location: Agalli, Albania
Posts: 271
Default

from wikipedia:

As an Algol-based language, C has the following characteristics:

* A procedural programming paradigm, with facilities for structured programming
* Lexical variable scope and recursion
* A type system which prevents many meaningless operations
* Function parameters are generally passed by value (pass-by-reference is achieved in C by explicitly passing pointer values)
* Heterogenous aggregate data types (struct in C) which allow related data elements to be combined and manipulated as a unit
* A relatively small set of reserved keywords

C also has the following specific properties:

* Low-level access to computer memory via machine addresses and pointers
* Function pointers allow for a rudimentary form of closures and runtime polymorphism
* A standardized C preprocessor for macro definition, source code file inclusion, conditional compilation, etc.
* A simple, small core language, with functionality such as mathematical functions and file handling provided by library routines
* C discarded the well established logical connectives and and or of most other algol derivatives and replaced them with && and ||.
* && and || were invented in order to make bit-wise operations (& and |) syntactically distinct ? C's predecessor B used & and | for both meanings.
* C popularized the controversial decision to free the equal-sign for assignment use by replacing = with == (inherited from B).

As a systems implementation language, C lacks features found in other languages:

* No non-scalar operations such as copying of arrays or strings (old versions of C did not even copy structs automatically).
* No automatic garbage collection
* No bounds checking of arrays (expensive in languages with only scalar operations)
* No semi-dynamic (i.e. stacked, runtime-sized) arrays until the C99 standard (despite not requiring garbage collection).
* No syntax for ranges, such as the A..B notation used in both newer and older languages (does not fit scalar-only semantics well).
* No nested functions, though the GCC compiler provides this feature as an extension
* No closures or functions as parameters, only machine-level function pointers
* No generators or coroutines; intra-thread control flow consists of nested function calls, barring the (somewhat arcane) use of the longjmp or setcontext library functions
* No exception handling; standard library functions signify error conditions with the global errno variable
* Very rudimentary support for modular programming; a cumbersome compilation model dependent on operating system-specific tools.
* No compile-time polymorphism in the form of function or operator overloading; only rudimentary support for generic programming
* No support for object-oriented programming, although C++ was originally implemented as a preprocessor that translated C++ into C; there are libraries offering object systems for C, and many object-oriented languages are themselves written in C


i wasn't the only one who noticed. C is a useful language, but C++>C. (if you don't belive me test it in code :bleh
__________________
To the east, always to the east...
velik_m is offline                         Send a private message to velik_m
Reply With Quote
Old 29-07-2006, 07:11 PM   #54
ReamusLQ
Home Sweet Abandonia

 
Join Date: Dec 2004
Location: Shella, Kenya
Posts: 1,001
Default

English and Frence...
ReamusLQ is offline                         Send a private message to ReamusLQ
Reply With Quote
Old 30-07-2006, 09:13 AM   #55
Shadikka
Newbie

 
Join Date: Aug 2005
Location: Ofverby, Finland
Posts: 12
Default

Mostly Python and PHP, then mediocre skill in Java, meager skill in C and C#. I wonder why I have never tried C++
Shadikka is offline                         Send a private message to Shadikka
Reply With Quote
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
Old 11-08-2006, 12:44 AM   #57
STFM
Abandonia nerd

 
Join Date: Sep 2005
Location: ,
Posts: 96
Default

Quote:
"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.
[/b]
Yes but the point is to run a newer java program all you have to do is install a new JVM. And machines can run multiple JVM versions at once.

Its a language much more suited to business applications rather than games. For example I write applications on my Windows XP box that get deployed to Windows 2000, iSeries and AIX production servers. I only write the code once and compile it once and this saves my employer money.

STFM is offline                         Send a private message to STFM
Reply With Quote
Old 12-08-2006, 09:48 AM   #58
Arjan
Lurker

 
Join Date: Aug 2006
Location: ,
Posts: 1
Default

I use basic to make games on my calculator
Arjan is offline                         Send a private message to Arjan
Reply With Quote
Old 13-08-2006, 05:27 AM   #59
carpetsmoker
Forum hobbit

 
Join Date: Aug 2006
Location: ,
Posts: 49
Default

PHP
Greatly undervalued as OS scripting language, almost a drop-in replacement for perl, all it needs is some more packages (a-la-cpan)

perl
Perl sucks if you ask me, I never quite understood why some things are as they are in perl (why can't I just pass variables the normal way? like any other language, grrr...)
I use it when I need it (modifying other scripts usually)

C
I still need to think of a nice project to start in C - everything seems to be done already ... anyway, I learned it some time ago...

MSXBASIC
Where I started ten years ago, spagethi code all the way!!

shell scripting
Not really a language ...

Unrealcode
Made half a mod for Deus ex, never finished it ... Deus ex community was dying anyway...
carpetsmoker is offline                         Send a private message to carpetsmoker
Reply With Quote
Old 14-08-2006, 03:44 AM   #60
Iowa
Game Wizzard

 
Join Date: Aug 2006
Location: Iowa City, United States
Posts: 290
Default

I just use HTML, i'm too lazy/not committed enough to learn any other language. I want to learn Java, though...

My website is programmed in HTML
__________________
I did it for the lulz!
Iowa is offline                         Send a private message to Iowa
Reply With Quote
Reply


Similar Threads
Thread Thread Starter Forum Replies Last Post
Translating Abandonia To Other Languages Kosta Old News 267 14-03-2010 01:23 AM
Different Languages = Different Versions? Vikingblood80 Old Suggestions 14 09-02-2006 01:08 PM
Languages Grinder Blah, blah, blah... 34 30-07-2005 12:03 PM
Languages #2 Grinder Blah, blah, blah... 3 29-07-2005 12:39 PM


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump
 


The current time is 12:01 AM (GMT)

 
Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.