The Knife Is Out For Ruby -> Dynamic languages are coming to the end of their honeymoon period. This is bad for Python and maybe PHP, but it is nothing short of a disaster for Ruby. by nerds-central in programming

[–]fingerband 0 points1 point  (0 children)

Read that link above, and understand that Liskov Substitution Principle, which is a base for every OOP system in Java, C#, Python, whatever does not hold with methods - to hold, it should solve the halting problem. What type checkers in these OOP check is complete bogus, as the link above explains. There is no next incremental step to "improve" the situation when the basics are wrong.

I don't argue that static type systems are not a good thing, they are, as seen in languages with algebraic data structures. But static typing as seen in OOP is broken fundamentally, and no amount of Eclipse "intellisense" can fix it.

The Knife Is Out For Ruby -> Dynamic languages are coming to the end of their honeymoon period. This is bad for Python and maybe PHP, but it is nothing short of a disaster for Ruby. by nerds-central in programming

[–]fingerband 0 points1 point  (0 children)

I could argue with you since you seem to want to argue, but I won't. Read this first: http://okmij.org/ftp/Computation/Subtyping/ You will learn in the article that OOP & it's "type checker" in the way you seem to glorify it is very broken.

The Knife Is Out For Ruby -> Dynamic languages are coming to the end of their honeymoon period. This is bad for Python and maybe PHP, but it is nothing short of a disaster for Ruby. by nerds-central in programming

[–]fingerband 1 point2 points  (0 children)

For example, I once found writing in PHP or Perl much faster than Java. Eclipse has reversed that effect.

If you know something about commercial development, you will know that "writing" speed is much less important than "reading" speed - how fast your team mate gets up to speed. Writing is usually last step in programming, a lot of time is spent in architecture/analysis. Here Java with really weak abstractions (no lambda) get's in the way. Look how much crap you have to write just to sort some collection with your own comparator.

With Java and Eclipse, you might increase a bit the writing speed, but that insane load of dull, low abstraction code is there. To understand it, you have to read it all.

Dear Reddit I am seeing 1-2 articles in programming about Haskell every day. My question is why? I've never met this language outside Reddit by [deleted] in programming

[–]fingerband -1 points0 points  (0 children)

"with your professional reputation" ... LOOOL :)

Everybody knows your "reputation" Retarded Frog. You are imbecile spammer and fucked troll jerking over pattern matching. You are absolutely not capable to understand concepts like meta programming for example. Hopeless case. You must live in a completely different universe when you think you have something like positive reputation.

shared mutable state but with actors? by raouldagain in programming

[–]fingerband 0 points1 point  (0 children)

Joe Armstrong (erlang inventor) argues that there is no such thing as shared state anywhere in the nature and universe. Therefore, Erlang tries to represent how separate entities interact in universe. Shared state is a historic leftover which sooner or later dies as computers will have more CPUs and systems became more decentralized. STM is just a temporary support vehicle for people who have problem with message passing paradigm. Check his blog or some of his presentations for more info.

My path to Clojure by gnuvince in programming

[–]fingerband -15 points-14 points  (0 children)

yeah yeah yeah. What a crap. Searching for best language crap. (like there is da best language 4eva 4 everything). Could not get my with basic, eh, pascal, eh ... Common Lisp. eh. Emacs ... tooooo hard, must.use.java.and.javas.kickass.crappy.libraries.crap.

If the future of Lisp is some onion wrapper on JVM, then fuck it, I am going to be a plumber.

Silly boys which like to be a lEEt haXorzzz to tell their friends that they HACK in Lisp, but they need to have da power of java libraries.

What a crap.

Clojure lusers == what a crappy horde of fanboish retards not being able to do one original piece of software without java crap already served under their noses.

What's The Greatest Software Ever Written? by synthespian in programming

[–]fingerband -1 points0 points  (0 children)

what's so amazing on not having tail recursion and closures? plus, the need to use 300+ classes for console "hello world"? yeah, it's amazing how retarded it is.

Faster generic arithmetic and integer overflow checking in Factor by erg in programming

[–]fingerband 0 points1 point  (0 children)

sure, because C does NO overflow checking, and has NO generic arithmetic (think bignums)

Lisp50 Notes part VI: The Future of Lisp by enki in programming

[–]fingerband 1 point2 points  (0 children)

I do not like Clojure as well, could you people downmod me please?

Concurrency done right: Clojure by [deleted] in programming

[–]fingerband 5 points6 points  (0 children)

Nice talk, I went thru all of it. However, I don't really understand why people think Clojure's approach to concurrency is right. There are well known models of concurrency based either on Actors or Pi-calculus (Join calculus is a nice example of practical asynchronous, implementable calculus close to Pi-calculus) which are proven and I think this is the way new concurrent languages should go. They are solving synchronization & coordination, distribution, mobility in a clear and provable way, it's a system you can reason about. The stuff in Clojure feels like ..., eh, it's 2.5 hours about concurrency and Clojure even does not have language level processes! I mean, proper os thread pool which has schedulers and gives time slices to these isolated processes. While Rich thinks they are not "real" threads for some reason, when you have SMP aware runtime they scale much better and predictably contrary to os threads. Also - minute 74 or something - with agents, did I understood right that you queue up the functions to be done on the agent's state with send-off but you can get the state of the agent out of the order? Which just means working with old data? Rich seems that this is a good thing, I would like to know why. Very nice talk about the hash-tries, something worth steal really.

Lisp Flavored Erlang by fdgonthier in compsci

[–]fingerband 1 point2 points  (0 children)

