Comments (9)
This is a bug which I will fix real soon now. It has also come up in the slack #general
channel. There is a quick fix which works in the REPL and the compiler, and is actually fully legal as well 😄
(defun chop
(((binary ("xyz") (more binary)))
(io:format "CHOP: ~p~n" `(,more)))
((_) ;Note the _ here to match all
'nochop))
from lfe.
Thanks for filing this ticket ... we should have done so when this came up a while back, and again when it came up a few weeks ago :-)
from lfe.
This should now work as expected after a commit in develop. I will merge this into master RSN if no one finds any serious errors.
from lfe.
Closing since the fix is now merged ...
(@dendrown btw, that rebar3_lfe bug is now fixed 😄)
from lfe.
Thank you. I'm very glad to see there's a nice work-around while waiting on the fix.
@rvirding : thanks also for the note about the underscore. Somewhere along the line I got the idea that an LFE hyphen was like an Erlang underscore.
from lfe.
Thanks, Robert. I verified that this fixes the toy example. I'm still having a problem in the actual project.
Yet, this may now likely be a rebar3_lfe plugin issue. Even though I've deleted lfe from the plugin's cache and then watched it pull & rebuild the updated lfe develop branch, I'm still getting the error. However, if I call lfec from the plugin's cache to compile the module individually, I get no error. Also, if I compile the module from the repl, there's no error.
Note that the project still builds fine when I have the work-around you mentioned in place. So, I'm not stopped.at all. In fact, a couple of weeks ago I rewrote that module in Erlang, so I could move forward. Now, I've reinstated the LFE version in the project.
from lfe.
@dendrown do you still have this problem? If so could you give me an example of how it happens?
from lfe.
Hi @rvirding . I just went back and took out the work-around in the larger project, and things look good. The code compiles and works as expected. I'm on LFE v2.0.1.
Just note that I'm still using rebar v3.14.1, and I haven't dared to upgrade since I found the lfe_rebar3#68 issue I referenced above.
from lfe.
Thanks @rvirding and @oubiwann !!
from lfe.
Related Issues (20)
- Improve workflow for publishing LFE to hex.pm
- Odd recursion bug with rebar3_lfe as a plugin dep HOT 1
- v2.1.1 tagged but not marked as latest HOT 5
- lc/2 not defined HOT 8
- ets-ms is attempting to match 'undefined' when using match-record with unspecified slots HOT 5
- Error expanding (seemingly valid) qlc macro HOT 12
- Extend documentation for patterns HOT 2
- CI/CD no longer runs on older builds HOT 4
- Type definitions and specifications do not accept empty list syntax HOT 1
- Issues with LFE and Erlang 26.0 (user:start) HOT 5
- Make banner functions public for re-use in rebar3_lfe
- Consider using Erlang's shell:start_interactive for 26+ HOT 1
- Explore the possibility of making the LFE REPL developer experience more configurable HOT 2
- module-alias is ignored for macros HOT 1
- Pattern matching on nested literals with underscore. HOT 4
- Test Failures with rebar3 3.23.0 HOT 4
- (Mix) Could not compile dependency :lfe - Elixir 1.15.7 OTP 26 HOT 3
- Compiler produces non-deterministic builds HOT 2
- Dialyzer blames Erlang header instead of LFE code HOT 3
- Build failure on OTP 19 HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lfe.