Post by John Ohno on Dec 20, 2004 13:59:21 GMT -5
This FAQ will be updated when questions pop up.
Q: What is Erc?
A: Erc is the first link-oriented programming language.
Q: What is link-orientation?
A: Link-orientation is a form of programming in which the focus is on connections between ideas, as opposed to actions (function-orientation), objects (object-orientation), or the manipulation of sets of values (list-orientation).
Q: Why should I care?
A: Link-oriented languages are uniquely suited for AI programming because they work in a similar way to the brain, like coding the contents and workings of a neural net. They are applicable to data sorting, knowledge/logical parsing, and self-diagnosing/fixing programs as well, because in addition to their link-based structure, they also have the ability to rewrite portions of themselves.
Q: What is Majic?
A: Majic is an interpreter for Erc.
Q: What is Majic written in?
A: Majic is written in java.
Q: What is Majicc?
A: Majicc is the Majic Compiler for Erc, which uses the Majic libraries.
Q: What is Majicc written in?
A: Majicc is written in gcc-style C++.
Q: How do I get Majic/Majicc?
A: Go to the download page on the majic/erc sourceforge site and download the newest versions.
Q: Why won't make work on Majic 0.01preX?
A: The makefile was documented in the first version, but wasn't actually added until version 0.01pre2. However, even then the makefile will not work unless you are using: unix, with a version of make which supports wildcards, with your javac located in /usr/java/j2sdk*/bin . You may edit it so that it will work.
Q: Why won't Majicc generate an exe/elf/jar/class/etc ?
A: Majicc generates a java sourcefile as an executable self-interpreting erc program. This needs to be compiled by a java compiler to make an executable.
Q: Why won't my Majicc-generated java file compile?
A: It may be syntactically incorrect for your java compiler, or the Majic libraries may be syntactically incorrect for your java compiler (such as gcj). Also, you may not have the Majic library files in the same directory as your new source file.
Q: Where can I learn to code in Erc?
A: You can learn from the Erc language specifications, or learn from an Erc programmer.
Q: How many people know Erc?
A: As of right now (12/20/2004), not many. It is unknown how many people have read the documentation and learned it, however the only activity on the board, mailing lists, or other places have been by the members of the Ercon.
Q: Why does my Majic version 0.01pre2-patchX interpreter return #e for everything I do?
A: This is the Nastybug. We are having trouble with inappropriate returns of #e (error) upon interpretation of code, a problem we believe stems from a logical error somewhere in the code. We should have this fixed by early January 2005.
Q: What is the "Nastybug"?
A: See above.
Q: What is the "Revenge of the Nastybug"?
A: We have tried a number of fixes to the Nastybug, all (as of 12/20/2004) of which have failed. We are currently initiating the "Crusade against the Nastybug", a distributed effort by all the Ercon members to fix the Nastybug before the end of holiday vacation, in early January 2005.
Q: What is the "Ercon"?
A: The Ercon is a group of developers who have pledged to help improve upon, promote, and develop the Erc language and every subset of it. In other words, they must help with all the interpreter/compiler versions they are asked to help with, and they are the body which approves all revisions to the Erc language.
Q: Are there any easy-to-understand tutorials on Erc?
A: As of (12/20/2004), no. The easiest way to learn Erc is to pick up the newest revision and read it a few times, then code something. If you would like to write a tutorial, I would like to hear it. You can post it to the majic-lang-erc mailing list, and I will review it for putting it on the site.
Q: What is the newest Erc specification revision?
A: Revision 1
Please post any questions or additions.
~John Ohno
Q: What is Erc?
A: Erc is the first link-oriented programming language.
Q: What is link-orientation?
A: Link-orientation is a form of programming in which the focus is on connections between ideas, as opposed to actions (function-orientation), objects (object-orientation), or the manipulation of sets of values (list-orientation).
Q: Why should I care?
A: Link-oriented languages are uniquely suited for AI programming because they work in a similar way to the brain, like coding the contents and workings of a neural net. They are applicable to data sorting, knowledge/logical parsing, and self-diagnosing/fixing programs as well, because in addition to their link-based structure, they also have the ability to rewrite portions of themselves.
Q: What is Majic?
A: Majic is an interpreter for Erc.
Q: What is Majic written in?
A: Majic is written in java.
Q: What is Majicc?
A: Majicc is the Majic Compiler for Erc, which uses the Majic libraries.
Q: What is Majicc written in?
A: Majicc is written in gcc-style C++.
Q: How do I get Majic/Majicc?
A: Go to the download page on the majic/erc sourceforge site and download the newest versions.
Q: Why won't make work on Majic 0.01preX?
A: The makefile was documented in the first version, but wasn't actually added until version 0.01pre2. However, even then the makefile will not work unless you are using: unix, with a version of make which supports wildcards, with your javac located in /usr/java/j2sdk*/bin . You may edit it so that it will work.
Q: Why won't Majicc generate an exe/elf/jar/class/etc ?
A: Majicc generates a java sourcefile as an executable self-interpreting erc program. This needs to be compiled by a java compiler to make an executable.
Q: Why won't my Majicc-generated java file compile?
A: It may be syntactically incorrect for your java compiler, or the Majic libraries may be syntactically incorrect for your java compiler (such as gcj). Also, you may not have the Majic library files in the same directory as your new source file.
Q: Where can I learn to code in Erc?
A: You can learn from the Erc language specifications, or learn from an Erc programmer.
Q: How many people know Erc?
A: As of right now (12/20/2004), not many. It is unknown how many people have read the documentation and learned it, however the only activity on the board, mailing lists, or other places have been by the members of the Ercon.
Q: Why does my Majic version 0.01pre2-patchX interpreter return #e for everything I do?
A: This is the Nastybug. We are having trouble with inappropriate returns of #e (error) upon interpretation of code, a problem we believe stems from a logical error somewhere in the code. We should have this fixed by early January 2005.
Q: What is the "Nastybug"?
A: See above.
Q: What is the "Revenge of the Nastybug"?
A: We have tried a number of fixes to the Nastybug, all (as of 12/20/2004) of which have failed. We are currently initiating the "Crusade against the Nastybug", a distributed effort by all the Ercon members to fix the Nastybug before the end of holiday vacation, in early January 2005.
Q: What is the "Ercon"?
A: The Ercon is a group of developers who have pledged to help improve upon, promote, and develop the Erc language and every subset of it. In other words, they must help with all the interpreter/compiler versions they are asked to help with, and they are the body which approves all revisions to the Erc language.
Q: Are there any easy-to-understand tutorials on Erc?
A: As of (12/20/2004), no. The easiest way to learn Erc is to pick up the newest revision and read it a few times, then code something. If you would like to write a tutorial, I would like to hear it. You can post it to the majic-lang-erc mailing list, and I will review it for putting it on the site.
Q: What is the newest Erc specification revision?
A: Revision 1
Please post any questions or additions.
~John Ohno