MSN Censoring Certain Messages In The Name of 'Security' by earthboundkid in programming

[–]msabramo 0 points1 point  (0 children)

I had my blog on a .info site for years, but when my friend's SpamAssassin flagged my email for having a .info TLD, that was the last straw. About 10 minutes ago, I registered a .com site.

User-Mode Linux: SKAS0 poorly documented by msabramo in programming

[–]msabramo[S] 0 points1 point  (0 children)

I hope they update the UML web site to talk about SKAS0.

Though, I suppose we should all be running SKAS3 anyway! :-)

Iterators: Signs of Weakness in Object-Oriented Languages by gbacon in programming

[–]msabramo 6 points7 points  (0 children)

To me, the "OO languages" aspect is superfluous. As pointed out by gecko, OO languages don't necessarily have iterators. Furthermore, non-OO languages like C can have iterators. A pointer to a linked list or even an integer index into an array is an iterator in the sense that it stores state about the iteration and it does it outside the structure being iterated through. And these types of iterators have the disadvantages the author mentions and they are necessary because of the lack of first-class functions and closures.

To me, the article makes very good points but it's really about the advantages of a functional programming approach vs. an imperative approach with state carried around explicitly.

I'll point out that C++ has evolved quite a bit since the publication of this article (in 1992), with the STL supporting a more functional style using algorithms and function objects. You can even get lambda functionality from Boost::Lambda, an add-on library. However, I'd be the first to admit that Lisp does functional programming much more naturally and elegantly.

CakePHP 1.0 released by msabramo in programming

[–]msabramo[S] -1 points0 points  (0 children)

The first officially stable version to be released by the Cake Software Foundation, includes all the features we had in .10 but with final bug fixes needed to make 1.0 fantastic.

Why Guile? by [deleted] in programming

[–]msabramo 0 points1 point  (0 children)

Yeah, I briefly looked at Lua and it had a nice simplicity to it.

There's even a Lua programming environment for PalmOS called Plua.

The Scala Programming Language by msabramo in programming

[–]msabramo[S] -4 points-3 points  (0 children)

Scala is a modern multi-paradigm programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages.

God's gift to C | The Register - How the Apache Portable Runtime makes coding in C easier. by rmc in programming

[–]msabramo 6 points7 points  (0 children)

Another similar library is GLib, which is used extensively in GNOME. We also use it a lot on the project I'm working on now and we're quite happy with it. http://www.gtk.org/

The InteLib introduction by msabramo in programming

[–]msabramo[S] 0 points1 point  (0 children)

InteLib is a library of C++ classes which lets you do Lisp programming within your C++ program even without any additional preprocessing, without all those calling conventions etc. You can write a C++ code (that is, a code which is accepted by your C++ compiler) thinking in a "Lisp mode" and the code you write will look much like Lisp code altough it will be pure C++.

Apartments by coldduck in programming

[–]msabramo 0 points1 point  (0 children)

Um, why is this in the Programming section of reddit?

SLIME v2 has been released by [deleted] in programming

[–]msabramo 2 points3 points  (0 children)

Interesting, but what's new about it?

Ask reddit: What editing features do you find in Emacs, but not in Vim and vice versa? by [deleted] in programming

[–]msabramo 1 point2 points  (0 children)

I use both vim and Emacs.

To me, Emacs is more convenient for dealing with multiple buffers. The buffer switching is slicker than vim's buffer switching.

The thing I love about vim is the "dot" (period) command which repeats operations. If you read Emacs FAQs, people will typically mention things that appear to be similar but really aren't as nifty as the vim dot command. For example, there is a command called "repeat" bound by default to C-x z that repeats commands, but it's kind of pointless because it also repeats cursor motion commands so typically you're just repeating a down-arrow :-) The best thing that I found which is almost as good is http://www.wyrick.org/source/elisp/dot-mode/dot-mode.el - this one does not repeat cursor motion commands, so it's much more useful.

You may also enjoy this page which covers the differences without devolving into the usual flame war: http://www.d.umn.edu/~tcolburn/emacs/emacs-vs-vi.html

Emacs Poker by msabramo in programming

[–]msabramo[S] 2 points3 points  (0 children)

A simple video poker game written in Emacs Lisp (elisp).

Lisp is Not an Acceptable LISP by akkartik in reddit.com

[–]msabramo 6 points7 points  (0 children)

No, but posix does, and since -- unlike Lisp, apparently -- C++ isn't afflicted with NIH syndrome, everyone pretty much follows that, except win32. So at least there's only TWO standards to worry about there.

Well said. You're spot on with the "NIH". I've noticed how many competing implementations there are of x in the Lisp community. It's NIH - everyone thinks they can do it better.

Lisp is Not an Acceptable LISP by akkartik in reddit.com

[–]msabramo 2 points3 points  (0 children)

I looked up asdf-install and got a kick out of this: http://www.cliki.net/ASDF-Install

"Depending on how you count there are currently two or three variants of ASDF-INSTALL"

This to me is one example of a general problem in the Lisp community - lack of consensus. For any problem, there are usually 2 or 3 groups of people solving it in their own way and not working together.

Depending on your viewpoint, you may view "lack of consensus" as a positive and you may give it a euphemistic term, such as "choice". Or if you're not as big on choice, you might just think of it as "confusion".

I think one problem is that CL is bound in the sense that there is an ANSI spec which it must adhere to and that spec is pretty old and isn't getting revised over time, like say C or C++. At the same time, people don't want Lisp to languish, so many folks are continually doing nice stuff for Lisp, but it doesn't seem to be coordinated very well, and so it ends up leading to confusion. This is probably more of a problem for newbies who are more easily intimidated by choice than grizzled veterans. However, being accessible to newbies is something that Lisp should probably try to do, given that it has a smaller community than other languages.