I wanted to learn more about programming artificial intelligence. Looking up information for this naturally lead me to the programming language lisp. I downloaded and installed clisp, to begin learning, but I really didn't like the command line method of developing lisp. So I wrote a frontend IDE, inspired by Dr. Scheme. Right now it depends on gtkmm-2.0, the cstdlib, and obviously clisp itself. (no more libpcre!) It's still in development, but it mostly works -- now I'm just testing and adding features.
The REPL section of gclisp (bottom half) is pretty much complete as of .60, so any comments or bugs about that area would be greatly appreciated. Send them here. The text editor (top half) isn't finished, so don't bother telling me anything about that just yet.
I would also like to thank the fine developers of Clisp, the
program that inspired my project to begin. Bruno Haible and company have
all a great favor. Pop over and see them at Clisp's home.
Some download links:
Ebuild (all versions)
I've added an RPM to the 0.82 release. This should be much better than the one posted to the support request, and quite possibly might work. It appears I don't in fact need a RedHat machine, just a little help and guidance from
gaim RPM and some tools from Gentoo's lovely portage tree. I would love to hear feedback on how this venture
into Redhat Package Management is going. Feel free to email!
Due to Songel Lee's support request I hacked together a source
for GClisp. Now, I don't have RedHat. I don't have any RedHat derivations. I really have no clue if this package works at all. The only thing I do know is that it could be a lot better. If anyone thinks they can
write a better package than me I would love to have the help. Just drop me an email . Throwing 'gclisp' in the subject line would be swell. I hope someone can take
care of this, you get to be a developer on sourceforge! How exciting...well, I find it exciting.
Phew! Found the bug and fixed it. New release is 0.82-beta.
Uh-oh! Due to an extreme oversight during testing, .80 got released with a pretty big problem. I guess it will work fine
unless you hit Execute when you aren't editing a file, but if nothing is in the top pane GClisp blanks out. Sorry about
that, I'll try to fix it as soon as possible and re-release.
Release .80-beta is now available for download. This release fixes a bug that people might have noticed. If you loaded a lisp file that called (quit), (exit), or (bye)
at any time, GClisp couldn't handle that. From release .80-beta and on, this problem has been fixed. If a function attempts to (quit), a message is displayed in the REPL
telling you that the function tried to quit, but the instance of Clisp remains uneffected.
Ok, I found out recently that some people may have issues when running
./configure due to symlinks pointing to an incorrect automake version.
The most recent release of GClisp has generic automake symlinks, and
releases will have the executable itself instead of a symlink. (Don't
worry, they're tiny!)
I'm also getting closer to release 1.0, though it's slow going due to
college. I don't recommend taking linear algebra if you don't have to.
Parentheses balancing now works, so GClisp only sends off the command if
you have the same number of left parentheses as right parentheses. Next
up is matching them.
Arrrgh! I hate hard drives! I swear, if another (3 so far) Western Digital Special Edition 120 GB breaks on me, I'm going to a diskless install.
Oh well, I did get a very small preferences dialog implemented. Currently there's only two options in it, but now I'm on the lookout for ways
to customize GClisp, and more choices should appear. Next on the list is the last major hurdle before 1.0, if anyone's actually used GClisp
they might have an idea of what I'm being unneccesarily vague about.
Anyone who's trying recently to emerge gclisp using the ebuild I provided or, in fact, done something as innocent as an 'emerge world --deep' probably noticed something was wrong.
They moved gtkmm to dev-cpp, I fixed the ebuild and you can either change that line yourself (maybe you're feeling adventurous), or simply redownload the file. Sorry for any inconvenience.
These are some screenshots. The top pane is a text editor. The bottom pane is a running clisp repl. By pressing execute, the user can start a repl with the code they're editing loaded upon initialization.