LinuxQuestions.org
Review your favorite Linux distribution.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices

Reply
 
Search this Thread
Old 11-02-2007, 12:38 AM   #1
SBN
Member
 
Registered: Jul 2006
Distribution: UBUNTU, CentOS, FEDORA 8
Posts: 474

Rep: Reputation: 30
Cool Programming Languages where did it came from


Hey guys im starting to have interest in computer programming, but i have a question. If these programming languages are used to make softwares, how were these programming languages are made?
 
Old 11-02-2007, 12:52 AM   #2
pixellany
LQ Veteran
 
Registered: Nov 2005
Location: Annapolis, MD
Distribution: Arch/XFCE
Posts: 17,802

Rep: Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728
How were tools made before there were tools to make tools? Classic question...
I think in any industry there has been an evolution of improving tools and improving products---with computer SW, it started with "machine language"--ie a bunch of numeric codes for different operations. Then there was assembler, which added labels and other niceties. When the first higher level language was conceived, someone probably wrote the first compiler in assembler. Then they could write a better compiler in the new language.

Others will be able to give a much more precise answer
 
Old 11-02-2007, 01:56 AM   #3
chrism01
Guru
 
Registered: Aug 2004
Location: Sydney
Distribution: Centos 6.5, Centos 5.10
Posts: 16,289

Rep: Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034
This is a good page to start:
http://en.wikipedia.org/wiki/Grace_Hopper
 
Old 11-02-2007, 02:22 AM   #4
Alien_Hominid
Senior Member
 
Registered: Oct 2005
Location: Lithuania
Distribution: Hybrid
Posts: 2,247

Rep: Reputation: 53
Translator created by Grace Hopper isn't the start. The start is first assembler. At first people were writing in machine language, but adding / removing instructions could make your code useless (data address changes, but your "pointers" not). So they introduced assembler which could count the size of different mnemonics (like add, mov, xor, int ...) and their operands and add these sizes when assembling. Using assembler, compilers (they have necessary translating ability, check chrism01's Grace Hoper link) were created and so higher level languages were born (FORTRAN, COBOL, ALGOL, Pascal, C,...)

Last edited by Alien_Hominid; 11-02-2007 at 02:23 AM.
 
Old 11-02-2007, 03:52 AM   #5
bigearsbilly
Senior Member
 
Registered: Mar 2004
Location: england
Distribution: FreeBSD, Debian, Mint, Puppy
Posts: 3,290

Rep: Reputation: 174Reputation: 174
not sure, could you count assembler as a real abstract language?
it's more a simple substitution.
and it's strictly architecture dependent.

discuss.
 
Old 11-02-2007, 05:05 AM   #6
Alien_Hominid
Senior Member
 
Registered: Oct 2005
Location: Lithuania
Distribution: Hybrid
Posts: 2,247

Rep: Reputation: 53
Ok. I'll respond:

1) Different syntax between dif versions(at&t (GASM), Intel (NASM, FASM, MASM, TASM, ASM86).
2) Usage of macros, labels, modes and other specific features (mostly in MASM and TASM).
3) Why programming language should only be abstract one?

Last edited by Alien_Hominid; 11-02-2007 at 05:07 AM.
 
Old 11-02-2007, 01:02 PM   #7
PAix
Member
 
Registered: Jul 2007
Location: United Kingdom, W Mids
Distribution: SUSE 11.0 as of Nov 2008
Posts: 195

Rep: Reputation: 40
Have a look here and you will get an idea of some of the influences since around 1954 and Fortran. to the present day. If you have the time to count the individual languages depicted, then you have wasted good drinking time.

PAix
 
Old 11-02-2007, 08:24 PM   #8
SBN
Member
 
Registered: Jul 2006
Distribution: UBUNTU, CentOS, FEDORA 8
Posts: 474

Original Poster
Rep: Reputation: 30
ok so basically assembly is the core of every programming languages with out it then no programming languages.right?
 
Old 11-02-2007, 10:34 PM   #9
pixellany
LQ Veteran
 
Registered: Nov 2005
Location: Annapolis, MD
Distribution: Arch/XFCE
Posts: 17,802

Rep: Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728
Quote:
Originally Posted by SBN View Post
ok so basically assembly is the core of every programming languages with out it then no programming languages.right?
I don't think so...I don't see why a compiler cannot directly generate machine code--not need to go through assembler.

How they actually do it--I'm not sure.
 
Old 11-04-2007, 05:17 AM   #10
Alien_Hominid
Senior Member
 
Registered: Oct 2005
Location: Lithuania
Distribution: Hybrid
Posts: 2,247

Rep: Reputation: 53
Compiler or assembler usually generates object code (ELF in Linux), which is linked by linker into executable or library.

Assembler was a start. Modern compilers generate machine code directly. Still you can learn assembler for low level programming.
 
Old 11-04-2007, 07:12 PM   #11
xadrith
Member
 
Registered: Oct 2007
Distribution: Slack 12.1
Posts: 43

Rep: Reputation: 15
What would some of the benefits be, in regards to learning low-level assembly? What are some of the drawbacks?

Can anyone give some real-world experience relating to assembly coding, so that they could help paint a picture of why it might still be a language worth learning?

Thanks,
xD
 
Old 11-04-2007, 10:25 PM   #12
chrism01
Guru
 
Registered: Aug 2004
Location: Sydney
Distribution: Centos 6.5, Centos 5.10
Posts: 16,289

Rep: Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034Reputation: 2034
assembler is very low level and tedious to write, hence the evolution of 'higher level' langs like C Perl etc.
AFAIK, the main usage these days is for device drivers and the like (cpus etc) ie relatively small amts of code embedded in HW.
 
Old 11-04-2007, 10:42 PM   #13
pixellany
LQ Veteran
 
Registered: Nov 2005
Location: Annapolis, MD
Distribution: Arch/XFCE
Posts: 17,802

Rep: Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728Reputation: 728
Quote:
Originally Posted by xadrith View Post
What would some of the benefits be, in regards to learning low-level assembly? What are some of the drawbacks?

Can anyone give some real-world experience relating to assembly coding, so that they could help paint a picture of why it might still be a language worth learning?

Thanks,
xD
The only general answer I can think of is that--using assembler (or machine code)--you have complete control over optimizing particular code segments.

The slightly more flip answer: If you don't know why you need something, then you likely don't need it.

Even to fully understand what C code is doing, it's useful to know some of the basic cpu commands--even if you never actually write anything in assembler.
 
Old 11-04-2007, 11:55 PM   #14
Alien_Hominid
Senior Member
 
Registered: Oct 2005
Location: Lithuania
Distribution: Hybrid
Posts: 2,247

Rep: Reputation: 53
http://webster.cs.ucr.edu/AoA/DOS/fwd/fwd.html
 
Old 11-05-2007, 07:20 PM   #15
xadrith
Member
 
Registered: Oct 2007
Distribution: Slack 12.1
Posts: 43

Rep: Reputation: 15
many thanks for the link, Alien.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

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 Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
'commercial' use of programming languages?!? suicideducky Programming 4 05-04-2007 02:34 AM
Statistical programming languages Nerox Programming 1 03-17-2005 12:01 PM
What programming languages do you know? ugoff General 24 12-13-2004 06:01 PM
How many programming languages do you know? MikeZila Programming 4 07-25-2004 01:26 PM
Programming languages on Linux? Imek Programming 6 01-04-2004 03:07 AM


All times are GMT -5. The time now is 11:09 AM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration