ce-box / CE3104-Scheme-Language

Collection of Scheme language resources of the course (CE3104) Languages, Compilers and Interpreters focused on the functional programming paradigm.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CE3104 - Scheme Programming Resources

Collection of Scheme language resources of the course (CE3104) Languages, Compilers and Interpreters focused on the functional programming paradigm.


Scheme Language

Description

The programming languages course introduces the four main programming paradigms and its most representative languages. The Scheme language is designed to be modeled using functional programming, that is, through the use of separate functions that together provide the solution to a problem.
Most of this material has been compiled from the book "Introducción a la programación con Scheme" by José Helo Guzmán and the notes of "Lenguajes y paradigmas de programación" page.

What's in this repository?

  • Functions and Expressions.
  • Data input/output.
  • Conditionals.
  • Iterations.
  • Recursion and Applied Mathematics.
  • List and Arrays.
  • Trees and Graphs.

Getting Started

Prerequisites:You must have Git installed on your console.

  1. On GitHub, go to the main page of the repository.

  2. Under the name of the repository, click Clone or download.

  3. In the Clone with HTTPs section, click to copy the repository cloning URL.

  4. Open Git Bash.

  5. Change the current working directory to the location where you want the cloned directory to be made.

  6. Type 'git clone', and then paste the URL that you copied in Step 2.

    $ git clone https://github.com/estalvgs1999/CE3104-Scheme.git

  7. Press Enter. Your local clone will be created for CE3104-Scheme.

  8. Now you can access the examples contained in this repository; but remember to be aware because I am constantly uploading new material.

Prerequisites

To run the examples you need a code editor and a Scheme compiler. I recommend DrRacket that you can download from the [official website](https://download.racket-lang.org/) or install from the Ubuntu PPA. For this you must follow these steps:

  1. Open your terminal Ctrl + Alt + T.
  2. Enter this command to add the Racket PPA:
$ sudo add-apt-repository ppa:plt/racket
  1. Install it with this command:
$ sudo apt-get install racket

Usage

The reason for this project is to have resources and examples of the Scheme functional language, so you can consult them to learn or remember how that thing was done?
For example, the fibonacci series:

;; Fibonacci's Series Scheme implementation

(define (fib num)
   (cond ((or (zero? num) (equal? num 1))
           1 )
         (else (+ (fib (- num 1)) (fib (- num 2))))
   )
)

Authors and acknowledgments

Esteban Alvarado - Computer Engineering Student - @estalvgs1999

I thank the teachers of the course:

  • Ing. Marco Rivera Meneses from Programming Languages
  • Ing. Marco Hernández Vásquez from Compilers and Interpreters

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE.md file for details


About

Collection of Scheme language resources of the course (CE3104) Languages, Compilers and Interpreters focused on the functional programming paradigm.

License:GNU General Public License v3.0


Languages

Language:Racket 100.0%