Git Product home page Git Product logo

language-powerquery's Introduction

langauge-powerquery

Tools for working with and analyzing PowerQuery (M Language) scripts

  • Haskell data structures and AST (language-powerquery-ast)
  • Haskell lexer/parser/printer (language-powerquery)
    • A CLI tools for lexing/parsing/printing
    • A Javascript/NodeJS version (built with GHCJS)
  • PowerBI .pbix file reader (pbix)
    • A CLI tools to extract (and parse) formulas from .pbix files
  • Example IHaskell (Jupyter) notebooks

Build

13:54 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ make
nix-build --cores 0 -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/19.03.tar.gz
/nix/store/a53pzr8ph5gqriwx2dw6p0b8ddpvdhs0-language-powerquery-env
  • make (JavaScript / NodeJS)
13:54 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ make build-js
nix-build --cores 0 -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/19.03.tar.gz nodejs.nix
/nix/store/drmnqrv4m9s7nik6gsjh7h4gpf5snrhj-language-powerquery-js-env
13:54 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ node ./result/bin/pbix.jsexe/all.js
Missing: COMMAND

Usage: all.js COMMAND
  PowerBI .pbix file analyzer
  • make (Static Executables)
13:55 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ make build-static
nix-build --cores 0 -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/19.03.tar.gz static.nix --show-trace
/nix/store/03nv9qxyf3d2cw2zj2h3y82b428wg2ya-language-powerquery-static-env
13:54 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ ldd ./result/bin/pbix
        not a dynamic executable
  • make (Docker)
13:55 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ make docker
nix-build --cores 0 -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/19.03.tar.gz docker.nix -o docker.tar.gz
/nix/store/76bh3g4z5bsfi9nyyg1dwxdx56gbkjsp-docker-image-language-powerquery.tar.gz
  • make (Reflex GHCJS Editor)
13:55 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ make editor
nix-build --cores 0 -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/19.03.tar.gz -A ghcjs.language-powerquery-editor editor.nix
/nix/store/3fcb8zbcsp8pj2aip3z6smn3x3nhbw5p-language-powerquery-editor-0.1.0.0
  • make (notebook) - build and run IHaskell (Jupyter) server
13:56 barak@berkos:~/Development/atidot/language-powerquery/build (master) $ make notebook
nix-shell --cores 0 -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/19.03.tar.gz -A env notebook.nix --command "jupyter lab --notebook-dir=../examples/"
[W 13:57:03.859 LabApp] JupyterLab server extension not enabled, manually loading...
[I 13:57:03.866 LabApp] JupyterLab extension loaded from /nix/store/gzymczahplzh4azw94bsp83nkzgilw6y-python3.7-jupyterlab-0.35.4/lib/python3.7/site-packages/jupyterlab
[I 13:57:03.866 LabApp] JupyterLab application directory is /nix/store/g22w2r0a6vzax71np2fzpxwzpx0wq1kf-python3.7-jupyterlab-0.35.4/share/jupyter/lab
[I 13:57:03.869 LabApp] Serving notebooks from local directory: /home/barak/Development/atidot/language-powerquery/examples
[I 13:57:03.869 LabApp] The Jupyter Notebook is running at:
[I 13:57:03.869 LabApp] http://localhost:8888/?token=baeb27f55264e554e813a610028f06bfe48e6c6fca96d5af
[I 13:57:03.869 LabApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 13:57:03.982 LabApp]

    Copy/paste this URL into your browser when you connect for the first time,
    to login with a token:
        http://localhost:8888/?token=baeb27f55264e554e813a610028f06bfe48e6c6fca96d5af
[I 13:57:04.209 LabApp] Accepting one-time-token-authenticated connection from ::1
[I 13:57:05.261 LabApp] Node v8.15.0

[I 13:57:05.428 LabApp] Build is up to date

TODO

  • Hackage packages
  • Javascript version
  • Reflex Editor (CodeMirror, JSONEditor)

language-powerquery's People

Contributors

barakber avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

language-powerquery's Issues

Heya - it appears you deleted all of your public reflex repositories

I have some personal projects that depend on the code in reflex-codemirror and reflex-utils.

While I understand that you are certainly have no responsibility to maintain packages that you post to github, I personally feel that you have a responsibility to not take them down, or to offer an alternative place to view them. I contributed to one or two of those packages, and I am now unable to find the original repositories...

Understand I don't mean to start a fight from the get go! I'm just trying to recuperate some old code, and it is frustrating to come back and find a bunch of repositories disappeared underneath me :(

Is there any way that some of those repositories could make their way back to the public? Or at least, could I be allowed to own forks of the repositories that were deleted. A list of such repositories is here:
https://www.reddit.com/r/haskell/comments/hclj1p/reflex_widgets/

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.