Skip to content
← Back to Community
M.A.R.V.I.N
Profile icon
generationXcode

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.

image

  • 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.

image

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)

the shell
try it out...
edit - wow, you guys are really nice in the comments section :) I am so proud of the marvin community
github repo - https://github.com/SentientVirtualFire/M.A.R.V.I.N

Voters
Profile icon
ULever
Profile icon
N3rdL0rd
Profile icon
YeeterManAcc
Profile icon
MinerProMan
Profile icon
Rithvik726
Profile icon
theunk51
Profile icon
Xerais
Profile icon
LuckyOreos
Profile icon
PythonPiboy314
Profile icon
KingsleyDockeri
Comments
hotnewtop
Profile icon
leo-ironkey

this takes my upvote, very cool!

Profile icon
generationXcode

@FishingFights damn thanks!

Profile icon
neil200682

Nicee

Profile icon
neil200682

Cool

Profile icon
gliu20

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

Profile icon
generationXcode
Profile icon
NoNameByProgram

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

Profile icon
generationXcode
Profile icon
fuzzyastrocat

@NoNameByProgram Always good to mark your marked-down markdown down

Profile icon
NoNameByProgram

@fuzzyastrocat correct

Profile icon
fuzzyastrocat

@NoNameByProgram Markdown tongue twisters...

Profile icon
Kookiez

this is cool!

Profile icon
generationXcode
Profile icon
CodingGoose

This is awesome :D Here's an upvote.

What did u use to make the logo?

Profile icon
generationXcode

@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

Profile icon
CodingGoose

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

Profile icon
generationXcode

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

Profile icon
ELDER054

Tell @SpaceFire that he did a great job, I love that logo @generationXcode

Profile icon
aedans

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.

Profile icon
generationXcode

@aedans oo thanks thats s better option actually

Profile icon
Yoshiii

I don't understand this?

Profile icon
generationXcode

@YashmitBhaveris which part?

Profile icon
generationXcode

@YashmitBhaveris I can explain

Profile icon
Yoshiii

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

Profile icon
generationXcode

@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

Profile icon
potatojs

this is actually really good!

Profile icon
generationXcode

@potatojs thanks potato!

Profile icon
matthewproskils

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

Profile icon
generationXcode

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

Profile icon
matthewproskils

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

Profile icon
generationXcode
Profile icon
zplusfour

image

Profile icon
generationXcode

@ZDev1 wat oh noes

Profile icon
generationXcode

@ZDev1 it shud work now

Profile icon
zplusfour
Profile icon
python88

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

Profile icon
generationXcode

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

Profile icon
generationXcode

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

Profile icon
generationXcode

I am so proud of the marvin community

Profile icon
generationXcode

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

Profile icon
k9chelsea2

is this meant to be for the jam?

Profile icon
generationXcode
Profile icon
k9chelsea2

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

Profile icon
k9chelsea2

ask a mod to put in jam

Profile icon
generationXcode

is it not in jam? @k9chelsea2

Profile icon
k9chelsea2

my bad it is

Profile icon
k9chelsea2

im so dumb lol

Profile icon
generationXcode

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

Profile icon
k9chelsea2

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

Profile icon
generationXcode

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

Profile icon
k9chelsea2

oof

Profile icon
LeoVomacka

I think this is a great idea keep working on it

Profile icon
generationXcode

@LeoVomacka wow thanks! I'll include the github repo in the post so you could help out keep this project alive. Currently I'm working on something else but I'm booking a slot in my project time to work on this :)

Profile icon
MemeManHimself

oof when it finally finished loading this happened

ModuleNotFoundError: No module named 'ply' exit status 1

XD
@generationXcode

Profile icon
generationXcode

@MemeManHimself reolit packaging issue... let me check tho anyways

Profile icon
generationXcode

@MemeManHimself seems to be working

Profile icon
MemeManHimself

@generationXcode Still seems amazing though

Profile icon
generationXcode
Profile icon
generationXcode

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

Profile icon
potatojs
Profile icon
generationXcode

@potatojs wat so funny about marvin :(

Profile icon
potatojs

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

Profile icon
generationXcode

@potatojs can you share ur code?

Profile icon
generationXcode

@potatojs the default code I wrote seems to work ok

Profile icon
potatojs

this problem is from repl it self
look at this

hi
@generationXcode

Profile icon
generationXcode
Profile icon
generationXcode

@potatojs it shud work now ig

Profile icon
potatojs