Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Imports (micro-services) #67

Closed
4 of 5 tasks
pouya-eghbali opened this issue Dec 24, 2019 · 0 comments · Fixed by #180
Closed
4 of 5 tasks

Imports (micro-services) #67

pouya-eghbali opened this issue Dec 24, 2019 · 0 comments · Fixed by #180
Assignees

Comments

@pouya-eghbali
Copy link
Member

pouya-eghbali commented Dec 24, 2019

An import pattern should be added to the lexer, rules should be written for parser and generator, and the necessary runtime (if needed) should be created.

  • Add import pattern in core/patterns.js
  • Add from pattern in core/patterns.js
  • Add parser rules in core/clio.beef
  • Add generator rules in core/generator.js
  • Add required builtins and runtime in core/internals

Import statement should work with below patterns:

import * from url
import name1 name2 name3 from url
import url
import name1 as name2 from url
import url as name

url means (http|ws)s?://.*

Related: #66
Another approach would be to parse path|url when generating and not on parse time, this'll save us from writing duplicated parser rules.

For beef files, there's a vscode addon hosted here:
https://github.com/pouya-eghbali/bean/tree/master/vscode-beef

@garritfra garritfra changed the title New compiler: Imports (micro-services) Imports (micro-services) Dec 24, 2019
@garritfra garritfra mentioned this issue Dec 30, 2019
7 tasks
@pouya-eghbali pouya-eghbali mentioned this issue Mar 20, 2020
23 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants