What's the first programming language that you learned?
Moderator: General Moderators
- Ollie Saunders
- DevNet Master
- Posts: 3179
- Joined: Tue May 24, 2005 6:01 pm
- Location: UK
Started out with Turbo Pascal. Bloody brilliant!
I was looking at my old pascal programs only a couple of days ago to see what easy things I could write in Ruby (currently learning).
I think a hello world looks like this:
I was looking at my old pascal programs only a couple of days ago to see what easy things I could write in Ruby (currently learning).
I think a hello world looks like this:
Code: Select all
program helloworld
var
str:string(30) {this is a comment, in brackets there was the number of characters}
begin
str:= "Hello, world";
writeln(str);
end.-
Charles256
- DevNet Resident
- Posts: 1375
- Joined: Fri Sep 16, 2005 9:06 pm
- RobertGonzalez
- Site Administrator
- Posts: 14293
- Joined: Tue Sep 09, 2003 6:04 pm
- Location: Fremont, CA, USA
-
Charles256
- DevNet Resident
- Posts: 1375
- Joined: Fri Sep 16, 2005 9:06 pm
- CoderGoblin
- DevNet Resident
- Posts: 1425
- Joined: Tue Mar 16, 2004 10:03 am
- Location: Aachen, Germany
- AKA Panama Jack
- Forum Regular
- Posts: 878
- Joined: Mon Nov 14, 2005 4:21 pm
You're all a bunch of hand-held newbies.
65xx and Z-80 Assembler.
6502
Those were the days...
65xx and Z-80 Assembler.
6502
Code: Select all
* This routine works for any date from 1900-03-01 to 2155-12-31.
* No range checking is done, so validate input before calling.
*
* I use the formula
* Weekday = (day + offset[month] + year + year/4 + fudge) mod 7
* where the value of fudge depends on the century.
*
* Input: Y = year (0=1900, 1=1901, ..., 255=2155)
* X = month (1=Jan, 2=Feb, ..., 12=Dec)
* A = day (1 to 31)
*
* Output: Weekday in A (0=Sunday, 1=Monday, ..., 6=Saturday)
TMP EQU $6 ; Temporary storage
WEEKDAY:
CPX #3 ; Year starts in March to bypass
BCS MARCH ; leap year problem
DEY ; If Jan or Feb, decrement year
MARCH EOR #$7F ; Invert A so carry works right
CPY #200 ; Carry will be 1 if 22nd century
ADC MTAB-1,X ; A is now day+month offset
STA TMP
TYA ; Get the year
JSR MOD7 ; Do a modulo to prevent overflow
SBC TMP ; Combine with day+month
STA TMP
TYA ; Get the year again
LSR ; Divide it by 4
LSR
CLC ; Add it to y+m+d and fall through
ADC TMP
MOD7 ADC #7 ; Returns (A+3) modulo 7
BCC MOD7 ; for A in 0..255
RTS
MTAB DB 1,5,6,3,1,5,3,0,4,2,6,4 ; Month offsetsStarted with some very basic BASIC in my formative years 
When I started university we learnt Modula-2, then C, some Assembler, C++, COBOL and Prolog. Fiddled about with HTML, DHTML, JavaScript etc. during that time as well.
More recently I learnt Java and now I've moved to PHP in my spare time. I used Java for developing web modules when I was working at Jagex (they create the MMORPG Runescape - you may have heard of it) and they also use their own bespoke language for developing dynamic HTML, some of which is similiar to PHP.
When I started university we learnt Modula-2, then C, some Assembler, C++, COBOL and Prolog. Fiddled about with HTML, DHTML, JavaScript etc. during that time as well.
More recently I learnt Java and now I've moved to PHP in my spare time. I used Java for developing web modules when I was working at Jagex (they create the MMORPG Runescape - you may have heard of it) and they also use their own bespoke language for developing dynamic HTML, some of which is similiar to PHP.