stargeek
PHP news website logo.
home    PHP scripts    articles    seo tools    links    search    contact    shop    realtors


My First C Compiler







My First C Compiler

My First C Compiler 01/09/2004 09:56 PM

I accidentally googled into this short page on History of PC based C-compilers which made me think about my first C compiler: Aztec C on Apple II.  I was among the first wave of programmers who cut their teeth on PCs instead of minicomputers and state-of-the-art in PC software has risen high enough to make programming in assembly tedious.

So I just bought a copy of wonderfully thin K&R book which took only an hour to read and started writing in C.  I really liked it but I wasn't comfortable with the idea of using it for production code yet because size and speed still reign supreme then.  But it was fine for writing tools.

I think the first program I wrote with Aztec C was a double-hires image editor because that was when Apple IIc was about to be released and there were no tools to edit double-hires images.  It was sweet not having to worry about registers and being able to write almost English like code (well, it does when compared to assembly code).

Oh boy, time sure flies.




This is a GrokNews Entry: (what is grok?)





Similar Items

My First C Compiler

Grok Headline matches for My First C Compiler

TPL Compiler 1.0.5


TPL Compiler 1.0.5 12/17/2003 08:28 AM
A tool which compiles phpBB-style templates to Python modules.

JAL compiler


JAL compiler 05/14/2004 01:51 AM
2004-04-30

GNU D Compiler for Mac OS X


GNU D Compiler for Mac OS X 04/13/2005 05:53 AM
GDC 0.11

The ASN.1 Compiler


The ASN.1 Compiler 06/03/2004 12:50 AM
Free ASN.1 compiler released

freeBASIC Compiler


freeBASIC Compiler 12/31/2004 04:24 AM
FreeBASIC v0.09b released

ObjectBox o:XML Compiler 1.0.0


ObjectBox o:XML Compiler 1.0.0 05/01/2004 10:35 AM
An o:XML compiler and interpretor.

IBM Releases New C/C++ Compiler For OS X


IBM Releases New C/C++ Compiler For OS X 01/16/2004 11:04 AM
(PC Pro via MyAppleMenu)

4tH compiler 3.4c (Development)


4tH compiler 3.4c (Development) 01/11/2004 01:34 PM
A Forth bytecode compiler with a little difference.

Decaf compiler 1.0.1


Decaf compiler 1.0.1 04/14/2004 07:55 PM
A scanner/parser/checker/MIPS code generator.

Intel C++ Compiler 8.0


Intel C++ Compiler 8.0 12/11/2003 08:31 AM
A C/C++ compiler/debugger optimized for maximum performance on Intel processors.

A C Compiler For The HP49g+


A C Compiler For The HP49g+ 08/22/2004 08:17 AM
Slashdot Aug 22 2004 12:31PM GMT

S Formulas Compiler


S Formulas Compiler 12/08/2003 02:24 PM
pre1.0 is stable

4tH compiler 3.4a (Development)


4tH compiler 3.4a (Development) 11/05/2003 06:26 AM
A Forth bytecode compiler with a little difference.

Tiny C Compiler 0.9.20


Tiny C Compiler 0.9.20 12/03/2003 06:06 PM
The smallest Linux C compiler.

4tH compiler 3.3d2 (Development)


4tH compiler 3.3d2 (Development) 03/14/2003 12:59 PM
A Forth bytecode compiler with a little difference.

PHP 5 Released; PHP Compiler, Too


PHP 5 Released; PHP Compiler, Too 07/13/2004 06:41 PM

4tH compiler 3.3e (Development)


4tH compiler 3.3e (Development) 11/01/2003 05:14 AM
A Forth bytecode compiler with a little difference.

4tH compiler 3.4b (Development)


4tH compiler 3.4b (Development) 12/06/2003 06:11 AM
A Forth bytecode compiler with a little difference.

Next GCC compiler version imminent


Next GCC compiler version imminent 04/18/2005 06:16 PM
CNET News.com Apr 18 2005 9:45PM GMT

Javac Compiler Helper 0.2.0


Javac Compiler Helper 0.2.0 06/24/2004 06:45 AM
A wrapper for the javac standard compiler.

4tH compiler 3.4e-pre4 (Development)


