Objective-C vs DASH
When comparing Objective-C vs DASH, the Slant community recommends DASH for most people. In the question“What is the best programming language to learn first?” DASH is ranked 52nd while Objective-C is ranked 74th. The most important reason people chose DASH is:
Dash has a very fast startup, this happens because the shell is started a lot of times during boot and dash minimizes the work it does during this process.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Well Documented
Objective-C's documentation exists on Apple's website, and explains language features in detail.
Pro Develop Apple applications
Similar to C# and Java, but used to develop native applications for Apple hardware.
Pro Objective-C supports an open style of dynamic binding
A style that can accommodate a simple architecture for interactive user interfaces.
Pro Fast startup
Dash has a very fast startup, this happens because the shell is started a lot of times during boot and dash minimizes the work it does during this process.
Pro Low memory usage, which matters a lot in embedded
It is designed to be very lightweight and has no support for shell specific extensions that are not POSIX.
Pro Default shell on Debian systems
DASH is the default shell for Debian based systems due to it speed, full POSIX compliance and low overhead.
Pro Full POSIX support
It's fully POSIX compatible, so if your script runs on dash it will probably run on all other shells.
Pro A perfect clone
It's a clone of the original System V4 Bourne shell.
Cons
Con Odd Syntax
Objective C's syntax is very alien to other languages. Learning Objective-C first will fail to expose you to a syntax style that would be relatively familiar in almost any other language.
Con Might as well learn Swift
Swift works almost anywhere Objective C does, and it was designed to replace Objective C.
Con One of the biggest mistakes ever.
It was meant to be one of the C-style languages, but has such bad syntax design it actually is the odd duck.
Con Apple-centric and obsolete
Con Tied into Apple's eco-system.
Con More Technical
To be able to do basic tasks in Objective-C requires a strong understanding of programming.
Con Requires Understanding of C-language.
Objective-C is built on top of C, and as such, requires at least a basic understanding of how to program in C.
Con Doesn't support all bash features
Dash does not support all bash features, sometimes called 'bashisms' unless explicitly pointed at /bin/sh
.