LtU Forum

Lucid, Gipsy paper

While re-reading some Alan Kay goodness, I was urged on to try to find information on Lucid, which led me to Gipsy. Unfortunately not a lot turned up. I did find a Masters thesis which talks about them plus Java (!?) which I now have to find time to actually read. Anybody know much about any of this?

seeking help: approaches to model based development?

Assuming that one cause of software problems is insufficient coverage of the state space (so data goes into some range that causes the program to run in an unexpected and bad way), I wonder if one could approach that issue by trying to deal with the state space more explicitly: start with a null program and iteratively break it down and define its behaviour over the full state space, all the while proving that it is correct, eventually reaching a "full" program. (Perhaps only for restricted problem domains.)

What are the current best languages/tools/practices along those lines? In my head I have some image of a 'star trek'y interface, perhaps vaguely akin to the Subtext GUI, which allows the developer to 'see' how they are progressing in decomposing things. I realize visual approaches might well have issues as the decomposition gets ever more branching.

Thanks.

(I am actively reading up on things like Spin, MBSE, SPARKAda, etc. but have no practical experience with any such thing, so remain skeptical and clueless even after reading up on things.)

Academic Commons

Does anyone know anything about academic commons? My question is this. I have a copy of an old book listed as academic commons but not available for download. Is it leagal for a thirld party, neither the author or publisher, to post an electronic copy of such a book. Thanks in advance.

O'Caml Structure Editor Toolkit

Hello LtU,
I've starting a project called OSET for building structure editors. I need people to try it out and give me some feedback.
The homepage is:
http://sites.google.com/site/rathereasy/oset
the manual is:
http://sites.google.com/site/rathereasy/manual
you can download the source:
http://code.google.com/p/oset/

Just read the INSTALL to install. Any feedback will be very much welcome.

Note: doesn't work with ocaml version 3.11.0 but works with 3.11.1 and 3.10.2

Parsing user defined operators with precedence/assoc ala ML

I Googled around quite a bit and didn't turn up much. I do note mllex and mlyacc distributed with SMLNJ, but it's not clear how to handle user defined operators with a yacc based strategy, or even whether SMLNJ uses these tools to implement itself.

Is this typically a job for good old hand rolled recursive descent?

For any and all pointers, info - thanks much!

Scott

Definition of Functional Programming Language

Functional PL :== PL with ability to pass procedures as arguments to other procedures, return procedures as result of other procedures, and store procedures in data structures.

But can we call functional PLs without tail call elimination obligation (TCEO)?
TCEO gives ability to do global jumps, it affects programming style heavily. Also, many helloworldistic programs that come to mind when FP theme arise in conversation employs TCEO.

Maybe it worth to include TCEO in FPL definition?

Semanitcs in the real world?

I don't want to start a discussion here about the merits of the copyright schemes advocated by the Associated Press, but this may be a nice example of syntax vs. semantics and what semantics are in the real world...

Felten remarks: hNews does include a "rights" field that can be attached to an article, but the rights field uses ccREL, the Creative Commons Rights Expression Language, whose definition states unequivocally that it does not limit users' rights already granted by copyright and can only convey further rights to the user.

Where does ccREL state that? It is, of course, not part of the "statements" of ccREL per se, i.e., the syntax of ccREL clauses. It is part of the definition of ccREL, i.e., the intended semantics of ccREL statements. But clearly, if you think of ccREL (or language, more generally) as just a handy syntax specification, you may end up unconsciously ignoring the intended semantics...

I have no idea if this is actually what happened in this case, of course.

New JDK 7 Feature: Support for Dynamically Typed Languages in the JVM

Sun has a new article out that talks about the changes in the upcoming JDK 7 to support dynamic typed languages. Of special note is the new invokedynamic bytecode:

the invokedynamic bytecode instruction enables an implementer of a dynamic language to translate a method invocation into bytecode without having to specify a target type that contains the method. The method specification in this case is a simplified constant pool reference, which specifies only a method name and type descriptor. The descriptor specifies the return type of the call and the type of method arguments.

Full article: New JDK 7 Feature: Support for Dynamically Typed Languages in the Java Virtual Machine

Past discussion on invokedynamic here and JAOO 2005 slides by Gilad Bracha.

very simple haskell question

I am just starting Haskell and trying to write an alternative function for returning the last element of a list by using the !! function. I have tried...

mylast xs = xs !! (length [xs] - 1)

but this always returns the head of the list. What am I doing wrong?
TIA,
Chad.

I did say it was very simple...
like the author.

(Very) Simpleminded kind question

Are there other kinds besides * and *→* ?
XML feed