Racket and ELM Programming for Beginners
3.3 (11 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
180 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Racket and ELM Programming for Beginners to your Wishlist.

Add to Wishlist

Racket and ELM Programming for Beginners

Learn Step by Step from Scratch
3.3 (11 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
180 students enrolled
Last updated 1/2017
English
Current price: $12 Original price: $50 Discount: 76% off
4 days left at this price!
30-Day Money-Back Guarantee
Includes:
  • 1.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • You will have basic understanding of the Racket language.
  • Gain Functional Programming knowledge and skills
  • Would be able to start developing their own application in Elm.
View Curriculum
Requirements
  • A thirst for learning and a thrive for knowledge is all that is required!!!
  • Willingness to Learn and Grow
  • We start from basics hence all you need is your basic computer usage skill and reasoning skill. No other pre-requisite.
Description

Racket is a programming language that started life as a Scheme implementation, but then grew into new areas. Racket is a mature LGPL project that’s actively developed and maintained. Racket’s crown jewel is its macro system, which lets you freely extend the language. Racket consists of extensive standard library that gets your projects off the ground quickly. Racket runs on Linux, macOS, and Windows. Develop on one; deploy to all three.

Racket (formerly PLT Scheme) is a general purpose, multi-paradigm programming language in the Lisp-Scheme family. One of its design goals is to serve as a platform for language creation, design, and implementation.The language is used in a variety of contexts such as scripting, general-purpose programming, computer science education, and research.

Racket's core language includes macros, modules, lexical closures, tail calls, delimited continuations, parameters (fluid variables), software contracts, green and OS threads, and more. The language also comes with primitives, such as eventspaces and custodians, which control resource management and enables the language to act like an operating system for loading and managing other programs. Further extensions to the language are created with the powerful macro system, which together with the module system and custom parsers can control all aspects of a language. Unlike programming languages that lack macro systems, most language constructs in Racket are written on top of the base language using macros. These include a mixin class system, a component (or module) system as expressive as ML's, and pattern matching.

The feature that distinguishes Racket from other languages in the Lisp family is its integrated language extensibility. Racket's extensibility features are built into the module system to allow context-sensitive and module-level control over syntax

In this course we use DrRacket IDE , which is a graphical environment for developing programs using the Racket programming languages. DrRacket (formerly DrScheme) is widely used among introductory Computer Science courses that teach Scheme or Racket and is lauded for its simplicity and appeal to beginner programmers. The IDE was originally built for use with the TeachScheme! project (now ProgramByDesign), an outreach effort by Northeastern University and a number of affiliated universities for attracting high school students to computer science courses at the college level. It is the fastest way to get a sense of what the language and system feels like, even if you eventually use Racket with Emacs, vi, or some other editor.

Curious why Functional Programming is on the Rise? Do you wish there was a better option than JavaScript? Would you like to learn Elm or Functional Programming in general, but short on time?

If you answered yes, then this course is for you. 

Elm is very approachable, and is the best language to learn functional programming.

Elm is a functional programming language that compiles to JavaScript and runs in the browser. It is designed to be fun and friendly to use. Indeed, Elm upends the notion that functional programming is only accessible to mad scientists and academics. With its clean and readable syntax, world-class tooling, and friendly compiler, Elm is truly a delightful language.

The Elm Architecture helps you create complex, modular web apps with code that stays easy to maintain as you add features. Toss in great performance, no runtime exceptions, and JavaScript interop, and you've got a super-charged way to produce reliable, scalable, and maintainable web apps!

But what we love most about Elm is that you can actually build practical stuff with it quickly, which is exactly what we do in this course.

Elm compiles to JavaScript, so trying out Elm is easy. Convert a small part of your app to Elm and embed it in JS. No full rewrites, no huge time investment.

Unlike hand-written JavaScript, Elm code does not produce runtime exceptions in practice. Instead, Elm uses type inference to detect problems during compilation and give friendly hints. This way problems never make it to your users. There are several examples where companies are running applications on thousands of lines of Elm, and even after more than a year in production, it still has not produced a single runtime exception anywhere.

Elm has its own virtual DOM implementation, designed for simplicity and speed. All values are immutable in Elm, and the benchmarks show that this helps us generate particularly fast JavaScript code.

As Elm compiles to JavaScript, you can really use it to build very complicated single page applications. Eventually it’s possible to interface with other JavaScript code when necessary.  With Elm, cost savings are enormous. Elm component architecture allows problems to be solved encapsulated. No more side-effects. No more pages and page scripts. No more untraceable bugs because of changing pages.

Why should you consider using Elm?

Elm offers many benefits over JavaScript, which you’ll see in this course.

Benefits such as:

- Zero Runtime Exceptions

- Simplified Debugging

- Easy Refactoring

- Helpful Type System & Compiler

- Improved Productivity

- Inherently testable code

- Enforced Semantic Versioning

- and many more...

Can we ask a favor? Lot of efforts have gone into creating this course, and new videos would be continuously added. We would be very grateful if you would help spread the word about this course. Thanks!

Who is the target audience?
  • This course is for anyone looking to learn Racket Programming Language.
  • Racket is being taught in Universities hence this course will also help you with your Semester Exams.
  • This course is for anyone looking to learn Functional Programming.
  • This course is ideal if you want to grow your functional programming skills
  • This course is for anyone looking to learn Elm Language.
Compare to Other Elm Programming Language Courses
Curriculum For This Course
32 Lectures
01:25:20
+
Racket
1 Lecture 02:06
+
Installation and Configuration
2 Lectures 04:29
+
Working With Racket
11 Lectures 26:52


Defining a Function
04:20

Working with Images
02:44

Strings
01:32

Comments
02:31

Conditional Statements
02:14

Cond in Functions
01:26

Structures
03:16

Lists
03:50

Drawing Shapes
01:10
+
ELM
1 Lecture 01:40
Introduction
01:40
+
Installation and Configuration
3 Lectures 09:03
Installing ELM and Editor
03:53

Installing Package
02:53

Installing NodeJs
02:17
+
Working with ELM
12 Lectures 31:09
Package Manager to create a JSON File
02:57

Import HTML
04:24

REPL
02:49

Lists
01:25

Boolean Data Types
00:57

Tuples
02:02

Functions
01:28

Recursive Call
01:26

Module Imports
04:10

Create Module
01:56

Type Annotation
03:42

Type Aliases
03:53
+
Creating a Small Application
2 Lectures 10:01
ELM Architecture
03:34

Application to Increment and Decrement Number
06:27
About the Instructor
Anjali Singh
3.1 Average rating
32 Reviews
274 Students
3 Courses
Functional Programming Expert

Anjali has been working with front end programming language for more than 6 Years. With an innate ability to simplify complex topics, she has been mentoring students beginning their careers in software development and Mathematics for many years both online and through classroom lectures. Anjali has now started her own initiative "Bhelabandh Technologies" to promote Functional Languages, with some expert software professionals creating courses on Functional Programming. Functional Programming languages like Rust, Julia, Haskell, Elixir etc are considered to be the languages of future. Its the right time to invest in yourself by learning functional programming.

Sumit Singh
3.1 Average rating
32 Reviews
274 Students
3 Courses
Functional Programming Trainer

I have a post graduate degree in Finance. Being good in Mathematics and computing since my child hood I have been training people locally on topics like Mathematics, Accounting, Functional Programming etc. I want to spread the love and knowledge for Functional Programming throughout the world. I have 8+ years of experience in Financial Modelling and programming, and I have been working with Rust, Julia and Elixir programming languages since long. For eg I have been working with and Teaching Julia even before it was officially released in 2012. I teach all my courses Step by Step, Hands On with Passion.