Giter VIP home page Giter VIP logo

mech-lang / mech Goto Github PK

View Code? Open in Web Editor NEW
199.0 6.0 10.0 1.52 MB

🦾 Main repository for the Mech programming language. Start here!

Home Page: http://mech-lang.org

License: Apache License 2.0

Rust 99.17% Dockerfile 0.02% HTML 0.56% RenderScript 0.08% TypeScript 0.18%
ide programming-environment programming-language compiler data-processing reactive-programming live-programming language robotics

mech's People

Contributors

cmontella avatar djedwards avatar hag223 avatar kkren avatar matthewjgunton avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

mech's Issues

Project status

What is the status of this project? Is it dead like EVE.

Variables do not allow underscores in names

Mech Version: 3.0.0
Issue: Variables fail to parse if an underscore is present.

Example:
In the file below, placing an underscore in the variable name will prevent program execution. When viewing the program using mech core no variable defintion is found for an_underscore.

TestBlock
  #NoSpaces = 5
  #an_underscore = 4

display
  #mech/output = #NoSpaces

When no underscore is present, everything works fine.

TestBlock
  #NoSpaces = 5
  #anunderscore = 4

display
  #mech/output = #NoSpaces

I'm not sure if this is intended, but I figured I'd open an issue. An open pull request which handles this issue is seen here: https://github.com/mech-lang/syntax/pull/1

Test fails for Ubuntu 18.04 (GLIBC version mismatch)

Cargo builds successfully on Ubuntu 18.04 but mech testing the test dir in the repo, fails. It seems machines/libmech_io.so has a hard dependency on GLIBC. I know 18.04 is outdated but I think this would fail again when GLIBC is bumped in later versions of the distro.

./mech test ../../tests/
[Testing]
[Loading] ../../tests/math.mec
[Downloading] https://gitlab.com/mech-lang/machines/mech/-/raw/v0.1-beta/src/test.mec
[Compiling] Compiled 4 blocks.
[Running]

[Mech Test] [Downloading] Updating machine registry.
*else: Ok(Ready)

[Mech Test] [Downloading] io v0.0.1
thread 'Mech Test' panicked at 'Can't load library "machines/libmech_io.so": DlOpen { desc: "/lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29\' not found (required by
machines/libmech_io.so)" }', src/program/src/lib.rs:123:56
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[Error] receiving on an empty and disconnected channel

Linker error when cross-compiling for non-x86_64 architectures

I'm packaging mech-lang for Termux (Android). When I'm cross-compiling for aarch64, arm or i686, I'm getting the following linker error about openssl:

  = note: ld: error: /data/data/com.termux/files/usr/lib/libssl.so is incompatible with elf64-x86-64
          ld: error: /data/data/com.termux/files/usr/lib/libcrypto.so is incompatible with elf64-x86-64
          collect2: error: ld returned 1 exit status      

error: could not compile `mech` due to previous error
Error: Process completed with exit code 101.

Interesting project, btw! Is it similar to ROS in scope and application domain? Is there literature (papers, etc) on this?

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.