4 ms·
Yeah, I forgot - scheme does not have a repl... Come on! Multi paradigm? scheme is mp but encourages fp style. Such that side-effects are reduced to a bare mini
by morphir 17y ago
Yeah, I forgot - scheme does not have a repl... Come on!
Multi paradigm? scheme is mp but encourages fp style. Such that side-effects are reduced to a bare minimum. And most lisps are mp. Even better - the object systems are many and modular with lisp. How many object systems are there with python?
The problem with scheme is not with DSLs either, it is where most LISP shines like a rockstar! Building domain specific abstraction is trivial with scheme as long as you do a bottom-up approach. Scheme DO have FFI - not only that, scheme can compile to C. Can python do that? NO! And its not because of the prefix notation either. Sure it takes a little while to get used to applicative order of evaluation, but thats only because some idiot taught you the imperative way first. I used python before I got aware of scheme, and believe you me, I got a lot more educated on how to create applications when I watched SICP and read the little schemer books. Also, lets not forget how much time you spend doing memory management when doing C/C++. It's painful, and a waste of good time and money. Python has matured faster than scheme because it has focused on building libraries rather than being standard. Also, there is only one python implementation - where there is many schemes (most of them half-assed) and lisps. This makes it difficult to choose and land on a lisp that can do all and be all, and as such does not provide any traction for the language. There is one modern lisp that could change all this, and that is clojure. If clojure can provide all necessary libs that the working programmer need to have at hand we can see functional programming hit the mainstream of enterprise developement, research and whatever domain there is a need for computation.
- gjm11 17y agothere is only one python implementation ... apart from IronPython, Stackless Python, PyPy, Jython, Unladen Swallow, and maybe a few more I've missed.
- morphir 17y agosure, but neither of them are shipped with the operating systems that I use (linux and osx).
- cdavid 17y agoneither is scheme AFAIK, at least on OS X. But to be fair, none of those implementations are usable for most scientific work, as numpy is only available on CPython, at least today.
- silentbicycle 17y agoThe more important point is that if you're starting out with Python, which one to use is very clear. There's Stackless and so on, but the main page at Python.org just points to CPython. (It does mentions that Python is available for the JVM and .NET vm, but that's not the primary link.) It's a sharp contrast to when people have to decide which Lisp or Scheme to learn with, but don't have enough experience to choose. (Some probably decide on Python instead.)
- morphir 17y agoexactly my point. Unfortunate for us schemers that we don't have such a mainstream implementation. Also, it would be cool if linux distributions could ship with a minimal scheme. Modules could be downloaded & installed as we need them.