4tH compiler 3.4e-pre4 (Development) 08/12/2004 06:03 AM
A Forth bytecode compiler with a little difference.

Roadsend Compiler for PHP beta 3


Roadsend Compiler for PHP beta 3 06/03/2004 10:21 AM
Produces native stand alone applications and libraries from PHP source.

Javac Compiler Helper 0.1.6


Javac Compiler Helper 0.1.6 06/14/2004 06:05 PM
A wrapper for the javac standard compiler.

sourceror - The jamascript compiler.


sourceror - The jamascript compiler. 05/16/2004 09:16 AM
Sourceror 0.0.03 Released

4tH compiler 3.4e-pre2 (Development)


4tH compiler 3.4e-pre2 (Development) 08/06/2004 04:06 AM
A Forth bytecode compiler with a little difference.

Javac Compiler Helper 0.1.2


Javac Compiler Helper 0.1.2 06/08/2004 05:23 PM
A wrapper for the javac standard compiler.

SMC - The State Machine Compiler


SMC - The State Machine Compiler 05/31/2004 03:49 PM
SMC v. 3.0.0: Back to Basic

4tH compiler 3.4e-pre1 (Development)


4tH compiler 3.4e-pre1 (Development) 08/02/2004 06:13 AM
A Forth bytecode compiler with a little difference.

Pro Fortran Compiler Suite 9.0 available


Pro Fortran Compiler Suite 9.0 available 08/11/2004 10:36 PM
Absoft's Pro Fortran Compiler Suite 9.0 for Mac OS X is now available to commercial and government customers for US$899...

Javac Compiler Helper 0.1.0


Javac Compiler Helper 0.1.0 06/02/2004 05:10 PM
A wrapper for the javac standard compiler.

Success! My PHP compiler compiles!


Success! My PHP compiler compiles! 03/11/2003 09:44 AM
I finally managed to compile a not-so-trivial PHP script (courtesy of John) into working C code. The results are quite good, although there's still a huge potential for optimizing the output.The source code was this:<?php $a = 10; $b = 6; ...

State Machine Compiler 2.2.0


State Machine Compiler 2.2.0 12/12/2003 10:09 PM
A state pattern generator for C++, Java, and Tcl.

Jack C Compiler for Jackal 3.0


Jack C Compiler for Jackal 3.0 03/19/2005 02:38 AM
A new assembler

Reverse Engineering Compiler 1.6


Reverse Engineering Compiler 1.6 12/09/2003 10:47 AM
A powerful and portable reverse engineering compiler.

Optimizing Oberon-2 Compiler


Optimizing Oberon-2 Compiler 11/03/2003 11:13 AM
oo2c-2.0.15 released

The Glasgow Haskell Compiler 6.2.2


The Glasgow Haskell Compiler 6.2.2 12/30/2004 06:55 AM
A compiler for Haskell 98

GDS Compiler 9.5.0 (Default branch)


GDS Compiler 9.5.0 (Default branch) 03/30/2005 06:14 PM
Aimed at micro-electronic design, GDS Compiler allows you to easily develop any GDSII generators (memory, MEMS, devices) of any macrocell for which parametrization can provide flexibility, security, and productivity. Front end views and netlist for LVS are generated automatically.
Changes:
This release provides extensively reworked internal netlisting capabilities to support ultra-rapid processing of ever-larger designs, interactive debugging and a development interface with support for step-by-step debugging with integrated netlist capabilites, as well as automated array generation in output GDSII.

Free Pascal Compiler


Free Pascal Compiler 11/06/2003 05:21 AM
FPC 1.9.0 aka 2.0.0-Beta1 released

PHP Compiler Cache Internals


PHP Compiler Cache Internals 10/29/2003 12:11 AM
The latest English issue of PHP Magazine has an interesting article about implementing a PHP Opcode Cache by George Schlossnagle, the author of APC.

If you're familiar with the English expression, don't throw the baby out with the bath water, then you will be amused to learn that that's exactly how the Zend Engine (PHP's compiler) works. It will compile the PHP into opcodes for a page request, and throw the opcodes away immediately after the code completes.

