Algorithms on strings

Parsing

Parsing, syntax analysis, or syntactic analysis is the process of analyzing a string of symbols, either in natural language, computer languages or data structures, conforming to the rules of a formal grammar. The term parsing comes from Latin pars (orationis), meaning part (of speech). The term has slightly different meanings in different branches of linguistics and computer science. Traditional sentence parsing is often performed as a method of understanding the exact meaning of a sentence or word, sometimes with the aid of devices such as sentence diagrams. It usually emphasizes the importance of grammatical divisions such as subject and predicate. Within computational linguistics the term is used to refer to the formal analysis by a computer of a sentence or other string of words into its constituents, resulting in a parse tree showing their syntactic relation to each other, which may also contain semantic and other information (p-values). Some parsing algorithms may generate a parse forest or list of parse trees for a syntactically ambiguous input. The term is also used in psycholinguistics when describing language comprehension. In this context, parsing refers to the way that human beings analyze a sentence or phrase (in spoken language or text) "in terms of grammatical constituents, identifying the parts of speech, syntactic relations, etc." This term is especially common when discussing which linguistic cues help speakers interpret garden-path sentences. Within computer science, the term is used in the analysis of computer languages, referring to the syntactic analysis of the input code into its component parts in order to facilitate the writing of compilers and interpreters. The term may also be used to describe a split or separation. (Wikipedia).

Parsing
Video thumbnail

Multiplying Decimals

This video focuses on how to multiply decimals. In particular, I teach students the concept of moving the decimal appropriately when multiplying decimal terms. In addition, show students how to use estimation strategies in the event that they forget the technique for multiplying decimals.

From playlist PreAlgebra

Video thumbnail

Multiplying decimals

This is a short video tutorial on multiplying decimals. For interactive applets, worksheets, and more videos go to http://www.mathvillage.info

From playlist All about decimals

Video thumbnail

Matrix addition

How do we add matrices. A matrix is an abstract object that exists in its own right, and in this sense, it is similar to a natural number, or a complex number, or even a polynomial. Each element in a matrix has an address by way of the row in which it is and the column in which it is. Y

From playlist Introducing linear algebra

Video thumbnail

Learn how to multiply a three digit decimal to a two digit decimal

๐Ÿ‘‰ You will learn how to multiply numbers in decimal form. We will work with decimals that are greater and less than one. When multiplying decimals it is important to line up the decimal point so that you keep the place values of the numbers. We will apply multi digit multiplication to f

From playlist How to multiply and divide decimals

Video thumbnail

How to use decimal points

๐Ÿ‘‰ Learn all about decimals. Decimals are numbers written with a decimal point. Digits can be written to the right or to the left of the decimal point. Digits are written to the left of the decimal point increase in value by multiples of 10 while digits written to the right decrease by mul

From playlist Decimals | Learn About

Video thumbnail

How to multiply two decimals by each other

๐Ÿ‘‰ You will learn how to multiply numbers in decimal form. We will work with decimals that are greater and less than one. When multiplying decimals it is important to line up the decimal point so that you keep the place values of the numbers. We will apply multi digit multiplication to f

From playlist How to multiply and divide decimals

Video thumbnail

How to multiply a two digit decimal from a three digit decimal

๐Ÿ‘‰ You will learn how to multiply numbers in decimal form. We will work with decimals that are greater and less than one. When multiplying decimals it is important to line up the decimal point so that you keep the place values of the numbers. We will apply multi digit multiplication to f

From playlist How to multiply and divide decimals

Video thumbnail

Multiplying Decimals with CRA

Using the Concrete-Representation-Abstract (CRA) instructional approach to model multiplying decimals. Email me if you have any questions: dhabecker@gmail.com

From playlist All about decimals

Video thumbnail

Multiplying Decimals

This video explains how to multiply decimals. http://mathispower4u.wordpress.com/

From playlist Number Sense - Decimals, Percents, and Ratios

