Unformatted text preview:

SASSi Carl Morgan Group Leader Paul Salama Xiaotang Zhang Why be SASSi Our motivation was to design a language to let a user make quick and simple programs to deal with various statistical problems But what about SAS and other statistics programs Unlike SASSi SAS and other programs like it are big and bulky in terms of maintenance learning curve and installation They also cost a bunch bad SASSi is free currently SASSi is simple easy to learn and easy to use What can SASSi do Handles many standard statistical problems such as getting the mean median standard deviation etc for a set of numbers Defined as a vector in SASSi Supports more complicated statistical problems like regressions distributions etc Graphical output What SASSi looks like Double b Vector a 1 1 2 3 5 8 b mean a print The mean of a is print b plot bar a More Samples SASSi allows users to define their own procedure calls Example procedure Vector foo Double sheep Double cow Double dog sheep cow sheep sheep 1 Vector animals sheep cow dog etc return animals SASSi grammar 1 Types of data bool Boolean values that can either be true or false and True False and TRUE FALSE int standard 32 bit integers double 64 bit IEEE double floating point format string a string of characters procedure a user defined procedure vector an M by 1 vector of doubles Expressions Very similar to C Primary expression Identifiers constants procedure calls and access to vector types Arithmetic expressions Relational expressions and SASSi grammar 2 Constants implemented by const int a 3 xconst Include statement include path name SASSi grammar 3 Statements Assignments Direct assignment in the form left valued expression right valued expression Conditional Statements if relational expression statement else statement For Loops for assignment relation expression action statement SASSi built in procedures Basic statistic methods mean median stdDev etc Dealing with vectors sort range union intersect etc Distributions normal standard geometric etc Regression linear SASSi Plotting SASSi supports five built in graphing functions Bar Pie Chart Line Error Curve SASSi printing Printing variables Doubles Int and Vector print v Printing strings print Who knows why you name something foo SASSi implementation ANTLR ssi file LEXER Tokens PARSER AST Tree AST WALKER Interm Code CODE GENERATOR Java Bytecode SASSi Summary SASSi is an efficient small FREE statistics language Expandable with user procedures plots So even though we didn t include Poisson distributions someone could include it in the future Enough functionality for a base of statistics Lessons Learned Not sticking to your schedule is bad Meeting twice a week is far more effective and comforting than just once Don t try to implement all statistics functions or all of C Get feedback from your TA They re there to help and have been there before Think big build small Decide if what you think is a language would be better off as a program If so don t try to implement it as a language THE END


View Full Document

Columbia COMS W4115 - SASSi

Documents in this Course
YOLT

YOLT

13 pages

Lattakia

Lattakia

15 pages

EasyQL

EasyQL

14 pages

Photogram

Photogram

163 pages

Espresso

Espresso

27 pages

NumLang

NumLang

6 pages

EMPATH

EMPATH

14 pages

La Mesa

La Mesa

9 pages

JTemplate

JTemplate

238 pages

MATVEC

MATVEC

4 pages

TONEDEF

TONEDEF

14 pages

JTemplate

JTemplate

39 pages

BATS

BATS

10 pages

Synapse

Synapse

11 pages

c.def

c.def

116 pages

TweaXML

TweaXML

108 pages

Load more
Loading Unlocking...
Login

Join to view SASSi and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view SASSi and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?