You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
(10) |
Jun
(6) |
Jul
(1) |
Aug
(10) |
Sep
(20) |
Oct
(5) |
Nov
(2) |
Dec
(4) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(25) |
Feb
(6) |
Mar
(59) |
Apr
(9) |
May
(3) |
Jun
(13) |
Jul
(6) |
Aug
(16) |
Sep
(14) |
Oct
(12) |
Nov
(4) |
Dec
(10) |
2004 |
Jan
(16) |
Feb
(12) |
Mar
(53) |
Apr
(16) |
May
(43) |
Jun
(40) |
Jul
(48) |
Aug
(20) |
Sep
(23) |
Oct
(27) |
Nov
(33) |
Dec
(8) |
2005 |
Jan
(2) |
Feb
(20) |
Mar
(7) |
Apr
(9) |
May
(2) |
Jun
(6) |
Jul
(5) |
Aug
|
Sep
|
Oct
(3) |
Nov
(3) |
Dec
(6) |
2006 |
Jan
(6) |
Feb
(6) |
Mar
(1) |
Apr
(4) |
May
|
Jun
(1) |
Jul
|
Aug
(2) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2007 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(1) |
Sep
(8) |
Oct
|
Nov
|
Dec
|
2008 |
Jan
(5) |
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
(1) |
Oct
(2) |
Nov
|
Dec
(2) |
2009 |
Jan
(2) |
Feb
|
Mar
(1) |
Apr
|
May
(4) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Ken A. <kan...@bb...> - 2003-06-21 22:27:06
|
Your group stuff sounds cool, you should share it with the JScheme group! Your example is great. I was worried that {[]} and other stuff in JScheme allowed you to mix languages as your example nicely shows, and that it might be hard for new users to read and write themselves. We have 2 unquoting mechanisms, quasi-string where you use [] to escape to lisp, and quasi-quote where you use , and ,@. Could they be unified somehow? Would that make the language better? At 05:48 PM 6/21/2003 -0400, Timothy John Hickey wrote: >On Saturday, June 21, 2003, at 01:32 PM, Ken Anderson wrote: > >>I think you're more willing to play with strange syntax than i am, probably your prolog background. >probably so! >> >>I do get confused sometimes when i have to go between Scheme and Java a lot, which is why i like to stay in Scheme. >In my CS2a summer school class we just covered a servlet that mixed four languages (html, css, scheme, and sql). >This is pretty common in servlet programming, but I really like the way it works in jscheme. >Here's the program. It implements a simple web interface for a CD database. > > >>(april-page ; april is one of the students, all students define a page format that others can use.... >> >> {<form method="post" action="cd.servlet"> >> <select name="cmd"> >> <option value="show"> show table</option> >> <option value="insert">insert entry</option> >> <option value="search"> search </option> >> <option value="sby"> sort by year</option> >> <option value="cba"> count by artist</option> >> </select><br/><br/> >> <input type="submit"> >> </form> >> >> [(servlet (cmd title artist year) >> (case cmd >> >> (("cba") (table "" (dbquery ;; dbquery is a procedure which sends the SQL over a predefined JDBC connection > > ;; and returns a list of lists; one sublist per record. >> {select artist,count(*) from timscds >> group by artist order by artist asc} >> ))) >> >> (("sby") (table "" (dbquery >> {select * from timscds order by year asc}))) >> >> (("show") (table "" (dbquery {select * from timscds}))) >> >> (("search") {not yet implemented....}) >> >> (("insert") >> {Fill out this form: >> <form method="post" action="cd.servlet"> >> title:<input type="text" name= "title"><br/> >> artist:<input type="text" name="artist"><br/> >> year:<input type="text" name= "year"><br/> >> <input type="submit"> >> <input type="hidden" name="cmd" value="do-insert"> >> </form>}) >> >> (("do-insert") >> (dbquery {insert into timscds >> values("[title]","[artist]",[year])}) >> {[title] was inserted } >> ) ;close do-insert >> >> (else "Life is good!") >> >> ) ;close case >> ) ;close servlet >> ]} >>) ; close april-page > > >> >>Since we have complete control over evaluation i was thinking we could play with some ARC ideas. For example (h .put 'Tim 3) or ((vector 1 2 3) 1) >I like the PLT idea of allowing modules to be written in new "languages" >They define languages in terms of macros, but we could be more general.... > >> >>The group stuff sounds great! >Its fun. I'm writing some short papers on it and I'll send you a copy when they're complete. > >---Tim--- > > >>At 08:51 AM 6/21/2003 -0400, Timothy John Hickey wrote: >> >>>On Saturday, June 21, 2003, at 01:54 AM, Geoffrey Knauth wrote: >>> >>>>(From LL1.) This made me think of the JScheme convention of (message object args...). >>>As in >>> (.append ta (.getText ta2)) >>>Hmmmm. This would rewrite as (ta .append (ta2 .getText)) .... cool. >>> >>>Peter Norvig once told me that he had provided a syntactic variant of >>>Lisp for his non-lisper colleagues in which >>>he replaced (f a b ... z) with f( a, b, ... , z) to go from Lisp to Fn notation and >>>f(a, b, ... z) --> (f a b ... z) (i.e. move the function in the arg list and ignore the commas! >>> >>>This seemed to be a very easy operation that appealed to many non-lispers. >>>So we would get >>> ,append(ta, .getText(ta2)) >>>or >>>define(sq(x),*(x,x)) >>>I'm didn't ask how he handled other syntax, such as let, case, etc..... >>> >>>---Tim--- >>> >>>P.S. Sorry I haven't been very responsive lately. I'm teaching two summmer school >>>courses that each meet 2.5 hours/day, 3 days a week. >>> >>>I've continued to "use" Jscheme pretty heavily and have built a java.nio-based networking library >>> groupscheme/kernel/NioGroupTools.scm in the groupscheme.sourceforge.net >>>which works very nicely. It maintains a single thread for handling all socket I/O using non-blocking >>>selects. >>> >>> >>>You create a server using >>> (make-group-server PORT) >>>and a client using >>> (define c (make-group-client YOURNAME YOURGROUP SERVER-IP SERVER-PORT)) >>> >>>clients can send a list of s-expressions to all members of their group using >>> (c 'send A B ... Z) (which writes the message M= (A B ... Z) to the server's socket. >>>They can add listeners to the socket using >>> (c 'add-super-listener (lambda M ..do something with M...)) >>>or >>> (c 'add-listener 'A (lambda (A B ... Z) do something with the message M provided (car M)=A)) >>>The message can only contain elements for which reading/writing is the identity. >>> >>>Anyway, the cool thing is that the use of java.nio allows us to have many many >>>simultaneous servers and clients with only one thread. >>> >>>> >>>>Begin forwarded message ("Anton van Straaten" <an...@ap...>, ): >>>> >>>>>(module reverse-apply mzscheme >>>>> >>>>> ; define a "backwards" application operation >>>>> (define-syntax reverse-apply >>>>> (syntax-rules () >>>>> [(_ fn) (fn)] ;support zero-arg calls >>>>> [(_ obj fn arg ...) (fn obj arg ...)])) >>>>> >>>>> ; allow this module to be used as a "language" (see below) >>>>> (provide (all-from-except mzscheme #%app) >>>>> ; provide reverse-apply, replacing default #%app >>>>> (rename reverse-apply #%app))) >>>>> >>>>>Save the above in a file called "reverse-apply.scm". To use this >>>>>interactively, at the Scheme prompt you can execute: >>>>> >>>>> (require "reverse-apply.scm") >>>>> >>>>>Now you can do the following: >>>>> >>>>> (1 + 2) ;==> 3 >>>>> ('a cons 'b) ;==> (a . b) >>>>> ('(a b) car) ;==> a >>>>> ('(a b) cdr) ;==> (b) >>>>> >>>>> ; some dummy definitions - note reversed syntax >>>>> (define (filter x y) ("[filtering " string-append x y "] ")) >>>>> (define (merge x y) ("[merging " string-append x y "] ")) >>>>> (define (sort x) ("[sorting " string-append x "] ")) |
From: Ken A. <kan...@bb...> - 2003-06-17 14:46:28
|
This has been bothering me for quite a while too. I've just checked in a cleaner version. k At 04:56 AM 6/3/2003 -0400, Geoffrey Knauth wrote: >In the following: > >SchemeException:[[ERROR: undefined variable "foo"""]] > >Seeing "foo""" is a little jarring. I propose: `foo' or "foo" > >Maybe it is too much work to tailor output for types of errors. > >I found this in SchemeException.java:27: > return "SchemeException:[["+ m + jsint.E.shortStringify(c) +"]]"; > >Maybe as a minimal change this would look better? > return "SchemeException:[["+ m + " " + jsint.E.shortStringify(c) +"]]"; >producing: >SchemeException:[[ERROR: undefined variable "foo" ""]] > >Geoffrey >-- >Geoffrey S. Knauth | http://knauth.org/gsk > > > >------------------------------------------------------- >This SF.net email is sponsored by: eBay >Get office equipment for less on eBay! >http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5 >_______________________________________________ >Jscheme-user mailing list >Jsc...@li... >https://lists.sourceforge.net/lists/listinfo/jscheme-user |
From: Gary L. K. <kra...@bb...> - 2003-06-13 02:49:10
|
I went to a talk today at JavaOne regarding this, although it was pretty short on details. It's focused on a limited type of scripting: web scripting languages like PHP (which is the reference language). For example, a PHP file is a mixture of HTML and PHP code, and this effort would let the PHP code call Java code in some manner. Apparently the "some manner" is still to be defined. It don't think it is directly applicable to Jscheme because it appears to be intended for scripting languages not already implemented in Java that want to work with Java. (however, I haven't actually read the JSR) Gary At 01:32 PM 6/12/2003 -0400, Geoffrey Knauth wrote: >Saw this in a JavaOne 2003 announcement: > >>JSR-223 provides scripting support so that developers can marry scripting >>languages and the Java platform. Scripting languages are often an entry >>-------------------------------------------------------------------------- > >Gary L. Kratkiewicz kra...@bb... >BBN Technologies kra...@al... >617-873-2476 www.kratkiewicz.com > |
From: Geoffrey K. <ge...@kn...> - 2003-06-12 17:32:04
|
Saw this in a JavaOne 2003 announcement: > JSR-223 provides scripting support so that developers can marry > scripting languages and the Java platform. Scripting languages are > often an entry point for Web programmers to become full-fledged > developers. In addition, scripting languages are frequently kludged in > with more robust languages, so Sun is providing a seamless and clean > way for developers to do this with standards in place. > > Sun is recognizing what scripting programmers already recognized: > Scripting languages are crucial to much technology development. An > estimated 3 million scripting programmers are out there, all of whom > Sun hopes to bring to the Java platform through this scripting > support. Geoffrey -- Geoffrey S. Knauth | http://knauth.org/gsk |
From: Ken A. <kan...@bb...> - 2003-06-04 12:58:47
|
If you''re using the latest CVS JScheme, i believe i removed that dependency, but i could be wrong. I but i believe the downloadable jar will have this problem. k At 06:51 PM 6/3/2003 -0400, Geoffrey Knauth wrote: >I found this old message, which helped me extend my CLASSPATH. >But (load "using/run.scm") is now needed before (load "elf/classpath.scm"). > >Otherwise you get: > ($ "java.class.path" ) > SchemeException:[[ERROR: undefined variable "$"""]] > >Geoffrey >-- >Geoffrey S. Knauth | http://knauth.org/gsk > >FROM: Ken Anderson >DATE: 02/12/2002 14:27:53 >SUBJECT: [Silk-user] Dynamic classpath > >In the latest version of Jscheme the class path used by silk.Import can be >extended. See the code in elf/classpath.scm. > >So, for example, you can start from the jar and grow the classpath as your >application requires. Here's an example: > >D:\temp\silk\silkweb>java -jar jscheme.jar > > >Jscheme 4.3.3 (02/11/2002) > > > > (load "elf/classpath.scm") >#t > > (extendClassPath "d:/java/junit3.7/junit.jar") >#null > > (junit.swingui.TestRunner.main (array String.class)) >#null > > >This brings up the JUnit GUI. > >Also, if you need to recompile a class loaded through the extended class >path you can run (replaceClassLoaders) to get a new set of class loaders so >recompiled classes can be loaded through them. (Any old objects will >behave the old way of course). > >Let me know if you have any problems. > >One current limitation is you can't recompile and reload any core Jscheme >classes. A small price to pay for this magic. >_______________________________________________ >Silk-user mailing list > > > >------------------------------------------------------- >This SF.net email is sponsored by: Etnus, makers of TotalView, The best >thread debugger on the planet. Designed with thread debugging features >you've never dreamed of, try TotalView 6 free at www.etnus.com. >_______________________________________________ >Jscheme-user mailing list >Jsc...@li... >https://lists.sourceforge.net/lists/listinfo/jscheme-user |
From: Geoffrey K. <ge...@kn...> - 2003-06-03 22:51:49
|
I found this old message, which helped me extend my CLASSPATH. But (load "using/run.scm") is now needed before (load=20 "elf/classpath.scm"). Otherwise you get: ($ "java.class.path" ) SchemeException:[[ERROR: undefined variable "$"""]] Geoffrey -- Geoffrey S. Knauth | http://knauth.org/gsk FROM: Ken Anderson DATE: 02/12/2002=A014:27:53 SUBJECT: [Silk-user] Dynamic classpath In the latest version of Jscheme the class path used by silk.Import can=20= be extended. See the code in elf/classpath.scm. So, for example, you can start from the jar and grow the classpath as=20 your application requires. Here's an example: D:\temp\silk\silkweb>java -jar jscheme.jar Jscheme 4.3.3 (02/11/2002) > (load "elf/classpath.scm") #t > (extendClassPath "d:/java/junit3.7/junit.jar") #null > (junit.swingui.TestRunner.main (array String.class)) #null > This brings up the JUnit GUI. Also, if you need to recompile a class loaded through the extended class path you can run (replaceClassLoaders) to get a new set of class=20 loaders so recompiled classes can be loaded through them. (Any old objects will behave the old way of course). Let me know if you have any problems. One current limitation is you can't recompile and reload any core=20 Jscheme classes. A small price to pay for this magic. _______________________________________________ Silk-user mailing list |
From: Geoffrey K. <ge...@kn...> - 2003-06-03 08:56:09
|
In the following: SchemeException:[[ERROR: undefined variable "foo"""]] Seeing "foo""" is a little jarring. I propose: `foo' or "foo" Maybe it is too much work to tailor output for types of errors. I found this in SchemeException.java:27: return "SchemeException:[["+ m + jsint.E.shortStringify(c) +"]]"; Maybe as a minimal change this would look better? return "SchemeException:[["+ m + " " + jsint.E.shortStringify(c) +"]]"; producing: SchemeException:[[ERROR: undefined variable "foo" ""]] Geoffrey -- Geoffrey S. Knauth | http://knauth.org/gsk |
From: Ken A. <kan...@bb...> - 2003-05-30 13:47:25
|
At 05:35 PM 5/28/2003 -0400, Geoffrey Knauth wrote: >I was looking at this: > >(define-macro (test-equal? x y) > `(let (([x-result] ,x) > ([y-result] ,y)) > (if (not (equal? [x-result] [y-result])) > (begin (display "Assertion failed!") (newline) > (display ',x) (display "->") (newline) > (write [x-result]) (newline) (display "does not equal") (newline) > (display ',y) (display "->") (newline) > (write [y-result]) (newline))))) > >and I wondered what the difference was between this and: > >(define (test-equal? x y) > (let (([x-result] x) > ([y-result] y)) > (if (not (equal? [x-result] [y-result])) > (begin (display "Assertion failed!") (newline) > (display 'x) (display "->") (newline) > (write [x-result]) (newline) (display "does not equal") (newline) > (display 'y) (display "->") (newline) > (write [y-result]) (newline))))) > >It started with my wondering why this was a macro and not a function, and now I'm wondering about the [ ] I see. In PLT Scheme, [ ] are used interchangeably with ( ), but in JScheme, [ ] are used to escape out of quasistrings, usually, except [x-result] is not a string. Does a foo argument for x or y get expanded to be foo-result? What happens to the [ ] in [x-result] ? Good question. the code i sent you was from 2001. It should mostly work, except for treatment of the characters "{}[]", that are currently handled specially by the reader, "{" is input to special string syntax, and "[" is escape into a scheme value. The cool thing is that all of this can be nested, though it breaks old code. A macro that uses [x-result] is probably trying to have the macro avoid capturing variables, because JScheme macros are unhygienic, like Common Lisp, unlike Scheme. So in JScheme you should need to use some likely to be unique name, like ***-x-result-***, or rewrite the macro to use a gensym that produces a unique name. While JScheme's builtin macro facility is like Common Lisp's - hurt yourself macros, there are 2 hygenic macro systems that work with JSCheme. The difference between the two examples you give is that the first is a macro so it can use x and y as both expressions and as the scheme value of those expressions by using ,x or ,y. So references to ',x is what x looks like, and ,x means the value of x. And in the second, because it is a function, you can only use the values of x and y. |
From: Ken A. <kan...@bb...> - 2003-05-07 16:57:17
|
Let me try to answer this, question: At 05:48 AM 5/1/2003 -0400, Geoffrey Knauth wrote: >Are JScheme and GOOPS compatible? >http://www.gnu.org/software/goops/goops.html ] as well as: It seems to me there are a number of slightly different Scheme object representations or conventions floating around. I'm trying to pick one that would fit best with JScheme [for LL3 Fuels]. Do you have a favorite convention? The short answer is "no" for both. GOOPS is so similar to STKlos that it has a compatibility module to support STKlos syntax. Both are based on Tiny CLOS (recommended reading) http://wombat.doc.ic.ac.uk/foldoc/foldoc.cgi?Tiny+Clos but are extensions. To make Tiny CLOS useful, you need to extend it in sevral ways. The first is to make metaobjects less anonymous. For several reasons, instances are implemented as anonymous procedures so things are very hard to debug. Both GOOPS and STKlos have some of the meta level code in C. It looks like GOOPS is about 1/2 C and 1/2 Scheme, about 3500 lines each. GOOPS at least has before and after methods (Tiny only has next), and #:keywords, which i don't think are really necessary. JScheme has multimethods on Java classes, but it does not have a MOP. It has several ways to define Java classes in Scheme, however. To be compatible across Schemes there are at least two approaches: A1: Define your own language extension as macros that expand into the underlying object system that the target Scheme uses. This is how people wrote portable Lisp before Common Lisp. You'll need to pick a subset of the underlying languages. A2: Start with Tiny CLOS, add extensions that are easy to implement and compatible with the other object systems. I have a version of Tiny, from 1998 JScheme, which we could use as a starting point. A3: Think outside the CLOS box. I have two implementations of simple prototype languages that should be quite portable. In additional to normal scheme you'll need a hashtable and maybe a record type. Implementations are only 1 or 2 pages. I can send you these separately. k |
From: Geoffrey K. <ge...@kn...> - 2003-05-01 09:48:17
|
Are JScheme and GOOPS compatible? [ http://www.gnu.org/software/goops/goops.html ] Geoffrey -- Geoffrey S. Knauth | http://knauth.org/gsk |
From: Ken A. <kan...@bb...> - 2003-04-29 20:26:18
|
We've had similar experience with JScheme, a Scheme in Java. Two projects i know about are 60% and 80% Scheme. In the second case we prototyped a key component in Scheme and eventually rewrote the guts of it in Java, though we still use Scheme data structures such as pairs inside. All the external control is done in Scheme. At 09:34 PM 4/29/2003 +0200, Mikael Djurfeldt wrote: >Thamer Al-Harbash <tm...@wh...> writes: > >> It's funny you should talk about layering. I've recently started >> writing a project at work (or re-writing for the Nth time thanks >> to changes being requested), and I chose doing the high level >> work in guile just so I could say "ok done," and get back to more >> important things. >> >> The funny thing is, thanks to guile's seamless use of arbitrarily >> big numbers (its numerical tower), I don't know if I *want* to do >> my number crunching in C anymore. This project is slowly becoming >> 100% scheme as I remove the final bits of C from it. > >I've been through something similar. I've written a neuron simulator >which I've used in my research for several years. > >Originally, a lot of things was done with C++. Guile was only used as >a scripting language, gluing pieces together. Then, during the years, >I tended to do more and more on the Scheme level. > >Now, I write almost everything in Scheme. > >> I have not noticed any significant penalty in performance. > >For me, there would be a penalty if the inner loops were on the Scheme >level. Now, however, I do most computations using my Matlab-like >GOOPS-based matrix library >(http://kvast.blakulla.net/mdj/matrix-1.2.0.tar.gz). So, even though >the algorithms are written in Guile Scheme, the overhead gets drowned >by the heavy crunching vector and matrix loops on the C level in the >library. Sounds nice. Do the xlisp-stat guys know about this? >(BTW, if any of the people who have written to me regarding this >library and possible collaboration with other projects, I have to >apologize for not getting back to you quickly. I will do that soon.) > >Best regards, >Mikael D. > > >_______________________________________________ >Guile-user mailing list >Gui...@gn... >http://mail.gnu.org/mailman/listinfo/guile-user |
From: Geoffrey K. <ge...@kn...> - 2003-04-07 22:44:11
|
On Monday, Apr 7, 2003, at 17:31 US/Eastern, Ken Anderson wrote: > It sucessfully reads > #x ff as 255 while PLT scheme gives the error > read-number: no digits I tried #xff (no space between x and ff) in PLT Scheme v203 and got: 255 I tried #x ff (with the space) in PLT v203 and got: read-number: no digits |
From: Ken A. <kan...@bb...> - 2003-04-07 21:32:04
|
Tim, I think we need to refactor the code in InputPort for reading numbers. Over the weekend, i found that with U.useJavaSyntax$ = #f we did not correctly parse #xff. This was due to a bug in my maybeNumber optimization which did not include radix because it looked like radix wasn't involved, but it was deeper down. Radix was a syncronized variable at this point. Yes developers, read the last sentence carefully. Good reason to learn functional programming! Radix is set in a synchronized method, which i changed to be readHashedNumber() it calls readToken which is over kill at this point. It eventually calls readNumberOrSymbol(ch) This is also too general. It sucessfully reads #x ff as 255 while PLT scheme gives the error read-number: no digits It also produces this uninformative error: > #xg SchemeException:[[ERROR: undefined variable "g"""]] at jsint.E.error(E.java:14) at jsint.E.error(E.java:19) at jsint.DynamicEnvironment.getValue(DynamicEnvironment.java:102) at jsint.DynamicVariable.getDynamicValue(DynamicVariable.java:13) at jsint.Scheme.execute(Scheme.java:498) at jsint.Scheme.eval(Scheme.java:425) at jsint.Scheme.eval(Scheme.java:414) at jsint.Scheme.readEvalWriteLoop(Scheme.java:208) at jsint.Scheme.runJscheme(Scheme.java:186) at jsint.Scheme.defaultMain(Scheme.java:149) at jsint.Scheme.main(Scheme.java:124) at jscheme.REPL.main(REPL.java:138) > |
From: Ken A. <kan...@bb...> - 2003-04-03 16:25:52
|
OOPS, its in src/elf/eopl2/jscheme/genwrite.scm i'll fix this shortly. At 07:16 AM 4/3/2003 -0800, sa...@bl... wrote: >Ken Anderson writes: >> I've extended describe it will now describe closures and generics: > >| > (define (foo x) (* 2 x)) >| (lambda foo (x)...) >| > foo >| (lambda foo (x)...) >| > (load "elf/basic.scm") >| #t >| > (describe foo) >| Closure named foo >| >| (describe foo ) >| >| ==================================== >| >| (pp (revertBody f )) >| f = (lambda foo (x)...) >| >| ==================================== >| SchemeException:[[ERROR: undefined variable "pp"""]] > >Where's pretty-print (pp)? > >Derek > >-- >Derek Upham >sa...@bl... > > >------------------------------------------------------- >This SF.net email is sponsored by: ValueWeb: >Dedicated Hosting for just $79/mo with 500 GB of bandwidth! >No other company gives more support or power for your dedicated server >http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ >_______________________________________________ >Jscheme-user mailing list >Jsc...@li... >https://lists.sourceforge.net/lists/listinfo/jscheme-user |
From: Ken A. <kan...@bb...> - 2003-04-03 15:56:19
|
At 11:06 AM 4/2/2003 -0600, Rafael Lozano wrote: >It advances bur I=92ve problems. I loaded (load =93using/run.scm=94). I= t >works but I=92ve some problems with (load =93jscheme/jscheme-init.scm=94= ) I >think that the problem is loading (load "define-datatype.scm"). > >I'm using the "define-datatype.scm" that I attached to this message > >Can you help me? I've checked in changes to fix the EOPL2 support. You'll need to build jscheme from CVS. See http://jscheme.sourceforge.net/jscheme/doc/userman.html#downloadcvs see src/elf/eopl2/jscheme-init.scm for instructions. It takes about 13 minutes to run all the tests. k=20 |
From: <sa...@bl...> - 2003-04-03 15:16:06
|
Ken Anderson writes: > I've extended describe it will now describe closures and generics: | > (define (foo x) (* 2 x)) | (lambda foo (x)...) | > foo | (lambda foo (x)...) | > (load "elf/basic.scm") | #t | > (describe foo) | Closure named foo | | (describe foo ) | | ==================================== | | (pp (revertBody f )) | f = (lambda foo (x)...) | | ==================================== | SchemeException:[[ERROR: undefined variable "pp"""]] Where's pretty-print (pp)? Derek -- Derek Upham sa...@bl... |
From: Ken A. <kan...@bb...> - 2003-04-02 19:55:22
|
Gary Kratkiewicz noticed that the zip and jar links on http://jscheme.sourceforge.net/jscheme/doc/webapp.htmlhttp://jscheme.sourceforge.net/jscheme/doc/webapp.html no longer work. |
From: Ken A. <kan...@bb...> - 2003-04-01 22:34:55
|
Yes, eopl2 should work with JScheme. See src/elf/eopl2/jscheme/jscheme-init.scm for instructions, which may need some updating. IF they don't work, i'll help you correct them. k At 04:19 PM 4/1/2003 -0500, Timothy Hickey wrote: >Hi Rafael, > > Ken Anderson did some porting of EOPL code to jscheme. >Perhaps he can better answer your question, I'm cc'ing this >to Ken. (If you do use jscheme with EOPL2, please tell us >how it goes!) > >---Tim--- > > >On Tuesday, April 1, 2003, at 12:49 PM, Rafael Lozano wrote: > >>Hi tim. >> >>My name is Rafael Lozano and I'm professor of programming languages in >>Mexico. I'm using the book of Daniel Friedman "Essentials of Programming >>languages 2ed". I want to know if it's possible to use jscheme with the >>code of Daniel and how I can do it. >> >>Thank you very much >> >>Rafael Lozano >>ITESM-CCM |
From: Timothy H. <tim...@ma...> - 2003-04-01 21:18:49
|
Hi Rafael, Ken Anderson did some porting of EOPL code to jscheme. Perhaps he can better answer your question, I'm cc'ing this to Ken. (If you do use jscheme with EOPL2, please tell us how it goes!) ---Tim--- On Tuesday, April 1, 2003, at 12:49 PM, Rafael Lozano wrote: > Hi tim. > > My name is Rafael Lozano and I'm professor of programming languages in > Mexico. I'm using the book of Daniel Friedman "Essentials of Programming > languages 2ed". I want to know if it's possible to use jscheme with the > code of Daniel and how I can do it. > > Thank you very much > > Rafael Lozano > ITESM-CCM > |
From: Ken A. <kan...@bb...> - 2003-03-31 21:40:56
|
At 04:12 PM 3/31/2003 -0500, Timothy Hickey wrote: >Could you try loading it without the compiled class, i.e., use > (evnironment-import "jlib/JLIB.scm") >instead of > (environment-import jlib.JLIB.class) OK, if i do (environment-import "jlib/JLIB.scm" "jl:") it works. I'm sure the compiler is what the problem is. >The problem might be in the interaction of the compiler with the module system... > >When I use "jlib/JLIB.scm" instead of jlib.JLIB.class, everything works beautifully... > >I'll look into why the compiler isn't working will with modules..... > >---Tim--- > > >On Monday, March 31, 2003, at 03:50 PM, Ken Anderson wrote: > >>I guess i don't understand how these new environmnets work. When i load >>this file, and run >>(interruptButton) >>I get the error >>(jl:button "Interrupt" Color.red$ (jl:action (lambda interruptButton~2 >>(e)...) )) >> t = Thread[main,5,main] >> >> ==================================== >>SchemeException:[[ERROR: undefined variable "processConArgs"""]] >>What am i doing wrong? >>(environment-import jlib.JLIB.class "jl:") >>(import "java.awt.Color") >>(define (interruptButton) >> ;; Provides an interrupt button for this thread. >> ;; JScheme execution will be interrupted on the next procedure call. >> (let* ((t (Thread.currentThread)) >> (win (jl:window "Interrupt" >> (jl:border >> (jl:north (jl:label (.toString t))) >> (jl:center (jl:button "Interrupt" >> Color.red$ >> (jl:action >> (lambda (e) >> (Scheme.interrupt t))))))))) >> (.pack win) >> (.show win))) >> >> >> >>------------------------------------------------------- >>This SF.net email is sponsored by: ValueWeb: >>Dedicated Hosting for just $79/mo with 500 GB of bandwidth! >>No other company gives more support or power for your dedicated server >>http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ >>_______________________________________________ >>Jscheme-user mailing list >>Jsc...@li... >>https://lists.sourceforge.net/lists/listinfo/jscheme-user > > > >------------------------------------------------------- >This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for just $79/mo with 500 GB of bandwidth! No other company gives more support or power for your dedicated server >http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ >_______________________________________________ >Jscheme-user mailing list >Jsc...@li... >https://lists.sourceforge.net/lists/listinfo/jscheme-user |
From: Timothy H. <tim...@ma...> - 2003-03-31 21:11:57
|
Could you try loading it without the compiled class, i.e., use (evnironment-import "jlib/JLIB.scm") instead of (environment-import jlib.JLIB.class) The problem might be in the interaction of the compiler with the module system... When I use "jlib/JLIB.scm" instead of jlib.JLIB.class, everything works beautifully... I'll look into why the compiler isn't working will with modules..... ---Tim--- On Monday, March 31, 2003, at 03:50 PM, Ken Anderson wrote: > I guess i don't understand how these new environmnets work. When i load > this file, and run > (interruptButton) > I get the error > (jl:button "Interrupt" Color.red$ (jl:action (lambda interruptButton~2 > (e)...) )) > t = Thread[main,5,main] > > ==================================== > SchemeException:[[ERROR: undefined variable "processConArgs"""]] >> > What am i doing wrong? > (environment-import jlib.JLIB.class "jl:") > (import "java.awt.Color") > (define (interruptButton) > ;; Provides an interrupt button for this thread. > ;; JScheme execution will be interrupted on the next procedure call. > (let* ((t (Thread.currentThread)) > (win (jl:window "Interrupt" > (jl:border > (jl:north (jl:label (.toString t))) > (jl:center (jl:button "Interrupt" > Color.red$ > (jl:action > (lambda (e) > (Scheme.interrupt t))))))))) > (.pack win) > (.show win))) > > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Jscheme-user mailing list > Jsc...@li... > https://lists.sourceforge.net/lists/listinfo/jscheme-user > |
From: Ken A. <kan...@bb...> - 2003-03-31 20:57:33
|
I've extended describe it will now describe closures and generics: > (describe print) Closure named print (lambda (it . arg) (begin (if (null? arg) (begin (write it) (write-char '#\newline)) (let ((s (car arg))) (begin (write it s) (write-char '#\newline s)))) it)) 9 I've changed how closures .toString: > (define (foo xs) (map (lambda (x) (/ i x)) xs)) (lambda foo (xs)...) > (foo '(1 2 3 0)) I've changed set-procedure-name to name internal lambdas with <name>~<count> so you can see more easily where the code is coming from I hope this makes the backtrace more understandable. (map (lambda foo~0 (x)...) xs ) xs = (1 2 3 0) ==================================== (/ i x ) x = 1 xs = (1 2 3 0) |
From: Ken A. <kan...@bb...> - 2003-03-31 20:51:15
|
I guess i don't understand how these new environmnets work. When i load this file, and run (interruptButton) I get the error (jl:button "Interrupt" Color.red$ (jl:action (lambda interruptButton~2 (e)...) )) t = Thread[main,5,main] ==================================== SchemeException:[[ERROR: undefined variable "processConArgs"""]] > What am i doing wrong? (environment-import jlib.JLIB.class "jl:") (import "java.awt.Color") (define (interruptButton) ;; Provides an interrupt button for this thread. ;; JScheme execution will be interrupted on the next procedure call. (let* ((t (Thread.currentThread)) (win (jl:window "Interrupt" (jl:border (jl:north (jl:label (.toString t))) (jl:center (jl:button "Interrupt" Color.red$ (jl:action (lambda (e) (Scheme.interrupt t))))))))) (.pack win) (.show win))) |
From: Geoffrey K. <gk...@ma...> - 2003-03-28 15:28:59
|
I saw a note from Ken that he had a JScheme server running for days. Presumably this is a recent version of JScheme. Where I work, we are still using an older version of JScheme (dating to 28-Sep-01), but we will upgrade in the weeks ahead. I heard this morning our customer had to restart their JScheme server yesterday for an as-yet-undetermined reason, but that prior to this it had been running continuously for several MONTHS. Geoffrey |
From: Michael R H. <bu...@cs...> - 2003-03-28 00:05:57
|
On Thu, 2003-03-27 at 18:29, Ken Anderson wrote: > We now have Jscheme programs that can run for several days processing data. > > We'd like to have a way of profiling JScheme applications. > > Compiling to java and using the java profiler doesn't work, because all procedures in a file are compiled into one Java procedure which is a giant case statement. So timing is lumped together. I guess i could write each procedure to its own file, but Yow! > > Our concerns are localized enough we may be able to wrap some timing code at the right place an learn something. But i thought i'd ask the group about what might be a good approach to profiling. I'm currently thinking of locally redefining define to wrap timing code around a definition. That way we can focus porfiling to the procedures we think are likely suspects. > > Your thoughts on this topic are welcome! I'd really like to (eventually) have a slick profiling interface in my Eclipse plugin. If JScheme has a powerful enough backend (say, programmatically exposed via a server port?) then I can present the data similarly to Eclipse profiler plugin (screenshots: http://eclipsecolorer.sourceforge.net/ ) But I don't have any particular ideas on what to provide as I'm a long way away from this sort of stuff (I want to have source level debugging before I get into profiling). -- Michael R Head <bu...@cs...> Brandeis University CS graduate student |