[{"data":1,"prerenderedAt":235},["ShallowReactive",2],{"project-22785137":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":40,"post_text":42,"what":43,"said":62,"maker_in_thread":142,"shape":144,"grid":147,"attempts":198,"same_week":199,"maker_shows":31,"maker_hidden":227,"reader_version":228,"card":229},"22785137","Fe","A tiny, embeddable language implemented in ANSI C","title","Show HN: Fe – A tiny, embeddable language implemented in ANSI C","https:\u002F\u002Fgithub.com\u002Frxi\u002Ffe","github.com","rxi",1586087506,2020,143,20,424,3028,15,"notable","languages","embeddable programming language","library",[24,25,26,27],"embeddable language","ansi c","lisp","scheme interpreter","curious",0.217,{"positive":31,"neutral":32,"mixed":33,"critical":34},3,7,1,0,11,{"docs":37,"idea":38,"design":39},{"positive":34,"critical":34},{"positive":33,"critical":34},{"positive":33,"critical":34},[31,41,31,41,31,34,34,34,34,34,34,34,31,31,34,34,41,31,31,31],5,null,{"problem":42,"audience":42,"pricing":42,"motivation":44,"time_to_build":42,"stack":52,"openness":59,"stage":60,"team_size":61},{"value":45,"source":46,"evidence":47},"Made for the fun of programming and to make something terse and practical; a sequel to the author's aria project","commenter",[48],{"id":49,"by":50,"text":51},"22785798","chucksmash","> Why does Fe exist. Reply to one of the GitHub issues discusses it some[1]. >> What was the motivation to create fe if you already made aria? > The same motivations I had…",[53],{"value":54,"source":55,"evidence":56},"ANSI C","maker",[57],{"id":58},"post","open_source","launched","unknown",{"praise":63,"objections":78,"requests":94,"questions":103,"alternatives":119},[64,71],{"value":65,"source":46,"evidence":66},"Small, concise codebase with fixed memory region and no mallocs",[67],{"id":68,"by":69,"text":70},"22785529","as-j","Cool! Something I wish project docs would always include is …why… and what. Why does fe exist? Why did the orignal author spend a span of 6mo on it? What can it do and what can't…",{"value":72,"source":46,"evidence":73},"Seen as a more accessible Lisp",[74],{"id":75,"by":76,"text":77},"22785485","dccoolgai","Nice. One of the things that always bothers me about \"project\" languages is (for lack of a better way to put it) the \"look at how smart I am\" bullshit that makes thinking about…",[79,83,90],{"value":80,"source":46,"evidence":81},"No IO library beyond print, so seems like a toy language",[82],{"id":68,"by":69,"text":70},{"value":84,"source":46,"evidence":85},"Error handling not documented; unclear what happens on errors like divide by zero",[86],{"id":87,"by":88,"text":89},"22787797","whitten","Fe is a tiny language with only a few forms ie: if, while, do, define a variable, define a function, define a macro etc.. It uses an embedded parenthesis syntax similar to Lisp…",{"value":91,"source":46,"evidence":92},"Documentation does not explain why it exists or what it can and cannot do",[93],{"id":68,"by":69,"text":70},[95,99],{"value":96,"source":46,"evidence":97},"Clearer documentation of evaluation order, short-circuiting and how to define functions",[98],{"id":87,"by":88,"text":89},{"value":100,"source":46,"evidence":101},"Better project docs explaining motivation and limits",[102],{"id":68,"by":69,"text":70},[104,112],{"value":105,"source":46,"evidence":106},"Why use a single fixed allocation with garbage collection instead of malloc",[107,108],{"id":68,"by":69,"text":70},{"id":109,"by":110,"text":111},"22788056","cryptonector","> The single fixed allocation is interesting, and odd. It then has gc...so why On the not just use malloc the manage the pool? I wonder if the performance is that much better?…",{"value":113,"source":46,"evidence":114},"Does the language support dynamic versus lexical scoping",[115,116],{"id":87,"by":88,"text":89},{"id":117,"by":110,"text":118},"22789011","> I didn't see if the language supports a fluid let (any variable name is looked up at run time when the reference is encountered thru the stack levels until the name is found.…",[120,124,128,135],{"value":121,"source":46,"evidence":122},"Lua",[123],{"id":68,"by":69,"text":70},{"value":125,"source":46,"evidence":126},"Chicken Scheme",[127],{"id":109,"by":110,"text":111},{"value":129,"source":46,"evidence":130},"ATS",[131],{"id":132,"by":133,"text":134},"22785897","caspper69","> You can't have a fancy type system and interop with C strongly ATS would disagree with this statement, strongly.",{"value":136,"source":46,"evidence":137},"ulisp",[138],{"id":139,"by":140,"text":141},"22786436","ngcc_hk","I thought it is ulisp in c",{"comments":34,"answered":34,"key":143},[],{"commenters":145,"max_depth":32,"maker_replies":34,"first_comment_mins":146,"lifespan_hours":15},14,36,[148,150,152,154,156,160,162,164,167,170,172,174,176,179,180,184,186,190,194,197],[68,34,31,149,69,34],"project\u002Fmixed\u002Fdocs",[49,34,41,151,50,34],"project\u002Fpositive\u002Fidea",[109,34,31,153,110,34],"project\u002Fneutral\u002Fdesign",[75,33,41,155,76,34],"project\u002Fpositive\u002Fdesign",[157,33,31,158,159,34],"22785670","project\u002Fneutral\u002Fidea","thethirdone",[132,33,34,161,133,34],"commenter\u002Fneutral\u002Fnone",[163,33,34,161,159,34],"22786016",[165,33,34,161,166,34],"22786181","TurboHaskal",[168,33,34,161,169,34],"22787433","jcelerier",[171,33,34,161,133,34],"22788597",[173,33,34,161,159,34],"22791105",[175,33,34,161,133,34],"22791748",[87,177,31,178,88,34],2,"project\u002Fneutral\u002Fdocs",[117,177,31,153,110,34],[181,177,34,182,183,34],"22789167","other\u002Fneutral\u002Fnone","kazinator",[185,177,34,161,110,34],"22790386",[187,31,41,188,189,34],"22787678","maker\u002Fpositive\u002Fnone","fao_",[191,192,31,158,193,34],"22786231",4,"bigdict",[195,41,31,158,196,34],"22785249","kalium_xyz",[139,41,31,158,140,34],[],[200,205,209,213,218,223],{"id":201,"name":202,"points":203,"category":204},"22811653","FalsiScan",770,"productivity",{"id":206,"name":207,"points":208,"category":20},"22758217","Learn GNU Awk one-liners ebook",539,{"id":210,"name":211,"points":212,"category":20},"22776753","33 line React",418,{"id":214,"name":215,"points":216,"category":217},"22790425","DNS over Wikipedia",398,"dev_tools",{"id":219,"name":220,"points":221,"category":222},"22777397","Treendly",343,"web_saas",{"id":224,"name":225,"points":226,"category":217},"22763656","Pdf.js Express",334,false,"v2",{"id":230,"name":5,"line":6,"ai":227,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":231,"top":18,"kw":232,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":233,"url":9,"mix":234,"praise":65,"objection":80,"sub":21},22785137,0.22,[24,25,26,27],"35353000000033005333",[31,32,33,34],1794036588588]