Updated: 9/23/02; 10:30:54 PM.
Theology Notes
Theology is the queen of the sciences, and philosophy is her handmaiden.
        

Friday, August 23, 2002

After playing around with MovableType, I'm back on Radio. If I wanted to get web hosting I could use MT, but that would be more expensive (~$100/year) than Radio hosting ($40/year), and since I've already paid for a year of Radio, I will stick with it. The reason I tried to switch was that Radio seems to have quite a performance impact to my G4 running Mac OS X, and I liked the commenting features of MT, especially the email notification. I can live without comments, and maybe upgrading to Mac OS 10.2 will fix my performance problems. Also, I can always turn off Radio when it gets in the way.
10:18:10 AM    

Yesterday John Robb said something profound about The Commons. It's almost empty. Not many want to put anything in. Or we want to be selective about it. You can read Scripting News and DaveNet for free. You can even use Radio and Frontier for free, for a short period of time while you evaluate the software. But this world, with doctors, hospitals, grocery stores, cars, gas, insurance, medicine, lawyers, etc, requires money. The trick is to have art in your life and make some of it pay. And that in itself is an art. [Scripting News]

I like free software and I like open source, and I would like to see a day when programmers, artists, and workers can freely share their work with the assurance that society will take care of them. Until that happens, I can't blame someone for asking for compensation before they share with you the fruit of their labor. I also don't blame them for using propriety and the protection of the law in order to stay in business.

I think the strategy that UserLand and Apple have of sharing some code while keeping some confidential is a smart move. They generate goodwill and they protect themselves. If someone like RedHat can make money and be completely open source, I think that's great. If someone like Groove wants to keep their code and protocols proprietary, but allow extension through an API, that's their choice, and I respect it. However, as a consumer and user, I have a choice also. I will tend to choose open protocols over proprietary. After that, I have a preference for open source, but that is often not as important to me as the protocols and other issues such as price, performance, features, and reliability.

So Dave, I appreciate your generosity and I admire your business sense. You have managed to greatly advance the Internet and make a living for yourself and others. Well done!


9:57:06 AM    

Project JOOS (Java Object-Oriented Subset). Features a compiler for a small manageable subset of Java ideal for teaching and research (Action Semantics). If you've ever dreamed of pruning Java back, forking it, and growing it yourself with a new set of features (e.g. functional) [ O'Reilly Java3 Article, LTU Java Critique ] this seems like a good place to start. Developing a JOOS Compiler Using a SableCC Framework (Alaoui, 2000) provides a detailed description of the Java implementation of JOOS. There are no packages, interfaces, exceptions, mixed statements and declarations, or switch statements, "fields can only be protected, methods and constructors can only be public; methods cannot be overloaded, only constructors can; arrays are not supported (this can be made up for by using Vector objects); the main method is the only allowable static member in a class; primitive types for real numbers are not supported." External declarations, similar to C's, allow you to use Java libraries and even add Java language features to JOOS: "JOOS also provides its own library of precompiled class files for interfacing to functionality supported only in Java (e.g. constants, static methods and static fields)." There even seems to be a logical place to insert an Abstract Syntax Tree editor for source code transformation and refactoring like Intentional Programming does. Abstract Syntax Trees are "built by the parser, using the semantic actions specified in the grammar file... The compiler then performs the usual passes on the AST, and each pass is explicitly and manually implemented as a recursive descent of the syntax tree." (Alaoui, 4-5) [Lambda the Ultimate]

This seems pretty interesting. I can see how a language that is more focused on the programming paradigm that is being taught would be valuable. But since it is a subset of Java, it would be easier for the student to move into the commercial Java world than if it was a completely different language.


9:26:25 AM    

Yea! I found a Go program called Goban for MacOS X. It has very nice graphics, a Cocoa interface, the GNU Go engine (which certainly can beat me), and it plays on the Internet.
8:46:37 AM    

I've finally finished reading English Spirituality by Martin Thornton, and I have twenty pages of notes from it. Although it has been a difficult assignment, I believe it has been worth the effort. Although he is difficult for a non-Anglican to understand, he does bring together in one book a great collection of thought on spiritual growth from many great saints and spiritual teachers in the Church.
8:45:30 AM    

I'm set up now to do Common Lisp programming on my Macintosh. I got CLISP from the Fink distribution. I also got a carbonized version of Emacs, which has some nice features for writing Lisp code, including parenthesis matching and syntax coloration for what little syntax Lisp has. It also does auto formating which should be helpful for finding structural errors. BBEdit will do parenthesis matching, but that's it.

Right now I'm going through a Lisp Primer that I've found helpful. I found it from An Introduction and Tutorial for Common Lisp, which is a good starting point with a lot of useful links.

Why I am wanting to learn Lisp? First of all, the reason I'm starting this now is that I'm seeing that my work is going to require us to deal with symbolic data of arbitrary complexity, which is the very thing that Lisp does well. Lisp is an acronym for LISt Processing. At first, this doesn't sound very exciting, but lists in Lisp can be of any length, and can have lists as elements, so that lists can be nested within lists, allowing the creation of hierachical structures of any complexity, limited only by the memory of the computer. Lisp efficiently stores and manipulates these structures, and Common Lisp has a powerful software development environment built on top of this basic capability. Even if I don't end up using Lisp at work, I believe I will learn some techniques that I could apply to Java, or whatever language I do use.
8:43:15 AM    


I enjoyed the movie Signs. Like all of M. Night Shyamalan's movies, it works at multiple levels. Although it is billed as a movie about extra-terrestrials, its deeper meaning is how God uses the tragedies in our lives and our own personal faults and weaknesses to bring about a greater good.
8:40:01 AM    


© Copyright 2002 Gregory Graham.
 
August 2002
Sun Mon Tue Wed Thu Fri Sat
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Jul   Sep


Click here to visit the Radio UserLand website.

Subscribe to "Theology Notes" in Radio UserLand.

Click to see the XML version of this web page.

Click here to send an email to the editor of this weblog.