Dear list members,
I am the main investigator of a group that is carrying out an experiment, which compares the productivity of computer languages. For instance, one may wish to see if a Python programmer is more productive than a Scheme programmer with the same ability.
Here is the spoiler: The volunteers associated with the project were not able to run sqlite3 from Gambit. It seems that the bindings are old, or not well documented. I would appreciate a link to bindings that work out of the box, is the case of both Bigloo and Racket.
We therefore need to put in place a measurement theory that provides for the programmer's ability. In this case one can be sure of an equal ability to that of a Scheme programmer. [The research group is working with the following languages: C, Java, C#, Common Lisp SBCL) and Scheme (Racket and Bigloo).]
To measure a programmer's ability, the group uses the Rasch model. The same model is also used for measuring the ability of a computer language to increase a programmer's productivity.
For the time being, the group is working with the above cited languages. If the reader is unfamiliar with measurement theory, she is invited to visit my page concerning the subject: strues.org/languages
Although the page contains original ideas from members of the my research group, it should be noted that there are however mathematical patches borrowed from other researchers, such as Rasch. This lack of originality is in itself not a problem as the page has been constructed purely as an internal report. Of course, in the final paper, due credit will be given through appropriate citations.
To everybody's surprise, Python has not shown itself as being the most productive language, while Scheme has, followed closely by sbcl. Python occupies a distant third place.
The volunteers are using Racket and Bigloo to program in Scheme. The fact is that everybody found Gambit difficult to use to solve the kind of problems associated with the measurement items. Therefore, nobody is using Gambit.
The first difficulty with Gambit is that it does not run out of the box in all hosting services. A member of the group tried to fix the issue by consulting this list, but was not successful. Finally, the problem was solved after consulting Manuel Serrano and a member of the Racket user list. So a volunteer has installed a simple Gambit powered page on Hostgator. We would like thank Manuel Serrano and André for helping us with this task.
The other difficult concerns connections to an sql server, while Bigloo and Racket provide out of the box connections, Gambit requires installation of external libraries and bindings to sqlite3, for example, Twenty three volunteers tried to perform the installation and everybody failed.
Does anybody on this list know where I can find sources of gsi with sqlite3? As I would like to generate gsi with sqlite3 included, as in Racket.
By the way, I am insisting on adding Gambit to the Scheme compiler set used in the experiment, because Gambit has a nice optional infix syntax. I would like to check whether this alters my results.
* Junia Magellan*
Doutoranda em Inteligência Artificial - Engenharia Elétrica - UFU Mestre em Inteligência Artificial - Ciência da Computação - UFU
Docente do IFTM - Campus Avançado Patrocínio
Afficher les réponses par date
Uh oh. I created somewhat extensive SQLite3 bindings for Gambit for my own use many months ago - I rewrote a Java program of mine in Gambit - but the process of making them available to others got stalled back then. I have been doing other, completely unrelated things, meaning to return to that program some day...
Now my bindings would also need testing with the newer Gambit version.
Marc asked me if it was thread-safe. I replied that I don't know. I still don't know.
It'll be a week before I can even think of opening that project.
Junia Magellan junnia@gmail.com writes:
Dear list members,
I am the main investigator of a group that is carrying out an experiment, which compares the productivity of computer languages. For instance, one may wish to see if a Python programmer is more productive than a Scheme programmer with the same ability.
Here is the spoiler: The volunteers associated with the project were not able to run sqlite3 from Gambit. It seems that the bindings are old, or not well documented. I would appreciate a link to bindings that work out of the box, is the case of both Bigloo and Racket.
We therefore need to put in place a measurement theory that provides for the programmer's ability. In this case one can be sure of an equal ability to that of a Scheme programmer. [The research group is working with the following languages: C, Java, C#, Common Lisp SBCL) and Scheme (Racket and Bigloo).]
To measure a programmer's ability, the group uses the Rasch model. The same model is also used for measuring the ability of a computer language to increase a programmer's productivity.
For the time being, the group is working with the above cited languages. If the reader is unfamiliar with measurement theory, she is invited to visit my page concerning the subject: strues.org/languages
Although the page contains original ideas from members of the my research group, it should be noted that there are however mathematical patches borrowed from other researchers, such as Rasch. This lack of originality is in itself not a problem as the page has been constructed purely as an internal report. Of course, in the final paper, due credit will be given through appropriate citations.
To everybody's surprise, Python has not shown itself as being the most productive language, while Scheme has, followed closely by sbcl. Python occupies a distant third place.
The volunteers are using Racket and Bigloo to program in Scheme. The fact is that everybody found Gambit difficult to use to solve the kind of problems associated with the measurement items. Therefore, nobody is using Gambit.
The first difficulty with Gambit is that it does not run out of the box in all hosting services. A member of the group tried to fix the issue by consulting this list, but was not successful. Finally, the problem was solved after consulting Manuel Serrano and a member of the Racket user list. So a volunteer has installed a simple Gambit powered page on Hostgator. We would like thank Manuel Serrano and André for helping us with this task.
The other difficult concerns connections to an sql server, while Bigloo and Racket provide out of the box connections, Gambit requires installation of external libraries and bindings to sqlite3, for example, Twenty three volunteers tried to perform the installation and everybody failed.
Does anybody on this list know where I can find sources of gsi with sqlite3? As I would like to generate gsi with sqlite3 included, as in Racket.
By the way, I am insisting on adding Gambit to the Scheme compiler set used in the experiment, because Gambit has a nice optional infix syntax. I would like to check whether this alters my results.
- Junia Magellan*
Doutoranda em Inteligência Artificial - Engenharia Elétrica - UFU Mestre em Inteligência Artificial - Ciência da Computação - UFU
Docente do IFTM - Campus Avançado Patrocínio
Lattes: http://lattes.cnpq.br/3659680417351721 _______________________________________________ Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
[Caveat emptor: pun intended]
Gambit is incompatible by design. Hackers who hangout in this list care about speed, pottability, and rXrs conformance for (X<6) in some order, and we all use the other schemes on the side.
Other than that, we applaud the scientific rigor of this work and love your embedding of brainfuck programs that pop us shells for our ghosts in the metash.!#.
Don't forget that citation is needed: See Figure 1 . &&$3&:$5'$"# whoami root On Oct 17, 2013 6:50 AM, "Junia Magellan" junnia@gmail.com wrote:
Dear list members,
I am the main investigator of a group that is carrying out an experiment, which compares the productivity of computer languages. For instance, one may wish to see if a Python programmer is more productive than a Scheme programmer with the same ability.
Here is the spoiler: The volunteers associated with the project were not able to run sqlite3 from Gambit. It seems that the bindings are old, or not well documented. I would appreciate a link to bindings that work out of the box, is the case of both Bigloo and Racket.
We therefore need to put in place a measurement theory that provides for the programmer's ability. In this case one can be sure of an equal ability to that of a Scheme programmer. [The research group is working with the following languages: C, Java, C#, Common Lisp SBCL) and Scheme (Racket and Bigloo).]
To measure a programmer's ability, the group uses the Rasch model. The same model is also used for measuring the ability of a computer language to increase a programmer's productivity.
For the time being, the group is working with the above cited languages. If the reader is unfamiliar with measurement theory, she is invited to visit my page concerning the subject: strues.org/languages
Although the page contains original ideas from members of the my research group, it should be noted that there are however mathematical patches borrowed from other researchers, such as Rasch. This lack of originality is in itself not a problem as the page has been constructed purely as an internal report. Of course, in the final paper, due credit will be given through appropriate citations.
To everybody's surprise, Python has not shown itself as being the most productive language, while Scheme has, followed closely by sbcl. Python occupies a distant third place.
The volunteers are using Racket and Bigloo to program in Scheme. The fact is that everybody found Gambit difficult to use to solve the kind of problems associated with the measurement items. Therefore, nobody is using Gambit.
The first difficulty with Gambit is that it does not run out of the box in all hosting services. A member of the group tried to fix the issue by consulting this list, but was not successful. Finally, the problem was solved after consulting Manuel Serrano and a member of the Racket user list. So a volunteer has installed a simple Gambit powered page on Hostgator. We would like thank Manuel Serrano and André for helping us with this task.
The other difficult concerns connections to an sql server, while Bigloo and Racket provide out of the box connections, Gambit requires installation of external libraries and bindings to sqlite3, for example, Twenty three volunteers tried to perform the installation and everybody failed.
Does anybody on this list know where I can find sources of gsi with sqlite3? As I would like to generate gsi with sqlite3 included, as in Racket.
By the way, I am insisting on adding Gambit to the Scheme compiler set used in the experiment, because Gambit has a nice optional infix syntax. I would like to check whether this alters my results.
- Junia Magellan*
Doutoranda em Inteligência Artificial - Engenharia Elétrica - UFU Mestre em Inteligência Artificial - Ciência da Computação - UFU
Docente do IFTM - Campus Avançado Patrocínio
Lattes: http://lattes.cnpq.br/3659680417351721
Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
On 2013-10-17, at 9:49 AM, Junia Magellan junnia@gmail.com wrote:
Dear list members, I am the main investigator of a group that is carrying out an experiment, which compares the productivity of computer languages. For instance, one may wish to see if a Python programmer is more productive than a Scheme programmer with the same ability.
Here is the spoiler: The volunteers associated with the project were not able to run sqlite3 from Gambit. It seems that the bindings are old, or not well documented. I would appreciate a link to bindings that work out of the box, is the case of both Bigloo and Racket.
We therefore need to put in place a measurement theory that provides for the programmer's ability. In this case one can be sure of an equal ability to that of a Scheme programmer. [The research group is working with the following languages: C, Java, C#, Common Lisp SBCL) and Scheme (Racket and Bigloo).]
To measure a programmer's ability, the group uses the Rasch model. The same model is also used for measuring the ability of a computer language to increase a programmer's productivity.
For the time being, the group is working with the above cited languages. If the reader is unfamiliar with measurement theory, she is invited to visit my page concerning the subject:
strues.org/languages
Although the page contains original ideas from members of the my research group, it should be noted that there are however mathematical patches borrowed from other researchers, such as Rasch. This lack of originality is in itself not a problem as the page has been constructed purely as an internal report. Of course, in the final paper, due credit will be given through appropriate citations.
To everybody's surprise, Python has not shown itself as being the most productive language, while Scheme has, followed closely by sbcl. Python occupies a distant third place.
The volunteers are using Racket and Bigloo to program in Scheme. The fact is that everybody found Gambit difficult to use to solve the kind of problems associated with the measurement items. Therefore, nobody is using Gambit.
The first difficulty with Gambit is that it does not run out of the box in all hosting services. A member of the group tried to fix the issue by consulting this list, but was not successful. Finally, the problem was solved after consulting Manuel Serrano and a member of the Racket user list. So a volunteer has installed a simple Gambit powered page on Hostgator. We would like thank Manuel Serrano and André for helping us with this task.
It would be useful if you shared the solution with us. Was it a problem with the hosting service or Gambit? Did you have to modify Gambit, or give it special options, or start it in a special way?
The other difficult concerns connections to an sql server, while Bigloo and Racket provide out of the box connections, Gambit requires installation of external libraries and bindings to sqlite3, for example, Twenty three volunteers tried to perform the installation and everybody failed.
Here too it would be useful to know what you tried. Twenty three failed attempts is quite impressive! Are these students or professional programmers?
Have you looked at https://github.com/wolneykien/gambit-sqlite3 ?
The makefile seems to be tailored to Linux, so I rewrote a more portable makefile, and this allowed me to run the unit tests successfully. Here's what I did, from the root of the Gambit sources:
% git clone https://github.com/wolneykien/gambit-sqlite3.git % cd gambit-sqlite3/sqlite3 % rm Makefile % cat > Makefile BASENAME=sqlite3
all: $(BASENAME).o1
$(BASENAME).o1: $(BASENAME).scm $(BASENAME)-common.scm $(BASENAME)-ffi.scm gsc -ld-options "-lsqlite3" $(BASENAME).scm
check: $(BASENAME).o1 $(BASENAME)-test.scm gsi $(BASENAME).o1 $(BASENAME)-test
clean: rm $(BASENAME).o1 ^D % make % make check gsi sqlite3.o1 sqlite3-test passed. passed. passed. (time (run-tests)) 14 ms real time 3 ms cpu time (1 user, 2 system) no collections 51904 bytes allocated 245 minor faults no major faults
Does anybody on this list know where I can find sources of gsi with sqlite3? As I would like to generate gsi with sqlite3 included, as in Racket.
That can be done like this:
% cat > gsi-with-sqlite3.scm (include "sqlite3.scm") (include "../../gsi/_gsi.scm") ^D % gsc -exe gsi-with-sqlite3.scm % gsc -exe -ld-options "-lsqlite3" gsi-with-sqlite3.scm % ./gsi-with-sqlite3 sqlite3-test.scm ./gsi-with-sqlite3 sqlite3-test.scm passed. passed. passed. (time (run-tests)) 13 ms real time 3 ms cpu time (1 user, 2 system) no collections 51904 bytes allocated 257 minor faults no major faults
This was done on OS X, but due to the portable nature of the makefile, it should also work on linux and Windows (the only problem I can see is the linking with the sqlite3 C library).
By the way, I am insisting on adding Gambit to the Scheme compiler set used in the experiment, because Gambit has a nice optional infix syntax. I would like to check whether this alters my results.
It will be interesting to see if the infix syntax helps.
Marc
Ok, I got some pressing things out of the way, and I've now diggen up my resqlite3.scm bindings to SQLite3 and am making them minially available in a preliminary way in a temporary location. See below.
Junia Magellan junnia@gmail.com writes:
not able to run sqlite3 from Gambit. It seems that the bindings are old, or not well documented. I would appreciate a link to bindings that work out of the box, is the case of both Bigloo and Racket.
I put my resqlite3.scm, with a test program, Makefile and expected output, at http://www.ling.helsinki.fi/users/jpiitula/preresqlite3.zip, so if anyone wants to have a look and see if it works for them (it has worked for me), feedback would be appreciated. See README and ALERT.
My intention is and has always been to release it as Free Software, I just haven't got around to do it. Please think of this package as not-quite-publicly-available-yet, and if nothing catastrophic is reported to me soon, I'll just wrap it up more or less as is.
Does anybody on this list know where I can find sources of gsi with sqlite3? As I would like to generate gsi with sqlite3 included, as in Racket.
You should be able to compile sqlite3.scm (or my resqlite3.scm) into a Gambit object file that can be loaded into a gsi session. The locations of libsqlite3 and sqlite3.h need to be known, but they should be in standard places, I think. (The latter wasn't for me today - I had installed a newer Ubuntu version since I last worked on this, and I hadn't said "sudo apt-get install sqlite3-dev". When I said so, it was fixed.) Maybe you are missing -ld-options -lsqlite3?