Giter VIP home page Giter VIP logo

pytch's People

Contributors

aajanki avatar acbart avatar ahuhn avatar albertjan avatar alexwenbj avatar amr66 avatar blacatena avatar bnmnetp avatar brianpmarks avatar bzwheeler avatar csev avatar david-geo-holmes avatar davidscz avatar eah13 avatar ebertmi avatar gerbal avatar graceynichols avatar isaacdontjelindell avatar j-f1 avatar jacco avatar jmaroeder avatar leszekswirski avatar mariechatfield avatar meredydd avatar peterjclaw avatar prescod avatar rixner avatar robyntorregrosa avatar sophiajefferson avatar ssarangi avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

bjg

pytch's Issues

Better error support for threading errors

The automatically added threading statements currently have no line numbers, because they don't correspond to anything in the source code. It would be better if they had some information like "near line xx". This should be possible because the contents of the lineno and column offset values are just passed through directly (if they are strings they need to be quoted)

Use __future__ imports to enable threading

Instead of detecting the pitch import directly we could add a new future import. The compiler needs to recognise it, but it has the advantages of being somewhat standard behaviour, and has the compiler reset the use fo threading on a per-module basis.

Yield in more places

Pytch programs yield their thread at the end of While and For loop bodies. we should also yield in a few other places:

  • Within the generator of a list comprehension
  • Within recursive functions. Perhaps we could yield at some sensible point, like on a recursive function call, or on a function return?

Sandbox playground

A UI wrapper that allows us to publish a sandbox for running Pytch programs

wait_seconds fails if it's used outside a sprite

This program:

import pytch
print("hello")
pytch.wait_seconds(1)
print("Never get here")

fails with the error
SuspensionError: Unhandled non-optional suspension of type 'Pytch' at

The culprit is the wait_seconds call, which works as expected when used in a Sprite script.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.