Fedora Linux Support Community & Resources Center
  #1  
Old 15th October 2007, 11:36 AM
tech291083 Offline
Registered User
 
Join Date: Sep 2006
Posts: 1,046
Programming language development

Hi,

There are many programming languages out there today and I wonder as to what is required to put together a fully working programming language? If compared to a human body it has a heart, brain and a range of organs to make it functional. What does a programming language need in this regard? All is know is a compiler then IDE etc. Can any one please shed some light on the area?
Thanks.

Last edited by tech291083; 27th November 2008 at 05:22 AM.
Reply With Quote
  #2  
Old 15th October 2007, 12:35 PM
Reisswolf Offline
Registered User
 
Join Date: May 2006
Posts: 337
Design a language, then programme its compiler. There are excellent tools nowadays that will automate much of the compiling of the compiler for you once you have given that tool the CFG (context-free grammar) of the language you have designed.

Writing a meaningful programming language is possible only if one has acquired the necessary theoretical background. If you have not already done so, study the theory of computation, algorithms, etc., before embarking on an ambitious project.

But if you are just thinking of building a toy compiler--kind of like a "hello world" problem in compiler theory--you should be able to do it without too much of a hassle.
__________________
Registered user # 441814
Reply With Quote
  #3  
Old 15th October 2007, 04:35 PM
tashirosgt Offline
Registered User
 
Join Date: Aug 2004
Posts: 3,958
If you name a particular language then you can get better advice on what is needed to use it.

As a generality, to use a language you need a compiler or an interpreter. For a language like Java, people use both a compiler (to compile human readable code to "bytecode") and an itnerpreter (the Java Runtime Environment) to run the bytecode. It is possible to use languages without an "IDE", but you must learn how to do many tasks using the command line and a text editor if you don't use an IDE.

People who need quick reinforcement when they learn ( proceeding from one small success to another) will probably do better if they use an IDE. But they must be careful to obtain documentation written for the particular version of the IDE they are trying to use, not some out-of-date version. People who like to know all the nuts and bolts of things and can tolerate a period of failure before their successes can do fine without an IDE. As to how you work once you are an expert, I suppose it doesn't matter.
__________________
"Never let the task you are trying to accomplish distract you from the study of computers."
Reply With Quote
  #4  
Old 15th October 2007, 05:03 PM
Reisswolf Offline
Registered User
 
Join Date: May 2006
Posts: 337
Wow. I think I totally misunderstood the question. I thought he was asking what is required to write a whole new programming language.
__________________
Registered user # 441814
Reply With Quote
  #5  
Old 15th October 2007, 05:09 PM
tashirosgt Offline
Registered User
 
Join Date: Aug 2004
Posts: 3,958
Reisswolf,
You might have right interpretation of the question. I can read the question your way, also.
__________________
"Never let the task you are trying to accomplish distract you from the study of computers."
Reply With Quote
  #6  
Old 16th October 2007, 03:03 AM
clearer Offline
Registered User
 
Join Date: Sep 2004
Location: Odense, Denmark
Age: 32
Posts: 588
I read the same way Reisswolf and can, if I really but an effort into it, read the same way tashirosgt does... but let the asker (tech291083) answer that question.
__________________
I am not a lawyer.
Fedora: AMD Phenom II 905e @ 4x2500 MHz, Raspberry Pi B 512 MB @ 1x800 MHz, Raspberry Pi B 256 MB @ 1x700 MHz
Debian: BeagleBoard xM @ 1x1000 MHz, Apple PowerMac G5 @ 2x1800 MHZ
Reply With Quote
  #7  
Old 20th October 2007, 09:59 AM
tech291083 Offline
Registered User
 
Join Date: Sep 2006
Posts: 1,046
Quote:
Originally Posted by tashirosgt
If you name a particular language then you can get better advice on what is needed to use it................................ I suppose it doesn't matter.

Great stuff thanks
Reply With Quote
  #8  
Old 27th November 2008, 05:27 AM
tech291083 Offline
Registered User
 
Join Date: Sep 2006
Posts: 1,046
Thanks a lot guys, but I just want to know the different components are how they work when they are put together to create a whole called the compiler or silimar. Here this page has some info about compilers and there are some terms mentioned such as Lexical Analysis, Syntax Analysis etc. So please help me understand the whole idea with your experience in simple terms. Thanks a lot again to all of you here.

http://en.wikipedia.org/wiki/Compiler
Reply With Quote
  #9  
Old 30th November 2008, 09:33 AM
stevea Online
Registered User
 
Join Date: Apr 2006
Location: Ohio, USA
Posts: 8,807
That wiki pages explains it as well or better than you should expect here.

Lexical analysis is breaking the source code characters into tokens.
Syntactic analysis examines the sequence of tokens and verifies this is legal.
Semantic analysis applies the meaning imputed by the language definition to the sequence of tokens.
Code generation creates target machine code corresponding to the semantics.

These are MANY possible implementations, optimizations, representations. The phases mentioned above are just a conceptual model ((like the ISO network model)) --- these phases can be mixed together in various ways.
Reply With Quote
  #10  
Old 19th February 2009, 07:21 AM
tech291083 Offline
Registered User
 
Join Date: Sep 2006
Posts: 1,046
Thanks a lot Stevea, you are right, I am also thinking of buying a book on the subject it is called 'Compilers: Principles, tools and techniques' by Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman, as recommended by a friend, let us see how far my mind can go into the pages. Thanks a lot.....
Reply With Quote
Reply

Tags
development, language, programming

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

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

Similar Threads
Thread Thread Starter Forum Replies Last Post
Programming Language Translators Eli Duttman Using Fedora 2 5th July 2009 04:01 AM
ADA programming language? esnc Programming & Packaging 1 18th February 2009 04:22 AM
Best programming language for application development? movilogo Programming & Packaging 13 14th February 2009 12:08 AM
Would like some recommendations on a first programming language. leadgolem Programming & Packaging 36 18th June 2007 01:05 AM
Programming language deepfreeze Linux Chat 8 1st November 2005 08:20 PM


Current GMT-time: 21:13 (Monday, 01-09-2014)

TopSubscribe to XML RSS for all Threads in all ForumsFedoraForumDotOrg Archive
logo

All trademarks, and forum posts in this site are property of their respective owner(s).
FedoraForum.org is privately owned and is not directly sponsored by the Fedora Project or Red Hat, Inc.

Privacy Policy | Term of Use | Posting Guidelines | Archive | Contact Us | Founding Members

Powered by vBulletin® Copyright ©2000 - 2012, vBulletin Solutions, Inc.

FedoraForum is Powered by RedHat