Stack-based virtual machines

P-code machine

In computer programming, a p-code machine (portable code machine) is a virtual machine designed to execute p-code (the assembly language or machine code of a hypothetical central processing unit (CPU)). This term is applied both generically to all such machines (such as the Java virtual machine (JVM) and MATLAB precompiled code), and to specific implementations, the most famous being the p-Machine of the Pascal-P system, particularly the UCSD Pascal implementation, among whose developers, the p in p-code was construed to mean pseudo more often than portable, thus pseudo-code meaning instructions for a pseudo-machine. Although the concept was first implemented circa 1966—as O-code for the Basic Combined Programming Language (BCPL) and P code for the language Euler—the term p-code first appeared in the early 1970s. Two early compilers generating p-code were the Pascal-P compiler in 1973, by Kesav V. Nori, Urs Ammann, Kathleen Jensen, Hans-Heinrich Nägeli, and Christian Jacobi, and the Pascal-S compiler in 1975, by Niklaus Wirth. Programs that have been translated to p-code can either be interpreted by a software program that emulates the behavior of the hypothetical CPU, or translated into the machine code of the CPU on which the program is to run and then executed. If there is sufficient commercial interest, a hardware implementation of the CPU specification may be built (e.g., the Pascal MicroEngine or a version of a Java processor). (Wikipedia).

Video thumbnail

102 Printing mathematical symbols in Sympy

How to output your mathematical code using an in built Sympy printer.

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

106 Solving for x

Using Sympy to solve algebraic expressions and equations.

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

107 Differential Equations

Setting up and solving ordinary differential equations with constant coefficients.

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

003 The Math Module

Extending the capabilities of Python with the Math module

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

108 Matrices

Various manipulations of matrices including teh caclulation of eigenvalues and eigenvectors.

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

001 Introduction

A brief introduction to Python. Where to go to download Python and what to install.

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

002 Simple arithmetic in the shell

Introducing the shell and how to do simple arithmetic.

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

105 Limits

Dealing with limits in Sympy.

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

004 Numerical Python part 1

Extending the capabilities of Python with the NumPy module

From playlist Introduction to Pyhton for mathematical programming

Video thumbnail

RubyConf 2015 - Stately State Machines with Ragel by Ian Duggan

Stately State Machines with Ragel by Ian Duggan State machines are an important tool in computer programming, and Ragel is a wonderful tool for creating them. Come learn how to use Ragel to compose simple state machines into much more complicated versions useful for parsing and processing

From playlist RubyConf 2015

Video thumbnail

Python in Python: The PyPy System

(March 2, 2011) Armin Rigo discusses the research he has done to implement Python in Python. The new project, titled PyPy, can increase the speed at which programs run, as well as reduce the total memory that they use. He hopes that it can help advance the field of computer science as we m

From playlist Engineering

Video thumbnail

RubyConf 2021 - Programming with Something by Tom Stuart

Programs which manipulate other programs are extremely fun and incredibly powerful. To write them, we need a way to represent code as a data structure which we can analyse, manipulate and eventually execute. In this talk we’ll learn how to store executable code as data in Ruby, and explore

From playlist RubyConf 2021

Video thumbnail

PyCharm Tutorial For Beginners | Debug Python Code Using PyCharm | Python Training | Edureka`

(** Python Certification Training: https://www.edureka.co/python **) This Edureka video on PyCharm Tutorial covers all the important aspects of using the PyCharm IDE for helping programmers code better in Python. It establishes all of the concepts like explaining the features and tools, pr

From playlist Python Programming Tutorials | Edureka

Video thumbnail

Deploying Machine Learning Models with Flask and Docker

What happens after we train a model in a Jupyter notebook? It's time to deploy it! In this talk, we'll learn about putting ML models into production and deploying it as a web service. We'll cover: - Saving and loading models with pickle - Serving the model with Flask - Creating and manag

From playlist Advanced Machine Learning

Video thumbnail

Introduction to number theory lecture 18. Cryptography

This lecture is part of my Berkeley math 115 course "Introduction to number theory" For the other lectures in the course see https://www.youtube.com/playlist?list=PL8yHsr3EFj53L8sMbzIhhXSAOpuZ1Fov8 We give a brief introduction to the RSA method, an application of number theory to cryotog

From playlist Introduction to number theory (Berkeley Math 115)

Video thumbnail

Pointers in C / C++ [Full Course]

Pointers in C and C++ are often challenging to understand. In this course, they will be demystified, allowing you to use pointers more effectively in your code. The concepts you learn in this course apply to both C and C++. ✏️ Course developed by Harsha and Animesh from MyCodeSchool. 🔗 R

From playlist C / C++

Video thumbnail

VS Code Can Do That?! VS Code Tips and Tricks

Visual Studio Code is on fire. Everybody loves this unexpected text editor smash hit, and for good reason: it can do A LOT. It can compile JavaScript templates on the fly, execute JavaScript inline, manage Mongo DB instances and so much more! In this session, we’ll take a look at the most

From playlist VS Code

Video thumbnail

Lec 13 | MIT 6.172 Performance Engineering of Software Systems, Fall 2010

Lecture 13: Parallelism and Performance Instructor: Charles Leiserson View the complete course: http://ocw.mit.edu/6-172F10 License: Creative Commons BY-NC-SA More information at http://ocw.mit.edu/terms More courses at http://ocw.mit.edu

From playlist MIT 6.172 Performance Engineering of Software Systems

Video thumbnail

6. Multicore Programming

MIT 6.172 Performance Engineering of Software Systems, Fall 2018 Instructor: Julian Shun View the complete course: https://ocw.mit.edu/6-172F18 YouTube Playlist: https://www.youtube.com/playlist?list=PLUl4u3cNGP63VIBQVWguXxZZi0566y7Wf This lecture covers modern multi-core processors, the

From playlist MIT 6.172 Performance Engineering of Software Systems, Fall 2018

Related pages

Stack machine | Data type | Java virtual machine | MATLAB | Common Language Runtime | Stack (abstract data type) | Strong and weak typing | Forth (programming language)