Hacker GitHub

← All repos

chkoreff/Fexl

View on GitHub ↗ ★ 86 C

Function EXpression Language (interpreter for functional programs)

46 mentions on Hacker News by 1 person: 33 stories, 13 comments · first 2011-06-16 · latest 2017-03-21

Mentions per year 46 mentions · busiest year 2012 (31)
20082026
  1. ▲ 1
    This is the functional language I use for real work
    story by fexl · 2017-03-21 · 0 comments
  2. …the "==" syntax for recursive definitions, so you don't have to use '@' (fixpoint) explicitly. https://github.com/chkoreff/Fexl/commit/57b841cb6c2347cad147...
  3. …more involved: http://fexl.com/demo/ You'll also find some code samples in the "test" directory: https://github.com/chkoreff/Fexl/tree/master/src/test The program a1.fxl there is the definitive test suite. The program a2.fxl reads what you…
  4. ▲ 10
    Fexl – Highly robust functional evaluation
    story by fexl · 2014-08-04 · 3 comments
  5. ▲ 1
    Fexl now using purely functional evaluation
    story by fexl · 2014-07-07 · 0 comments
  6. ▲ 1
    New Fexl Release (default is eager evaluation instead of lazy)
    story by fexl · 2014-06-10 · 0 comments
  7. …James: I liked your article on range checking. I'm very keen on assertions, for example here: https://github.com/chkoreff/Fexl/blob/fresh/base/src/buf.c#L... It's still fast as greased lightning. I buffer up 2.6 MB here:…
    comment by fexl · 2014-03-23 · in Range-Checks and Recklessness
  8. …I really like is plain old C. To handle arbitrary strings reliably, I can just use this code: https://github.com/chkoreff/Fexl/blob/master/src/str.h https://github.com/chkoreff/Fexl/blob/master/src/str.c To deal with dynamic allocation,…
  9. Done. https://github.com/chkoreff/Fexl/commit/ce1d0f596ab3043e0edf...
    comment by fexl · 2013-10-10 · in GNU Make 4.0 Released
  10. For this reason and others I just wrote my own build script using /bin/sh: https://github.com/chkoreff/Fexl/blob/master/build Configurable with a small src/config file: https://github.com/chkoreff/Fexl/blob/master/src/config It…
    comment by fexl · 2013-10-09 · in GNU Make 4.0 Released
  11. ▲ 1
    Fexl version with vastly improved handling of repeated side effects
    story by fexl · 2013-01-06 · 0 comments
  12. ▲ 1
    Fexl update
    story by fexl · 2012-09-26 · 0 comments
  13. ▲ 1
    You can now call readlink(2) from a Fexl program.
    story by fexl · 2012-09-25 · 0 comments
  14. ▲ 1
    Improved build script for Fexl
    story by fexl · 2012-09-23 · 0 comments
  15. ▲ 1
    I removed the disgusting symbol stacks from Fexl.
    story by fexl · 2012-09-23 · 0 comments
  16. ▲ 27
    Epic commit message
    story by fexl · 2012-09-21 · 23 comments
  17. ▲ 1
    Fexl update
    story by fexl · 2012-09-15 · 0 comments
  18. ▲ 2
    Fexl update
    story by fexl · 2012-09-15 · 0 comments
  19. ▲ 1
    Fexl update
    story by fexl · 2012-09-14 · 0 comments
  20. ▲ 1
    Radically simplified the parse result handling in Fexl.
    story by fexl · 2012-09-12 · 0 comments
  21. ▲ 1
    New release of Fexl
    story by fexl · 2012-08-29 · 0 comments
  22. ▲ 1
    New version of Fexl
    story by fexl · 2012-08-27 · 0 comments
  23. ▲ 1
    I added a standard Fexl routine that prints either leaf or tree values.
    story by fexl · 2012-05-21 · 0 comments
  24. ▲ 2
    Fexl: Wrote "fold" directly in C for 35% speed boost.
    story by fexl · 2012-05-07 · 0 comments
  25. ▲ 1
    Fexl now uses setrlimit to impose safe limits on child processes.
    story by fexl · 2012-05-06 · 0 comments
  26. Here's the direct link to spawn: https://github.com/chkoreff/Fexl/blob/b1e149d1a0795aa191b887...
  27. ▲ 1
    New "spawn" function in Fexl makes it easy to interact with a child process.
    story by fexl · 2012-05-03 · 2 comments
  28. …context with a potentially enormous set of extra definitions, spread across multiple files: https://github.com/chkoreff/Fexl/blob/ced168cae71644ff9a9cb3...
  29. ▲ 2
    Fexl standard context now defined in terms of elegant combinators
    story by fexl · 2012-05-01 · 1 comment
  30. ▲ 2
    Added file operations to Fexl
    story by fexl · 2012-04-26 · 1 comment
  31. ▲ 1
    Fexl now has a top-level library written in Fexl itself.
    story by fexl · 2012-04-19 · 1 comment
  32. ▲ 2
    Enhanced meta-parsing in Fexl, with example scripts.
    story by fexl · 2012-04-16 · 1 comment
  33. ▲ 1
    Helpful information in Fexl README (scroll down)
    story by fexl · 2012-04-05 · 0 comments
  34. ▲ 1
    Fexl meta-parsing and symbol resolution radically simplified.
    story by fexl · 2012-04-03 · 1 comment
  35. ▲ 1
    Fexl b28 released
    story by fexl · 2012-03-31 · 0 comments
  36. ▲ 1
    Fexl version b26 released
    story by fexl · 2012-03-30 · 1 comment
  37. ▲ 2
    Fexl version b24 released
    story by fexl · 2012-03-29 · 0 comments
  38. ▲ 1
    Fexl now has support to manipulate Fexl types within Fexl.
    story by fexl · 2012-03-26 · 0 comments
  39. Here are the links: http://lkml.indiana.edu/hypermail/linux/kernel/0206.1/0402.h... https://github.com/chkoreff/Fexl/commit/9e361240168151706bcc...
  40. ▲ 1
    On the use of "pointerness" in typedef
    story by fexl · 2012-03-25 · 1 comment
  41. ▲ 1
    Fexl b16 released
    story by fexl · 2012-03-24 · 0 comments
  42. ▲ 2
    Fexl now uses dynamic symbol lookup.
    story by fexl · 2012-03-23 · 1 comment
  43. …as far-reaching as what you've done. When I write C code, I use a "build" script instead of "make": https://github.com/chkoreff/Fexl/blob/master/src/build (Never mind Fexl itself, I'm just sharing the build script here.) The build script…
  44. …tool. It seems reasonably fast for my purposes so far, and the expansion rule is just a one-liner: https://github.com/chkoreff/Fexl/blob/master/src/Y.c
    comment by fexl · 2011-07-16 · in What is a y-combinator?
  45. …Not really. Well, sort of. I mean, take a look at the reduction code for adding two long values: https://github.com/chkoreff/Fexl/blob/master/src/long_add.c In short, when you evaluate (long_add 2 3), that value is replaced with the number…
  46. …utility, but sometimes you just have to be careful. Take for example my "build" script for Fexl (at https://github.com/chkoreff/Fexl/blob/master/src/build ). There you will see these lines: # I don't use $obj and $bin here because that…