I saw Slava talk at the Boston Lisp meeting and was inspired to write some Factor this week; I ended up making a simple TCP proxy server that glued two servers expecting different interfaces. Most of the time things just worked and it was a nice development experience, but I did encounter a few problems around deployment and running:
- I twice triggered a fatal "critical_error: Monotonic counter decreased: 0" on two different machines. I unfortunately didn't grab any debugging information; once it happened while the threaded-server was running in the application, and another time it happened during the deploy. - Both time-server and ftp-server have a MAIN: that starts the server, but no provision to keep it running; a deployed time-server just starts and exits. I used a while loop with sleep to keep the server running; is that best way to do it? The examples should be updated. - The deployed application didn't use the GUI, but the executable was linked to graphics libraries. Not all of them were present on the server. I ended up rebuilding Factor with NO_UI and using one build for local development and one for deployment; it would be nice if the build system made both executables and chose at deploy time. - It's possible to get to the end of a deploy before realizing there's nothing to deploy. If I run: factor --script -e='USE: tools.deploy "time-server" deploy USE: system 0 exit' Factor will do a bunch of compiling before determining that there's no deploy.factor for time-server. - There are still some machines around the office running very old versions of Fedora without inotify support. Building the vm on these machines fails because in os_linux.cpp, when SYS_inotify_init is undefined, the code calls a variable "parent" which does not exist. I just commented out those lines and had no further difficulties; I didn't need any features dependent on inotify. I poked around a bit but didn't see an easy way to get at the vm object in use to fix the issue. ------------------------------------------------------------------------------ The Palm PDK Hot Apps Program offers developers who use the Plug-In Development Kit to bring their C/C++ apps to Palm for a share of $1 Million in cash or HP Products. Visit us here for more details: http://p.sf.net/sfu/dev2dev-palm _______________________________________________ Factor-talk mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/factor-talk
