Krishna Srinivasan wrote: > Very cool idea (I have always personally wanted > to do many of what felix does, compile python > to c, python to ocaml, adding type inference > to dynamic languages...etc) and when I saw this > project on LtU, thought I will give it a try.
Great! We love new folks. Always tends to find bugs and add new features :) > 0. Why are there two sites ? > One the sf.net site and the other > the felix-lang.org site ? > I think the sf site pointed me to 1.1.1. > But the second one said, 1.1.3 is now ready. > (the former said 1.1.3 is beta or something, I think). So the sourceforge site is pretty old and not well maintained. I wrote the felix-lang.org site so it's a much nicer front end to draw in people. However, it's not *yet* the main felix website. In order to get everything well integrated between the website and mailing lists, we have to migrate the mailing lists to use google's mailing lists. I'm still waiting for skaller to give me approval for that :) I'd recommend that if you're going to use a version of felix that you use the subversion one. If you're using a unix-based system, here's how I'd recommend you do things: > mkdir felix && cd felix > svn co https://felix.svn.sourceforge.net/svnroot/felix/felix/trunk felix.svn > mkdir build && cd build > ../felix.svn/autogen.sh This separates the felix.svn directory from the build directory so everything is nice and clean. You can then run felix like this: > path/to/build/bin/flx --test=path/to/build ... I typically create a file in the build directory called flx that wraps this like this: path/to/build/flx: #!/bin/sh `dirname $0`/bin/flx --test=`dirname $0` $* Whic you can then just build felix programs like this: > flx foo.flx (i really need to add this to the wiki...) > 1. Installation > > 1.1.1 - make was ok, but 'make install' FAILED. > So I was not able to run ./bin/flx as well. 1.1.1 is really old, which makes sense why you'd have trouble installing it :) > 1.1.3_rc4 - installed perfectly fine (on ppc mac osx 10.4.10). > [I already had ocaml, python latest versions] > > ./configure took about 2 minutes and > make took about 45 minutes. > > 1a. Why is there a separate 'make doc' and why > is it not part of 'make' ? [anyways, I promptly > forgot to do that and now don't want to mess up > anything before I get more comfortable - so > am living without docs]. Our makefile is really just a wrapper for the real felix build system, which is called "mk". So as a consequence it doesn't have everything exposed due to it not getting as much attention. To build it, just run this: > path/to/build/mk doc However, it can take a bit of time, so it's not done by default. We also have the docs online, found here: http://felix.sourceforge.net/doc/en_flx_doc_0001.html Which are updated to 1.1.3. > 2. Hello World > Hello World example worked just fine. > Although I got confused by > include <flx.flxh> in one place and > include <std.flx> in another doc. > [Again mainly due to two different web sites > and document/example pointers] Yeah, I'm sorry about that. It's a little confusing the whole import/include and flx.flxh/std.flx. However, we're working to fix up those problems to make things a little more understandable. Generally, you want to ignore all those other options and just stick with: #import <flx.flxh> It gets you the standard interface with macros and everything. "include" disables macros, and that can have odd consequences. > PS - I have this habit of calling my files > 1hello.x 2hello.x....when I try examples with > incremental compelxity (so I can type the number > and hit tab). But this failed with a weird cpp > error ....guess, I cannot name files that does > not begin with a 'letter'. :) Oh thats interesting! I have no idea what will happen if you do that :) I'll have to check that out. I also don't know what felix thinks of files named ".x". We use ".flx" in all our tests, but I'm not sure if thats mandatory. In the meantime, I'd suggest using hello1.flx, hello2.flx and etc. > > 3. Right now, I am looking at the docs : > http://felix.sourceforge.net/doc/tutorial/introduction/en_flx_tutorial_top.html > > And I cannot find how to open, read, write files. > Can someone please point me to that ? Sure. Thats in Text_file::fopen_input / Text_file::fopen_output. Check out lib/std.flx, you can find a bunch of semi-documented routines that are hopefully descriptive enough to get you around. (skaller, any reason why we don't just support the fopen protocol? Like how do we expose file appending and etc? Or, we could always go with wrapping stl's io routines?) > 4. The unit tests examples are awesome - they give > me more clear view of how to do various things > with the lang. :) > > Anyways, I have a long way to go with the felix, > but I am liking what I am seeing. Glad to hear it. Felix changes *a lot*, and so the next release could change dramatically from the last. So, if you have any complaints, please let us know! -e ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language