You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
From: <aku...@sh...> - 2004-08-20 02:34:29
|
11'th Annual Tcl/Tk Conference October 11 - 15, 2004 New Orleans, Louisiana, USA Email Contact tc...@tc... We are pleased to announce the 11'th Annual Tcl/Tk conference (Tcl'2004), sponsored by Noumena Corporation, in cooperation with ActiveState and ExpoTech. Come to New Orleans to: * Learn about the power of Tcl/Tk. * Present exciting new work involving Tcl/Tk. * See the latest developments in Tcl/Tk. * Meet Tcl/Tk researchers and users from academia, government and industry. * Plan for future Tcl/Tk related developments. The conference program will include paper presentations, tutorials, Birds of a Feather (BOF) sessions and invited key-note talks. Registration Online registration is ready now. <http://www.tcl.tk/community/tcl2004/reg.html> Tutorials Come learn about Tcl from the experts. This year's Tcl/Tk Conference includes one of the best sets of Tutorials ever offered including tutorials on Jacl, TclHttpd, Starkit, Advanced GUI construction, and the API. <http://www.tcl.tk/community/tcl2004/tut2004.html> Schedule More details will be added to the schedule as they become available. <http://www.tcl.tk/community/tcl2004/schedule.html> Those attending the conference will be interested in the conference info page. <http://www.tcl.tk/community/tcl2004/info.html> To keep in touch with news regarding the conference and Tcl events in general, subscribe to the tcl-announce list. <http://listserv.activestate.com/mailman/mysubs?show=announce> Other Forms of Participation For those who are not presenting a paper at the conference, but would like to present their work in some form, we do provide several other forms of participation. Slots for Works-in-Progress (WIP) presentations and Birds-of-a-Feather sessions (BOFs) are available on a first-come, first-served basis by sending email to tc...@tc.... Some WIP and BOF time slots will be held open for on-site reservation, so we encourage all attendees with interesting work in progress to consider presenting that work at the conference. Conference Committee Gerald Lester HMS Software General Chair Andreas Kupries ActiveState Corp Clif Flynt Noumena Corp Website Admin Jeffrey Hobbs ActiveState Corp Kevin Kenny GE Global Research Center Ken Jones Avia Training Mac Cody Raytheon Company Kim Richerts Steve Landers Digital Smarties Sheila Miguez Motorola Larry Virden Tcl FAQ Maintainer Contact Information tc...@tc... |
From: <ben...@id...> - 2004-05-25 07:45:41
|
Dear Open Source developer I am doing a research project on "Fun and Software Development" in which I kindly invite you to participate. You will find the online survey under http://fasd.ethz.ch/qsf/. The questionnaire consists of 53 questions and you will need about 15 minutes to complete it. With the FASD project (Fun and Software Development) we want to define the motivational significance of fun when software developers decide to engage in Open Source projects. What is special about our research project is that a similar survey is planned with software developers in commercial firms. This procedure allows the immediate comparison between the involved individuals and the conditions of production of these two development models. Thus we hope to obtain substantial new insights to the phenomenon of Open Source Development. With many thanks for your participation, Benno Luthiger PS: The results of the survey will be published under http://www.isu.unizh.ch/fuehrung/blprojects/FASD/. We have set up the mailing list fa...@we... for this study. Please see http://fasd.ethz.ch/qsf/mailinglist_en.html for registration to this mailing list. _______________________________________________________________________ Benno Luthiger Swiss Federal Institute of Technology Zurich 8092 Zurich Mail: benno.luthiger(at)id.ethz.ch _______________________________________________________________________ |
From: Leon R. v. R. <le...@pl...> - 2003-08-28 00:44:40
|
Hi all, I had some trouble making e4graph-java work on my Linux box. It has jdk-1.4.2, and all the recommended versions of metakit and expat. The main problem was that the class of my test program would not be loaded at all. The system stopped at: Exception in thread "main" java.lang.NoSuchMethodError: <init> [Loaded java.lang.StackTraceElement from /usr/java/j2sdk1.4.2_01/jre/lib/rt.jar] at com.e4graph.Storage.initNativeIDs(Native Method) at com.e4graph.Storage.<clinit>(Storage.java:40) at E4Test.<init>(E4Test.java:11) at E4Test.main(E4Test.java:17) I changed some stuff to make it work. 1- The method com.e4graph.Storage.initNativeIDs contained some constructors that were handled like static functions. Constructors are never static of course. 2- There were some fields that were not present in the Java file. I commented these out. 3- Added a global ref to the lock object. 4- Then I got stuck here: FATAL ERROR in native method: Bad global or local ref passed to JNI at com.e4graph.Storage.getRoot1(Native Method) at com.e4graph.Storage.getRoot(Storage.java:377) at E4Test.<init>(E4Test.java:9) at E4Test.main(E4Test.java:15) gdb gave me this: (gdb) bt #0 0x400708c1 in kill () from /lib/libc.so.6 #1 0x4003209b in raise () at eval.c:41 #2 0x40071e42 in abort () from /lib/libc.so.6 #3 0x403ce4e8 in os::abort () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #4 0x403407b7 in checked_jni_NewObjectV () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #5 0x4c8be289 in JNIEnv_::NewObject () from /usr/local/e4graph-1.0a8/lib/libe4java.so.0.0.0 #6 0x4c8b7b7c in Java_com_e4graph_Storage_getRoot1 () from /usr/local/e4graph-1.0a8/lib/libe4java.so.0.0.0 #7 0x42683bf2 in ?? () #8 0x4267dd04 in ?? () #9 0x4267dd04 in ?? () #10 0x4267dddb in ?? () #11 0x4267b104 in ?? () #12 0x40319a54 in JavaCalls::call_helper () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #13 0x403cd9ed in os::os_exception_wrapper () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #14 0x40319ca6 in JavaCalls::call () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #15 0x40321f1c in jni_invoke_static () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #16 0x40330c35 in jni_CallStaticVoidMethodV () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #17 0x403585d0 in checked_jni_CallStaticVoidMethod () from /usr/java/j2sdk1.4.2_01/jre/lib/i386/client/libjvm.so #18 0x0804964d in strcpy () #19 0x4005f237 in __libc_start_main () from /lib/libc.so.6 I cant't see anything wrong there (NewObject). Then I realized that I run de little testprogram with the option -Xcheck:jni like I always do with JNI stuff. When I removed the option the program runs, but there might be something wrong with the lib. Maybe someone that knows more about this software should run some tests with this option on. Otherwise, this software may be instable, for instance, crashing when the GC kicks in. *** The test program: import com.e4graph.*; public class E4Test { public E4Test() throws Exception { Storage storage = new Storage( "e4store", Storage.METAKIT ); Node root = storage.getRoot(); root.addVertex( "VoorNaam", Node.IOLAST, 0, "Leoneke" ); } public static void main( String [] args ) throws Exception { new E4Test(); } } *** The way I run it: #!/bin/sh LD_LIBRARY_PATH=/usr/local/lib ; export LD_LIBRARY_PATH java -verbose \ -Xcheck:jni \ -classpath /usr/local/lib/e4java.jar:. \ -Djava.library.path=/usr/local/lib \ E4Test *** The diff of the code: *** com_e4graph_Storage.cpp 2003/08/28 00:28:18 1.1 --- com_e4graph_Storage.cpp 2003/08/28 03:35:35 *************** *** 29,38 **** --- 29,39 ---- * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE, EVEN IF * JYL SOFTWARE INC. IS MADE AWARE OF THE POSSIBILITY OF SUCH DAMAGE. */ + #include <stream.h> #include "e4graph.h" #include "j4graph.h" #define STATIC_STORAGE_SIZE 128 typedef struct StorageCacheRecord { *************** *** 87,97 **** /* * These field IDs are for access to the fields of Storage, Node and Vertex. */ ! jfieldID sIndexID = NULL; jfieldID nIndexID = NULL; jfieldID nsIndexID = NULL; jfieldID vIndexID = NULL; jfieldID vsIndexID = NULL; --- 88,98 ---- /* * These field IDs are for access to the fields of Storage, Node and Vertex. */ ! //@@jfieldID sIndexID = NULL; jfieldID nIndexID = NULL; jfieldID nsIndexID = NULL; jfieldID vIndexID = NULL; jfieldID vsIndexID = NULL; *************** *** 373,406 **** clsStorageCreationException = envp->FindClass("com/e4graph/StorageCreationException"); if (clsStorageCreationException == NULL) { goto error; } storageCreationExceptionCMID = ! envp->GetStaticMethodID(clsStorageCreationException, "<init>", "()V"); if (storageCreationExceptionCMID == NULL) { goto error; } clsStorageIsNotOpenException = envp->FindClass("com/e4graph/StorageIsNotOpenException"); if (clsStorageIsNotOpenException == NULL) { goto error; } storageIsNotOpenExceptionCMID = ! envp->GetStaticMethodID(clsStorageIsNotOpenException, "<init>", "()V"); if (storageIsNotOpenExceptionCMID == NULL) { goto error; } clsIncorrectVertexTypeException = envp->FindClass("com/e4graph/IncorrectVertexTypeException"); if (clsIncorrectVertexTypeException == NULL) { goto error; } incorrectVertexTypeExceptionCMID = ! envp->GetStaticMethodID(clsIncorrectVertexTypeException, "<init>", "()V"); if (incorrectVertexTypeExceptionCMID == NULL) { goto error; } --- 374,409 ---- clsStorageCreationException = envp->FindClass("com/e4graph/StorageCreationException"); if (clsStorageCreationException == NULL) { goto error; } + storageCreationExceptionCMID = ! envp->GetMethodID(clsStorageCreationException, "<init>", "()V"); if (storageCreationExceptionCMID == NULL) { goto error; } clsStorageIsNotOpenException = envp->FindClass("com/e4graph/StorageIsNotOpenException"); if (clsStorageIsNotOpenException == NULL) { goto error; } storageIsNotOpenExceptionCMID = ! envp->GetMethodID(clsStorageIsNotOpenException, "<init>", "()V"); if (storageIsNotOpenExceptionCMID == NULL) { goto error; } clsIncorrectVertexTypeException = envp->FindClass("com/e4graph/IncorrectVertexTypeException"); if (clsIncorrectVertexTypeException == NULL) { goto error; } + incorrectVertexTypeExceptionCMID = ! envp->GetMethodID(clsIncorrectVertexTypeException, "<init>", "()V"); if (incorrectVertexTypeExceptionCMID == NULL) { goto error; } *************** *** 409,449 **** envp->FindClass("com/e4graph/InvalidPositionException"); if (clsInvalidPositionException == NULL) { goto error; } invalidPositionExceptionCMID = ! envp->GetStaticMethodID(clsInvalidPositionException, "<init>", "()V"); if (invalidPositionExceptionCMID == NULL) { goto error; } clsNoSuchNodeException = envp->FindClass("com/e4graph/NoSuchNodeException"); if (clsNoSuchNodeException == NULL) { goto error; } noSuchNodeExceptionCMID = ! envp->GetStaticMethodID(clsNoSuchNodeException, "<init>", "()V"); if (noSuchNodeExceptionCMID == NULL) { goto error; } clsNoSuchVertexException = envp->FindClass("com/e4graph/NoSuchVertexException"); if (clsNoSuchVertexException == NULL) { goto error; } noSuchVertexExceptionCMID = ! envp->GetStaticMethodID(clsNoSuchVertexException, "<init>", "()V"); if (noSuchVertexExceptionCMID == NULL) { goto error; } sIndexID = envp->GetFieldID(clsStorage, "index", "I"); if (sIndexID == NULL) { goto error; } nIndexID = envp->GetFieldID(clsNode, "nodeIndex", "I"); if (nIndexID == NULL) { goto error; } nsIndexID = envp->GetFieldID(clsNode, "storageIndex", "I"); --- 412,454 ---- envp->FindClass("com/e4graph/InvalidPositionException"); if (clsInvalidPositionException == NULL) { goto error; } invalidPositionExceptionCMID = ! envp->GetMethodID(clsInvalidPositionException, "<init>", "()V"); if (invalidPositionExceptionCMID == NULL) { goto error; } clsNoSuchNodeException = envp->FindClass("com/e4graph/NoSuchNodeException"); if (clsNoSuchNodeException == NULL) { goto error; } noSuchNodeExceptionCMID = ! envp->GetMethodID(clsNoSuchNodeException, "<init>", "()V"); if (noSuchNodeExceptionCMID == NULL) { goto error; } clsNoSuchVertexException = envp->FindClass("com/e4graph/NoSuchVertexException"); if (clsNoSuchVertexException == NULL) { goto error; } noSuchVertexExceptionCMID = ! envp->GetMethodID(clsNoSuchVertexException, "<init>", "()V"); if (noSuchVertexExceptionCMID == NULL) { goto error; } + /*@@ sIndexID = envp->GetFieldID(clsStorage, "index", "I"); if (sIndexID == NULL) { goto error; } + @@*/ nIndexID = envp->GetFieldID(clsNode, "nodeIndex", "I"); if (nIndexID == NULL) { goto error; } nsIndexID = envp->GetFieldID(clsNode, "storageIndex", "I"); *************** *** 457,467 **** vsIndexID = envp->GetFieldID(clsVertex, "storageIndex", "I"); if (vsIndexID == NULL) { goto error; } ! typeID = envp->GetFieldID(clsValue, "vertexType", "I"); if (typeID == NULL) { goto error; } integerValueID = envp->GetFieldID(clsValue, "integerValue", "I"); if (integerValueID == NULL) { --- 462,472 ---- vsIndexID = envp->GetFieldID(clsVertex, "storageIndex", "I"); if (vsIndexID == NULL) { goto error; } ! typeID = envp->GetFieldID(clsValue, "type", "I"); //@@ was vertexType if (typeID == NULL) { goto error; } integerValueID = envp->GetFieldID(clsValue, "integerValue", "I"); if (integerValueID == NULL) { *************** *** 484,509 **** "Lcom/e4graph/Node;"); if (nodeValueID == NULL) { goto error; } ! nodeCMID = envp->GetStaticMethodID(clsNode, "<init>", "(III)V"); if (nodeCMID == NULL) { goto error; } ! vertexCMID = envp->GetStaticMethodID(clsVertex, "<init>", "(III)V"); if (vertexCMID == NULL) { goto error; } ! storageCMID = envp->GetStaticMethodID(clsStorage, "<init>", "(II)V"); if (storageCMID == NULL) { goto error; } ! valueCMID = envp->GetStaticMethodID(clsValue, "<init>", "()V"); if (valueCMID == NULL) { goto error; } /* --- 489,514 ---- "Lcom/e4graph/Node;"); if (nodeValueID == NULL) { goto error; } ! nodeCMID = envp->GetMethodID(clsNode, "<init>", "(III)V"); if (nodeCMID == NULL) { goto error; } ! vertexCMID = envp->GetMethodID(clsVertex, "<init>", "(III)V"); if (vertexCMID == NULL) { goto error; } ! storageCMID = envp->GetMethodID(clsStorage, "<init>", "(II)V"); if (storageCMID == NULL) { goto error; } ! valueCMID = envp->GetMethodID(clsValue, "<init>", "()V"); if (valueCMID == NULL) { goto error; } /* *************** *** 512,526 **** clsObject = envp->FindClass("java/lang/Object"); if (clsObject == NULL) { goto error; } ! objectCMID = envp->GetStaticMethodID(clsObject, "<init>", "()V"); if (objectCMID == NULL) { goto error; } storageLock = envp->NewObject(clsObject, objectCMID); if (storageLock == NULL) { goto error; } /* --- 517,535 ---- clsObject = envp->FindClass("java/lang/Object"); if (clsObject == NULL) { goto error; } ! objectCMID = envp->GetMethodID(clsObject, "<init>", "()V"); if (objectCMID == NULL) { goto error; } storageLock = envp->NewObject(clsObject, objectCMID); + if (storageLock == NULL) { + goto error; + } + storageLock = envp->NewGlobalRef(storageLock); if (storageLock == NULL) { goto error; } ------------ I hope this is a contrib of some value... Bye, Leon. |