This may sound really wierd and inefficient, but of course Zeev and Andi would not have been able to start their own company, Zend, without a business plan that involved fixing this "stupidity". And you thought Microsoft was evil ;-)

Now it is perfectly normal when developing a platform to leave gaps for commercial vendors to fill. That creates a ecosystem where we have companies willing to pay to maintain and promote PHP. So this isn't meant to be an attack against Zend, but an acknowledgement of business realities.

This omission of the Zend Engine stimulated interest in several open source developers to create their own opcode caches. APC is one of the earliest open source opcode caches.

In my benchmarks (yes, you see me benchmark a lot, because that's the only way to understand the performance profile of PHP software without spending a lot of time examining source code) I noticed that the overhead of PHP opcode caches was less for small scripts. Obviously there is some copying of instructions from the cache in shared memory during script execution. The question was how much? How did it affect performance?

Now we have the answer. George says restoration of the opcode info for script execution "involves only a so-called shallow copy of the op_array. A shallow copy means that only the structure itself is copied, but none of the elements it contains pointers to."

This means that the actual opcodes are not actually copied, only the pointers to the structures that contain the opcodes. Apart from that, the function and class metadata and any static variables are restored, and the inheritance hierarchy is dynamically resolved.

So the overhead of the opcode cache is O(n), where n is the number of functions+classes+inheritance levels+properties+PHP files. It is not proportional to the number of lines of code - that would be as worrying as throwing the baby with the bath water.

Another excellent issue of PHP Magazine!


Grok Description matches for My First C Compiler
GrokA matches for My First C Compiler

My First C Compiler

The following phrases have been identified by the grok system as matching this entry:

















Also check out:


Grok

Ipod Porn on the
Rise

Brief Abstract of
Wikipedia's
Mesothelioma Cancer
page

Get first aid
instructions in your
cell phone

IE is crap
JSPWiki gains
podcasting support

DaynaFile Lives!
Dons on Mars
Sea Angel or Horny
Ass?

S Korea promises
piracy action

Tougher times await
Game

iPod family grows
again

Playing terror games
in Las Vegas

Keeping Up With New
Web Sites

Next Generation Net
naming Scheme
Rewrites Rules

On the Economy of
Web Links:
Simulating the
Exchange Process

Do Web Search
Engines Suppress
Controversy?

Security Resources
2004 - Internet
MiniGuide

Vintage Photo
Archives: Imperial
Dignitary

Target Sales Reveal
Packaging Change

Win A Set Of Ultra
Figures

Classic Star Wars
Strips Join Our
Comic Book Gallery

New Waves Of Basic
Figures

Got Courage?
Clone Wars Cartoon
Restarts In March

Animated Wave 3?
FFURG's January
Casting Call
Announced

Encouraging
Political Defection

Subcription Commons
Patriot Act II
Backfire

I hear an etco
Hewlett Joins With
Apple in Music Deal

Verizon Plans Fast
Internet for
Cellphones

Monitoring the Beach
House

Nokia Turns Bullish
on Its 4th-Quarter
Estimates

Be It Mobile or
Land-Line, a Headset
Mates Easily

And Now, a TV That
Prints Still Photos

Battling Demons,
Especially the Ones
in Lab Coats

Retreating From
Dial-Up Business,
Microsoft Aims
MSN.com at Yahoo

Flat-Panel Sets to
Enhance the
Visibility of
Samsung

U.S. Stops Barring
WorldCom From Bids
on Government Work

Beam Your Favorite
Shows to an
Expandable Cache

Forgot Your Key? Say
'Open Sesame' With
Your Fingertip

On Your Wrist, a PC
Controller That Can
Read Your Palm

In a Sleek Flat Set,
Plasma's Price
Plunges

Selecting a Search
Tool for Your Web
Browser

Reading (Sort of)
and Driving at the
Same Time

Microsoft's Latest,
Strapped to a Wrist

Lots of Players,
Little Harmony

The iPod's Little
Brother Makes a Big
Splash

Something New Under
the Counter

A Virtual Cash
Register Rings Up
Tiny Transactions

Full-time
Perl/CGI/MYSQL Web
Programmer

Assistant Webmaster
Bots and regular
expressions (Sydney,
Aus)

modperl ecommerce
template programmer

what is grok?