Skip to content

Commit

Permalink
Initial commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
shakna-israel committed Oct 20, 2018
0 parents commit 5a1324b
Show file tree
Hide file tree
Showing 12 changed files with 623 additions and 0 deletions.
13 changes: 13 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
Copyright 2018 James Milne,

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. The licensee acknowledges that this software is utterly insane in it's nature, and not fit for any purpose.

2. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

3. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

4. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

***THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.***
70 changes: 70 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# CNoEvil - A Language Extension for C

---

This is a pet project of mine, abusing the hell out of the C pre-processor, and other C language features, to create a language that is still technically C, but looks and behaves differently, whilst remaining fully compatible with C.

It takes a whole lot of bad ideas and mashes them into an abhorrent monstrosity.

```
#define EVIL_IO
#include "evil.h"
Main then
displayln("Hello, World!");
end
```

---

## Usage

CNoEvil is contained into a single C header file, [evil.h](evil.h). Drop that file somewhere in your include path.

Define which modules you want to use, or not use, and then include it.

```
#define EVIL_IO
#define EVIL_NO_CONSTANT
#include "evil.h"
Main then
displayln("It works!");
end
```

For the full usage, compile and run:

```
#define EVIL_HELP
#include "evil.h"
Main then
evil_manual();
end
```

For individual help, compile and run:

```
#define EVIL_HELP
#include "evil.h"
Main then
evil_explain("constant");
end
```

Where the string is the name of what you wish to look up.

If that still fails you, open an [Issue on GitHub](https://github.com/shakna-israel/cnoevil/issues), and I'll try and help.

---

## License

... You actually want to use this?

Really?

Okay... See [LICENSE.md](LICENSE.md).
Loading

0 comments on commit 5a1324b

Please sign in to comment.