Replit Blog
- May 29, 2017
Check out my Repl!
The label "sessions" is very near and dear to my heart. I vividly remember how Amjad came up with the name and why. After we learned that people would like to create accounts on Repl.it, we were trying to figure out what was the main value proposition for creating an account. Of course, it was saving code! But what do you call a list of code projects saved on your account? In a brainstorming session in the New York City subway (incidentally, on our way to an improv class so naturally we were yes-anding each-other) Amjad suggested the name "sessions"! He continued "this will be a feed of sesssions that you create and manage". But let's be honest "sessions" is kind of boring and somewhat bland. So if Repl-it is about Repl-ing, what is the thing that you save? It's of course a Repl! In fact, some of our users already call it that: "I made a repl". So going forward we're going to use "Repl" instead of "Session". When you log in you'll see that the "sessions" list is now a "Repls" list. And an individual "session" is a "Repl". Not much else will change. But you'll be happy to know that we're designing a place where you can showcase your Repls and share them with the rest of our community. Happy Repling!!
- May 17, 2017
Introducing Kotlin REPL
On the heels of Google announcing native Kotlin support on Android yesterday, we thought it'd be cool to get a Kotlin REPL up so that people can try it. Give it a spin here. It's still in beta so let us know if you hit any bugs.
- Mar 28, 2017
Require any npm package
Last year we introduced support for importing any Python package from PyPi and -- although we don't have perfect support for all packages -- it turned out to be a very popular feature. That's why today we're excited to continue the roll-out for the rest of our platform starting with web-based languages. [](preview end) Whether you're using plain old JavaScript REPL, HTML/CSS/JS, or ES2016, you'll be able to import any package from npm (that can run in the browser). How it works is that we parse out the requires from your code, fetch the bundle from npm via wzrd.in, and evaluate the bundle in the same context as your code. Note that ES6 imports is not currently supported but we're hoping to get it in soon.
- Mar 2, 2017
Start Coding with Clojure on Replit
Earlier this week we introduced Haskell support. And now, as promised, we're continuing to add more functional languages. So today we're excited to introduce Clojure. A Lisp dialect that runs on top of the Java Virtual Machine with a focus on immutability. [](preview end) You can give it a try right now at repl.it/languages/clojure. And as always here's a gif of what you can expect: This is built on top of the Clojure's NRepl server so you should be able to get the native behavior you expect from a Clojure REPL. Please let us know if we can make it better.
- Feb 27, 2017
Start Coding with Haskell on Replit
We heard your requests for Haskell and today we're excited to finally announce Haskell as yet another language we support. We've decided to put our focus on adding more functional languages, starting with Haskell, so you can expect more very soon.[](preview end) Right now, the Haskell repl has few limitations. In the repl, stdout won't be echoed until your program completes execution, and stdin is completely ignored. So if you want to use something like getLine, it's probably best to put that in the editor. Aside from that, it should behave eactly like ghci. You can give it a try right now at repl.it/languages/haskell. Let us know what you think. And as always here's a gif of what you can expect:
- Jan 27, 2017
Enable Assignment Dependencies with Teams for Education
Fundementally, learning is about completing basic material before moving on to more advanced stuff. -- a teacher giving us feedback. At Repl.it we're always open to feedback; and supporting the teachers and students that are using our platform is our top priority. We know that teaching is hard but it's easliy one of the most impactful jobs when done correctly. As mentioned in my post about assignment reordering -- we're making it possible for teachers to enable assignment dependencies which will require students to complete an assignment before moving on to the next one. This is optional but it makes sense to enable if you designed your material to be expereinced in a certain order. Finally, we're always thinking about the best way students learn, that’s why we decided to make locked assignments accessible as read only on the student end. This means: students will be able to read the assignment but won't be able edit or submit. We think by allowing this, students can prepare themselves for upcoming assignments and it would help them to form an idea of what’s coming next.
- Jan 23, 2017
Infinite Loops
At Repl.it we aim to make the full power of programming easily accessible for everyone. That's why when we designed our code execution service we decided that we would not timebox users' programs or sessions. [](preview end) This was a great design decision because it allowed people to build complex programs, things like infinite looping animations, and games -- like this fun text-based game: But this also meant you could hit infinite loops. And in most cases this was okay because you can hit stop and we'd kill the program for you. Except this failed in two cases: If the program was sending so much output data to your browser that it was causing it lock up.
- Jan 19, 2017
Reorder Assignments with Teams for Education
At Repl.it our mission is to make programming more accessible, and the best way we found to achieve this is to support, you, the teachers on the ground doing working with students. That's why we want to make sure you control the student experience and today we're making it possible to control the assignments order from your classroom dashboard.[](preview end) We're giving you seven different sorting options: Alphabetic (both a-z and z-a), Publish date (both old-new and new-old), Due date (both sooner-later and later-sooner) and finally, Manual where you'll be able to drag and drop assignments in any order. Additionally, we're unifying the teacher’s and the student’s classroom dashboard by allowing you to choose any reordering option. That means both sides will see the same assignments order on their classroom dashboard which avoids any kind of confusion between the teacher and the students. To remove any friction at the students' end we're removing the sorting options in the student dashboard. Students will receive the order that their teacher chose for them; and soon this will allow teachers to add assignment dependencies which will require students to complete their assignment before moving to the next one. And as always, here is a gif of how it looks like:
- Dec 23, 2016
Live File Updates
Today we're excited to release a feature which shows any files your program creates directly inside the REPL. And any time that file changes it will be updated live in the editor. This can be anything from a text file to a gif. We also added support for matplotlib in python3 so you can make pretty graphs and watch them update live. Like this: And we don't stop you from rewriting your own source file so you can write a program which modifies itself, like this counting quine.
- Dec 2, 2016
Python Package Search
We recently made it possible to import any package from PyPi. However, people who missed the announcement didn't know this was possible. There was also no good way to search and explore packages. That's why today we're excited to introduce a package search widget. You'll be able to search for any python package without leaving the programming environment.
- Nov 28, 2016
Introducing Step Debugging for Python
Debug your Python3 programs from your browser At Repl.it, our goal is to make programming more accessible, and as part of this we aim to provide the full power of popular programming environments with no setup time. And I don't think it's an understatement to say that debugging is the majority of what we, as programmers, do. [](preview end) That's why today we're making it possible to step-debug through your Python 3 code right from the browser. We've built a new debug pane that makes it easy step in, out, over, and resume your code. All the common operations a typical debugger would do. To get started:
- Nov 12, 2016
Introducing Pylint Support
Today, we're excited to introduce lint support for Python3. Where previously you had to run your code, look at the console for an error, find the line number of the error and then find that line in your editor. Now, we'll show you errors and potential mistakes live as you type! This is powered by pylint, so in addition to obvious errors like syntax errors, pylint will point out potential programmer mistakes like unused variables, redefnining builtins and many more!
- Oct 25, 2016
from PyPi import *
Import any Python Package At Repl.it, our goal is to make programming more accessible, and as part of this we aim to provide the full power of popular programming environments with no setup time. And no modern programming language is complete without third-party packages. [](preview end) That's why today we're making every Python package ever immediately available on repl.it. Just select the language (Python or Python3) and start importing packages: You can explore Python packages here.
- Oct 4, 2016
Introducing Turtle Graphics For Python
Ever since the LOGO programming language educators have been using Turtle Graphics to demonstrate the power of programming to their students while making it fun and interesting.[](preview end) In fact, my first real programming experience was when I was 6 years old learning LOGO at school. I learned how to program the turtle to draw a square and a triangle which I then put together to create a house. However, I was frustrated that I had to keep repeating the code to create a village made from multiple houses -- and that's how discovered loops! It's a natural way for children to learn programming. Here is an example turtle graphic house in repl.it :) So far, we've been focused on what we think was largely missing from the web: running programs that typically require installing a compiler or an interpreter on your computer. However, now that we've built tools for teachers to bring programming to their classroom, many want to use turtle graphics as part of their cirriculum. And that's why we're excited to introduce Turtle Graphics support for Python. To get started just select Python (with Turtle) from the list of languages, import the turtle module and start drawing!
- Sep 28, 2016
Scheduled Assignments
Today, we're introducing scheduled assignments. Teachers using Repl.it Classroom can now schedule assignments to be published in the future. You can imagine working on your assignment, schedule a publish date, go on vacation, and still have your students receive their assignments at the right time.[](preview end) When the assignment is finally published your students will receive a notification informing them of it. You can get to this menu from the second page in the assignment creation flow. As always, feel free to reach out at [email protected] with feedback. We'd love to hear about how this feature helped you. Or, more importantly, if there is something we can be doing better.
