4 ms·
Could you elaborate a little more on CCL? I thought it was mainly used to access Cocoa frameworks, but maybe things have changed since the last time I checked i
by zatara 16y ago
Could you elaborate a little more on CCL? I thought it was mainly used to access Cocoa frameworks, but maybe things have changed since the last time I checked it. Are there any chances it can now work with Cocoa touch?
- lisper 16y agoCCL has very good ObjC/Cocoa integration, and a well integrated IDE. But it also runs on Linux and Windows, it has native threads (that feature alone puts it head-and-shoulders over Python), and it has a wicked fast compiler. So it makes a kick-ass webapp development platform. I don't know about Cocoa touch, but the CCL compiler was recently ported to run on ARM processors.
- nocman 16y agoOne down side to CCL is that it will not run on Intel boxes that don't have the SSE2 instruction set extensions. That isn't a big deal if you're doing a web application on the server of your choice (which will probably have SSE2), but if you want to use CCL on a desktop application that runs on Windows (or Linux), it could be a very big deal. People still use old computers, and I believe some of the newer netbooks don't have SSE2. If you're doing a desktop app, the last thing you want your customer to see is "sorry, you can't run that on this machine". You can read more about this on clozure.com: http://trac.clozure.com/ccl/wiki/SystemRequirements http://trac.clozure.com/ccl/wiki/SystemRequirements And that points to a list of SSE2-capable (and some non-SSE2-capable) machines: http://en.wikipedia.org/wiki/SSE2 http://en.wikipedia.org/wiki/SSE2 I bring this up only as a caveat to those thinking about using CCL. I think it is great that it is available as a free Common Lisp implementation. It would be even better, however, if this limitation didn't exist.
- masklinn 16y ago> that feature alone puts it head-and-shoulders over Python Uh no it doesn't. Python uses OS threads. It cripples them with the GIL (hence multiprocessing), but it never used green threads. And of course, using green threads can be an advantage if you're not dumb about it (see Erlang). > it has a wicked fast compiler. So it makes a kick-ass webapp development platform. What?
- lispm 16y agoCCL has no GIL.
- masklinn 16y agoWhich has absolutely nothing to do with the original claim that: > it has native threads (that feature alone puts it head-and-shoulders over Python) As I wrote previously (and both you and lisper apparently decided to ignore), Python uses OS threads as well.
- lispm 16y agoNative threads that are locked against each other by a GIL, are still native threads, but less useful native threads. An important purpose/use of native threads is that they are scheduled by the OS and not hindered by a GIL, so that in multicore machines multiple threads can run concurrently. CCL does that. Python with the GIL not.
- lisper 16y ago> Uh no it doesn't. Uh, yes it does. > Python uses OS threads. It cripples them with the GIL And CCL doesn't. QED. > using green threads can be an advantage Not if you have multiple cores. > What? http://www.youtube.com/watch?v=snW3cM1KipQ http://www.youtube.com/watch?v=snW3cM1KipQ ;-)
- masklinn 16y ago> Uh, yes it does. That makes no sense, having the exact same feature doesn't make CCL superior. > And CCL doesn't. QED. QED nothing, not having a gil does something, using OS threads doesn't. > Not if you have multiple cores. Yes if you have multiple cores as well. You just have to map your green threads onto OS threads or processes, that's what Erlang does. > ;-) Smileys don't give meaning to nonsense.