Share your Programming Language Jam submissions here!

← Back to all posts
M.A.R.V.I.N
h
generationXcode (268)

Remember Marvin? the paranoid android from The Hitchhiker's Guide to the Galaxy? Well, we dedicate this language to that robot. And we named it after it.

  • M.A.R.V.I.N is not a general purpose language
  • It has most of the features any normal language would have along with the physics sandbox functions
  • No its not like a game engine. Maybe right now it seems like one but that's not our aim, we want to create a set of computational chemistry functions and methods in the future.
  • To really get to know our language check out the docs, they are fun to read (Or atleast I hope so)
  • The purpose of this lang is to get people tinkering and playing around with science without having to go to the lab or get any special equipment. We aim to let you simulate anything from an atom to a chair.

Aim of the language

Most people around my age that I see everyday don't seem to be interested in sciences any more. I don't know about the real numbers but in my own class less than a quarter of the people take even one science as a subject. However, somehow, the majority of the class takes computers(the subject).

Why do people like computers so much? is this because of parental pressure? is this because the computers subject is just easier? I don't really know. But I know that I like computers because of that instant validation I get when I write programs.

I get the results of my hard work with the click of a button. This is different for science, since you have to wait for the results of what you do. In short - science requires patience that we don't really have.

Even if you are a patient person you cant actually see what you learn a lot of the times, especially right now with the pandemic since we don't have access to labs.

I don't like this situation and nor does my team mate and that is why we made a programming language called M.A.R.V.I.N with the goal of being able to simulate certain experiments and play around with science on your computer.

Marvin isn't nearly completed yet, we have so much work left to do with it like make it faster and add more features to it to let our users play around with chemistry too or make entire universes and simulate them. What we present here is merely a prototype.

We started out knowing nothing about creating programming languages and we made this project by mostly looking at the PLY documentation and a lot of the examples. A lot of the methods we used to make this language we had to think up ourselves, since there wasn't any proper way to learn how to use this library. Yes,we used python and yes, it is slow. To people who don't like that we say "Patience is virtue". Just kidding. We are extremely impatient people and we too hate the fact that our language is this slow. We actually have plans to move this over to Julia so it can be faster.

There is a github repo for this language as well, but I cant really link it yet, since it is private for the time being. The documentation is in the readme file and I will soon write few tutorials on how to use this language as well.

As of right now with this language you can do anything from simulating the spread of an infection, to Brownian motion and even writing out peoples names.

That is it for the language and take a look at the docs to find out more on how to use it. This is our first ever language, so if you know any ways of improving on it please tell us how and once that repo is public I do hope we see many pull requests from all of you reading this.

Goodbye and happy coding (in marvin or any other language but really, do try marvin)


try it out...
edit - wow, you guys are really nice in the comments section :) I am so proud of the marvin community

Commentshotnewtop
FishingFights (191)

this takes my upvote, very cool!

gliu20 (4)

Very cool idea! Marv-in-elous! (ahaha bad pun :))

NoNameByProgram (112)

Ah yes, the classic README.md.md.md file.

DannyIsCoding (663)

This is awesome :D Here's an upvote.

What did u use to make the logo?

generationXcode (268)

@DannyIsCoding thanks danny. Umm for the logo I didnt make it - @SpaceFire did, so lets wait till he is online then, he'll probably explain... My guess is that it was canva but thats just a guess

DannyIsCoding (663)

@generationXcode Ok. Imma go now to try doing something in MARVIN

generationXcode (268)

@DannyIsCoding oooo, invite me if you need any help with the errors

aedans (5)

Before rewriting in Julia, you should check out PyPy https://www.pypy.org/ and GraalVM https://www.graalvm.org/why-graalvm/#for-ruby-r-python-or-webassembly. They both use JIT compilation to speed up Python and may give you the performance boost you need without rewriting in Julia.

generationXcode (268)

@aedans oo thanks thats s better option actually

YashmitBhaveris (11)

I don't understand this?

YashmitBhaveris (11)

@generationXcode I just wanna know what this is about. I know it is for the programming language but what does it do?

generationXcode (268)

@YashmitBhaveris Its not complete yet, but it never really will be.. But to answer your question, this is a programming language to play around with physics and chemistry. We are designing it to be somewhat like an open sandbox

potatojs (804)

this is actually really good!

matthewproskils (346)

Haha I was reading the hitchhiker's guide to the galaxy last night 🤣

generationXcode (268)

@matthewproskils you can never read it enough. Did you read the latest one tho. It was written by a different author but its epic

matthewproskils (346)

@generationXcode Lol no i was reading it for the first time. I'm only in 7th grade

python88 (172)

this is amazing! i can tell you spent a lot of effort!

generationXcode (268)

@python88 oh yes. Took a whole month.Thanks!

generationXcode (268)

Wow I really didnt expect this sort of a reaction I am amazed. Thanks for being so supportive and remember I'll release the tutorials soon so if you havent or dont want to read the docs, you'll still be able to play around with physics and if any of you here are really good at game physics and all, I'll invite you to the multiplayer and we can add some more fun stuff to the language

generationXcode (268)

I am so proud of the marvin community

generationXcode (268)

OMG yall are amazing, you all deserve an upvote from me

k9chelsea2 (650)

is this meant to be for the jam?

k9chelsea2 (650)

ight then you should prolly post this in the jam board for it to count

k9chelsea2 (650)

ask a mod to put in jam

generationXcode (268)

@k9chelsea2 oof no u are smartest cow I have ever met

k9chelsea2 (650)

lol thx i must have gotten it confused with another repl post

generationXcode (268)

@k9chelsea2 now let me upvote all ur comments or I wont be able to look at this comment board lmao

MemeManHimself (80)

oof when it finally finished loading this happened

ModuleNotFoundError: No module named 'ply'
exit status 1

XD
@generationXcode

generationXcode (268)

comments section epic as always. Just empty. edit- its not empty anymore

generationXcode (268)

@potatojs wat so funny about marvin :(

potatojs (804)

no i'm talking about your comment
but about marvin i have a weird error
in repl so ehhh if it works i'm gonna give my feedback :)
@generationXcode

generationXcode (268)

@potatojs the default code I wrote seems to work ok

potatojs (804)

this problem is from repl it self
look at this


@generationXcode