Re: About programing, a general question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Dec 17, 2010 at 10:20 PM, Patrick Kobly <patrick@xxxxxxxxx> wrote:

On 12/17/2010 5:10 AM, Parshwa Murdia wrote:
 
The thing to keep in mind here is what is the purpose of the language you're choosing for this step in your journey.  You are clearly not going to be writing production software for some time.  You are choosing a language that will serve as a canvas for early-stages learning.  At this point, you probably want to evaluate your tools in terms of their pedagogic advantages, rather than practical advantages for implementing working production software.


Correct, for only beginners learning.

 
IMHO, a first learning language should introduce concepts including:
  • Variables
  • Typing of variables (strong typing)
  • Arrays
  • Data structures
  • Boolean logic expressions
  • Flow control and looping (if, then, else ; while ; for,to)
  • Procedure and / or function calls
  • Formal parameters vs. actual parameters
  • Recursion
  • Equivalence of recursion and iteration
  • Compilation
  • Compile-time vs. Run-time errors
A first programming language should avoid concepts like:
  • Pointers (at least in the C conception of them, breaking the typing system)
  • Dynamic typing
  • Polymorphism
  • Inheritance
That in mind, my suggestion for a first language would generally be more similar to Pascal or Modula-2 than C, Python, C++, Java,...


Oh I see.

 
--

Regards,
Parshwa Murdia
-- 
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux