Thread: [GD-General] Ruby opinions
Brought to you by:
vexxed72
From: Brian H. <bri...@py...> - 2001-12-22 21:38:50
|
The fun continues as I try to bring up interesting topics without allowing the threads to devolve into flame fests =) So after much deliberation of Obj-C and Eiffel, someone on Yet Another Mailing List (cocoa-dev) said "Hey, why not use Ruby?!" I've always considered Ruby more of a scripting language than a "real" development language, based on the overviews I've seen of it. For writing a high performance server project, I think the orders of magnitude difference in performance between your typical compiled language and your typical interpreted language are pretty important. If one language is 2x faster, hey, I can work around that -- but 100x faster is a bit much. The only other scripting language I've looked at (and liked...for some reason Python doesn't do it for me) is Lua, which I happen to like a lot. My complaints about Lua are that it's a moving target to some extent and there is a massive lack of information on it (no books, a couple references, and some open source projects). Learning it is difficult because you basically have to learn by example and/or rely on the help of the many helpful people on the Lua mailing list (including lots of other game developers). So, opinions on Ruby (specifically compared to other popular scripting languages)? I've already integrated Lua into one project as an extension language and I do happen to like it quite a bit. I haven't thought about writing an entire application in Lua or Ruby. Oh, and if anyone has opinions on BETA or OCaml, I'm all ears =) Brian |
From: Patrick M D. <pa...@wa...> - 2001-12-23 21:30:36
|
On Sat, 22 Dec 2001, Brian Hook wrote: > Oh, and if anyone has opinions on BETA or OCaml, I'm all ears =) Sure, I'll be an OCaml advocate for you. I've been using it for years and feel I had a good understanding of its strengths and weaknesses. Here are some high-level points: - Excellent performance of runtime code and garbage collector - Unifies many programming paradigms in a single language: object-oriented, functional, traditional imperative - Compilation times are fast and provide good diagnostic feedback - Code is very portable between Windows and Unix - Debugger supports replay functionality - More 3rd party libraries than similar languages (e.g. Haskell/Clean) - Powerful type-inference mechanism eliminating the need for most type annotations - Strict type-checker to catch many errors at compile time Some specific points about the language: - First class functions - kind of like inner classes in Java but syntax is very lightweight and easy to use - Support for parametric polymorphism (extensional polymorphism is in the works) - Easy to define new data types and operate on them via pattern matching (a generalized case statement that allows arbitralily deep introspection) - Exceptions - Sophisticated module system including functors (a simple lamba calculus on modules to support paramterization) - OO framework with support for multiple inheritance, binary methods, and functional updates I'm not particularly interested in entering a debate over which language is better -- that's very much a personal choice. Personally, I have a strong mathematical background and appreciate formalism and notation. For that reason, Haskell is in many ways a more attractive language to me. However, OCaml still remains my language of choice for any serious development work. Patrick Doane |
From: Kent Q. <ken...@co...> - 2001-12-24 16:19:16
|
At GDC last year, Chris Hecker raved about OCaml. One of the people who works here heard it and has been suggesting for a while now that we look at it. After poking around several language comparison pages for a while, I'm a bit amazed. It appears to be as fast and easy to write as say, Python, the native compiler performance is consistently at the top of every benchmark I've seen, plus there are implementations for PC, Mac, and Unix. It looks a bit light on the library side, but it may prove to be a very useful tools language and perhaps even a delivery language. I've just downloaded a version and will start tinkering on my vacation. I'll let you know in a week or so. ;-) Kent Patrick M Doane wrote: > > On Sat, 22 Dec 2001, Brian Hook wrote: > > > Oh, and if anyone has opinions on BETA or OCaml, I'm all ears =) > > Sure, I'll be an OCaml advocate for you. I've been using it for years and > feel I had a good understanding of its strengths and weaknesses. Here are > some high-level points: > > - Excellent performance of runtime code and garbage collector > - Unifies many programming paradigms in a single language: > object-oriented, functional, traditional imperative > - Compilation times are fast and provide good diagnostic feedback > - Code is very portable between Windows and Unix > - Debugger supports replay functionality > - More 3rd party libraries than similar languages (e.g. Haskell/Clean) > - Powerful type-inference mechanism eliminating the need for most > type annotations > - Strict type-checker to catch many errors at compile time > > Some specific points about the language: > > - First class functions - kind of like inner classes in Java but > syntax is very lightweight and easy to use > - Support for parametric polymorphism (extensional polymorphism > is in the works) > - Easy to define new data types and operate on them via pattern matching > (a generalized case statement that allows arbitralily deep > introspection) > - Exceptions > - Sophisticated module system including functors (a simple lamba > calculus on modules to support paramterization) > - OO framework with support for multiple inheritance, binary methods, > and functional updates > > I'm not particularly interested in entering a debate over which language > is better -- that's very much a personal choice. Personally, I have a > strong mathematical background and appreciate formalism and notation. > For that reason, Haskell is in many ways a more attractive language to me. > However, OCaml still remains my language of choice for any serious > development work. > > Patrick Doane > > _______________________________________________ > Gamedevlists-general mailing list > Gam...@li... > https://lists.sourceforge.net/lists/listinfo/gamedevlists-general -- ----------------------------------------------------------------------- Kent Quirk | MindRover: "Astonishingly creative." Game Architect | Check it out! ken...@co... | http://www.mindrover.com/ _____________________________|_________________________________________ |
From: Patrick M D. <pa...@wa...> - 2001-12-24 18:58:07
|
To provide a more objective viewpoint on OCaml, here are some thoughts I have on how I think it can be improved: - more bindings to native os libraries - lack of an IDE (two recent developments are working on this, one native OCaml development and another that leverages VC++) - OCaml byte-code can't run OCaml native-code easily (the reverse is possible with a slight performance hit) - no debugger support for native-code - needs better package management support - improved standard library with more consistent APIs (the Caml team is really good about backwards compatibility which makes progress in this area unlikely) - more documentation/tutorials - some form of operator overloading to at least deal with floating point and integer operations (Jun Furuse is working on an extensional polymorphism extension that would solve this and much more) - some syntax rules from a historical perspective can be confusing (camlp4 solves this nicely, and version 3.04 allows syntax extensions to be used in the top-level interpreter. Users can use a wide variety of syntax options and extend the language with new keywords and constructs) On Mon, 24 Dec 2001, Kent Quirk wrote: > It looks a bit light on the library side, but it may prove to be a very > useful tools language and perhaps even a delivery language. Please let the community know what libraries and tools you need to make it a success. > I've just downloaded a version and will start tinkering on my vacation. > I'll let you know in a week or so. ;-) Sounds good - I'll be interested to hear your opinions. Patrick |
From: Thatcher U. <tu...@tu...> - 2001-12-27 20:12:35
|
On Dec 24, 2001 at 01:58 -0500, Patrick M Doane wrote: > To provide a more objective viewpoint on OCaml, here are some thoughts I > have on how I think it can be improved: > > - more bindings to native os libraries This is a big practical problem with everything other than C/C++. I've done some messing around with binding Lua to C-based APIs, and found SWIG to be pretty good, but it's still not as easy as "#include <libraryheader.h>". I'm also trying to learn OCaml. It's tough going so far -- almost nothing about it is intuitive to me. But it has all the right marketing bullet-points, so I'm plugging away. Actually, one thing that bothers me is lack of a native 32-bit float type. floats in OCaml are 64-bit. I think that will need to get fixed at some point. -- Thatcher Ulrich <tu...@tu...> http://tulrich.com |