Sigma Lisp - PowerPoint PPT Presentation

About This Presentation
Title:

Sigma Lisp

Description:

Designed to be as expressive as possible. Project Overview: Why Lisp? ... Revive the Lisp model. Project Overview: Principles. Assume a sufficiently smart programmer ... – PowerPoint PPT presentation

Number of Views:59
Avg rating:3.0/5.0
Slides: 25
Provided by: tjh5
Learn more at: https://www.tjhsst.edu
Category:
Tags: lisp | revive | sigma

less

Transcript and Presenter's Notes

Title: Sigma Lisp


1
Sigma Lisp
  • S?
  • Sam DavisNick Alexander

2
What is Sigma Lisp?
  • New dialect of Lisp
  • Designed to be as expressive as possible

3
Project Overview Why Lisp?
  • Lisp is a highly abstract language
  • S-expressions
  • Shared notation for code and data
  • Macros
  • Functions that return code
  • Lexical Scope
  • Easy insertion of values
  • Dynamic Typing

4
Project Overview Why Sigma?
  • Onions in the varnish
  • Features that are products of history
  • Language needs have changed
  • Cross-platform applications
  • OS interactions
  • Revive the Lisp model

5
Project Overview Principles
  • Assume a sufficiently smart programmer
  • Expressive enough to use and redefine itself
  • Time efficiency for the programmer
  • Language first, implementation second
  • I can't do everything myself
  • Nothing is sacred

6
Project Overview Design
  • Functional Programming
  • Test individual components independent of state
  • Bottom-up Design
  • Build from independently coded components
  • Link together powerful abstract tools

7
Components
  • Basic Data Structs
  • Parser
  • Libraries
  • Memory Management
  • Sigma Structs
  • Scopes
  • Eval

8
Basic Data Structs
  • Defines structures for basic manipulation and
    storage of data
  • Array
  • Hash
  • Controls interaction through interface
  • Foundation

9
(No Transcript)
10
(No Transcript)
11
(No Transcript)
12
Sigma Structs
  • Sigma specific structures
  • Object
  • Scope
  • Func
  • Cons
  • Num

13
(No Transcript)
14
(No Transcript)
15
(No Transcript)
16
Parser
  • Translates text input into Sigma object
    representing the S-expression
  • Syntax
  • quote '
  • backtick
  • comma ,

17
Eval
  • Evaluates an object returned from Parser
  • Symbol returns variable value
  • List preforms a function application
  • Everything else is returned
  • ( a b) -gt application of function '' to values
    of 'a' and 'b'

18
Scopes
  • System for variable management
  • Stored in layers
  • Maps string to value
  • Represents the environment of variables

19
Libraries
  • Native functions written in C
  • Basic data manipulation
  • Control structures
  • Predefined functions in Sigma
  • Higher level manipulation
  • Derived functions and macros

20
Memory Management
  • Hybrid reference counting and garbage collection
  • Emphasis on reference counting
  • Garbage collection acts as back up for circular
    structures

21
(No Transcript)
22
(No Transcript)
23
(No Transcript)
24
Credits
  • Nick
  • Primary Coding Basic Structs, Sigma Structs,
    Debugging, Scope, Tests, Design Concepts
  • Sam
  • Eval, Parser, Debugging, Tests, Diagramming,
    Primary Research Paper Writer, Administrative
    Requirements
Write a Comment
User Comments (0)
About PowerShow.com