Giter Club home page Giter Club logo

fhj_swd21_zoomerscript's Introduction

ZoomerScript

A custom GPL for Zoomers, intentionally feature-poor to keep the attention of Gen Z. Compiled to Java.

Language Features

Declare variables

Either choose num or fr? to declare a double (disguised as integer) or boolean respectively.

num number2 = 13
fr? fo_sure = true

Reassign variables

Want to correct a past mistake or just override whatever content a variable has? Just reassign it!

number1 = 10

Flex on those haters (print to console)

Tell them haters with a print to system.out the current value of whatever expression you want to show them.

flex number1 on the haters

Control your flow! For real? (fr?) Yeah, no cap! It's bussinnnnn

ZoomerScript supports if and if/else like statements!

// If
if true no cap
  number1 = number1 + 5
sheesh

// If/else
if false no cap
  canYouSeeMe = false
if cap
  canYouSeeMe = true
sheesh

Do some sick arithmetics

We support all calculations you will ever need. Addition, Subtraction, Multiplication and Division. Mathematical? Rather Matheradical! (Of course, you may also nest expressions!)

number1 = number1 + 5
number1 = number1 - 10
number1 = number1 * 20
number1 = number1 / 13

Setup

Either download the source code and open the solution in your own MPS instance, or download the release from the sidebar on the right if you're on Linux. The source code comes with a sandbox solution, that lets you run ZoomerScripts directly, by right-clicking and clicking run.

Setup the release version

Just run the script "gpl_zoomerscript_allmerlukas.sh" to launch an instance of the ZoomerScript IDE!

Once open, you can create a new project with any name you desire. In order to start ZoomerScripting (trademark pending) do the following:

  • Right click your project in the Logical View and select "New -> Solution" and give it any name you like
  • Right click on the created solution and select "New -> Model", give it any name you'd like again, but do not mark it as "tests"! Keep other settings as is.
  • A window called "Model properties" will pop up, there under "Used Languages" add "ZoomerScript" and "ZoomerScript.Console" as languages
  • Now right click on the model you created and select "New -> Script" and you're good to go!

Get output

As mentioned before, in the source code version, you will be able to run scripts directly. In both versions, you can right click your script at any time and preview the generated Java classes at any time.

When you build the solution, the java class files will be built into the folder /%YourProjectFolder%/solutions/%SolutionName%/classes_gen and the source files into /%YourProjectFolder%/solutions/%SolutionName%/source_gen. Sometimes java doesn't like you when you execute the class file directly, but running java %ScriptName%.java from the commandline in the sources works like a charm!

IDE Controls

Please note that MPS does not use a text based editor, but a projectional editor. This means that every editor interaction is somehow related to the abstract syntax tree. If you don't know what you may enter, press "CTRL + space" and a context menu will pop up with possible expressions. It is recommended to use this for every line you enter.

fhj_swd21_zoomerscript's People

Contributors

lukasallmer avatar

Stargazers

 avatar

Watchers

 avatar

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.