introspector-developers Mailing List for RDF Software Introspector (Page 9)
Status: Beta
Brought to you by:
mdupont
You can subscribe to this list here.
| 2002 |
Jan
|
Feb
(1) |
Mar
|
Apr
(8) |
May
(6) |
Jun
(9) |
Jul
(6) |
Aug
(4) |
Sep
(2) |
Oct
(18) |
Nov
(29) |
Dec
(18) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(57) |
Feb
(41) |
Mar
(4) |
Apr
|
May
(1) |
Jun
(6) |
Jul
(3) |
Aug
(34) |
Sep
(28) |
Oct
(3) |
Nov
(1) |
Dec
(1) |
| 2004 |
Jan
|
Feb
|
Mar
(2) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
(3) |
| 2005 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(3) |
| 2012 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: James M. D. <mdu...@ya...> - 2002-12-21 09:28:48
|
hey craig, thanks for writing. Come and visit us on the #introspector irc.openprojects.net for a chat. --- "cr...@is..." <cr...@is...> wrote: > Hey - > > I've been looking at this and gccxml. It's a little hard for me to > figure > out what the current status of this project is. Will this work on > win32? yes it will, with cygwin, i have been testing with the 3.2, but the berkley db support of redland is not dont on win32. > Can you give me some pointers on how to navigate the CVS tree? It's a > bit > confusing. yes, i am sorry about that, there is a readme.txt in the root, but the first thing you need are the patches to the gcc in the introspector/c_files mario luca and I have been chatting about this, maybe he can post some of the logs somewhere... > > What I really want right now is a reflection toolkit for C++. I've > tried > developing one off and on for a bit, and it's always come down to > requiring better compiler support. GCC seems the obvious choice, but > when yes, you could use the introspector for that, even now, using the c++ to read in the reflection data into c++ and processing it. but you still have to process the node data into something more usefull. > I started to look into this option (a couple years ago now), RMS sent > me a > 'cease and desist letter', which kinda took the wind out of my sails. well i have had lots of interactions with RMS, he is just trying to play politics. Most of the gcc guys dont like the idea of making interfaces, but they will like it when we are done. > I > know this has been a long-standing debate, but I never got any clear > answers except for 'RMS don't like it, and I'm tired of arguing with > him > about it', and RMS replying 'I don't have time to go into details, I > just > don't like it'. Oh well. It finally appears that there's enough > momentum > for this to finally get somewhere. :-) yes, please do help. get yourself a Sourceforge account and mail it to me. > > I've looked into several related projects, including OpenC++, gccxml, > and > PDT (http://www.cs.uoregon.edu/research/paracomp/pdtoolkit/), and I might have seen this, but it is not free. > Root > (http://root.cern.ch/). that is new > I'd be happy to try to help out on this > project. > Some things I have potentially relevant knowledge of include: > > c, c++, gccxml, openc++ (tho it's been a little while), pdt, xml, > mysql/odbc, boost. I'm not very skilled with Perl or Bison/Yacc. My > main > linux dev box has been having hardware problems, and also for a few > other > reasons, win32 is my main dev platform right now. ok, then you might want to help with the testing of the debian packaging of the gui elements for mingw32/cygwin. Mike Garnsey and I have been working on porting gtk to windows via the deb packaging system for the gui. > > One thing I noticed is that, for some reason, gcc doesn't keep track > of > the column number while it's parsing (well, the tree node doesn't > keep > track anyway). I've considered amending this; I don't know if this > would > be useful to introspector tho. you can turn that on in bison So, I look forward to chatting with you some more mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: <cr...@is...> - 2002-12-21 08:51:36
|
Hey - I've been looking at this and gccxml. It's a little hard for me to figure out what the current status of this project is. Will this work on win32? Can you give me some pointers on how to navigate the CVS tree? It's a bit confusing. What I really want right now is a reflection toolkit for C++. I've tried developing one off and on for a bit, and it's always come down to requiring better compiler support. GCC seems the obvious choice, but when I started to look into this option (a couple years ago now), RMS sent me a 'cease and desist letter', which kinda took the wind out of my sails. I know this has been a long-standing debate, but I never got any clear answers except for 'RMS don't like it, and I'm tired of arguing with him about it', and RMS replying 'I don't have time to go into details, I just don't like it'. Oh well. It finally appears that there's enough momentum for this to finally get somewhere. :-) I've looked into several related projects, including OpenC++, gccxml, and PDT (http://www.cs.uoregon.edu/research/paracomp/pdtoolkit/), and Root (http://root.cern.ch/). I'd be happy to try to help out on this project. Some things I have potentially relevant knowledge of include: c, c++, gccxml, openc++ (tho it's been a little while), pdt, xml, mysql/odbc, boost. I'm not very skilled with Perl or Bison/Yacc. My main linux dev box has been having hardware problems, and also for a few other reasons, win32 is my main dev platform right now. One thing I noticed is that, for some reason, gcc doesn't keep track of the column number while it's parsing (well, the tree node doesn't keep track anyway). I've considered amending this; I don't know if this would be useful to introspector tho. HTH, --craig |
|
From: James M. D. <mdu...@ya...> - 2002-12-15 13:14:13
|
--- James Michael DuPont <mdu...@ya...> wrote:
> I added some functions to the node classes, manually for now,
> later they will be added to the createclasses.pm
>
> you will see them like this :
> introspector/node_record_type.pm
> if you test this, and notice other fields missing,
> please add them in like this :
>
> introspector-cvs/introspector/node_record_type.pm
Ok, well forget that,
just update the CreateClasses.pm and
then re-run intrspctr.pl
here are my additions for c++, for now :
just add in the cpp stuff here, if you want to do java, then
you need to create a new sub and call it.
##############################
sub cpp_types
{
my $repository = shift;
AddClass($repository,'eh_spec_block'); #
the class called ids
AddField($repository,
'eh_spec_block',
'body',
TypeRef($repository,'stmt')
); # the body of the function
AddInheritance($repository,"eh_spec_block","stmt"); # this is a
type of statement
AddField($repository,'record_type','fncs',
TypeRef($repository,'base') ); # the functions of the class ::TODO
figure out the types
AddField($repository, 'record_type', 'vfld',
TypeRef($repository,'base') ); # the vtable of the class ::TODO
figure out the types
AddField($repository, 'field_decl', 'mngl',
TypeRef($repository,'base') ); # the vtable of the class ::TODO
figure out the types
AddField($repository, 'type', 'const', TypeRef($repository,'base')
); # the vtable of the class ::TODO figure out the types
}
mike
=====
James Michael DuPont
http://introspector.sourceforge.net/
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
|
|
From: James M. D. <mdu...@ya...> - 2002-12-15 12:27:05
|
Dear all,
I have a major update today,
Mario Luca and I have been testing the new GCC/Redland interface using
a ntriples format.
I have ported the first step of the fourth generation of the
introspector:
it reads n3 and then instanciates the introspector::node_* classes to
hold the data. Now this is not done, but it could be tested, and if you
want to start helping, now it the time!
In the cvs/introspector/process_file.pl
there is a simple command line program that will take a n3 file as a
parameter, and process it.
It has to be run in the root directory of the Introspector for now,
because we are still using this older (and bad) directory structure.
Here is an example :
./process_file.pl
TESTS/test_cpp/xml/tmp_testfunctionpointer.cpp_.tu_.bar_Sun_Dec_15_07_42_47_2002_50-dump.ntriple
that will read in the file produced by the c++ test example :
TESTS/test_cpp/Makefile
Here is the change log :
2002-12-15 13:14 mdupont
* CreateClasses.pm, TESTS/test_cpp/process_file.pl,
c_files/ChangeLog, c_files/Makefile.in, c_files/escaping.c,
c_files/tree-dump.c, c_files/tree-dump.h,
introspector/node_base.pm, introspector/node_field_decl.pm,
introspector/node_pointer_type.pm,
introspector/node_record_type.pm, introspector/node_type.pm,
tests/teststrings.c, tests/teststrings.s: first intergration
I added some functions to the node classes, manually for now,
later they will be added to the createclasses.pm
you will see them like this :
introspector/node_record_type.pm
if you test this, and notice other fields missing,
please add them in like this :
introspector-cvs/introspector/node_record_type.pm
#############
sub Setfncs
{
my $self = shift;
my $newval = shift;
return $self->{_fncs} = $newval;
};
# the functions
sub Setvfld
{
my $self = shift;
my $newval = shift;
return $self->{_vfld} = $newval;
};
# this is from cp/dump.c#dump_child ("vfld", TYPE_VFIELD (t));
mike
=====
James Michael DuPont
http://introspector.sourceforge.net/
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
|
|
From: James M. D. <mdu...@ya...> - 2002-12-04 19:55:49
|
Here is a nice article that might be of interest to you --- techtrader_bob <f5w...@sn...> wrote: > To: int...@ya... > Mailing-List: list int...@ya...; contact > int...@ya... > Date: Wed, 04 Dec 2002 18:15:55 -0000 > Subject: [intentionalprogramming] What IP is. > > My take on this: > IP is infrastructure on which you build code generators. Period. > > Please read the following paper NOW! I added the homesite of this > paper to the 'Links' section of the group.. > > ftp://ftp.cs.utexas.edu/pub/predator/distil.pdf > > Ok, now that you are back.. > > I think of IP as a glorified Question/Answer system along with a > database of code fragments. The code fragments have attributes. > It also has some stuff to visualize code (graphically, math symbols, > whatever) via attributes on an intention telling the IP system how to > > display it. You could display any code as Java, C, Math, arbitrary > bitmap, etc). IP is infrastructure, not a language. > > Depending on the attributes, different code would be generated. > IE for Sorts, and less than 1000 items, use a quick sort, for 1 > billion items, generate code for a disk based B-Tree. > > You need to state your INTENT to the IDE. When it can not resolve > what you mean, you would actually type some code (c, java, etc) that > you want pasted in. > > If you find a better way to do something, type in the code, then add > attributes to that code that would allow the IP system to determine > which code (old or new) that should be used. With the above example, > > say your program got a ton of new data. You would code up the b- > tree, and say for LARGE sets, use this. Then in your Sort intention, > > you would add the "LARGE" attribute/requirement. > > Your code would then be transformed to use the new algorythm. > > These code fragments could be entire components, subroutines, or even > > lines of code. > > The magic of IP is it knows how to weave it all together into a > cohesive functioning program. This allows huge amounts of re-use > since you just have to describe the desired output. If no code > matches, create some new attributes, and some new code, allowing it > to be wove in to the new enhanced codebase. > > With regard to the sort, your code would be independant of the data > types. Sorting integers, characters or names would be the same. The > > generator would look to the layer above to determine the datatype and > > then generate code specific to that type. > > This quickly leads into a need for Refactoring, and code aspects, > hence simonyi's new company. > > These ideas are shown in: > ftp://ftp.cs.utexas.edu/pub/predator/tr-95-26.pdf > ftp://ftp.cs.utexas.edu/pub/predator/tr-95-04.pdf > ftp://ftp.cs.utexas.edu/pub/predator/sigsoft-93.pdf REALLY GOOD!! > ftp://ftp.cs.utexas.edu/pub/predator/wisr-93-p2.pdf > ftp://ftp.cs.utexas.edu/pub/predator/sigsoft-94.pdf REALLY GOOD!! > > > Hope this makes sense.. > > ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-12-04 16:55:39
|
Here is an overview of the current todos in the tree-dumper.c.
You will see line number and a message, followed by a description of
the todo.
If someone wants to help add these into the sf task manager, I would
appreciate it, otherwise I will add them in tomorrow.
------------------------------------------------------------------------
285: // TODO, we should cache these, and look it up, do we have
this field created?
Here we need to build the gcc rdf model in memory, and make it
available to other processes. But you not that we get a string name of
a field, and want to return the predicate in the gcc rdf model that
represents that string.
I think we need to build a c-api based on the introspectors gcc model.
Starting with the JavaGenerator.pm and extending that to a RedLandC
generator, to output a C api for the introspector model.
But on the other side, we need to be able to easily loo
------------------------------------------------------------------------
327: TODO : take the type of the node that is available
code_name = tree_code_name[(int) TREE_CODE (t)];
(emitted by intrspctr_set_node_type)
and build that into the uri, so we append for each type of
node, a different base uri. We could store them in an array of
uri bases.
This will be similar to the handling of rdf_concept.h.
this should wait for the
------------------------------------------------------------------------
395: // TODO: localize the filenames and extract the URI for them
void intrspctr_dump_filename(di, filename,linenumber)
here we have the real issue of handling the files on the local
system, we need to be able to map a local file onto an URI, and even
put all the nodes from one file into one rdf file in an intelligent
manner.
------------------------------------------------------------------------
785: dump_child ("chan", TREE_CHAIN (t)); // TODO: maybe we
need to turn this off on follow chains?
this is an issue of when the chains are travesed, this would be a
problem if we got infinite recursion. Not important now, we dont have
infinite recursion here.
------------------------------------------------------------------------
902: // TODO, replace with a string literal!
Here we need to call intrspctr_add_statement_literal_string instead of
intrspctr_add_statement_typed_string
------------------------------------------------------------------------
Another TODO is the escaping of strings, mario has been working on
that, but I put it in here anyway.
------------------------------------------------------------------------
Now there is one more important todo left :
Load in the uris and nodes used in "intrspctr_init_model" from an rdf
resource. That will allow for customizing of the rdf dumping without
recompiling.
mike
=====
James Michael DuPont
http://introspector.sourceforge.net/
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
|
|
From: James M. D. <mdu...@ya...> - 2002-12-04 08:09:45
|
Dear hackers,
here is a new idea,
I have linked the c files from the gcc into the introspector source
tree via
ln -s GCCpath/gcc/tree-dump.c introspectorpath/c_files/tree-dump.c
then I have checked the changes to that file directly into our cvs:
/cvsroot/introspector/introspector/c_files/tree-dump.c
I found the spot that outputs the strings:
added a todo:
case STRING_CST:
// TODO, replace with a string literal!
intrspctr_add_statement_typed_string(
di,
di->pgccfield_string,
di->pcurrent_strings,
TREE_STRING_POINTER (t)
);
dump_int (di, "lngt", TREE_STRING_LENGTH (t));
break;
mike
=====
James Michael DuPont
http://introspector.sourceforge.net/
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
|
|
From: James M. D. <mdu...@ya...> - 2002-12-03 19:55:32
|
Hello all, I have good news, the patch is running! so, get you gcc, get your redland, and get your patch, and send in the test results! Here is an example function dequeue_and_dump, that contains the dumper code for alot of tree types. this converted to rdf will allow us to do cool thing, But watch out it is :4996863 bytes! http://introspector.sourceforge.net/2002/11/24/dequeue_and_dump.n3 I have bzip2ed it as well 108399 bytes (much less) dequeue_and_dump.n3.bz2 you will notice a small problem with strings, For example the "flds" string looks like this : <./nodes/node-ids#id-2999> <http://purl.oclc.org/NET/introspector/2002/11/24/gcc/node_fields#string> <./nodes/node-strings#flds> . but is should look like this <./nodes/node-ids#id-2999> <http://purl.oclc.org/NET/introspector/2002/11/24/gcc/node_fields#string> "flds" . Otherwise, this is very good and usefull, happy hacking, mike mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-12-03 16:44:00
|
sorry, broken sentence. The patch is applied to cygwin, all of a sudden, the cygwin gcc 3.2 works! mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-12-03 16:43:24
|
The patch is applied to cygwin, all of a suddem void intrspctr_add_statement_literal_string (di, ppredicate, pstring) this function add literal string with the predicate indicated by ppredicate to the current node. Used for handling both node modifiers (const, volitile) and also identifier strings. This function has changed between the cvs and the current version ///librdf_new_node_from_literal(librdf_world* world, // const char *string, // const char *xml_language, // int xml_space, // int is_wf_xml the xml space is null with the older version 0.9.11 that I have http://www.redland.opensource.ac.uk/ChangeLog * librdf/rdf_node.c: Remove all references to XML Space. Keep the arg around but ignore it. (librdf_new_node_from_literal,librdf_node_set_literal_value): xml_space arg now unused1 (librdf_node_get_literal_value_xml_space): Removed - API change (librdf_node_encode,librdf_node_decode): Removed xml space en/decoding here is the function void intrspctr_add_statement_literal_string (di, ppredicate, pstring) dump_info_p di; librdf_node* ppredicate; char * pstring; { librdf_node* pobject; pobject= librdf_new_node_from_literal(di->pworld, pstring, NULL, 0, 0); // create a new node intrspctr_add_statement(di, ppredicate, pobject ); } Mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-12-03 08:38:02
|
Ok, the patch compiles and the compile runs (doing normal compilation without the flags) But I have not tested the -fdump-translation-unit Linking to the rdflib from cvs, and libxml2 Two New files added to isolate the dumper from java, later all the calls to dump_nodes.c go into here: U introspector/c_files/gcc-intrspctr.c U introspector/c_files/gcc-intrspctr.h Updated patch U introspector/c_files/gcc-main-rdf-urN.patch Please test this against the gcc cvs, if you can. thanks, mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-12-02 12:07:09
|
we now have a wiki node to add in all of our knowledge of the gcc. http://www.wikipedia.org/wiki/GCC_Abstract_Syntax_Tree later we can use this for storing global information about the gcc types. mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-12-02 11:17:21
|
OOppps, I forgot to update one part intrspctr_start_function this is a badly named function that is used to contruct the constants and init the dump_info structure are init Basically someone (mario or I) will have to make sure right now that all the structures in the dump_info are initialized. Even if you want to init them all with dummys, the have to the the right type : either a librdf_node for a predicate or object or a librdf_uri for a base Later it will read these constants from a rdf project files. here is an example : di->pgcc_node_modifiers= librdf_new_uri(di->pworld, "http://purl.oclc.org/NET/introspector/2002/11/24/gcc/node_modifiers#"); that says that there is a base uri for all modifiers (const, volitile etc) they are used later here : dump_string is used exclusivly for dumping modifiers void dump_string (di, string) dump_info_p di; const char *string; { intrspctr_add_statement_typed_string( di, LIBRDF_MS_type, // the type of the current node is di->pgcc_node_modifiers, // a gcc modififer string // with the value of this string ); } Now for predefined nodes: i create + di->pgccfield_filename =intrspctr_get_field_predicate(di,"filename"); this creates a node that is relative the the future gcc structure model all of these need to be initialized this way in struct dump_info{ + librdf_node* paddress_predicate; // address of a node in memory intrspctr_get_field_predicate(di,"node-address"); + librdf_node* pinteger_predicate; // an integer value intrspctr_get_field_predicate(di,"integer-value"); + librdf_node* plinenumber_predicate; // the line number of a node intrspctr_get_field_predicate(di,"line-number"); + librdf_node* pgccfield_filename; // the file name of a node intrspctr_get_field_predicate(di,"file-name"); + librdf_node* pgccfield_string; // a string value in a node intrspctr_get_field_predicate(di,"string"); + librdf_node* pgccfield_treecode; // a tree code intrspctr_get_field_predicate(di,"tree-code"); so these initializers need to reviewed, I will do that tonight, but if you want to use the patch today, there is the work to do. mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-12-02 03:44:20
|
Dear all, we now have a new patch to the gcc : cvs introspector/c_files/gcc-main-rdf-urN.patch thanks to a lot of work from mario luca we also support encoding and escaping of strings. You will find that the java does not work, and this is not tests. need to get some sleep. mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-26 10:53:48
|
Thanks Dave, sorry, I did not include you on the last mail, but will be building that as soon as possible. Let me send you the original binary availablity announcement. btw, Do you know about the escaping of strings in the urls? --- Dave Beckett <dav...@br...> wrote: > >>>James Michael DuPont said: > > > > The current output of the rdf is in ntriples > > http://www.w3.org/2001/sw/RDFCore/ntriples/ > > As I noted on IRC last night, you can output RDF/XML now since I > added that to the redland source yesterday. > > All you need to do is build a new snapshot of redland from CVS and > change "ntriples" to "rdfxml" in your call to the serializer > constructor: > serializer=librdf_new_serializer(world, "rdfxml", NULL, NULL); > > or use: > serializer=librdf_new_serializer(world, NULL, > "application/rdf+xml", NULL); > > Dave ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: Dave B. <dav...@br...> - 2002-11-26 10:50:11
|
>>>James Michael DuPont said: > > The current output of the rdf is in ntriples > http://www.w3.org/2001/sw/RDFCore/ntriples/ As I noted on IRC last night, you can output RDF/XML now since I added that to the redland source yesterday. All you need to do is build a new snapshot of redland from CVS and change "ntriples" to "rdfxml" in your call to the serializer constructor: serializer=librdf_new_serializer(world, "rdfxml", NULL, NULL); or use: serializer=librdf_new_serializer(world, NULL, "application/rdf+xml", NULL); Dave |
|
From: James M. D. <mdu...@ya...> - 2002-11-26 10:30:01
|
The current output of the rdf is in ntriples http://www.w3.org/2001/sw/RDFCore/ntriples/ you can convert this to using perl and CWM (closed world model) http://infomesh.net/2001/cwm/ Here is how you can convert his python2.2.exe cwm.py --ntriples file:test.n3 --rdf > testout.rdf There is a problem with the rdf encoding, it is not escaping strings right now. "<internal>" should be escaped, and it is edited in the following file : http://introspector.sourceforge.net/2002/11/24/temp/test.n3 http://introspector.sourceforge.net/2002/11/24/temp/testout.rdf feeding the rdf to the visualization tool http://www.ilrt.bris.ac.uk/discovery/rdf-dev/rudolf/rdfviz/ gets timeouts, when it works,I will tell you. the test.n3 is created out of methods this c++ source, look for "foo" --------------------------------------------------------- class x { public: int x; }; class y { public: int g; int foo(class x & rx ) { int TEST=1; return TEST + rx.x++; } int bar (class x & rx); }; int y::bar(class x & rx) { return rx.x * 2; } MIike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-26 09:11:18
|
Dear fellow hackers, This morning I have cleaned up 2gb of diskspace, and have started a new effort : the combination of the ming32 and the gcc introspector : I am working now (when I am at home )to create a new ming32 compiler for debian GNU/Linux that will support the following features : 1. production of native windows binaries 2. supporting the dumping of asts to rdf. In addition, I am also patching the debian gcc 3.2 as well. Also David Beckett from the Redland has released a new version of redland in CVS that supports the rdf/xml output and not just n3 that I am currently using. So, as you can see, soon we will have three binaries to choose from 1. cygwin for windows 2. mingw32 for linux 3. plain old debian linux I know that some of you use gentoo, and I am sorry to say that I still have not installed the gentoo, but maybe it is simplist to take the gentoo gcc package, patch it, and release that package as well. If someone is interested, please tell me, I will setup a gentoo site as well. Mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-25 23:44:19
|
I have very good news : you can download for linux now binaries for the c++ and c compilers with RDF enabled patches. The new patch is in cvs : c_files/gcc-main-rdf.patch in http://introspector.sf.net/debian/incoming introspector-rdf-cpp_0.1.orig.tar.gz The next step will be to create the perl RDF parser routines, and hook them into the exisiting introspector perl code. Good night ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-24 23:35:06
|
Today I have patched the gcc to use the redland librdf for outputing and storing the node information. this is currently only outputting the strings and stringfields, but the pattern is set up. It is very promising. With this technology, we will have perl, java, ruby and other interfaces into the trees, and they can be directly linked into the gcc. Also the librdf uses a berkley db storage for high speed data transfer and indexing. I hope to complete the transfer of the printfs into rdfs this week.. You will find the patches in cvs c_files/ssa-rdf-patch.patch Good night. Yes, also I will start with some more porting to mingw32 soon, but want to get this rdf lib going first. Sorry mike. :) mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-23 11:04:16
|
Dear Fellow hackers. It seems that there are good things happening. the possibility of importing xmi and petalfiles looks like will be coming soon. ON the dia list, Mr. Kellog said that he will work on compiling crazybeans, a petal reader based on novosofts XMI lib to dia. http://mail.gnome.org/archives/dia-list/2002-November/msg00145.html Otherwise, I am looking into the C# pnet/cscc/csharp compilers a bit, trying to help out with that (just a little). I wont be here for the chatting today, we have to drive a Car from Berlin to Frankfurt, and will be back tomorrow. So, sorry to those I said I would chat with. Gotta run mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-22 00:17:19
|
Dear fellow hackers, Mario-Luca and I have been hacking the gcc ssa-branch this gives us simplified AST trees and other funky features. Anyway, the c compiler is patched and the perlscripts to do basic post processing are in cvs. they need to be installed manualy into your path. the patches to the c compiler also support function body dumping.. update tests/gcc_introspctor.pm added test/introspect_gcc.pl updated c_files/ssa-branch.patch good night, mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-21 09:04:47
|
Dear Fellow Hackers, Today I have uploaded a new experimental (read completly unstable and untested) module, a hack of the nice Redland library for RDF output. After our irc.openprojects.net #introspectors chatathon last night, we have discovered on thing : we need a plan! Here is the plan : We will be linking this into the gcc and replacing the printfs with calls librdf. This will create a model of the gcc asts as a set abstract statements about things. These models can be passed between programs in memory, and the librdf/redland using swig has Perl, Java , Ruby and other interfaces there. This can be very usefull to us and get more people more quickly involved. Of course this idea is not finished, and I have to admit, my RDf is really bad. Here is a simple idea of some statements about program: (by no means valid) "tree.c" is-a Source-File. "tree.h" is-a Header-File. "tree.c" includes "tree.h". "tree_node" has-id nodeid-1. nodeid-1 is-part-of "tree.h". nodeid-3 is-a identifier. nodeid-3 has-name "tree_node". nodeid-1 named-by nodeid-3. nodeid-2 is-a identifier. nodeid-2 has-name "name". nodeid-2 is-a field-decl. and so on.... Of course there are many ways to write the same thing, but it will come down to the something like that. You will find the newest modules here (for debian GNU/Linux, not mingw32) http://introspector.sourceforge.net/debian/incoming/?M=D Raptor the RDF parser http://introspector.sourceforge.net/debian/incoming/raptor_0.9.6.orig.tar.gz Redland : http://introspector.sourceforge.net/debian/incoming/redland_0.9.11-1.tar.gz The perl interface separated out : http://introspector.sourceforge.net/debian/incoming/lib-redland-perl-0.9.11_0.9.11.tar.gz Mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: James M. D. <mdu...@ya...> - 2002-11-21 08:50:04
|
--- Mike Garnsey <mik...@ya...> wrote: > > > I have uploaded the new ATK (accessiblity toolkit) > > > port to mingw32 and > > > also the source code to pango. > > both build fine here. BTW, noticed that you put > the headerss and lib files into the main package > vs -dev packages --any particular reason? No, not any particular reason, except this D*X!@&*M dh_movefiles is driving me CRAZY! Really that module will be the first one to be lined up on the wall when the revolution comes. > Not > a priority now, but eventually we will want > consistent packaging. I'm still struggling with > what we should put into -bin packages...just the > DLLs, or test/tool executables too, etc. Let me tell you, it is painfull. If you change the package names, the debian/package-name.files and .dirs goes crazy, as well as the > > BTW, I picked up on the naminng convention you > used on at least one of your recent packages, and > am starting to use it as well...that is, tacking > on the package completion date to the version # > of the package....eg, foo v3.5.7 debianized on Great. I hope that it is not too much out of synch with you. > the 20th has a deb filename like: > foo-mingw32-dev_3.5.7.20021120-1_i386.deb > > I finally gave up on the libtiff DLL tonite, and > fell back to the static lib...which is building fine. That is fine, we are going to have to redo all the packages when we are done. But belive me, with better tools. > Out of time to do the deb packaging of it tonite. > (DLL builds, but something is hosed with the`function > exporting, so no-go on it for now.) To be honest, we need to get all these debian packages, and collect all the rules, the libtools, the auto* and merge them into one big package. I am even thinking about disolving the entire thing into one HUGE blob.... but not yet. > PS, after I deb package libtiff, I'll probably be > down for a couple of days while I reload a fresh OS > distro on my PC...something is really wacked with > gnome (its locking my machine up hard). you are using debian? (Unstable/sid?) Dont worry, just upgrade. apt-get update apt-get dist-upgrade apt-get upgrade or just reinstall gnome, apt-get remove gnome apt-get install gnome that will get the newest gnome stuff, I have to do that once in a while. Mike ===== James Michael DuPont http://introspector.sourceforge.net/ __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |
|
From: Mike G. <mik...@ya...> - 2002-11-21 07:38:10
|
> > I have uploaded the new ATK (accessiblity toolkit) > > port to mingw32 and > > also the source code to pango. both build fine here. BTW, noticed that you put the headerss and lib files into the main package vs -dev packages --any particular reason? Not a priority now, but eventually we will want consistent packaging. I'm still struggling with what we should put into -bin packages...just the DLLs, or test/tool executables too, etc. BTW, I picked up on the naminng convention you used on at least one of your recent packages, and am starting to use it as well...that is, tacking on the package completion date to the version # of the package....eg, foo v3.5.7 debianized on the 20th has a deb filename like: foo-mingw32-dev_3.5.7.20021120-1_i386.deb I finally gave up on the libtiff DLL tonite, and fell back to the static lib...which is building fine. Out of time to do the deb packaging of it tonite. (DLL builds, but something is hosed with the`function exporting, so no-go on it for now.) later, Mike G. PS, after I deb package libtiff, I'll probably be down for a couple of days while I reload a fresh OS distro on my PC...something is really wacked with gnome (its locking my machine up hard). __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus Powerful. Affordable. Sign up now. http://mailplus.yahoo.com |