[prev in list] [next in list] [prev in thread] [next in thread] 

List:       illumos-discuss
Subject:    Re: [discuss] Re: (ksh + c99) : gaining comfort levels : how?
From:       "Garrett D'Amore" <garrett () damore ! org>
Date:       2018-02-16 23:10:07
Message-ID: CAAYoGd-B4LrAUbZyiccby2=1sgWTSpUvaHv7qpr=v9YqqJkYjQ () mail ! gmail ! com
[Download RAW message or body]

I think it makes sense to focus on one language or the other, and get truly
proficient in that, before proceeding.  Which you choose depends on what
you want to do.  If writing a lot of scripts for automating administrative
tasks is your goal, then shell scripting is the better choice.

However, for almost everything else, I'd recommend C99, or just plain C89,
as a starting point.  The principles you learn in becoming a proficient C
programmer will serve you well when you want to learn other languages.
Plus, you gain a better appreciation of how the underlying system works.  C
is a much better springboard for lots of other things, including working on
other platforms, or learning other languages like Go, Java, C++, or even
Python.

Once you're proficient in C, struggling with the details such as different
syntax, will seem far less onerous.  (Bourne shell script variable
scoping/lifetime rules may be more confusing though…)

Then there is the fact that you can pretty easily write a shell in C99, but
I've yet to see anyone successfully write a C compiler in shell script. :-)

If you want to be a "real programmer", C is the way to go IMO.  (You could
also choose instead to go with another language, in which case I'd highly
recommend Go.)

 - Garrett

On Thu, Feb 15, 2018 at 4:17 AM Mayuresh Kathe <mayuresh@kathe.in> wrote:

> This is getting way off-topic.
> *illumos-discuss* | Archives
> <https://illumos.topicbox.com/groups/discuss/discussions/Tc6a3c59983790be4-M6409e743cfd6021bd363858a>
>  | Powered by Topicbox <https://topicbox.com>

------------------------------------------
illumos-discuss
Archives: https://illumos.topicbox.com/groups/discuss/discussions/Tc6a3c59983790be4-M18fc47962bd3fbe209c2d013
 Powered by Topicbox: https://topicbox.com


[Attachment #3 (text/html)]

<html><html><div dir="ltr">I think it makes sense to focus on one language or the \
other, and get truly proficient in that, before proceeding.&nbsp; Which you choose \
depends on what you want to do.&nbsp; If writing a lot of scripts for automating \
administrative tasks is your goal, then shell scripting is the better choice.<div><br \
/></div><div>However, for almost everything else, I&rsquo;d recommend C99, or just \
plain C89, as a starting point.&nbsp; The principles you learn in becoming a \
proficient C programmer will serve you well when you want to learn other \
languages.&nbsp; Plus, you gain a better appreciation of how the underlying system \
works.&nbsp; C is a much better springboard for lots of other things, including \
working on other platforms, or learning other languages like Go, Java, C++, or even \
Python.</div><div><br /></div><div>Once you&rsquo;re proficient in C, struggling with \
the details such as different syntax, will seem far less onerous. &nbsp;(Bourne shell \
script variable scoping/lifetime rules may be more confusing \
though&hellip;)</div><div><br /></div><div>Then there is the fact that you can pretty \
easily write a shell in C99, but I&rsquo;ve yet to see anyone successfully write a C \
compiler in shell script. :-)</div><div><br /></div><div>If you want to be a \
&ldquo;real programmer&rdquo;, C is the way to go IMO. &nbsp;(You could also choose \
instead to go with another language, in which case I&rsquo;d highly recommend \
Go.)</div><div><br /></div><div>&nbsp;- Garrett</div></div><br /><div \
class="gmail_quote"><div dir="ltr">On Thu, Feb 15, 2018 at 4:17 AM Mayuresh Kathe \
&lt;<a href="mailto:mayuresh@kathe.in">mayuresh@kathe.in</a>&gt; wrote:<br \
/></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex"><u></u><div><div>This is getting way \
off-topic.</div></div><div></div></blockquote></div></html><div id="topicbox-footer" \
style="margin:10px 0 0;border-top:1px solid \
#ddd;border-color:rgba(0,0,0,.15);padding:7px 0;"> <strong>illumos-discuss</strong> | \
<a href="https://illumos.topicbox.com/groups/discuss/discussions/Tc6a3c59983790be4-M18fc47962bd3fbe209c2d013">Archives</a> \
| Powered by <a href="https://topicbox.com">Topicbox</a> </div>
</html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic