Download Cid Compiler - Cid Compiler Description, Cid Compiler Reviews
Contact
 


 

Download

 
Download Now (98K)
BSD License
Downloads till now: 3
 
 

Quick search

 



 

Rate this software

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

No. Votes

0

 

Linux

Assembler Tools , Bug Tracking , Code Generators , Compilers , Debuggers , Disassemblers , Internationalization , Interpreters , Libraries , Localization, Perl Modules , Preprocessors , Quality Assurance and Testing , UI (User Interfaces) , Version Control , Widgets ,

Windows

Mac

Mobile

Drivers

Scripts - DHTML

Scripts - DHTML (new)

Web Developer Blog

Web Developer Blog (new)

Scripts and Applications

Ajax
ASP
ASP.NET
C and C++
CFML
CGI and Perl
Flash
Java
JavaScript
PHP
Python
XML

cid-compiler

 

Details

Size: 98K
Last Update: 2008-05-15 22:22:56
Version: 0.1
OS Support: Linux
License/Program Type: BSD License
Publisher: Markus W Weissmann
Price:$0.00
Description:

cid-compiler 0.1 is code generators software developed by Markus W Weissmann.
cid-compiler is a language tool to easily create C code with object oriented features. It's compiler generates header (.h) files and implementations (.c) from a specification file (.i).



The generated C code consists of a struct, a opaque pointer to it (in the header file) and rewritten functions. The defined functions will get prefixed with the class name, they will also get a new first argument that is a pointer to the newly defined struct.

Functions that do not have a return value are considered constructors and will not get a new 1st argument but will automatically get a return value of pointer to the struct. The place between @class "name" and @attributes is e. g. for include statements and will make it into the header file.

To ease renaming the class, you can use the define CLASS, which will always be a define to a pointer of the new struct type.

Interface example

@class cstring
include < stdio.h >
include < string.h >
@attributes
char c;
@methods
new(char n) {
CLASS i = NEWCLASS;
i->c = strdup(n);
return i;
}
int length() {
return strlen(this->c);
}
@end

will yield a cstring.h file:
ifndef _CSTRING_H_
define _CSTRING_H_
include < stdio.h >
include < string.h >
typedef struct cstring cstring;
cstring cstring_new(char n);
int cstring_length(cstring this);
endif

and a cstring.c file:
include "cstring.h"
define CLASS cstring
define NEWCLASS malloc(sizeof(struct cstring));
define NEWCLASS_M malloc(sizeof(struct cstring));
define NEWCLASS_C calloc(1,sizeof(struct cstring));
struct cstring {
char c;
};
cstring cstring_new(char n) {
CLASS i = NEWCLASS;
i->c = strdup(n);
return i;
}
int cstring_length(cstring this) {
return strlen(this->c);
}

Issues:

The current compiler (v0.1) will reject quite some valid C code. Also the given error is not very helpful;
cid-compiler 0.1 supports different languages (including english). It works with Linux.

Downloading cid-compiler 0.1 will take several seconds if you use fast ADSL connection.

Leave a comment




(optional)

What is 7-3?




0 comments


Add to

 Del.icio.us   Digg It   Furl   YahooMyWeb   Blinklist
 

cid-compiler Version History

Product Date Added
cid-compiler 0.1 2008-05-15 22:22:56


Related Software