Video thumbnail

Monadic Parsers at the Input Boundary

When reading a byte stream over the process I/O boundary, the first thing which everyone should do is to parse the byte stream with a monadic parser. The talk will discuss Processes and input byte streams. Monadic parsers. What they are and why they matter. The design and use of the pure

From playlist Functional Programming

Video thumbnail

Parsing with Derivatives

(February 9, 2011) Matthew Might focuses on a new way to write parsers and how it will affect computer science in the future. Might discusses these parsers and overall language theory, to help explain how there is demand for better parsing tools and how computer science will be improved in

From playlist Engineering

Video thumbnail

Symbolic Differentation in Python from Scratch! #some2

Join me as we live code up a symbolic differentiator in python completely from scratch. #some2 Link to github repository with all the code: https://github.com/alexkassil/symbolic_differentation Give it a star, and upload your own solution to the challenges in a folder part of the reposit

From playlist Summer of Math Exposition 2 videos

Video thumbnail

RubyConf 2010 - Grammars, Parsers, and Interpreters, In Ruby by: Michael J. I. Jackson

Parsing expression grammars (PEG) are a declarative alternative to the traditional generative approach of context-free grammars (CFG) and regular expressions. They require no tokenization phase, and are usually simpler to understand and maintain. We'll be discussing the Citrus and Treetop

From playlist RubyConf 2010

Video thumbnail

[rust] Graceful Error Handling

The problem statement for the stream was inspired by a talk by Cรฉsar Tron-Lozai: https://youtu.be/e6tWJD5q8uw. Repo: https://github.com/theteachr/graceful-error-handling Setup configuration used in the video: https://github.com/theteachr/.settings/tree/steam-error-handling Stream Timestam

From playlist Rust

Video thumbnail

Functional Parsing in C++20

Is C++20 a language that supports a functional style of programming? Can we write modern C++ code in a pure functional style that would easily translate into a pure functional language like Haskell, and could that C++ code end up looking just as nice while still being reasonably efficient?

From playlist C++

Video thumbnail

R Programming Tidyverse: readr package to import data (csv, tab-separated, fixed-width) (tidy-02)

Here I illustrate, or introduce if you aren't familiar with it, the package that's called readr, which is part of the tidy verse, and this is the package that we would use to import external files into our R environment as usable R objects. In the tidy verse those would be called Tibbles,

From playlist R Programming: Tidyverse

Video thumbnail

Pumping parse trees: Theory of Computation (Mar 30 2021)

This is a recording of a live class for Math 3342, Theory of Computation, an undergraduate course for math & computer science majors at Fairfield University, Spring 2021. Class website: http://cstaecker.fairfield.edu/~cstaecker/courses/2021s3342/

From playlist Math 3342 (Theory of Computation) Spring 2021

Video thumbnail

Understanding Expressions and Equations

This video define an expression and an equation. Then the different tasks performed on expressions and equations is discussed. http://mathispower4u.com

From playlist Introduction to Linear Equations in One Variable (Common Core Using Construct/Deconstruct Method)

Related pages

Lex (software) | Smoothing | Left corner parser | Parsing expression grammar | Context-free language | Deterministic context-free grammar | Ambiguous grammar | Context-free grammar | Ambiguity | Scannerless parsing | Head-driven phrase structure grammar | Definite clause grammar | Formal grammar | Regular language | LL parser | Abstract syntax tree | Parse tree | Top-down parsing | Chart parser | Left recursion | Regular expression | DMS Software Reengineering Toolkit | Sentence diagram | Symbol (formal) | Heuristic (computer science) | Backtracking | Lexical functional grammar | Overfitting | Shift-reduce parser | LALR parser | Compiler-compiler | Dependency grammar | Bottom-up parsing | Semantic analysis (compilers) | Program transformation | LR parser | Attribute grammar | Pattern matching | CYK algorithm | String (computer science) | Discourse analysis | Markup language