[{"data":1,"prerenderedAt":187},["ShallowReactive",2],{"project-35444300":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":29,"sentiment":30,"stance_mix":31,"scored_comments":34,"aspects":35,"strip":40,"post_text":42,"what":43,"said":59,"maker_in_thread":107,"shape":109,"grid":112,"attempts":149,"same_week":150,"maker_shows":131,"maker_hidden":179,"reader_version":180,"card":181},"35444300","milasm","A readable macroassembler for .NET that no one asked for","title","Show HN: A readable macroassembler for .NET that no one asked for","https:\u002F\u002Fgithub.com\u002Fakalenuk\u002Fmilasm","github.com","okaleniuk",1680634341,2023,67,12,892,3109,29,"notable","dev_tools","assembler","cli",[24,25,26,27,28],"macroassembler","cil","dotnet assembler","clr bytecode","readable assembly","curious",0.267,{"positive":32,"neutral":32,"mixed":33,"critical":33},3,0,6,{"docs":36,"design":38,"idea":39},{"positive":37,"critical":33},1,{"positive":37,"critical":33},{"positive":37,"critical":33},[32,41,41,41,32,33,32,33,33,33,33,33],5,null,{"problem":44,"audience":42,"pricing":42,"motivation":42,"time_to_build":42,"stack":56,"openness":57,"stage":58,"team_size":58},{"value":45,"source":46,"evidence":47},"Makes .NET CIL assembly code more readable and easier to grep.","commenter",[48,52],{"id":49,"by":50,"text":51},"35445761","thewataccount","This actually looks surprisingly nice... I thought it would appear overly verbose. Is this mostly \"renaming instructions\" and adding macros in the same style? A big struggle with…",{"id":53,"by":54,"text":55},"35446124","livre","> I don't use assembly daily, how well does this work across different instruction sets? This particular macroassembler is for .NET CIL…",[],"open_source","unknown",{"praise":60,"objections":65,"requests":81,"questions":89,"alternatives":94},[61],{"value":62,"source":46,"evidence":63},"Looks surprisingly nice and readable",[64],{"id":49,"by":50,"text":51},[66,74],{"value":67,"source":46,"evidence":68},"Mistaken for a general CPU assembler; it targets CLR only",[69,73],{"id":70,"by":71,"text":72},"35446818","overthrow","This project targets the CLR (the runtime for C#), not a CPU.",{"id":53,"by":54,"text":55},{"value":75,"source":46,"evidence":76},"C already provides readable, portable assembly-like code",[77],{"id":78,"by":79,"text":80},"35446588","snickerer","And I always thought there is already a set of macros that makes assembler more readable and portable. It is called C.",[82],{"value":83,"source":46,"evidence":84},"Ability to convert CLR bytecode from .NET binaries and disassemble it",[85],{"id":86,"by":87,"text":88},"35461454","badrabbit","Can I use this to convert clr bytecode if a .NET binary and disassemble it? If so, I asked for this. Obfuscated shellcode loading .NET that can't be disassembled all the…",[90],{"value":91,"source":46,"evidence":92},"How well does it work across different instruction sets?",[93],{"id":49,"by":50,"text":51},[95,103],{"value":96,"source":46,"evidence":97},"Writing macros in C or using an optimizing C compiler",[98,99],{"id":78,"by":79,"text":80},{"id":100,"by":101,"text":102},"35447438","nine_k","I see it's said in a jest, but an optimizing C compiler does so much more than macro expansion that it's not even funny (when looking at the resulting assembly).",{"value":104,"source":46,"evidence":105},"Disassemblers such as ILSpy and JetBrains tools",[106],{"id":86,"by":87,"text":88},{"comments":33,"answered":33,"key":108},[],{"commenters":15,"max_depth":32,"maker_replies":33,"first_comment_mins":110,"lifespan_hours":111},124,28,[113,117,121,123,127,129,134,135,138,140,144,148],[114,33,32,115,116,33],"35447281","project\u002Fneutral\u002Fdocs","zx8080",[118,33,41,119,120,33],"35460849","maker\u002Fpositive\u002Fdocs","dang",[49,37,41,122,50,33],"project\u002Fpositive\u002Fdesign",[124,37,41,125,126,33],"35446037","project\u002Fpositive\u002Fidea","convolvatron",[53,37,32,128,54,33],"project\u002Fneutral\u002Fidea",[130,131,33,132,133,33],"35447432",2,"other\u002Fneutral\u002Fnone","Lerc",[86,32,32,128,87,33],[78,136,33,137,79,33],4,"other\u002Fcritical\u002Fidea",[70,136,33,139,71,33],"commenter\u002Fneutral\u002Fidea",[141,136,33,142,143,33],"35447033","commenter\u002Fcritical\u002Fnone","saagarjha",[145,136,33,146,147,33],"35447264","commenter\u002Fneutral\u002Fnone","mike_hock",[100,136,33,132,101,33],[],[151,156,161,165,170,174],{"id":152,"name":153,"points":154,"category":155},"35419771","Unknown Pleasures",661,"creative",{"id":157,"name":158,"points":159,"category":160},"35370284","StratusGFX",483,"games",{"id":162,"name":163,"points":164,"category":20},"35440552","e2b",369,{"id":166,"name":167,"points":168,"category":169},"35387160","CoScreen",350,"productivity",{"id":171,"name":172,"points":173,"category":20},"35371469","Gut",314,{"id":175,"name":176,"points":177,"category":178},"35447288","Cheetah",301,"ai",false,"v2",{"id":182,"name":5,"line":6,"ai":179,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":183,"top":18,"kw":184,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":185,"url":9,"mix":186,"praise":62,"objection":67,"sub":21},35444300,0.27,[24,25,26,27,28],"355530300000",[32,32,33,33],1794036633556]