Git Product home page Git Product logo

basic-lang's Introduction

Hi there ๐Ÿ‘‹

I'm Kolja from Europe and I am doing software for living. I'm mainly interested in new ways to build "programming" languages for people who wouldn't consider them self programmers. Feel free to ask me anything about domain specific languages, language workbenches, (programming) language design or how to teach people to build their own languages. Just drop me a message! I'm currently learning a lot about web technologies especially interactive editors.

๐Ÿ“ซ How to reach me

โšก Fun facts

  • I hate bananas ๐ŸŒ
  • I love cooking ๐Ÿ‘จโ€๐Ÿณ

Ask a question

Asking a question is as easy as creating a new issue on this project.

I'll try to answer it as soon as I can get to it. Once I answer I'll close the issue just so I know what I've covered, but don't worry- if you have any further questions just respond in the thread and I'll get back to you soon. Feel free to ask a question on any old issue too, even if you didn't create it.

Read some questions

Check out the Closed Issues filter on this repository to browse questions I've answered in the past. Feel free to dig into some of the older threads.

basic-lang's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

basic-lang's Issues

sandbox needs JDK dependency

To get the compiler working we had to add a dependency to the JDK directly to the sandbox solution. We need to investigate how we can get rid of this.

Typesystem with number ranges

Apart from only distinguishing between integers and floating points we could extend the type system to work with number ranges. The typesystem should be able to track ranges across arithmetic operations and calculate them accordingly

Interpreter for our language

Add an interpreter for our language using the interpret from the mbeddr platform. Which allows test execution directly inside the IDE. We should also cover how to then execute these tests as part of the CI build and normal testing.

support for objects

Allow to define data structures with members and their types.
Add support for initialising instances of these data structures.
Allow to manipulate existing data structures.
Allow access to individual members of a data structure instance.

Type system for floating point numbers

The typesystem is currently limited to integer types.

We should also allow floating points and infer the type from the literal. The typesystem should allows assigning integers to floating points but not vice versa.

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.