Rosetta Code talk:Village Pump/Suggest a programming task: Difference between revisions
Good points. |
Regarding purpose of having different languages. |
||
Line 14: | Line 14: | ||
:More specifically, "Rotate the output device" could easily be represented in many languages, when one takes DirectX and OpenGL into account. (And, quite frankly, I'd like to see more of that.) Rendering along a path, well, I dunno. Possibly PDF and GIMP Script-Fu? --[[User:Short Circuit|Short Circuit]] 22:35, 4 February 2007 (EST) |
:More specifically, "Rotate the output device" could easily be represented in many languages, when one takes DirectX and OpenGL into account. (And, quite frankly, I'd like to see more of that.) Rendering along a path, well, I dunno. Possibly PDF and GIMP Script-Fu? --[[User:Short Circuit|Short Circuit]] 22:35, 4 February 2007 (EST) |
||
:Also, I've had several people describe Rosetta Code useful in that it helps demonstrate how certain languages make some tasks easier. If a language implies the automatic completion of a task, then that should probably be mentioned; That's a strong point of that language. |
|||
:Many times, someone who knows one or two languages is interested in learning another, similarly-purposed language. When that happens, seeing parallel examples can cement a relationship in the programmer's mind. |
|||
:Certainly, there are language classes with little or no overlap. I wouldn't try to port a pure C program into pure SQL, for example; The languages were designed to address fundamentally different problems. Some Perl 6 programs might qualify, though. I've heard complaints that Rosetta Code focuses too much on imperative programming, by virtue of the nature of its tasks. I'd love to see tasks that demonstrated other forms of programming, and I wouldn't expect all of the languages to overlap between forms --[[User:Short Circuit|Short Circuit]] 22:47, 4 February 2007 (EST) |
Revision as of 03:47, 5 February 2007
Maybe this page should be restructured, so that is features one list, instead of the many it has now? Til 08:29, 24 January 2007 (EST)
Does it really make sense to sort things into "trivial" and "hard"? What is trivial in one language may be hard in another and vice versa. It is trivial to, say, display a circle in postscript. Three or four lines for computing and displaying a fractal. In C, this would be a pretty massive program (what with having to create/init a canvas and all).
Isn't the whole point of having different languages that they tend to specialize in certain problem domains? Opening a window in assembly is difficult, in IDL it's the single command "window", in TCL it's meaningless as the creation of a window is implied in the use of Tk in the first place. And in PostScript there's only an abstract "output device" that might be a computer screen or a piece of paper - and "opening a window" is as close to meaningless as it gets.
I keep staring at the tasks and at the many things I have done in PostScript and the two sets do not overlap a lot. What would it mean in any other language "to rotate the output device ten degree clockwise"? Or "to render this string along a sinusoidal curve"?
Just some thoughts... Sgeier 21:26, 4 February 2007 (EST)
- Excellent points. I was trying to come up with a more queued system of requesting tasks, along with trying to define to some extent what kinds of tasks are appropriate. I don't see punching holes in firewalls as an appropriate task; that's a network-operations kind of thing, not a means of demonstrating programming languages.
- When it comes to formatting tasks, I don't see a problem with creating tasks centered around formatting languages. However, such tasks should probably fall under their own category. The Programming Tasks category can use some subdividision.
- More specifically, "Rotate the output device" could easily be represented in many languages, when one takes DirectX and OpenGL into account. (And, quite frankly, I'd like to see more of that.) Rendering along a path, well, I dunno. Possibly PDF and GIMP Script-Fu? --Short Circuit 22:35, 4 February 2007 (EST)
- Also, I've had several people describe Rosetta Code useful in that it helps demonstrate how certain languages make some tasks easier. If a language implies the automatic completion of a task, then that should probably be mentioned; That's a strong point of that language.
- Many times, someone who knows one or two languages is interested in learning another, similarly-purposed language. When that happens, seeing parallel examples can cement a relationship in the programmer's mind.
- Certainly, there are language classes with little or no overlap. I wouldn't try to port a pure C program into pure SQL, for example; The languages were designed to address fundamentally different problems. Some Perl 6 programs might qualify, though. I've heard complaints that Rosetta Code focuses too much on imperative programming, by virtue of the nature of its tasks. I'd love to see tasks that demonstrated other forms of programming, and I wouldn't expect all of the languages to overlap between forms --Short Circuit 22:47, 4 February 2007 (EST)