AudioFile::Info::MP3::ID3Lib 1.05
From category: Libraries
AudioFile::Info::MP3::ID3Lib 1.05 is libraries software developed by Dave Cross. AudioFile::Info::MP3::ID3Lib is a Perl extension to get info from MP3 files. This is a plugin for AudioFile::...
Data::TreeDumper::Renderer::GTK
From category: Libraries
Data::TreeDumper::Renderer::GTK 0.01 is libraries software developed by Khemir Nadim ibn Hamouda. Data::TreeDumper::Renderer::GTK is a Gtk2::TreeView renderer for Data::TreeDumper. SYNOPSIS\...
DateTime::Format::Epoch
From category: Libraries
DateTime::Format::Epoch 0.10 is libraries software developed by Eugene van der Pijli. DateTime::Format::Epoch is a Perl module that can convert DateTimes to/from epoch seconds. SYNOPSIS \...
XPTracker
From category: Bug-Tracking
XPTracker is a radical alternative agile planning tool....
Syncro SVN Client
From category: Version-Control
Syncro SVN Client makes easier the document and code sharing between content authors or developers....
Audio::OSS 0.0501
From category: Libraries
Audio::OSS 0.0501 is libraries software developed by David Huggins-Daines. Audio::OSS is a pure-perl interface to OSS (open sound system) audio devices. SYNOPSIS use Audio::OSS qw(:...
C++ Machine Objects
From category: Libraries
C++ Machine Objects 0.9.4 is libraries software developed by Eduard Hiti. C++ Machine Objects class library supports a subset of the UML statechart notation for implementing hierarchical state mach...
Custom Eclipse Builder
From category: Assembler-Tools
Custom Eclipse Builder 0.1 is assembler tools software developed by Alexander Bretz. Custom Eclipse Builder is a lightweight Ant-based project to build a company and personal customized Eclipse di...
DBIx Record
From category: Perl-Modules
DBIx::Record is a middle tier system for representing database records as objects....
POMStrap
From category: Assembler-Tools
POMStrap is a little opensource (BSD License) application bootstrap designed to avoid the Java library dependency headache....
Apache AntUnit 1.0 Beta 2
From category: Quality-Assurance-and-Testing
Apache AntUnit 1.0 Beta 2 is quality assurance and testing software developed by Apache Ant Development Team. AntUnit is a library of Ant tasks that was initially developed to write tests for Ant t...
core2
From category: Libraries
core2 1.0.1 is libraries software developed by Zwetan Kjukov. core2 project is a library that extends the ECMAScript built-in objects: Array, Boolean, Date, Error, Function, Number, Object, and Str...
CrissCross
From category: Libraries
CrissCross 0.5.2 is libraries software developed by Steven Noonan. CrissCross is a small cross-platform C++ library for threading, console and file I/O, CPU identification (CPUID), and sockets (TCP...
Audio::TagLib::Shell 1.42
From category: Libraries
Audio::TagLib::Shell 1.42 is libraries software developed by Dongxu Ma. Audio::TagLib::Shell is a mini shell of Audio::TagLib. SYNOPSIS $> perl -MAudio::TagLib::Shell -e shell...
Bugzilla
From category: Bug-Tracking
Bugzilla 2.23.3 is bug tracking software developed by The Mozilla Organization. Bugzilla project is server software designed to help you manage software development. Bugzilla is a \"Defect T...
 

Top Downloads

 
1. Canon PIXMA iP1200 Printer Driver
2. Canon PIXMA iP1000 Printer Driver
3. Realtek ALC/ 262/ 265/ 268/ 660/ 861/ 880/ 882/ 883/ 885/ 888 Audio
4. Genius Eye 110 Webcam Driver
5. Canon PIXMA iP1300 Printer Driver a
6. Realtek RTL8139C(L)+/RTL8139D(L)/RTL8100(L)/RTL8130/RTL8139B(L) Driver
7. Canon PIXMA iP1200 Printer Driver d
8. Canon PIXMA iP1600 Printer Driver
9. INTEX LAN Card D RTL
10. Realtek RTL8100B(L)/RTL8100C(L)/RTL8101L/RTL8139C(L) Driver XP
11. TomTom HOME
12. Biostar M6VLB Bios
13. Canon LaserShot LBP-1210 Printer Driver
14. Canon PIXMA MP210 MP Drivers
15. MSI KT3V Bios c
16. Canon i560 Printer Driver
17. Mercury KPC-6225V
18. Canon PIXMA iP1300 Printer Driver c
19. Canon i-SENSYS LBP2900 Printer Driver R
20. dmg2iso

DownloadTube Editor Reviews

 
1. 001Micron USB Drive Recovery Review
This USB drive data recovery software easily recovers the da...
2. Tag Backup & Restore
Tag Backup & Restore - a robust and efficient audio tag arch...
3. Data Export - DBF2DB2
Hxtt Data Export - DBF2DB2 is a program to import DBF (dBASE...
4. Dokmee Professional
Every company has document records, whether it is paper base...
5. Arcus Odyssey
Long time ago, an evil sorceress Castomira decided to conque...
6. Mind Chest
Mind Chest is an entertaining game in which you can test and...
7. Free Escape From Paradise Screensaver
With this free Escape From Paradise Game screensaver you wil...
8. Mind Your Card
This wonderful Card Mind Reader game will reveal the very ca...
9. MSG Viewer Pro - EML and MSG Viewer
MSGViewer Pro is a powerful yet easy to use viewer, converte...
10. Fractalius plug-in
This plug-in creates unusual, eccentric artworks in a single...

Software Reviews Full List



Recent Blog Posts

 
1. FreeSnap
Another freeware tool that rocks is the little FreeSnap. Thi...
2. Streamripper for Winamp
Streamripper is an Open Source (GPL) application that allow...
3. Mozilla did it - Guinness World Record
The Guiness Book officials admitted - Mozilla has just set t...
4. Audio tools FOR BEGINNERS – the sample rate.
Most of the audio conversion tools or the sound recorders yo...
5. 30 streams only in Winamp
This was quite a known issue in some older versions of Winam...
6. Console wars
This week's been Elite launch week on Tech & Gadgets -ÂÃ...
7. Storyline in games
I was flicking through Edge's 'get into games' suppl...
8. The new Simpsons Avatars!
With The Simpsons movie on its way out ("Spider-pig, spider-...
9. Problems with kids
Had a fascinating weekend visiting some friends and their ki...
10. Fight for the future
It’s no longer news that Software-as-a-Serv...

Last 20 Scripts

 
1. phPay
phPay is a shop and catalog system based on PHP and SQL. Fea
2. Random Numbers
Use this script to pick 16 random numbers. Lottery, for fun,
3. Image Gallery Pro
Image Gallery Pro is Image Gallery Software/ Photo Gallery S
4. WWWBoard
WWWBoard is an ASP-based discussion board system that works
5. ImageInfo
To optimize your site's load time you should always code in
6. VideoPlayer Xavi
Creating your own customized videoskin is sometimes a big pr
7. PHP file sharing
PHP Script sharing files with others (site owners are welcom
8. How to make a Dynamic Image
This is a useful way of creating images that change dependin
9. WEBO
WEBO is targetted at individuals and small to medium size or
10. Account Expiration Control
This Free Software joomla! component allows you to offer pai
11. PhotoIndex Application
PhotoIndex is a PHP application that takes a large number of
12. Contact Box v2
Not use db or anything it is useless contact for your websit
13. Gchats Tiny Mp3 Player
Gchats Tiny Mp3 Player 2.0 is the best choice for having mul
14. Ceilidh
Ceilidh is a platform-independent engine for collaboration a
15. Jevonweb Guestbook
This is a very easy to use guestbook program. It includes a
16. Andrey's Applets Set
Cool applets set with 9 different applets. Fire simulation
17. RanCon
"RanCon" is a very basic random content insertion script.
18. Better Whois Script
A Perl/CGI script that uses HTML templates so you can totall
19. Demis Web Map Server
The Demis Map Server is a professional web mapping component
20. Bingoware
The software allows the user to generate a given number of B