eudoxia0 / corvus Goto Github PK
View Code? Open in Web Editor NEWLow-level Lisp for LLVM
Low-level Lisp for LLVM
This probably has to do with LLVM's parser. Anyways, structures don't persist for more than one iteration of the REPL. Structure names, for some reason, get named %<structure name>.<natural number>
. Use llc with the C++ backend to view the LLVM API code required to generate structures and implement that.
Which platforms is this expected to compile/run on? I get the following when trying to compile on OSX:
--- Downloads/Hylas-Lisp ‹master› » make
# Compile the helper Hylas<->LLVM interface
`(which clang++; which g++) | head -n 1` src/jit.cpp -o libhylas.o -c -fPIC -Wall -Wextra -Werror -std=c++0x - D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS
src/jit.cpp:5:10: fatal error: 'thread' file not found
#include <thread>
^
1 error generated.
make: *** [backend] Error 1
from README.md
:
This project is being rewritten. Please check back in a few megaseconds.
But, it has been almost 50 megaseconds since the last commit. Bug!
Hello I got the following message when I tried to build Hylas. My system is Ubuntu 13.04 64bit and I built my own LLVM 3.3 binaries.
(which clang++; which g++) | head -n 1
src/jit.cpp -o libhylas.o -c -fPIC -Wall -Wextra -Werror -std=c++0x -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS
src/jit.cpp:87:20: error: reference to 'error_code' is ambiguous
return error_code("ERROR: Couldn't find program entry point.");
^
src/jit.cpp:48:11: note: candidate found by name lookup is 'error_code'
Code* error_code(const char* desc) {
^
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate found by
name lookup is 'llvm::error_code'
class error_code {
^
src/jit.cpp:87:20: error: no matching conversion for functional-style cast from
'const char [42]' to 'llvm::error_code'
return error_code("ERROR: Couldn't find program entry point.");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate
constructor (the implicit copy constructor) not viable: no known
conversion from 'const char [42]' to 'const llvm::error_code' for 1st
argument
class error_code {
^
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate
constructor (the implicit move constructor) not viable: no known
conversion from 'const char [42]' to 'llvm::error_code' for 1st argument
class error_code {
^
/usr/local/include/llvm/Support/system_error.h:740:3: note: candidate template
ignored: substitution failure [with E = const char _]: no type named
'type' in 'llvm::enable_if_c<false, void>'
error_code(E _e, typename enable_if_c<
^
/usr/local/include/llvm/Support/system_error.h:730:3: note: candidate
constructor not viable: requires 0 arguments, but 1 was provided
error_code() : val(0), cat(&system_category()) {}
^
/usr/local/include/llvm/Support/system_error.h:736:3: note: candidate
constructor not viable: requires 2 arguments, but 1 was provided
error_code(int _val, const error_category& cat)
^
src/jit.cpp:91:20: error: reference to 'error_code' is ambiguous
return error_code(errors.getMessage().data());
^
src/jit.cpp:48:11: note: candidate found by name lookup is 'error_code'
Code error_code(const char* desc) {
^
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate found by
name lookup is 'llvm::error_code'
class error_code {
^
src/jit.cpp:91:20: error: no matching conversion for functional-style cast from
'const char _' to 'llvm::error_code'
return error_code(errors.getMessage().data());
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate
constructor (the implicit copy constructor) not viable: no known
conversion from 'const char *' to 'const llvm::error_code' for 1st
argument
class error_code {
^
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate
constructor (the implicit move constructor) not viable: no known
conversion from 'const char *' to 'llvm::error_code' for 1st argument
class error_code {
^
/usr/local/include/llvm/Support/system_error.h:740:3: note: candidate template
ignored: substitution failure [with E = const char *]: no type named
'type' in 'llvm::enable_if_c<false, void>'
error_code(E _e, typename enable_if_c<
^
/usr/local/include/llvm/Support/system_error.h:730:3: note: candidate
constructor not viable: requires 0 arguments, but 1 was provided
error_code() : val(0), cat(&system_category()) {}
^
/usr/local/include/llvm/Support/system_error.h:736:3: note: candidate
constructor not viable: requires 2 arguments, but 1 was provided
error_code(int _val, const error_category& cat)
^
src/jit.cpp:95:20: error: reference to 'error_code' is ambiguous
return error_code(parser_errors.data());
^
src/jit.cpp:48:11: note: candidate found by name lookup is 'error_code'
Code error_code(const char* desc) {
^
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate found by
name lookup is 'llvm::error_code'
class error_code {
^
src/jit.cpp:95:20: error: no matching conversion for functional-style cast from
'const char _' to 'llvm::error_code'
return error_code(parser_errors.data());
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate
constructor (the implicit copy constructor) not viable: no known
conversion from 'const char *' to 'const llvm::error_code' for 1st
argument
class error_code {
^
/usr/local/include/llvm/Support/system_error.h:726:7: note: candidate
constructor (the implicit move constructor) not viable: no known
conversion from 'const char *' to 'llvm::error_code' for 1st argument
class error_code {
^
/usr/local/include/llvm/Support/system_error.h:740:3: note: candidate template
ignored: substitution failure [with E = const char *]: no type named
'type' in 'llvm::enable_if_c<false, void>'
error_code(E _e, typename enable_if_c<
^
/usr/local/include/llvm/Support/system_error.h:730:3: note: candidate
constructor not viable: requires 0 arguments, but 1 was provided
error_code() : val(0), cat(&system_category()) {}
^
/usr/local/include/llvm/Support/system_error.h:736:3: note: candidate
constructor not viable: requires 2 arguments, but 1 was provided
error_code(int _val, const error_category& cat)
^
6 errors generated.
make: ** [backend] Error 1
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.