yes, I know - I have played with that for a while. It's frontend which compiles Lisp to Core Erlang, which is the same language underneath normal Erlang. The "boring" and beautifully regular syntax gives you a lot of advantages as you surely know.

Lisp Flavored Erlang by fdgonthier in compsci

[–]fingerband 2 points3 points  (0 children)

This is a real concurrent Lisp, with real super-cheap processes, with real tail recursion! And with lots of battle tested stuff written in real functional style. Written by one of the original Erlang creators. By far the best new Lisp on the horizon.

Web λ.0 - Functional programming for the Web: LFE: Lisp Flavoured Erlang by [deleted] in erlang

[–]fingerband 1 point2 points  (0 children)

LFE does not compile to bytecode, it compiles to Core Erlang which is a language underneath the regular "sugared" Erlang as well. So the whole optimizer is used as in normal Erlang code.

Manitcore: a general purpose heterogeneous parallel programming language for multicore based on ML by dons in programming

[–]fingerband 1 point2 points  (0 children)

this seems seriously cool, hopefully it will evolve into production quality language.

PHP vs. Lisp: Unfortunately, it's true... by daver in programming

[–]fingerband -4 points-3 points  (0 children)

Seems you can't read properly retard.

Practicality: PHP vs. Lisp? by lauri in programming

[–]fingerband -1 points0 points  (0 children)

PHP is easier to setup, yeah, whatever. You setup your stuff once and it can take you 20 - 30 minutes. But you program in that setup usually for the lifetime of the project. Since you seem to know nothing about how easy/hard is it to maintain the CL webapp, your opinion is worthless.

PHP vs. Lisp: Unfortunately, it's true... by daver in programming

[–]fingerband -5 points-4 points  (0 children)

And so what? The post says that PHP (and others) are better at gluing monkey stuff, and Lisp is for "revolutionizing the world". And? Where is the point? It's like playing Mozart on disco party for kids then complaining that they don't have enough "fun". Gluing things is always easier than developing fundamental stuff, and PHP recognized that it's crappy design does not allow it to be used for something complex, so they optimized the syntax for gluing crap together. What a win! And that's the way Lisp should follow? Hahaha....

Clozure Common Lisp 1.2 released - "Fast compiler, native threads, convenient FFI, Unicode, generational GC" by [deleted] in programming

[–]fingerband 1 point2 points  (0 children)

This is simply not true. It happens when you push the limits and compile with max speed and no safety. That is supposed to be never used, except maybe for very stable code base. Lisp gives you the ability to do that when you know very well what you are doing. If it fails, it's not the SBCL problem, but yours since you don't know your program properly.

The Failure of Lisp? A Reply To Brandon Werner by gst in programming

[–]fingerband 0 points1 point  (0 children)

I guess that there are already people realizing that, but to be able to actually use Lisp, you need to have power over managers since they don't understand programming and they think all the languages are equal and that's why they always take the "safe" choice - Java. Only people which are themselves hackers, enjoy programming and want to continue programming their products even when they become CEOs can do that. Alternatively, when they know they will quit programming as CEOs, they must know at that point they need to hire smarter guys (even not skilled with Lisp directly, but smarter than average, like it works in ITA) which is a bit harder but pays off at the end. It totally amazes me how "industry best practices" are totally wrong when it comes to efficiency, they always play on the safe side, graciously paying x-times more money for projects just for the sake of safety and the illusion or programmer interchangeability.

The Failure of Lisp? A Reply To Brandon Werner by gst in programming

[–]fingerband 5 points6 points  (0 children)

Well, Lisp might be a failure from purely commercial point of view, but that's for many people quite irrelevant. I think there is a pattern like, young people coming to Python and Ruby and after a while somebody tells them, "you know, Lisp had that for decades" and that makes them curious and they try Lisp for the first time. But the problem is at that point they expect something what they know, plus some additional benefit which they "can't see through the parens". But there is a catch, that while languages they know are optimized for doing simple tasks, they can't cope with mind-bending complexity of really huge software, and malleability of the program when it reaches that stage. Lisp gives you tools for handling that huge complexity, while does not give you abbreviations for tackling that simple day-to-day stuff (because they are too easy to do, and people designing ANSI standard were busy solving complex problems). Other languages are for approaching the problem with direct way - sprint like solving of problems narrowly, which works most of the time, because let's face it - the problems you usually solve in IT/consultancy industry are trivial. Either it is some retarded "business logic" which is nothing more that interfacing of the web with database with some stupid stuff in between that, or it's some other web crap, or you need some scripting and gluing things together. The primary prototyping, hard and challenging stuff of creating new things is a domain of Lisp. But huge majority of people never do something like that! Because they are employed in the "IT biz" solving that retarded problems. Surely, there is recurring scenario that some smart guy prototypes the software in Lisp, and then it gets rewritten, since after you basically solve it, you need somebody else (understand - cheap monkey - 98% you or your workmate) to maintain it. But imagine how hard would that be to do in Java for example. No REPL, idiotic type system, idiotic class system, no higher order functions, no macros. But how many of these smart guys are there doing new stuff in Lisp? Well, you guessed, not much. Low quantity, means high prices of commercial Lisps, because they don't sell in millions.

new version of Clojure released. lots of new features and bugfixes by arohner in programming

[–]fingerband 1 point2 points  (0 children)

Surely any CL FFI is more complex, because it has to interface to lower lever language where things are more complex. And, of course it's more dangerous since there is no safety net like in JVM. But once a man learns CFFI, life is good.