User loginNavigation |
GeneralACM Queue: How Not to Write FORTRAN in Any Language
This article isn't really about programming languages, but some of the claims made should be scrutinized by PL mavens,
The idea of programming-language determinism has some truth to it, but is overrated. Because we are often tackling the same problems in C, Perl, Scheme, Smalltalk, and so on, we can usually find a way to analyze them and code solutions using common designs. Sometimes the features of a particular language make a particular solution much more elegant and comprehensible, and in that case form influences content. But these languages have enough common ground that they can share many designs. C may have pre-increment and post-increment operators, but you can still add 1 to a variable in any language that supports variables. I agree with some of the style tips the author gives, but I think understanding the different abstraction facilities different languages offer is even more important for writing readable and maintainable code. By Ehud Lamm at 2005-01-28 20:25 | General | login or register to post comments | other blogs | 5300 reads
Getting Started
It seems to me that LtU has many new readers and contributors since moving to the new site. That's great!
Yet it seems to me that the situation right now is that LtU has readers with very different backgrounds, among them many readers who haven't studied PL formally. Others come from academia, and study PL theory for a living. Since we have such a lively community it occured to me to start a thread for advice on where to begin aimed at those who haven't studied PL theory, yet want to follow the papers and books we discuss. So the question, mostly directed at old timers, is to which resources would you send a friend asking for advice on learning about the theoretical study of programming languages? P.S The early LtU archives may be helpful, since I used LtU to organize and collect the papers I read when I began my studies in the field. By Ehud Lamm at 2005-01-21 11:45 | General | Teaching & Learning | 65 comments | other blogs | 385590 reads
Two misc. items
ACM Queue: Languages, Levels, Libraries, and LongevityIn 50 years, we’ve already seen numerous programming systems come and (mostly) go, although some have remained a long time and will probably do so for: decades? centuries? millennia? The questions about language designs, levels of abstraction, libraries, and resulting longevity are numerous. Why do new languages arise? Why is it sometimes easier to write new software than to adapt old software that works? How many different levels of languages make sense? Why do some languages last in the face of "better" ones? Nothing particularly new in this article but you might want to take a look. I wish you all a happy new year, and hope that you are able and that you want to donate something for those less fortunate. By Ehud Lamm at 2004-12-31 22:21 | General | login or register to post comments | other blogs | 4486 reads
Pascal-FCPascal-FC is a programming language aimed at supporting the teaching of concurrent programming. It supports a wide range of concurrency primitives including semaphores, monitors with condition variables, synchronous message passing using channels (as in occam and CSP), remote invocation (as used in the Ada rendezvous), protected resources (as used in Ada 95 protected objects) and requeue. All of these features can be easily used, either in isolation or together. It seems like Pascal-FC wasn't mentioned here before, and since there are implementations for various platforms I thought some of you may want to download and play with it a bit.
An Invitation to SETLLink: This article gives an easy to follow introduction to the SETL language. SETL has been around since 1970 and excels at manipulating sets.
(Previous LtU discussion) New Year's ResolutionsA couple of years back, the Pragmatic Programmers had this sage advice:
For 2002, Haskell was presented as the LOTY choice - pretty good choice. But since that time, the authors became enamored of the Ruby way, and have failed to submit a nominee for subsequent annums. My personal choice for the coming year is tender young Alice. Anyone else have their dates picked out? Or are you all into the Language of the Week per our dear moderator? Linux Clustering with Ruby Queue: Small Is Beautiful
A nice article outlining the design of a small clustering engine using Ruby.
The article highlights several interesting features of Ruby,
Yukihiro Matsumoto, aka Matz, has said that "The purpose of Ruby is to maximize programming pleasure", and experience has taught me that enjoying the creative process leads to faster development and higher quality code. Ruby features powerful object-oriented abstraction techniques, extreme dynamism, ease of extensibility and an armada of useful libraries. It is a veritable Swiss Army machete, precisely the sort of tool one should bring into uncharted territory such as the NFS-mounted priority queue I was seeking to build... By Ehud Lamm at 2004-12-26 11:34 | General | login or register to post comments | other blogs | 6880 reads
Alice Through the Looking GlassLink: Alice is an extension to ML to support Open Programming, described as ML meets Oz. Alice Version 1.0 has been released.
(via Chris Double) Coroutines in LuaLink: The Lua folks discuss their implementation of coroutines, using Create, Resume and Yield methods.
The main difference with typical thread implementations is that (a). the caller is suspended until completion and (b). a coroutine can return values like a function call. I suppose I'd summarize it as functions that retain state between calls. |
Browse archives
Active forum topics |
Recent comments
23 weeks 2 days ago
23 weeks 2 days ago
23 weeks 2 days ago
45 weeks 3 days ago
49 weeks 5 days ago
51 weeks 3 days ago
51 weeks 3 days ago
1 year 1 week ago
1 year 6 weeks ago
1 year 6 weeks ago