imuli / anic Goto Github PK
View Code? Open in Web Editor NEWCompiler for the dead language ANI
Home Page: https://code.google.com/p/anic
Compiler for the dead language ANI
Home Page: https://code.google.com/p/anic
Compiling anic on my computer results in the following errors. I have attached
a patch to fix these errors.
src/types.cpp: In member function ‘TypeStatus::operator unsigned int()
const’:
src/types.cpp:1048: error: cast from ‘Type*’ to ‘unsigned int’ loses
precision
src/semmer.cpp: In function ‘void buildSt(Tree*, SymbolTable*,
std::vector<SymbolTable*, std::allocator<SymbolTable*> >&)’:
src/semmer.cpp:244: error: cast from ‘Tree*’ to ‘unsigned int’ loses
precision
src/semmer.cpp:256: error: cast from ‘Tree*’ to ‘unsigned int’ loses
precision
src/semmer.cpp:277: error: cast from ‘Tree*’ to ‘unsigned int’ loses
precision
The problem is that, on my machine, unsigned int is defined as having a 32-bit
size, while pointers have a 64-bit size. There is a typedef called uintptr_t in
stdint.h which is always the same size as a pointer on the target computer. My
patch merely changes the casts from unsigned int to uintptr_t.
Original issue reported on code.google.com by [email protected]
on 13 Jun 2010 at 5:46
Attachments:
- cquotes and squotes
- // comments and /* comments */
Original issue reported on code.google.com by [email protected]
on 23 Nov 2009 at 6:43
Type flow analysis is currently broken. But it's being worked on as we speak.
Original issue reported on code.google.com by [email protected]
on 12 Jan 2010 at 5:58
Please change it with default.
It scare me ... :)
Take a look at Go logo.
Original issue reported on code.google.com by [email protected]
on 12 Jan 2010 at 5:48
What steps will reproduce the problem?
1. hg clone https://anic.googlecode.com/hg/ anic
2. make
3. ./anic -h
What is the expected output? What do you see instead?
yuv@yuvpad2:~/anic$ ./anic
anic -- ANI Compiler v.[0.74.1.13634339] (c) 2010 Kajetan Adrian Biedrzycki
usage: anic sourceFile... [-] [-o outputFile] [-p optimizationLevel]
[-v] [-s] [-c] [-t tabWidth] [-e] [-h]
For more information, type 'anic -h'.
home page: http://anic.googlecode.com/
yuv@yuvpad2:~/anic$ ./anic -h
ERROR: cannot display manual page: executing manual driver failed.
ERROR: fatal error code 1 -- stop.
What version of the product are you using? On what operating system?
Please provide any additional information below.
yuv@yuvpad2:~/anic$ uname -a
Linux yuvpad2 3.2.0-29-generic-pae #46-Ubuntu SMP Fri Jul 27 17:25:43 UTC 2012
i686 i686 i386 GNU/Linux
yuv@yuvpad2:~/anic$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04.1 LTS
Release: 12.04
Codename: precise
Original issue reported on code.google.com by [email protected]
on 15 Aug 2012 at 7:58
http://www.reddit.com/r/programming/comments/anp8l/anic_faster_than_c_safer_than
_java_si
mpler_than_sh/
In summary the following potentially useful observations were made:
The use of [[ ]] around type declarations is excessive and problematic for
eastern european
keyboards.
I would nominate the use of ( and )
If code "a b" causes a to pipe to b, why do we need a -> operator in a block?
I would nominate that -> is redundant, and left inherently pipes into right.
If ANI is left to right, why do we allow <- operators, which are intrinsically
right to left, in an
inline position?
I would nominate removing this operator, as it allows and encourages writing
code both left to
right and right to left, which is remarkably confusing to read. As a result,
the sample code would
read something akin to "10 std.gen ? { " This change becomes more important
when more
complex examples are provided.
Also, the Project Home page makes a bunch of claims that aren't backed by any
benchmarks. It's
better to have benchmarks and not claim anything.
Best Regards,
Dan
Original issue reported on code.google.com by [email protected]
on 25 Jan 2010 at 5:12
What steps will reproduce the problem?
1. make
What is the expected output? What do you see instead?
compiled app for mac os x
What version of the product are you using? On what operating system?
Mountain Lion 10.8
Please provide any additional information below.
make all
anic ANI Compiler Makefile
Cleaning build output...
Building version controller...
Building lexer structure generator...
Generating lexer structures...
Compiling lexer structure object...
Building parser structure generator...
Building parser table generator...
Constructing parser table...
Generating parser structures...
Stamping version...
./bld/getChecksumProgram.sh: line 6: type: sha256sum: not found
Version stamp is 0.74.2.18062183
Building main executable...
src/types.cpp: In member function ‘TypeStatus::operator uintptr_t() const’:
src/types.cpp:1514: error: cast from ‘Type*’ to ‘unsigned int’ loses
precision
make: *** [anic] Error 1
Original issue reported on code.google.com by [email protected]
on 14 Aug 2012 at 8:50
Quoting Michael Kohl:
I tried to build anic on Mac OS X Snow Leopard because I wanted to
bundle it up for Homebrew (http://github.com/mxcl/homebrew), but I get
the following build error:
Building version controller...
bld/version.c: In function ‘main’:
bld/version.c:13: warning: format ‘%d’ expects type ‘int’, but
argument 4 has type ‘long unsigned int’
bld/version.c:24: warning: format ‘%d’ expects type ‘int’, but
argument 4 has type ‘long unsigned int’
Building lexer structure generator...
bld/lexerStructGen.cpp: In function ‘int main()’:
bld/lexerStructGen.cpp:93: warning: format ‘%d’ expects type ‘int’,
but argument 3 has type ‘size_t’
bld/lexerStructGen.cpp:98: warning: format ‘%d’ expects type ‘int’,
but argument 3 has type ‘size_t’
Generating lexer structures...
Compiling lexer structure object...
Building parser structure generator...
Building parser table generator...
y.c: In function ‘print_size’:
y.c:2614: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
y.c:2615: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
y.c:2616: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
y.c:2617: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
y.c:2618: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
y.c:2619: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
y.c:2620: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
y.c:2621: warning: format ‘%d’ expects type ‘int’, but argument 2 has
type ‘long unsigned int’
Constructing parser table...
Generating parser structures...
Compiling parser structure object...
Building main executable...
ld: library not found for -lcrt0.o
collect2: ld returned 1 exit status
make: *** ["./anic.exe"] Error 1
Original issue reported on code.google.com by [email protected]
on 11 Jan 2010 at 9:00
I checked out the code like this: hg clone https://anic.googlecode.com/hg/
Then i run make && make test && make install.
Everything went OK.
But when i try to compile tst/test.ani (like this: anic test.ani -v) i get
this:
...
|||-getChopsticks
||||-{}
|||-returnChopsticks
||||-{}
|||||-cs1
|||||-cs2
|||-eat
||||-{}
|||||-cs1
|||||-cs2
|||-loopback
|-numPhils
|-philStream
|-{}
||-{}
anic: Tracing type flow....
anic: Semantics successfully mapped.
The file a.out is created, but is totally empty!
Original issue reported on code.google.com by [email protected]
on 19 Feb 2010 at 2:30
Most current programs/libraries are written using C/C++ (and a few in ASM)...If
a method/way is
provided by which you can call C/C++ functions or write inline C/C++ functions
it would be really
helpful. This would help in both quick testing and quicker adoption.
[PS: I haven't read the documentation/current features. So please ignore if
this feature is already
provided]
Original issue reported on code.google.com by muthusuba
on 12 Jan 2010 at 3:41
What steps will reproduce the problem?
1. Clone the HG repository
2. Make
What is the expected output? What do you see instead?
Expected that the compiler can be built. I get an error instead
What version of the product are you using? On what operating system?
Running Ubuntu Maverick with GCC --version :
cc (Ubuntu/Linaro 4.4.4-14ubuntu5) 4.4.5
Please provide any additional information below.
$ hg clone https://anic.googlecode.com/hg/ anic
requesting all changes
adding changesets
adding manifests
adding file changes
added 723 changesets with 1862 changes to 81 files (+1 heads)
updating to branch default
60 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd anic/
$ make
anic ANI Compiler Makefile
Building version controller...
Building lexer structure generator...
Generating lexer structures...
Compiling lexer structure object...
Building parser structure generator...
Building parser table generator...
Constructing parser table...
Generating parser structures...
Stamping version...
Version stamp is 0.74.1.79894644
Building main executable...
src/types.cpp: In member function ‘TypeStatus::operator uintptr_t() const’:
src/types.cpp:1514: error: cast from ‘Type*’ to ‘unsigned int’ loses
precision
src/genner.cpp: In member function ‘std::string WordTree64::toString(unsigned
int) const’:
src/genner.cpp:220: warning: format ‘%08llX’ expects type ‘long long
unsigned int’, but argument 3 has type ‘long unsigned int’
make: *** [anic] Erreur 1
Original issue reported on code.google.com by [email protected]
on 13 Nov 2010 at 6:18
What steps will reproduce the problem?
1. clone the repository
2. enter the directory and run make
What is the expected output? What do you see instead?
anic ANI Compiler Makefile
Building version controller...
Building lexer structure generator...
Generating lexer structures...
Compiling lexer structure object...
Building parser structure generator...
Building parser table generator...
Constructing parser table...
Generating parser structures...
Stamping version...
./bld/getChecksumProgram.sh: line 6: type: sha256sum: not found
Version stamp is 0.74.1.15809891
Building main executable...
src/types.cpp: In member function ‘TypeStatus::operator uintptr_t() const’:
src/types.cpp:1514: error: cast from ‘Type*’ to ‘unsigned int’ loses
precision
make: *** [anic] Error 1
What version of the product are you using? On what operating system?
OS X Leopard 10.6.4
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 14 Nov 2010 at 5:52
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.